| 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
 | 
|---|