1 | EASEZC2 ;ALB/jap - Compare 1010EZ Data with VistA Database ;10/16/00 13:08
|
---|
2 | ;;1.0;ENROLLMENT APPLICATION SYSTEM;**1,51**;Mar 15, 2001
|
---|
3 | ;
|
---|
4 | A408 ;get applicant financial data from VistA
|
---|
5 | N IENS,IEN,B,FF,FILE,SUBF,FLD,MAP,VDATA,KEY,EASAEL
|
---|
6 | S IENS=$G(INCREL(408,"V",1))
|
---|
7 | Q:IENS=""
|
---|
8 | ;associate each ien with file/subfile
|
---|
9 | S B=0 F FF=408.12,2,408.21,408.22 D
|
---|
10 | .S B=B+1,IEN=+$P(IENS,U,B)
|
---|
11 | .Q:'IEN Q:FF=2
|
---|
12 | .S (FILE,SUBF)=FF
|
---|
13 | .S FLD=0 F S FLD=$O(^TMP("EZINDEX",$J,"A",FILE,SUBF,FLD)) Q:FLD="" D
|
---|
14 | ..S MAP=FILE_U_SUBF_U_FLD
|
---|
15 | ..;get patient database data
|
---|
16 | ..S VDATA=$$GET^EASEZC1(IEN,MAP)
|
---|
17 | ..;store link in all 1010EZ elements associated with this file/subfile
|
---|
18 | ..;store patient data in tmp array and link in subfile #712.01; KEY is ien to file #711
|
---|
19 | ..S KEY=0 F S KEY=$O(^TMP("EZINDEX",$J,"A",FILE,SUBF,FLD,KEY)) Q:'KEY D
|
---|
20 | ...S ^TMP("EZDATA",$J,KEY,1,2)=VDATA
|
---|
21 | ...S EASAEL=$P($G(^TMP("EZDATA",$J,KEY,1,1)),U,3)
|
---|
22 | ...I EASAEL D LINKUP^EASEZU1(EASAPP,EASAEL,IEN)
|
---|
23 | ...I 'EASAEL,VDATA'="" D ADD71201^EASEZU1(EASAPP,KEY,IEN,1)
|
---|
24 | Q
|
---|
25 | ;
|
---|
26 | SP408 ;get spouse financial data from VistA
|
---|
27 | ;
|
---|
28 | N B,TYPE,MAP,M,MM,NSD,OUT,X,IEN,IENS,KEY,FILE,FF,FFF,FLD,SUBF,SUBIEN,VDATA,WHERE
|
---|
29 | ;get identifying data for database spouse
|
---|
30 | S IENS=$G(INCREL(408,"S",1))
|
---|
31 | Q:IENS=""
|
---|
32 | ;associate each ien with file/subfile
|
---|
33 | S B=0 F FF=408.12,408.13,408.21,408.22 D
|
---|
34 | .S B=B+1,IEN=+$P(IENS,U,B)
|
---|
35 | .Q:'IEN
|
---|
36 | .S (FILE,SUBF)=FF
|
---|
37 | .S FLD=0 F S FLD=$O(^TMP("EZINDEX",$J,"S",FILE,SUBF,FLD)) Q:FLD="" D
|
---|
38 | ..S MAP=FILE_U_SUBF_U_FLD
|
---|
39 | ..;get patient database data
|
---|
40 | ..S VDATA=$$GET^EASEZC1(IEN,MAP)
|
---|
41 | ..;store link in all 1010EZ elements associated with this file/subfile
|
---|
42 | ..;store patient data in tmp array and link in subfile #712.01; KEY is ien to file #711
|
---|
43 | ..S KEY=0 F S KEY=$O(^TMP("EZINDEX",$J,"S",FILE,SUBF,FLD,KEY)) Q:'KEY D
|
---|
44 | ...S ^TMP("EZDATA",$J,KEY,1,2)=VDATA
|
---|
45 | ...S EASAEL=$P($G(^TMP("EZDATA",$J,KEY,1,1)),U,3)
|
---|
46 | ...I EASAEL D LINKUP^EASEZU1(EASAPP,EASAEL,IEN)
|
---|
47 | ...I 'EASAEL,VDATA'="" D ADD71201^EASEZU1(EASAPP,KEY,IEN,1)
|
---|
48 | .;get data in subfile #408.1275
|
---|
49 | .I FILE=408.12 S SUBF=408.1275 S FLD=0 F S FLD=$O(^TMP("EZINDEX",$J,"S",FILE,SUBF,FLD)) Q:FLD="" D
|
---|
50 | ..S SUBIEN=$$I1275^EASEZI(IEN)
|
---|
51 | ..S MAP=FILE_U_SUBF_U_FLD,WHERE=IEN_";"_SUBIEN
|
---|
52 | ..S VDATA=$$GET^EASEZC1(WHERE,MAP)
|
---|
53 | ..;store link in all 1010EZ elements associated with this file/subfile
|
---|
54 | ..;store patient data in tmp array and link in subfile #712.01; KEY is ien to file #711
|
---|
55 | ..S KEY=0 F S KEY=$O(^TMP("EZINDEX",$J,"S",FILE,SUBF,FLD,KEY)) Q:'KEY D
|
---|
56 | ...S ^TMP("EZDATA",$J,KEY,1,2)=VDATA
|
---|
57 | ...S EASAEL=$P($G(^TMP("EZDATA",$J,KEY,1,1)),U,3)
|
---|
58 | ...I EASAEL D LINKUP^EASEZU1(EASAPP,EASAEL,WHERE)
|
---|
59 | ...I 'EASAEL,VDATA'="" D ADD71201^EASEZU1(EASAPP,KEY,WHERE,1)
|
---|
60 | Q
|
---|
61 | ;
|
---|
62 | C1N408 ;get child/dependent financial data from VistA
|
---|
63 | N B,PERS,EZ,PT,TYPE,GRP,GRP1,MAP,M,MM,NSD,OUT,X,IEN,IENS,FLD,FF,FFF,FILE,SUBF,SUBIEN,VDATA,WHERE
|
---|
64 | ;
|
---|
65 | ;get identifying data for 1010EZ child dependents
|
---|
66 | K PERS("EZ")
|
---|
67 | S TYPE="CHILD1" S X=$$NSD^EASEZU3(EASAPP,TYPE,1) I X'="" S PERS("EZ",TYPE,1)=X
|
---|
68 | S TYPE="CHILD(N)",M=0,OUT=0 F S M=M+1 D Q:OUT
|
---|
69 | .S X=$$NSD^EASEZU3(EASAPP,TYPE,M)
|
---|
70 | .I X="" S OUT=1 Q
|
---|
71 | .S PERS("EZ",TYPE,M)=X
|
---|
72 | ;
|
---|
73 | ;get identifying data for all database dependents
|
---|
74 | K PERS("PT")
|
---|
75 | S M=0,MM=0 F S M=$O(INCREL(408,"C",M)) Q:'M D
|
---|
76 | .S IEN=+$P(INCREL(408,"C",M),U,2)
|
---|
77 | .S NSD="" F FLD=".01",".09",".03" D
|
---|
78 | ..S FFF="408.13^408.13^"_FLD S X=$$GET^EASEZC1(IEN,FFF)
|
---|
79 | ..I FLD=".09" S X=$$SSNOUT^EASEZT1(X)
|
---|
80 | ..S NSD=NSD_X_U
|
---|
81 | .S MM=MM+1,PERS("PT","CHILD",MM)=NSD,PERS("PT","CHILD",MM,"IENS")=INCREL(408,"C",M)
|
---|
82 | ;
|
---|
83 | ;match each EZ child dependent to database dependent if possible
|
---|
84 | F TYPE="CHILD1","CHILD(N)" S M=0 F S M=$O(PERS("EZ",TYPE,M)) Q:'M D
|
---|
85 | .S EZ=PERS("EZ",TYPE,M)
|
---|
86 | .S MM=0 F S MM=$O(PERS("PT","CHILD",MM)) Q:'MM S PT=PERS("PT","CHILD",MM) D
|
---|
87 | ..I ($P(EZ,U,2,3)=$P(PT,U,2,3))!($$CMORE^EASEZC2(EZ,PT)) D
|
---|
88 | ...S PERS("EZ",TYPE,M,"IENS")=PERS("PT","CHILD",MM,"IENS")
|
---|
89 | ...K PERS("PT","CHILD",MM)
|
---|
90 | ;
|
---|
91 | ;get identifying data for child in database
|
---|
92 | F TYPE="CHILD1","CHILD(N)" S M=0 F S M=$O(PERS("EZ",TYPE,M)) Q:'M D
|
---|
93 | .S IENS=$G(PERS("EZ",TYPE,M,"IENS"))
|
---|
94 | .Q:IENS=""
|
---|
95 | .S GRP=$S(TYPE="CHILD1":"C1",1:"CN")
|
---|
96 | .;associate each ien with file/subfile
|
---|
97 | .S B=0 F FF=408.12,408.13,408.21,408.22 D
|
---|
98 | ..S B=B+1,IEN=+$P(IENS,U,B)
|
---|
99 | ..Q:'IEN
|
---|
100 | ..S (FILE,SUBF)=FF
|
---|
101 | ..S FLD=0 F S FLD=$O(^TMP("EZINDEX",$J,GRP,FILE,SUBF,FLD)) Q:FLD="" D
|
---|
102 | ...S MAP=FILE_U_SUBF_U_FLD
|
---|
103 | ...S GRP1=GRP I EASVRSN>5.99,FILE=408.21,".08;.14;.17"[FLD S GRP1="CN"
|
---|
104 | ...;get patient database data
|
---|
105 | ...S VDATA=$$GET^EASEZC1(IEN,MAP)
|
---|
106 | ...;I FILE=408.21 W !,FLD,?8,TYPE,?18,M,?21,VDATA ;instrumentation for testing
|
---|
107 | ...;store link in all 1010EZ elements associated with this file/subfile
|
---|
108 | ...;store patient data in tmp array and link in subfile #712.01; KEY is ien to file #711
|
---|
109 | ...S KEY=$O(^TMP("EZINDEX",$J,GRP1,FILE,SUBF,FLD,0)) Q:'KEY D
|
---|
110 | ....S MM=M I EASVRSN>5.99,FILE=408.21,".08;.14;.17"[FLD S:(TYPE="CHILD(N)") MM=M+1
|
---|
111 | ....;I FILE=408.21 W !,"*",FLD,?8,TYPE,?18,MM,?21,VDATA ;instrumentation for testing
|
---|
112 | ....S ^TMP("EZDATA",$J,KEY,MM,2)=VDATA
|
---|
113 | ....S EASAEL=$P($G(^TMP("EZDATA",$J,KEY,MM,1)),U,3)
|
---|
114 | ....I EASAEL D LINKUP^EASEZU1(EASAPP,EASAEL,IEN)
|
---|
115 | ....I 'EASAEL,VDATA'="" D ADD71201^EASEZU1(EASAPP,KEY,IEN,1)
|
---|
116 | ..;get data in subfile #408.1275
|
---|
117 | ..I FILE=408.12 S SUBF=408.1275 S FLD=0 F S FLD=$O(^TMP("EZINDEX",$J,GRP,FILE,SUBF,FLD)) Q:FLD="" D
|
---|
118 | ...S SUBIEN=$$I1275^EASEZI(IEN)
|
---|
119 | ...S MAP=FILE_U_SUBF_U_FLD,WHERE=IEN_";"_SUBIEN
|
---|
120 | ...S VDATA=$$GET^EASEZC1(WHERE,MAP)
|
---|
121 | ...;store link in all 1010EZ elements associated with this file/subfile
|
---|
122 | ...;store patient data in tmp array and link in subfile #712.01; KEY is ien to file #711
|
---|
123 | ...S KEY=0 F S KEY=$O(^TMP("EZINDEX",$J,GRP,FILE,SUBF,FLD,KEY)) Q:'KEY D
|
---|
124 | ....S ^TMP("EZDATA",$J,KEY,MM,2)=VDATA
|
---|
125 | ....S EASAEL=$P($G(^TMP("EZDATA",$J,KEY,MM,1)),U,3)
|
---|
126 | ....I EASAEL D LINKUP^EASEZU1(EASAPP,EASAEL,WHERE)
|
---|
127 | ....I 'EASAEL,VDATA'="" D ADD71201^EASEZU1(EASAPP,KEY,WHERE,1)
|
---|
128 | Q
|
---|
129 | ;
|
---|
130 | CMORE(EZ,PT) ;
|
---|
131 | ;input EZ = name^ssn^dob of child on 1010EZ
|
---|
132 | ; PT = name^ssn^dob of child in database
|
---|
133 | ;output MATCH = 0, if no match
|
---|
134 | N PSSN,PDOB,ESSN,EDOB,K,MATCH,MATCH1,MATCH2
|
---|
135 | S (MATCH,MATCH1,MATCH2)=0
|
---|
136 | S ESSN=$P(EZ,U,2),EDOB=$P(EZ,U,3),PSSN=$P(PT,U,2),PDOB=$P(PT,U,3)
|
---|
137 | S MATCH1=0 F K=1,2,3,5,6,8,9,10,11 I $P(ESSN,U,K)=$P(PSSN,U,K) S MATCH1=MATCH1+1
|
---|
138 | I $P(EDOB,"/",3)=$P(PDOB,"/",3) S MATCH2=1
|
---|
139 | I MATCH1>7,MATCH2 S MATCH=1
|
---|
140 | Q MATCH
|
---|