| 1 | DICE4 ;SFISC/GFT-TRIGGER LOGIC ;8:51 AM  1 May 2000
 | 
|---|
| 2 |  ;;22.0;VA FileMan;**6,37**;Mar 30, 1999
 | 
|---|
| 3 |  ;Per VHA Directive 10-93-142, this routine should not be modified.
 | 
|---|
| 4 |  D SET S DTAG="S DIH=$G("_DREF_DSUB_")),DIV=X "_$P("I $D(^(0)) ","""",A>99)_X_",DIH="_DIN_",DIG="_DENEW_" D ^DICR",X=""
 | 
|---|
| 5 |  S:$L(DE)+$L(DTAG)>160&($L(DE)>30) ^UTILITY("DICE",$J,DIK+.1)=DE,DE="X "_DA_DIK_".1)" S X=DE
 | 
|---|
| 6 | F ;
 | 
|---|
| 7 |  S DB=DA_DIK
 | 
|---|
| 8 |  S:$L(Y)+$L(X)>190 ^UTILITY("DICE",$J,DIK+.2)=Y,Y="X "_DB_".2)" S:$L(Y) X=Y_" "_X
 | 
|---|
| 9 |  K DICOMPX(DNEW) S DHI=X,DCOND=DCOND_"TING OF '"_DNEW_"'" D COND G P:'$D(DCOND) I DLAY,DICOMPX,DICOMPX-DI W !,"SORRY, CAN'T DO THIS WHEN 'LAYGO' ALLOWED" S X=U Q
 | 
|---|
| 10 |  S DHI="I X S X=DIV "_DHI I $O(J(A))>0 S ^("DIC")=""
 | 
|---|
| 11 | P S:$L(DHI)+$L(X)>220 ^UTILITY("DICE",$J,DIK+.3)=X,X="X "_DB_".3)" S X=X_" "_DHI
 | 
|---|
| 12 |  S:$L(DTAG)+$L(X)>225 ^UTILITY("DICE",$J,DIK+.4)=DTAG,DTAG="X "_DB_".4)" S ^UTILITY("DICE",$J,DIK)=X_" "_DTAG K DTAG,D Q
 | 
|---|
| 13 |  ;
 | 
|---|
| 14 | SET G PIECE:DLOC S DHI=$P(DLOC,",",2),%=+$E(DLOC,2,9),X="S DE="_(%-1)_"-$L(DIH),DIU=$E(DIH,"_%_","_DHI_"),Y=$E(DIH,"_(DHI+1)_",999),^("_DSUB_")="
 | 
|---|
| 15 |  I %>1 S X=X_"$E(DIH,1,"_(%-1)_")_"
 | 
|---|
| 16 |  S X=X_"$J("""",$S(DE>0:DE,1:0))_DIV_$S(Y?."" "":"""",1:$J("""","_(DHI-%+1)_"-$L(DIV))_Y)" Q
 | 
|---|
| 17 | PIECE S X="S $P(^("_DSUB_"),U,"_DLOC_")=DIV" Q
 | 
|---|
| 18 |  ;
 | 
|---|
| 19 | COND S DE=" DIV=X" F %=0:1:N S DE=DE_",D"_%_"=DA"_$S(%=N:"",1:"("_(N-%)_")") I A#100'<% S DE=DE_",DIV("_%_")=D"_%
 | 
|---|
| 20 |  D CC I $D(DCOND) S DE=DE_" "_X
 | 
|---|
| 21 |  S X="K DIV S"_DE
 | 
|---|
| 22 | Q Q
 | 
|---|
| 23 |  ;
 | 
|---|
| 24 | CC ;
 | 
|---|
| 25 |  S DA=DA_(DIK+5)
 | 
|---|
| 26 | R W !!,"DO YOU WANT TO MAKE THE "_DCOND_" CONDITIONAL" K DICOMPX S %=2,DICOMPX="",DICOMP="?X",D="ENTER AN EXPRESSION FOR THE CONDITION: " D YN^DICN I %-1 K DCOND Q
 | 
|---|
| 27 |  I DIK=1 S DICOMPX("Y(0)")="Y(0)",DICOMPX(1,DI,DL)="Y(0)",DICOMPX("Y(0)",U)=DI_U_DL
 | 
|---|
| 28 |  E  W ! D OLD^DICE2 S Y="CREATE CONDITION" I $D(^UTILITY("DICE",$J,Y)) W !,D_^(Y)_"// " R X:DTIME S:'$T DTOUT=1 G Q:X=U!'$T S:X="" X=^(Y) G X
 | 
|---|
| 29 |  W !,D R X:DTIME S:'$T DTOUT=1 G Q:X=U!'$T
 | 
|---|
| 30 | X I X?."?" W !,"ENTER A TRUTH-VALUED 'COMPUTED-FIELD' EXPRESSION ",!?4,"(PERHAPS INVOLVING '"_DOLD_"')" G R
 | 
|---|
| 31 |  S DCOND(0)=X D ^DICOMP I $D(X) W:Y'["B" !,"WARNING--THIS DOESN'T LOOK LIKE A CONDITION EXPRESSION!" S X="S Y(0)=X "_X,^UTILITY("DICE",$J,$P("CREA^DELE",U,DIK)_"TE CONDITION")=DCOND(0) F %=9.2:.1 G Q:'$D(X(%)) S ^(DIK+5*10+%)=X(%) K X(%)
 | 
|---|
| 32 |  W $C(7),"??" G R
 | 
|---|