Annotation of freem_fileman/DIV.m, revision 1.1.1.1

1.1       snw         1: DIV    ;SFISC/GFT-VERIFY FLDS ;6/6/94  2:06 PM
                      2:        ;;21.0;VA FileMan;;Dec 28, 1994
                      3:        ;Per VHA Directive 10-93-142, this routine should not be modified.
                      4:        K J
                      5:        S Q="""",S=";",V=0,P=0,I(0)=DIU,@("(A,J(0))=+$P("_DIU_"0),U,2)")
                      6:        I $O(^(0))'>0 W $C(7),"  NO ENTRIES ON FILE!" Q
                      7: DIC    S DIC="^DD(A,",DIC(0)="EZ",DIC("W")="W:$P(^(0),U,2) ""  (multiple)"""
                      8:        S DIC("S")="S %=$P(^(0),U,2) I %'[""C"",$S('%:1,1:$P(^DD(+%,.01,0),U,2)'[""W"")"
                      9:        W !,"VERIFY WHICH "_$P(^DD(A,0),U)_": " R X:DTIME Q:U[X
                     10:        I X="ALL" D ALL G Q:$D(DIRUT) I Y D  G Q^DIVR:DQI'>0
                     11:        .D FLDS
                     12:        .S B=0
                     13:        .D NEXTLVL
                     14:        .Q
                     15:        D ^DIC K DQI,^UTILITY("DIVR",$J)
                     16:        I Y<0 W:X?1."?" !?3,"You may enter ALL to verify every field at this level of the file.",! G DIC
                     17:        S DR=$P(Y(0),U,2) I DR S J(V)=A,P=+Y,V=V+1,A=+DR,I(V)=$P($P(Y(0),U,4),S,1) S:+I(V)'=I(V) I(V)=Q_I(V)_Q G DIC
                     18: 1      F T="N","D","P","S","V","F" Q:DR[T
                     19:        F W="FREE TEXT","SET OF CODES","DATE","NUMERIC","POINTER","VARIABLE POINTER","K" I T[$E(W) S:W="K" W="MUMPS" W "   ",W
                     20:        K DA S DIVZ=$P(Y(0),U,3),DDC=$P(Y(0),U,5,99),(DIFLD,DA)=+Y
                     21:        G ^DIVR
                     22:        ;
                     23: Q      K DIR,DIRUT,N,P,Q,S,V,C
                     24:        Q
                     25:        ;
                     26: ALL    S DIR(0)="Y",DIR("??")="^D H^DIV"
                     27:        S DIR("A")="DO YOU MEAN ALL THE FIELDS IN THE FILE"
                     28:        D ^DIR K DIR S X="ALL"
                     29:        Q
                     30:        ;
                     31: FLDS   S DQI=0 F  S DQI=$O(^DD(A,DQI)) Q:DQI'>0  S Y=DQI,Y(0)=^(Y,0),DR=$P(Y(0),U,2) D
                     32:        .I 'DR,DR'["C" W !!!,"--",$P(Y(0),U),"--" D 1 Q
                     33:        Q
                     34: NEXTLVL        ;
                     35:        F  S (B,C)=$O(^DD(A,"SB",B)) Q:B'>0  D
                     36:        .S DIC="^DD(A,",DIC(0)="Z",X=$O(^DD(A,"SB",B,"")) D ^DIC Q:Y'>0
                     37:        .S DR=$P(Y(0),U,2),J(V)=A,P=+Y,V=V+1,I(V)=$P($P(Y(0),U,4),S,1) S:+I(V)'=I(V) I(V)=Q_I(V)_Q
                     38:        .I $P(^DD(+DR,.01,0),U,2)["W" Q
                     39:        .D NEXTLVL2
                     40:        Q
                     41: NEXTLVL2       ;
                     42:        N A,B S A=C,B=0
                     43:        D FLDS
                     44:        D RECURSE
                     45:        K J(V),I(V) S V=V-1
                     46:        Q
                     47: RECURSE        ;
                     48:        D NEXTLVL
                     49:        Q
                     50: H      W !!?5,"YES means that every field at this level in the file will"
                     51:        W !?5,"be checked to see if it conforms to the input transform."
                     52:        W !!?5,"NO means that ALL will be used to lookup a field in the"
                     53:        W !?5,"file which begins with the letters ALL, e.g., ALLERGIES."
                     54:        Q

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