1 | DIARR6 ;SFISC/DCM-PROCESS ARCHIVED FILE WITH INDEX ;11/18/92 11:49 AM
|
---|
2 | ;;22.0;VA FileMan;;Mar 30, 1999
|
---|
3 | ;Per VHA Directive 10-93-142, this routine should not be modified.
|
---|
4 | S DIARFILE=$P(DIARL,U,3),DIARFN=+$P(DIARL,U,2)
|
---|
5 | S DIARREC=$P(DIARL,U,4,99)
|
---|
6 | F DIARXX=1:1 S DIARFLD=$P(DIARREC,U,DIARXX) Q:DIARFLD="" S DIARFNO=$P(DIARFLD,":"),DIARFNA=$P(DIARFLD,":",2) D
|
---|
7 | . I +DIARFNO=.01 S DIAR01=DIARFNA
|
---|
8 | . S DIARPC(DIARXX)=DIARFNO_U_DIARFNA
|
---|
9 | . S:+DIARFNO'=.01 DIARID(DIARFNO)=DIARFNA_U_DIARFNO
|
---|
10 | . S DIARCNT=DIARXX
|
---|
11 | . Q
|
---|
12 | S DIARCTR=0,DIARFLGT=0
|
---|
13 | F X DIARX Q:DIARL["$DAT" S DIARCTR=DIARCTR+1 F DIARXX=1:1:DIARCNT S DIARFLD=$P(DIARL,U,DIARXX) S DIARFNA=$P(DIARPC(DIARXX),U,2),DIARFNO=+DIARPC(DIARXX),^TMP("DIARHLP",$J,DIARCTR,DIARFNO)=DIARFNA_" = "_DIARFLD D FLGTH
|
---|
14 | Q
|
---|
15 | ;
|
---|
16 | FLGTH S $P(DIARPC(DIARXX),U,3)=$S($L(DIARFLD)>+$P(DIARPC(DIARXX),U,3):$L(DIARFLD),1:+$P(DIARPC(DIARXX),U,3))
|
---|
17 | Q
|
---|
18 | ;
|
---|
19 | PROC S DIARIXCT=0 K DIARRF
|
---|
20 | PROC1 F X DIARX Q:DIARL["$DAT" G PROC1:DIARL["$INDEX" D PROC2 D MATCH^DIARR2 K:'$G(DIARIXX(DIARIXCT)) DIARIXX(DIARIXCT) G PROC1
|
---|
21 | Q:'$D(DIARIXX)
|
---|
22 | S (DIARIXCT,DIARXX)=1 D:$G(DIARIXX(DIARIXCT)) FOUND
|
---|
23 | F S DIARXX=$O(DIARIXX(DIARXX)) Q:DIARXX'>0 D PROC1A
|
---|
24 | Q
|
---|
25 | ;
|
---|
26 | PROC1A F X DIARX Q:DIARL["#$#" I DIARL["$DAT" S DIARIXCT=DIARIXCT+1 I DIARIXCT=DIARXX D FOUND Q
|
---|
27 | Q
|
---|
28 | ;
|
---|
29 | PROC2 K DIARA S DIARIXCT=DIARIXCT+1,DIARIXX(DIARIXCT)=""
|
---|
30 | F DIARXX=1:1:DIARCNT S DIARVAL=$P(DIARL,U,DIARXX) D PROC2A
|
---|
31 | Q
|
---|
32 | ;
|
---|
33 | PROC2A I +$P(DIARPC(DIARXX),U)=.01 S DIARA(.01)=DIARVAL Q
|
---|
34 | S DIARA("ID",+$P(DIARPC(DIARXX),U))=DIARVAL
|
---|
35 | Q
|
---|
36 | ;
|
---|
37 | FOUND K ^TMP("DIARFG",$J) S DIARZ=1 D SET
|
---|
38 | F DIARZ=DIARZ+1:1 X DIARX D SET I DIARL["$END DAT" Q
|
---|
39 | F DIARZ=1:1 S DIARY=$P(DIARIXX(DIARIXCT),",",DIARZ) Q:DIARY="" S DIARRF(DIARY)=$S($D(DIARRF(DIARY)):DIARRF(DIARY)+1,1:0) D SETFG
|
---|
40 | Q
|
---|
41 | ;
|
---|
42 | SET S ^TMP("DIARFG",$J,DIARZ)=DIARL
|
---|
43 | Q
|
---|
44 | ;
|
---|
45 | SETFG S %X="^TMP(""DIARFG"",$J,",%Y="^TMP(""DIAR"",$J,DIARY,DIARRF(DIARY)," D %XY^%RCR
|
---|
46 | Q
|
---|