File:  [Coherent Logic Development] / freem_fileman / USER / DIV.m
Revision 1.1: download - view: text, annotated - select for diffs
Mon Apr 28 14:13:21 2025 UTC (3 months ago) by snw
Branches: MAIN
CVS tags: HEAD
Restructure repository

    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>