1 | EASEZPDG ;ALB/AMA/GTS/CMF - PRINT 10-10EZ OR EZR FROM DG OPTIONS
|
---|
2 | ;;1.0;ENROLLMENT APPLICATION SYSTEM;**57**;Mar 15, 2001
|
---|
3 | ;
|
---|
4 | Q
|
---|
5 | ;
|
---|
6 | ENEZR(EASDFN,EASMTIEN) ;DBIA 4600 - PRINT THE 10-10EZR FROM DG OPTIONS
|
---|
7 | ; INPUT:
|
---|
8 | ; EASDFN - POINTER TO THE PATIENT FILE (#2) - required
|
---|
9 | ; EASMTIEN - POINTER TO MEANS TEST FILE (#408.31) - optional
|
---|
10 | ; (+ien, "", or 0)
|
---|
11 | ; OUTPUT:
|
---|
12 | ; (+ien or ""):ZTSK - TASKMAN JOB NUMBER
|
---|
13 | ; (0):mt ien (forces test lookup only)
|
---|
14 | ;
|
---|
15 | N EASFLAG,X
|
---|
16 | S EASFLAG="EZR"
|
---|
17 | S EASDFN=$G(EASDFN)
|
---|
18 | S EASMTIEN=$G(EASMTIEN)
|
---|
19 | ;
|
---|
20 | S X=$$ENEZ(EASDFN,EASMTIEN)
|
---|
21 | Q X
|
---|
22 | ;
|
---|
23 | ENEZ(EASDFN,EASMTIEN) ;DBIA 4600 - PRINT THE 10-10EZ FROM DG OPTIONS
|
---|
24 | ; INPUT:
|
---|
25 | ; EASDFN - POINTER TO THE PATIENT FILE (#2) - required
|
---|
26 | ; EASMTIEN - POINTER TO MEANS TEST FILE (#408.31) - optional
|
---|
27 | ; (+ien, "", or 0)
|
---|
28 | ; OUTPUT:
|
---|
29 | ; (+ien or ""):ZTSK - TASKMAN JOB NUMBER
|
---|
30 | ; (0):mt ien (forces test lookup only)
|
---|
31 | ;
|
---|
32 | S EASDFN=$G(EASDFN)
|
---|
33 | S EASMTIEN=$G(EASMTIEN)
|
---|
34 | I EASMTIEN=0 Q $$PICK^EASEZPVU(EASDFN,0)
|
---|
35 | E S EASMTIEN=$$PICK^EASEZPVU(EASDFN,EASMTIEN)
|
---|
36 | ;
|
---|
37 | ;If any EAS applications exist, ensure they're all filed
|
---|
38 | N X,INPROG
|
---|
39 | S X=0,INPROG=0 F S X=$O(^EAS(712,"AC",EASDFN,X)) Q:'X!INPROG D
|
---|
40 | . I $$GET1^DIQ(712,X,7.1)="" D
|
---|
41 | . . N IX,DATE F IX="REV","PRT","SIG" Q:INPROG D
|
---|
42 | . . . S DATE=0 F S DATE=$O(^EAS(712,IX,DATE)) Q:'DATE!INPROG D
|
---|
43 | . . . . I $D(^EAS(712,IX,DATE,X)) S INPROG=1
|
---|
44 | I INPROG D Q 0
|
---|
45 | . N DIR
|
---|
46 | . W !!,"No data have been found for the selected patient, or"
|
---|
47 | . W !,"the patient may have an on-line 10-10EZ application"
|
---|
48 | . W !,"in progress. The 10-10EZ"_$S($G(EASFLAG)="EZR":"R",1:"")_" form shall not be printed."
|
---|
49 | . S DIR(0)="E" D ^DIR
|
---|
50 | ;
|
---|
51 | N %ZIS,ZTDESC,ZTIO,ZTRTN,ZTSAVE,ZTSK,ZUSR,POP,ERR
|
---|
52 | ;
|
---|
53 | W !!?5,*7,"Do not select a slave device for output."
|
---|
54 | W !?5,"This output requires a 132 column output printer."
|
---|
55 | W !?5,"Output to SCREEN will be unreadable.",!
|
---|
56 | ;
|
---|
57 | ;
|
---|
58 | DEV S %ZIS="QM"
|
---|
59 | S %ZIS("S")="I $P($G(^(1)),U)'[""SLAVE""&($P($G(^(0)),U)'[""SLAVE"")"
|
---|
60 | S %ZIS("B")=""
|
---|
61 | ;S IOP="Q"
|
---|
62 | D ^%ZIS
|
---|
63 | ;
|
---|
64 | I POP D G EXIT
|
---|
65 | . I $D(IO("Q")) K IO("Q")
|
---|
66 | . W !,"Print request cancelled!"
|
---|
67 | . Q
|
---|
68 | I IO=IO(0),$E(IOST,1,2)="C-" D G DEV
|
---|
69 | . W !,*7,"CANNOT QUEUE TO HOME DEVICE!",!
|
---|
70 | . Q
|
---|
71 | ;
|
---|
72 | I $G(EASFLAG)="EZR" S ZTDESC="1010EZR PRINT"
|
---|
73 | E S ZTDESC="1010EZ PRINT"
|
---|
74 | S ZUSR=DUZ,ZTRTN="EN^EASEZPDG"
|
---|
75 | ;
|
---|
76 | F X="ZUSR","EASDFN","EASMTIEN","EASFLAG" S ZTSAVE(X)=""
|
---|
77 | D ^%ZTLOAD
|
---|
78 | D HOME^%ZIS
|
---|
79 | ;
|
---|
80 | EXIT Q +$G(ZTSK)
|
---|
81 | ;
|
---|
82 | EN ;BACKGROUND JOB ENTRY POINT TO PRINT EZ/EZR FROM DG OPTIONS
|
---|
83 | ;
|
---|
84 | N EASAPP,C2711
|
---|
85 | S EASAPP=0
|
---|
86 | I '$G(EASVRSN) S EASVRSN=6
|
---|
87 | ;
|
---|
88 | ;SET UP ^TMP("EZDATA" AND ^TMP("EZINDEX" FROM ^EAS(711,"A","A"
|
---|
89 | D LOCAL711^EASEZU2
|
---|
90 | ;
|
---|
91 | S C2711=+$$KEY711^EASEZU1("TYPE OF BENEFIT-ENROLLMENT")
|
---|
92 | D VISTA^EASEZPVD(EASDFN,EASMTIEN)
|
---|
93 | ;
|
---|
94 | ;SET UP ^TMP("EZTEMP" AND ^TMP("EZDISP" GLOBALS
|
---|
95 | D SORT^EASEZC3(0)
|
---|
96 | ;
|
---|
97 | ;SET UP PRINT VARIABLES
|
---|
98 | N EALNE,EAINFO,EAABRT,EAADL,EAMULT,EAAD,EACNT,KEY
|
---|
99 | D SETUP^EASEZPDU(.EALNE,.EAINFO)
|
---|
100 | ;
|
---|
101 | ;DETERMINE WHICH FORM TO PRINT
|
---|
102 | I $G(EASFLAG)="EZR" D EZR I 1
|
---|
103 | E D EZ
|
---|
104 | ;
|
---|
105 | K ^TMP("EASEZ",$J),^TMP("EASEZR",$J)
|
---|
106 | K ^TMP("EZDATA",$J),^TMP("EZRDATA",$J)
|
---|
107 | K ^TMP("EZINDEX",$J),^TMP("EZRINDEX",$J)
|
---|
108 | K ^TMP("EZTEMP",$J),^TMP("EZRTEMP",$J)
|
---|
109 | K ^TMP("EZDISP",$J),^TMP("EZRDISP",$J)
|
---|
110 | Q
|
---|
111 | ;
|
---|
112 | EZR ; Entry point to print 1010EZR
|
---|
113 | ;
|
---|
114 | N EASDG,EAADL,EAAD,EACNT
|
---|
115 | M ^TMP("EASEZR",$J)=^TMP("EASEZ",$J) K ^TMP("EASEZ",$J)
|
---|
116 | M ^TMP("EZRDATA",$J)=^TMP("EZDATA",$J) K ^TMP("EZDATA",$J)
|
---|
117 | M ^TMP("EZRINDEX",$J)=^TMP("EZINDEX",$J) K ^TMP("EZINDEX",$J)
|
---|
118 | M ^TMP("EZRTEMP",$J)=^TMP("EZTEMP",$J) K ^TMP("EZTEMP",$J)
|
---|
119 | M ^TMP("EZRDISP",$J)=^TMP("EZDISP",$J) K ^TMP("EZDISP",$J)
|
---|
120 | ;
|
---|
121 | D PAGE1^EASEZRPU
|
---|
122 | D EN^EASEZRP1(.EALNE,.EAINFO)
|
---|
123 | ;
|
---|
124 | D PAGE2^EASEZRPP
|
---|
125 | S EASDG=1 ;FLAG VARIABLE TO SIGNIFY PRINTING FROM DG
|
---|
126 | D EN^EASEZRP2(.EALNE,.EAINFO,EASDG)
|
---|
127 | ;
|
---|
128 | D NETEZR^EASEZPDU(.EALNE,.EAINFO)
|
---|
129 | ;
|
---|
130 | ;Print additional insurance pages if more than 1 insurance company
|
---|
131 | F EAADL=1:1 Q:'$D(^TMP("EZRTEMP",$J,"IA",EAADL)) D
|
---|
132 | . S EAAD=1
|
---|
133 | . D PAGEI^EASEZRPU(EAADL)
|
---|
134 | I $G(EAAD) D EN^EASEZRPI(.EALNE,.EAINFO)
|
---|
135 | ;
|
---|
136 | ;Print additional dependent pages if more than 1 dependent
|
---|
137 | S EAAD=0 F EAADL=1:1 Q:'$D(^TMP("EZRTEMP",$J,"IIB",EAADL)) D
|
---|
138 | . S EAAD=1 ;FLAG THAT THERE ARE ADDITIONAL DEPENDENTS
|
---|
139 | . D PAGEN^EASEZRPU(EAADL)
|
---|
140 | I EAAD D EN^EASEZRPD(.EALNE,.EAINFO)
|
---|
141 | ;
|
---|
142 | ;;RESORT DEPENDENT SUBSCRIPTS TO ENSURE PROPER NUMERICAL ORDER
|
---|
143 | ;K ^TMP("EZRSORT",$J)
|
---|
144 | ;M ^TMP("EZRSORT",$J,"IIF")=^TMP("EZRTEMP",$J,"IIF")
|
---|
145 | ;K ^TMP("EZRTEMP",$J,"IIF")
|
---|
146 | ;S EAADL=0,EACNT=1 F S EAADL=$O(^TMP("EZRSORT",$J,"IIF",EAADL)) Q:'EAADL D
|
---|
147 | ;. N EAQUES
|
---|
148 | ;. S EACNT=EACNT+1
|
---|
149 | ;. S EAQUES="" F S EAQUES=$O(^TMP("EZRSORT",$J,"IIF",EAADL,EAQUES)) Q:EAQUES="" D
|
---|
150 | ;. . S ^TMP("EZRTEMP",$J,"IIF",EACNT,EAQUES)=^TMP("EZRSORT",$J,"IIF",EAADL,EAQUES)
|
---|
151 | ;K ^TMP("EZRSORT",$J)
|
---|
152 | ;
|
---|
153 | ;Print additional dependent financial pages if more
|
---|
154 | ;than 1 dependent, starting with the 2nd one
|
---|
155 | ;(since Child 1 info already displayed on pages 2 & 3)
|
---|
156 | S EAAD=0,EAADL=1 F S EAADL=$O(^TMP("EZRTEMP",$J,"IIF",EAADL)) Q:'EAADL D
|
---|
157 | . S EAAD=1,KEY=+$$KEY711^EASEZU1("CHILD(N) CHILD #")
|
---|
158 | . S ^TMP("EZRTEMP",$J,"IIF",EAADL,"7.")=KEY_"^CHILD "_EAADL_"^1"
|
---|
159 | . D PAGEDFF^EASEZRPP(EAADL)
|
---|
160 | ;
|
---|
161 | ;SINCE ANY ADDITIONAL DEPENDENTS' NET WORTH AMOUNTS (SECTION IIG)
|
---|
162 | ;ARE INCLUDED IN THE VET'S AMOUNT, DISPLAY A MESSAGE ON THE FORM
|
---|
163 | I EAAD D
|
---|
164 | . N TEMP,HDR,FTR,BEGF,BEGG,ADFF,FNP,GNP
|
---|
165 | . S TEMP="EASEZR",HDR="HDR^EASEZRPF(.EALNE,.EAINFO)"
|
---|
166 | . S FTR="FT^EASEZRPF(.EALNE,.EAINFO)",BEGF="BEGINF^EASEZRPM"
|
---|
167 | . S BEGG="BEGING^EASEZRPM",ADFF="ADFF^EASEZRPM"
|
---|
168 | . S FNP=9,GNP=7
|
---|
169 | . D NETMSG
|
---|
170 | ;
|
---|
171 | Q
|
---|
172 | ;
|
---|
173 | EZ ;PRINT THE 10-10EZ FORM (copied from EASEZP6F)
|
---|
174 | ;
|
---|
175 | N EASDG,EAADL,EAAD,EACNT
|
---|
176 | D PAGE1^EASEZP6U
|
---|
177 | D PAGE1^EASEZPU3
|
---|
178 | D EN^EASEZP61(.EALNE,.EAINFO)
|
---|
179 | ;
|
---|
180 | D PAGE2^EASEZPU2
|
---|
181 | D EN^EASEZP62(.EALNE,.EAINFO)
|
---|
182 | ;
|
---|
183 | S EASDG=1 ;FLAG VARIABLE TO SIGNIFY PRINTING FROM DG
|
---|
184 | D EN^EASEZP63(.EALNE,.EAINFO,EASDG)
|
---|
185 | D NETEZ^EASEZPDU(.EALNE,.EAINFO)
|
---|
186 | ;
|
---|
187 | ;Print additional insurance pages if more than 1 insurance company
|
---|
188 | F EAADL=1:1 Q:'$D(^TMP("EZTEMP",$J,"IA",EAADL)) D
|
---|
189 | . S EAAD=1
|
---|
190 | . D PAGEI^EASEZPU3(EAADL)
|
---|
191 | I $G(EAAD) D EN^EASEZP6I(.EALNE,.EAINFO)
|
---|
192 | ;
|
---|
193 | ;Print additional dependent pages if more than 1 dependent
|
---|
194 | S EAAD=0 F EAADL=1:1 Q:'$D(^TMP("EZTEMP",$J,"IIB",EAADL)) D
|
---|
195 | . S EAAD=1 ;FLAG THAT THERE ARE ADDITIONAL DEPENDENTS
|
---|
196 | . D PAGEN^EASEZPU3(EAADL)
|
---|
197 | I EAAD D EN^EASEZP6D(.EALNE,.EAINFO)
|
---|
198 | ;
|
---|
199 | K ^AMAB("EASEZ"),^AMAB("EZDATA"),^AMAB("EZINDEX"),^AMAB("EZTEMP"),^AMAB("EZDISP")
|
---|
200 | M ^AMAB("EASEZ",$J)=^TMP("EASEZ",$J)
|
---|
201 | M ^AMAB("EZDATA",$J)=^TMP("EZDATA",$J)
|
---|
202 | M ^AMAB("EZINDEX",$J)=^TMP("EZINDEX",$J)
|
---|
203 | M ^AMAB("EZTEMP",$J)=^TMP("EZTEMP",$J)
|
---|
204 | M ^AMAB("EZDISP",$J)=^TMP("EZDISP",$J)
|
---|
205 | ;
|
---|
206 | ;;RESORT DEPENDENT SUBSCRIPTS TO ENSURE PROPER NUMERICAL ORDER
|
---|
207 | ;K ^TMP("EZSORT",$J)
|
---|
208 | ;M ^TMP("EZSORT",$J,"IIF")=^TMP("EZTEMP",$J,"IIF")
|
---|
209 | ;K ^TMP("EZTEMP",$J,"IIF")
|
---|
210 | ;S (EAADL,EACNT)=1 F S EAADL=$O(^TMP("EZSORT",$J,"IIF",EAADL)) Q:'EAADL D
|
---|
211 | ;. N EAQUES
|
---|
212 | ;. S EACNT=EACNT+1
|
---|
213 | ;. S EAQUES="" F S EAQUES=$O(^TMP("EZSORT",$J,"IIF",EAADL,EAQUES)) Q:EAQUES="" D
|
---|
214 | ;. . S ^TMP("EZTEMP",$J,"IIF",EACNT,EAQUES)=^TMP("EZSORT",$J,"IIF",EAADL,EAQUES)
|
---|
215 | ;K ^TMP("EZSORT",$J)
|
---|
216 | ;
|
---|
217 | ;Print additional dependent financial pages if more
|
---|
218 | ;than 1 dependent, starting with the 2nd one
|
---|
219 | ;(since Child 1 info already displayed on pages 2 & 3)
|
---|
220 | S EAAD=0,EAADL=1 F S EAADL=$O(^TMP("EZTEMP",$J,"IIF",EAADL)) Q:'EAADL D
|
---|
221 | . S EAAD=1,KEY=+$$KEY711^EASEZU1("CHILD(N) CHILD #")
|
---|
222 | . S ^TMP("EZTEMP",$J,"IIF",EAADL,"7.")=KEY_"^CHILD "_EAADL_"^1"
|
---|
223 | . D PAGEDFF^EASEZPU2(EAADL)
|
---|
224 | ;
|
---|
225 | ;SINCE ANY ADDITIONAL DEPENDENTS' NET WORTH AMOUNTS (SECTION IIG)
|
---|
226 | ;ARE INCLUDED IN THE VET'S AMOUNT, DISPLAY A MESSAGE ON THE FORM
|
---|
227 | I EAAD D
|
---|
228 | . ;PRINT IIF AND IIG SECTIONS
|
---|
229 | . N TEMP,HDR,FTR,BEGF,BEGG,ADFF,FNP,GNP
|
---|
230 | . S TEMP="EASEZ",HDR="HDR^EASEZP6F(.EALNE,.EAINFO)"
|
---|
231 | . S FTR="FT^EASEZP6F(.EALNE,.EAINFO)",BEGF="BEGINF^EASEZP6M"
|
---|
232 | . S BEGG="BEGING^EASEZP6M",ADFF="ADFF^EASEZP6M"
|
---|
233 | . S FNP=9,GNP=7
|
---|
234 | . D NETMSG
|
---|
235 | ;
|
---|
236 | Q
|
---|
237 | ;
|
---|
238 | NETMSG ;PRINT THE MESSAGE FOR THE NET WORTH SECTION
|
---|
239 | ;
|
---|
240 | N EASF,DEPF,DFCNT,NEWPG
|
---|
241 | ;
|
---|
242 | S EASF=$NA(^TMP(TEMP,$J,"DFF"))
|
---|
243 | I $O(@EASF@(1)) D @BEGF
|
---|
244 | ;
|
---|
245 | ;Start printing with 2nd dependent
|
---|
246 | S DEPF=1,DFCNT=0 F S DEPF=$O(@EASF@(DEPF)) Q:'DEPF D
|
---|
247 | . S DFCNT=DFCNT+1
|
---|
248 | . ;Check to see if a new page is needed
|
---|
249 | . I (DFCNT>1),'((DFCNT-1)#FNP) D
|
---|
250 | . . D @FTR
|
---|
251 | . . D @BEGF
|
---|
252 | . I (DFCNT#FNP)'=1 W !?131,$C(13) W:EALNE("ULC")="-" ! W EALNE("UL")
|
---|
253 | . D @ADFF
|
---|
254 | ;
|
---|
255 | ;PRINT NET WORTH MESSAGE IF THERE ARE *any* ADDITIONAL DEPENDENTS
|
---|
256 | I ((DFCNT#FNP)'=0),((DFCNT#FNP)'=GNP) W !!,?131,$C(13) W:EALNE("ULC")="-" ! W EALNE("UL")
|
---|
257 | ;At the end of IIF, to find when to jump to the next page,
|
---|
258 | ;55 print lines, minus 3 lines for Section IIG title header,
|
---|
259 | ;minus the number of lines already used on current page,
|
---|
260 | ;divided by the number of lines for a Section IIG entry
|
---|
261 | S NEWPG=(52-((DFCNT#FNP)*6))\7
|
---|
262 | I '(DFCNT#FNP)!'NEWPG!(NEWPG=GNP) S NEWPG=GNP D @FTR
|
---|
263 | D @BEGG
|
---|
264 | W !!?23,"ANY PREVIOUS CALENDAR YEAR NET WORTH AMOUNTS FROM ANY ADDITIONAL DEPENDENT CHILD(REN)"
|
---|
265 | W !!?29,"WILL BE INCLUDED IN THE VETERAN'S PREVIOUS CALENDAR YEAR NET WORTH AMOUNTS.",!
|
---|
266 | D @FTR
|
---|
267 | ;
|
---|
268 | Q
|
---|