Annotation of freem_fileman/DICN.m, revision 1.1.1.1

1.1       snw         1: DICN   ;SFISC/GFT,XAK-ADD NEW ENTRY ;10/5/94  09:27
                      2:        ;;21.0;VA FileMan;;Dec 28, 1994
                      3:        ;Per VHA Directive 10-93-142, this routine should not be modified.
                      4:        D:'$D(DO) DO^DIC1 S DO(1)=1
                      5:        G:$S($D(DLAYGO):DO(2)\1-(DLAYGO\1),1:1) B1
                      6: USR    I $D(DD) S X=DD D N^DICN1 G I:$D(X),B
                      7:        D DS S DIX=X I X'?16.N,X?.NP,X,DIC(0)["E",'$D(DICR),DS'["DINUM",$P(DS,U,2)'["N",DIC(0)["N"!$D(^DD(+DO(2),.001,0)) D N^DICN1 I $D(X) S DD=X G I
                      8:        S X=DIX D VAL G I:$D(X)
                      9:        S X=DIX
                     10: B      G BAD^DIC1
                     11: B1     G USR:'DO(2),USR:$D(^DD(+DO(2),0,"UP")),USR:DO(2)=".12P" S DIFILE=+DO(2),DIAC="LAYGO" D ^DIAC K DIAC,DIFILE G B:'%,USR
                     12:        ;
                     13: 1      I '$D(DIC("S")) S DST=$G(DST)_$$EZBLD^DIALOG(8058,$$OUT^DIALOGU(Y,"ORD")) S:$D(^DD(+DO(2),0,"UP")) DST=DST_$$EZBLD^DIALOG(8059,$O(^DD(^("UP"),0,"NM",0))) S DST=DST_")"
                     14: Y      I $D(DDS) S A1="Q",DST=%_U_DST D H^DDSU Q
                     15:        W !,DST K DST
                     16: YN     ;
                     17:        N %1 S %1=$$EZBLD^DIALOG(7001) S:'$D(%) %=0 W "? " W:(%>0) $P(%1,U,%),"// "
                     18: RX     R %Y:$S($D(DTIME):DTIME,1:300) E  S DTOUT=1,%Y=U W $C(7)
                     19:        I %Y]""!'% S %=+$$PRS^DIALOGU(7001,%Y) S:(%<0&($A(%Y)'=94)) %=0
                     20:        I '%,%Y'?."?" W $C(7),"??",!?4,$$EZBLD^DIALOG(8040),": " G RX
                     21:        W:$X>73 ! W:% $S(%>0:"  ("_$P(%1,U,%)_")",1:"") Q
                     22:        ;
                     23: DS     S DS=^DD(+DO(2),.01,0) Q
                     24:        ;
                     25: VAL    I X'?.ANP K X Q
                     26:        I X["""" K X Q
                     27:        I $P(DS,U,2)'["N",$A(X)=45 K X Q
                     28:        I $P(DS,U,2)["*" S:DS["DINUM" DINUM=X Q
                     29:        S %=$F(DS,"%DT=""E"),DS=$E(DS,1,%-2)_$E(DS,%,999) N DICTST S DICTST=DS["+X=X"&(X?16.N) K:DICTST X X:'DICTST $P(DS,U,5,99) Q
                     30:        ;
                     31: I1     S DST=$C(7)_$$EZBLD^DIALOG(8060) S:'$D(DD) DST=DST_$$EZBLD^DIALOG(8061,Y) S %=$P(DO,U,1) I $L(DST)+$L(%)'>55 S DST=DST_$$EZBLD^DIALOG(8062,%) Q
                     32:        W:'$D(DDS) !,DST K A1 D:$D(DDS) H^DIC2 S DST="    "_$$EZBLD^DIALOG(8062,%) Q
                     33:        ;
                     34: I      I DIC(0)["E",DO(2)'["A",DIC(0)'["W" S C=$P(^DD(+DO(2),.01,0),U,2),(DIX,Y)=X D Y^DIQ,I1 S %=0,Y=$P(DO,U,4)+1,X=DIX D 1 G OUT:$D(DTOUT),B:%-1
                     35:        G FILE:'$D(DD)
                     36: R      D DS S DST="   "_$P(DS,U,1)_": " I '$D(DDS) W !,DST K DST R X:DTIME S:'$T X=U,DTOUT=1,Y=-1
                     37:        I $D(DDS) S A1="Q",DST="3^"_DST D H^DDSU S X=% I $D(DTOUT) S X=U,Y=-1
                     38:        G B:X[U,R:X="" D VAL I '$D(X) W $C(7) W:'$D(DDS) "??" G:'$D(^DD(+DO(2),.01,3)) R S DST="    "_^(3) W:'$D(DDS) !,DST D:$D(DDS) H^DDSU G R
                     39: FILE   D:'$D(DO) DO^DIC1 I DO="0^-1" G OUT
                     40:        F DIX=0:0 S DIX=$O(^DD(+DO(2),.01,"LAYGO",DIX)) Q:DIX'>0  I $D(^(DIX,0)) X ^(0) I '$T G OUT
                     41:        I $P($G(^DD($$FNO^DILIBF(+DO(2)),0,"DI")),U,2)["Y",'$D(DIOVRD),'$G(DIFROM) G OUT
                     42:        S DIX=X
                     43: F1     S X=$P(DO,U,3) D INCR S X=X\DIY*DIY+DIY
                     44:        I $D(DINUM) S X=DINUM D INCR
                     45: F2     I $D(@(DIC_"X)")) S X=X\DIY*DIY+DIY G B:$D(DINUM),F2
                     46:        S Y=$P(DO,"^",2) I $D(DD) S X=DD
                     47:        E  I 'Y,DUZ(0)'="@" G LOCK
                     48:        I DIC(0)["E",'$D(DINUM),$D(^DD(+Y,.001,0)) G NUM^DICN1
                     49: LOCK   L @("+"_DIC_"X):1") I $D(@(DIC_"X)"))!'$T L @("-"_DIC_"X)") G F1
                     50:        S ^(X,0)=DIX,DD=0 L @("-"_DIC_"X)") K D S:$D(DA)#2 D=DA S DA=X,X=DIX
                     51:        I $D(@(DIC_"0)")) S ^(0)=$P(^(0),"^",1,2)_"^"_DA_"^"_($P(^(0),"^",4)+1)
                     52: IX     S DS=X,DD=$O(^DD(+DO(2),.01,1,DD)) S:DD="" DD=-1
                     53:        I DD>0 G RIX^DICN1:^(DD,0)["TRIGGER"!(^(0)["BULL") X ^(1) S X=DS G IX
                     54:        I DIC(0)["E"&($O(^DD(+DO(2),0,"ID",0))>0)!$D(DIC("DR")) G ^DICN1
                     55: D      D A
                     56:        S Y=DA_"^"_X_"^1" S:$D(D)#2 DA=D G R^DIC2
                     57:        ;
                     58: INCR   S DIY=1 I $P(DO,U,2)>1 F %=1:1:$L($P(X,".",2)) S DIY=DIY/10
                     59:        Q
                     60: OUT    S Y=-1 G A^DIC:$D(DO(1))&'$D(DTOUT),Q^DIC2
                     61:        ;
                     62: A      I $P(^DD(+DO(2),.01,0),U,2)'["a",DO(2)'["a" Q
                     63:        I DO(2)'["a",^("AUDIT")["e" Q
                     64:        D AUD^DIET
                     65:        Q
                     66:        ;#7001   Yes/No question
                     67:        ;#8040   Answer with 'Yes' or 'No'
                     68:        ;#8058   (the |entry number|
                     69:        ;#8059   for this |filename|
                     70:        ;#8060   Are you adding
                     71:        ;#8061   '|.01 field value|' as
                     72:        ;#8062   a new |filename|

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>