- ORWUX ; SLC/KCM - Development Utilities
- ;;3.0;ORDER ENTRY/RESULTS REPORTING;;Dec 17, 1997
- SYMTAB(REF) ; Return the current symbol table
- N X K ^TMP($J,"SAV"),^TMP($J,"SND")
- S X="^TMP($J,""SAV""," D DOLRO^%ZOSV
- N N,I,L S X="^TMP($J,""SAV"")",L=0
- S L=L+1,^TMP($J,"SND",L)="$I="_$I_" $J="_$J_" $S="_$S
- S L=L+1,^TMP($J,"SND",L)="" ;must send two lines per entry
- F S X=$Q(@X) Q:$QL(X)<3 Q:$QS(X,1)'=$J Q:$QS(X,2)'="SAV" D
- . S N=$QS(X,3)
- . I $QL(X)=3 D Q
- . . S L=L+1,^TMP($J,"SND",L)=N
- . . S L=L+1,^TMP($J,"SND",L)=@X
- . E D
- . . S N=N_"(" F I=4:1:$QL(X) S N=N_$QS(X,I)_","
- . . S N=$E(N,1,$L(N)-1)_")"
- . . S L=L+1,^TMP($J,"SND",L)=N
- . . S L=L+1,^TMP($J,"SND",L)=@X
- S REF=$NA(^TMP($J,"SND"))
- Q
- ORWUX ; SLC/KCM - Development Utilities
- +1 ;;3.0;ORDER ENTRY/RESULTS REPORTING;;Dec 17, 1997
- SYMTAB(REF) ; Return the current symbol table
- +1 NEW X
- KILL ^TMP($JOB,"SAV"),^TMP($JOB,"SND")
- +2 SET X="^TMP($J,""SAV"","
- DO DOLRO^%ZOSV
- +3 NEW N,I,L
- SET X="^TMP($J,""SAV"")"
- SET L=0
- +4 SET L=L+1
- SET ^TMP($JOB,"SND",L)="$I="_$IO_" $J="_$JOB_" $S="_$STORAGE
- +5 ;must send two lines per entry
- SET L=L+1
- SET ^TMP($JOB,"SND",L)=""
- +6 FOR
- SET X=$QUERY(@X)
- IF $QLENGTH(X)<3
- QUIT
- IF $QSUBSCRIPT(X,1)'=$JOB
- QUIT
- IF $QSUBSCRIPT(X,2)'="SAV"
- QUIT
- Begin DoDot:1
- +7 SET N=$QSUBSCRIPT(X,3)
- +8 IF $QLENGTH(X)=3
- Begin DoDot:2
- +9 SET L=L+1
- SET ^TMP($JOB,"SND",L)=N
- +10 SET L=L+1
- SET ^TMP($JOB,"SND",L)=@X
- End DoDot:2
- QUIT
- +11 IF '$TEST
- Begin DoDot:2
- +12 SET N=N_"("
- FOR I=4:1:$QLENGTH(X)
- SET N=N_$QSUBSCRIPT(X,I)_","
- +13 SET N=$EXTRACT(N,1,$LENGTH(N)-1)_")"
- +14 SET L=L+1
- SET ^TMP($JOB,"SND",L)=N
- +15 SET L=L+1
- SET ^TMP($JOB,"SND",L)=@X
- End DoDot:2
- End DoDot:1
- +16 SET REF=$NAME(^TMP($JOB,"SND"))
- +17 QUIT