[613] | 1 | XTFCE ;SF-ISC.SEA/JLI - SELECTIVE FLOW CHARTS BY ENTRY POINT ;12/7/95 14:49
|
---|
| 2 | ;;7.3;TOOLKIT;**8**;Apr 25, 1995
|
---|
| 3 | EN ;
|
---|
| 4 | W !,"Select ROUTINE or LABEL^ROUTINE: " R X:DTIME G:'$T!(X="")!(X=U) EXIT S XTX=X,X=$S(X[U:$P(X,U,2),1:X) X ^%ZOSF("TEST") I '$T W $C(7)," ??" G XTFCE
|
---|
| 5 | K ^TMP($J) S XTROU=X I XTX[U S XTLINE=$P(XTX,U,1) I XTLINE]"" S XTLEV=1 D NODE G XTFCE
|
---|
| 6 | ;
|
---|
| 7 | ROU ; Display Entry Points or identified lines of routine
|
---|
| 8 | S XTLEV=0 D GETROU S XTM=0 F I=1:1 Q:'$D(^TMP($J,XTLEV,"T",I,0)) S J=^(0) Q:J="" I $E(J,1)'=" " S XTM=XTM+1,^TMP($J,XTLEV,"X",XTM)=$P(J," ",1)
|
---|
| 9 | ;
|
---|
| 10 | ROU1 G:'$D(^TMP($J,0)) XTFCE W !,"The following labels are present in routine ",XTROU," and can be",!,"selected for expansion.",! ;, or enter * for the entire routine.",!
|
---|
| 11 | F J=1:1:15 Q:J>XTM W !,$J(J,2),". ",^TMP($J,XTLEV,"X",J) F K=J+15:15:60 Q:K>XTM W ?(15*(K-1\15)),$J(K,2),". ",^(K)
|
---|
| 12 | W !!,"Select LABEL by number (1 to ",XTM,"): " R X:DTIME G:'$T!(X="")!(X[U) EXIT I X<1!(X>XTM) W $C(7)," ??" G ROU1
|
---|
| 13 | S XTLINE=^TMP($J,XTLEV,"X",+X),XTLEV=1 D NODE G ROU1
|
---|
| 14 | ;
|
---|
| 15 | ALL ;
|
---|
| 16 | Q
|
---|
| 17 | NODE ;
|
---|
| 18 | K XTEXT,XTEXTB,^TMP($J,XTLEV)
|
---|
| 19 | S XTLINE=$P(XTLINE,"("),XTROU(XTLEV)=XTROU,XTLINE(XTLEV)=XTLINE,X=XTROU D GETROU
|
---|
| 20 | S XTIL=0 F I=1:1 Q:'$D(^TMP($J,XTLEV,"T",I,0)) S J=^(0) I $P($P(J," ",1),"(")=XTLINE S XTIL=I Q
|
---|
| 21 | I XTIL=0 W $C(7)," ?? line ",XTLINE," not found in routine ",XTROU S XTLEV=XTLEV-1 Q
|
---|
| 22 | S XTIFLG=0,XTTFLG=0,XTCOND=0,XTENTR=0 F I=XTIL:1 Q:XTTFLG!'$D(^TMP($J,XTLEV,"T",I,0)) S X=^(0) D LINE^XTFC0
|
---|
| 23 | D ^XTFCE1
|
---|
| 24 | S XT="",XTLEV=XTLEV-1
|
---|
| 25 | Q
|
---|
| 26 | GETROU ; Get routine into ^TMP($J,XTLEV,"T",n)
|
---|
| 27 | S X=$P(X,"("),DIF="^TMP($J,XTLEV,""T"",",XCNP=0 X ^%ZOSF("LOAD") K DIF,XCNP
|
---|
| 28 | Q
|
---|
| 29 | ;
|
---|
| 30 | EXIT ;
|
---|
| 31 | K XT,XTCOND,XTENTR,XTIFLG,XTIJ,XTIL,XTL,XTL1,XTL2,XTLEV,XTLINE,XTM,XTNAM,XTPCOND,XTREF,XTROU,XTSLINE,XTTFLG,XTX,XTX1,XTX2,XTX2B,XTZA,XTZX,XTZX1,I,J,JK,JL,K,N,X,Y,Z
|
---|
| 32 | Q
|
---|