| 1 | EASECPC1 ;ALB/LBD,CKN - LTC CoPayment Report continuation ; 6-FEB-2002
 | 
|---|
| 2 |  ;;1.0;ENROLLMENT APPLICATION SYSTEM;**7,24,40**;Mar 15, 2001
 | 
|---|
| 3 |  ;
 | 
|---|
| 4 |  ; This routine is a continuation of EASECPC.
 | 
|---|
| 5 |  ;
 | 
|---|
| 6 |  ; Input:  DFN - Patient file IEN
 | 
|---|
| 7 |  ;         DGMTI - LTC Copay Test IEN (file #408.31)
 | 
|---|
| 8 |  ;         DGMTDT - LTC Copay Test Date
 | 
|---|
| 9 |  ;         MAXRT - Maximum daily copay rates for LTC (OP^IP)
 | 
|---|
| 10 |  ;         EASRPT - Report type:  1=Institutional (IP)
 | 
|---|
| 11 |  ;                                2=Non-Institutional (OP)
 | 
|---|
| 12 |  ;         EASRDT - Report start date
 | 
|---|
| 13 |  ;         EASADM - LTC admission date (only if EASRPT=1)
 | 
|---|
| 14 |  ;
 | 
|---|
| 15 | START ; Generate Report
 | 
|---|
| 16 |  N ARRY,IPRPT,DGSP,SRIC,LSEP,DECINF,AGRPAY,ERR
 | 
|---|
| 17 |  I $G(ZTSK) S ZTREQ="@"
 | 
|---|
| 18 |  D INIT(EASRDT,.ARRY)
 | 
|---|
| 19 |  D BLDTBL(.ARRY) Q:$G(ERR)
 | 
|---|
| 20 |  D PRINT
 | 
|---|
| 21 |  Q
 | 
|---|
| 22 | PRINT ; Print the Report
 | 
|---|
| 23 |  N CRT,PAGE,RPTDT,LINE,HDR,CALC1,CALC2,SIDX,EIDX,MNTH,NAME,SSN,DOB,LOS
 | 
|---|
| 24 |  D PRTVAR
 | 
|---|
| 25 |  U IO
 | 
|---|
| 26 |  D HEADER
 | 
|---|
| 27 |  W !,$S(DGSP:"MARRIED",LSEP:"LEGALLY SEPARATED",1:"SINGLE")
 | 
|---|
| 28 |  W:SRIC ?15,"SPOUSE RESIDING IN THE COMMUNITY"
 | 
|---|
| 29 |  I DECINF,AGRPAY W !,"*** DECLINED TO PROVIDE INCOME INFORMATION -- AGREED TO PAY COPAYMENTS ***"
 | 
|---|
| 30 |  I AGRPAY=0 W !,"*** VETERAN IS INELIGIBLE FOR LTC SERVICES -- REFUSED TO SIGN 10-10EC ***"
 | 
|---|
| 31 |  W !,"LTC COPAY TEST DATE: ",$$FMTE^XLFDT(DGMTDT)
 | 
|---|
| 32 |  W:$G(EASADM) ?47,"LTC ADMISSION DATE: ",$$FMTE^XLFDT(EASADM)
 | 
|---|
| 33 |  W !!!,"LTC COPAYMENT CALCULATION"_$S(IPRPT:"S:",1:":")
 | 
|---|
| 34 |  W ! W:IPRPT "FOR DAYS 1-180  " W CALC1
 | 
|---|
| 35 |  I IPRPT W !,"FOR DAYS 181+   " W CALC2
 | 
|---|
| 36 |  ;
 | 
|---|
| 37 |  S SIDX=1,EIDX=6
 | 
|---|
| 38 |  W !!,"              "
 | 
|---|
| 39 |  F MNTH=1:1:6 W $J($P(ARRY(MNTH),"^"),11)
 | 
|---|
| 40 |  I IPRPT D PRINTROW("TOT ASSETS    ",SIDX,EIDX,9)
 | 
|---|
| 41 |  D PRINTROW("TOT INCOME    ",SIDX,EIDX,3)
 | 
|---|
| 42 |  I 'IPRPT!($G(LOS)<181)!(DGSP&(SRIC)) D PRINTROW("TOT EXPENSES  ",SIDX,EIDX,4)
 | 
|---|
| 43 |  D PRINTROW("TOT ALLOWANCE ",SIDX,EIDX,5)
 | 
|---|
| 44 |  W ! D PRINTROW("CALC COPAY    ",SIDX,EIDX,6)
 | 
|---|
| 45 |  D PRINTROW("MAX COPAY     ",SIDX,EIDX,7)
 | 
|---|
| 46 |  W !,LINE
 | 
|---|
| 47 |  D PRINTROW("VET COPAY     ",SIDX,EIDX,8)
 | 
|---|
| 48 |  W !,LINE
 | 
|---|
| 49 |  ;
 | 
|---|
| 50 |  S SIDX=7,EIDX=12
 | 
|---|
| 51 |  W !!,"              "
 | 
|---|
| 52 |  F MNTH=7:1:12 W $J($P(ARRY(MNTH),"^"),11)
 | 
|---|
| 53 |  I IPRPT D PRINTROW("TOT ASSETS    ",SIDX,EIDX,9)
 | 
|---|
| 54 |  D PRINTROW("TOT INCOME    ",SIDX,EIDX,3)
 | 
|---|
| 55 |  I 'IPRPT!(DGSP&(SRIC)) D PRINTROW("TOT EXPENSES  ",SIDX,EIDX,4)
 | 
|---|
| 56 |  D PRINTROW("TOT ALLOWANCE ",SIDX,EIDX,5)
 | 
|---|
| 57 |  W ! D PRINTROW("CALC COPAY    ",SIDX,EIDX,6)
 | 
|---|
| 58 |  D PRINTROW("MAX COPAY     ",SIDX,EIDX,7)
 | 
|---|
| 59 |  W !,LINE
 | 
|---|
| 60 |  D PRINTROW("VET COPAY     ",SIDX,EIDX,8)
 | 
|---|
| 61 |  W !,LINE
 | 
|---|
| 62 |  ;
 | 
|---|
| 63 |  I CRT Q:$$PAUSE(0)
 | 
|---|
| 64 |  D:CRT HEADER
 | 
|---|
| 65 |  D NOTETXT
 | 
|---|
| 66 |  I CRT Q:$$PAUSE(0)
 | 
|---|
| 67 |  I IPRPT D HEADER,SPNDDWN I CRT Q:$$PAUSE(0)
 | 
|---|
| 68 |  Q
 | 
|---|
| 69 | PRINTROW(TEXT,SIDX,EIDX,NODE) ; Print the Rows
 | 
|---|
| 70 |  N MNTH
 | 
|---|
| 71 |  W !,TEXT
 | 
|---|
| 72 |  F MNTH=SIDX:1:EIDX W $J($S($P(ARRY(MNTH),"^",NODE)[".":$P($P(ARRY(MNTH),"^",NODE),"."),1:$P(ARRY(MNTH),"^",NODE)),11)
 | 
|---|
| 73 |  Q
 | 
|---|
| 74 | PRTVAR ; Set up variables needed to print report
 | 
|---|
| 75 |  N PAT0
 | 
|---|
| 76 |  S CRT=$S($E(IOST,1,2)="C-":1,1:0)
 | 
|---|
| 77 |  S PAGE=0,RPTDT=$$FMTE^XLFDT(DT)
 | 
|---|
| 78 |  S LINE="",$P(LINE,"-",81)=""
 | 
|---|
| 79 |  S HDR=$$CJ^XLFSTR("LONG TERM CARE ESTIMATED COPAYMENTS FOR "_$S('IPRPT:"NON-",1:"")_"INSTITUTIONAL SERVICES",80)
 | 
|---|
| 80 |  S PAT0=$G(^DPT(DFN,0)),NAME=$P(PAT0,"^"),DOB=$P(PAT0,"^",3)
 | 
|---|
| 81 |  S SSN=$P(PAT0,"^",9),SSN=$E(SSN,1,3)_"-"_$E(SSN,4,5)_"-"_$E(SSN,6,9)
 | 
|---|
| 82 |  S CALC1="TOTAL INCOME - TOTAL EXPENSES - TOTAL ALLOWANCE"
 | 
|---|
| 83 |  I DGSP,SRIC S CALC2="(TOTAL ASSETS + TOTAL INCOME) - TOTAL EXPENSES - TOTAL ALLOWANCE"
 | 
|---|
| 84 |  E  S CALC2="(TOTAL ASSETS + TOTAL INCOME) - TOTAL ALLOWANCE"
 | 
|---|
| 85 |  S:$G(EASADM) LOS=$$FMDIFF^XLFDT(EASRDT,EASADM)
 | 
|---|
| 86 |  Q
 | 
|---|
| 87 | HEADER ; Print the header
 | 
|---|
| 88 |  S PAGE=PAGE+1
 | 
|---|
| 89 |  W @IOF
 | 
|---|
| 90 |  W RPTDT,?71,"Page: ",$J(PAGE,3)
 | 
|---|
| 91 |  W !!,HDR
 | 
|---|
| 92 |  W !!,NAME,?35,SSN,?62,"DOB: ",$$FMTE^XLFDT(DOB)
 | 
|---|
| 93 |  Q
 | 
|---|
| 94 | PAUSE(RESP) ; Prompt user for next page or quit
 | 
|---|
| 95 |  N DIR,DIRUT,DUOUT,DTOUT,U,X,Y
 | 
|---|
| 96 |  S DIR(0)="E"
 | 
|---|
| 97 |  D ^DIR
 | 
|---|
| 98 |  I 'Y S RESP=1
 | 
|---|
| 99 |  Q RESP
 | 
|---|
| 100 |  ;
 | 
|---|
| 101 | INIT(DATE,ARRY) ; Initialize the Month/Year Table
 | 
|---|
| 102 |  N IDX,MNYR
 | 
|---|
| 103 |  S MNYR=$E(DATE,1,5)_"00"
 | 
|---|
| 104 |  F IDX=1:1:12 D
 | 
|---|
| 105 |  .S ARRY(IDX)=$$UP^XLFSTR($$FMTE^XLFDT(MNYR))
 | 
|---|
| 106 |  .S ARRY(IDX)=$P(ARRY(IDX)," ")_"'"_$E($P(ARRY(IDX)," ",2),3,4)
 | 
|---|
| 107 |  .S $P(ARRY(IDX),"^",2)=MNYR
 | 
|---|
| 108 |  .S MNYR=MNYR+100
 | 
|---|
| 109 |  .S:$E(MNYR,4,5)=13 MNYR=$E(MNYR,1,3)+1_"0100"
 | 
|---|
| 110 |  Q
 | 
|---|
| 111 | BLDTBL(ARRY) ; Get the veteran's financial data, do the copay calculations,
 | 
|---|
| 112 |  ; build the data table
 | 
|---|
| 113 |  ;
 | 
|---|
| 114 |  N DGDC,DGDEP,DGERR,DGFL,DGIN0,DGIN1,DGIN2,DGINI,DGIRI,DGDET,DGINT,DGNWT
 | 
|---|
| 115 |  N DGPRI,DGNC,DGND,DGNWTF,DGVINI,DGVIR0,DGVIRI,DGVPRI,DGINTF,CPYFLG,IDX
 | 
|---|
| 116 |  N OVR180,TAST,TINC,TEXP,ALLOW,CALCCPY,DAYS,MAXCPY,VETMAX,IPDR,OPDR,LOS
 | 
|---|
| 117 |  ;
 | 
|---|
| 118 |  S ERR=0
 | 
|---|
| 119 |  S DGPRI=$O(^DGPR(408.12,"C",DFN_";DPT(",0)) I 'DGPRI S ERR=1 Q
 | 
|---|
| 120 |  D GETIENS^EASECU2(DFN,DGPRI,DGMTDT) I '$G(DGIRI),'$G(DGINI) S ERR=1 Q
 | 
|---|
| 121 |  S DGVIRI=DGIRI,DGVINI=DGINI
 | 
|---|
| 122 |  D DEP^EASECSU3,INC^EASECSU3
 | 
|---|
| 123 |  S IPRPT=$S(EASRPT=1:1,1:0)
 | 
|---|
| 124 |  S CPYFLG=0
 | 
|---|
| 125 |  S DECINF=$P($G(^DGMT(408.31,DGMTI,0)),"^",14)
 | 
|---|
| 126 |  S AGRPAY=$P($G(^DGMT(408.31,DGMTI,0)),"^",11)
 | 
|---|
| 127 |  I DECINF=1!(AGRPAY=0) S CPYFLG=1
 | 
|---|
| 128 |  S SRIC=$P(DGVIR0,U,16),LSEP=$P(DGVIR0,U,17)
 | 
|---|
| 129 |  S OPDR=$P(MAXRT,U),IPDR=$P(MAXRT,U,2)
 | 
|---|
| 130 |  I IPRPT S LOS=$$FMDIFF^XLFDT(EASRDT,EASADM)+1
 | 
|---|
| 131 |  ;
 | 
|---|
| 132 |  S OVR180=$S($G(LOS)>180:1,1:0)
 | 
|---|
| 133 |  S TINC=DGINT/12,TEXP=DGDET/12
 | 
|---|
| 134 |  I OVR180,('DGSP!('SRIC)) S TEXP=0
 | 
|---|
| 135 |  S TAST=DGNWT I OVR180 S TAST=$$ASSET
 | 
|---|
| 136 |  ;
 | 
|---|
| 137 |  ; Build data table
 | 
|---|
| 138 |  F IDX=1:1:12 D
 | 
|---|
| 139 |  .S DAYS=$$DOM($P(ARRY(IDX),"^",2))
 | 
|---|
| 140 |  .D CALCALL
 | 
|---|
| 141 |  .S $P(ARRY(IDX),"^",3)=TINC
 | 
|---|
| 142 |  .S $P(ARRY(IDX),"^",4)=TEXP
 | 
|---|
| 143 |  .S $P(ARRY(IDX),"^",5)=ALLOW
 | 
|---|
| 144 |  .S $P(ARRY(IDX),"^",6)=CALCCPY
 | 
|---|
| 145 |  .S $P(ARRY(IDX),"^",7)=MAXCPY
 | 
|---|
| 146 |  .S $P(ARRY(IDX),"^",8)=VETMAX
 | 
|---|
| 147 |  .S $P(ARRY(IDX),"^",9)=$S(OVR180:TAST,1:"-")
 | 
|---|
| 148 |  .S:OVR180 TAST=$$ASTSPD
 | 
|---|
| 149 |  .I $G(LOS) D
 | 
|---|
| 150 |  ..S LOS=LOS+DAYS
 | 
|---|
| 151 |  ..S:'OVR180 OVR180=$S(LOS>180:1,1:0)
 | 
|---|
| 152 |  ..I OVR180,('DGSP!'(SRIC)) S:TEXP TEXP=0
 | 
|---|
| 153 |  Q
 | 
|---|
| 154 |  ;
 | 
|---|
| 155 | CALCALL ; Calculate the allowance and all the copayment amounts
 | 
|---|
| 156 |  S ALLOW=20*DAYS*(1+SRIC) S:CPYFLG ALLOW=0
 | 
|---|
| 157 |  S CALCCPY=$$CALCCPY
 | 
|---|
| 158 |  S MAXCPY=$$CALCMAX(DAYS)
 | 
|---|
| 159 |  S VETMAX=$$VETMAX(CALCCPY,MAXCPY)
 | 
|---|
| 160 |  Q
 | 
|---|
| 161 | ASSET() ; Initialize asset amount by applying spend-down
 | 
|---|
| 162 |  N NUM,MNYR,J,DONE,DAYS,ALLOW,CALCCPY,MAXCPY,VETMAX
 | 
|---|
| 163 |  S DONE=0
 | 
|---|
| 164 |  ; Calculate number of months to spend down the assets
 | 
|---|
| 165 |  S NUM=(LOS-180)\30
 | 
|---|
| 166 |  ; Get month to start spend down
 | 
|---|
| 167 |  S MNYR=$$FMADD^XLFDT(EASADM,180)
 | 
|---|
| 168 |  I NUM>0 F J=1:1:NUM D  Q:DONE
 | 
|---|
| 169 |  .S DAYS=$$DOM(MNYR)
 | 
|---|
| 170 |  .D CALCALL
 | 
|---|
| 171 |  .S TAST=$$ASTSPD I TAST=0 S DONE=1 Q
 | 
|---|
| 172 |  .S MNYR=MNYR+100 S:$E(MNYR,4,5)=13 MNYR=$E(MNYR,1,3)+1_"0100"
 | 
|---|
| 173 |  Q TAST
 | 
|---|
| 174 | ASTSPD() ;Asset Spend down for 180+ days
 | 
|---|
| 175 |  Q:CPYFLG TAST
 | 
|---|
| 176 |  I (TINC-TEXP-ALLOW)'>VETMAX D
 | 
|---|
| 177 |  . I DGSP,SRIC S TAST=TAST-(VETMAX-(TINC-TEXP-ALLOW))
 | 
|---|
| 178 |  . E  S TAST=TAST-(VETMAX-(TINC-ALLOW))
 | 
|---|
| 179 |  . S:TAST<0 TAST=0
 | 
|---|
| 180 |  Q TAST
 | 
|---|
| 181 |  ;
 | 
|---|
| 182 | CALCCPY() ; Calculate the Co-Pay Amount
 | 
|---|
| 183 |  ;
 | 
|---|
| 184 |  Q:CPYFLG 0
 | 
|---|
| 185 |  Q:OVR180 TAST+TINC-ALLOW-TEXP
 | 
|---|
| 186 |  Q TINC-ALLOW-TEXP
 | 
|---|
| 187 | DOM(MNYR) ; Days in Month
 | 
|---|
| 188 |  ; Returns: number of days in a month
 | 
|---|
| 189 |  N DAYS,MN,YR
 | 
|---|
| 190 |  S MN=+$E(MNYR,4,5)
 | 
|---|
| 191 |  I "^4^6^9^11^"[("^"_MN_"^") S DAYS=30 Q DAYS
 | 
|---|
| 192 |  I MN=2 D  Q DAYS
 | 
|---|
| 193 |  .S DAYS=28
 | 
|---|
| 194 |  .S YR=$E(MNYR,1,3)+1700
 | 
|---|
| 195 |  .S:YR#4=0 DAYS=29
 | 
|---|
| 196 |  S DAYS=31
 | 
|---|
| 197 |  Q DAYS
 | 
|---|
| 198 | CALCMAX(DAYS) ; Calculate the Maximum Co-Pay Amount
 | 
|---|
| 199 |  ;
 | 
|---|
| 200 |  Q $S(IPRPT:IPDR,1:OPDR)*DAYS
 | 
|---|
| 201 | VETMAX(CALCCPY,MAXCPY) ; Calculate the Veteran Maximum Co-Pay Amount
 | 
|---|
| 202 |  ;
 | 
|---|
| 203 |  Q:CPYFLG MAXCPY
 | 
|---|
| 204 |  Q:CALCCPY<0 0
 | 
|---|
| 205 |  Q:CALCCPY<MAXCPY CALCCPY
 | 
|---|
| 206 |  Q MAXCPY
 | 
|---|
| 207 |  ;
 | 
|---|
| 208 | NOTETXT ; Write the Note message
 | 
|---|
| 209 |  W !!,"IMPORTANT NOTICE: The copayment amounts shown in this report are"
 | 
|---|
| 210 |  W " estimates",!,"based on calculations of the copayment amount for "
 | 
|---|
| 211 |  W "an entire month. The",!,"copayment amounts will be adjusted to "
 | 
|---|
| 212 |  W "reflect the actual start date of LTC",!,"services and the "
 | 
|---|
| 213 |  W "copayment exemption for the first 21 days of service. The VET",!
 | 
|---|
| 214 |  W "COPAY amount is based on the assumption that the veteran "
 | 
|---|
| 215 |  W "will be responsible",!,"to pay the lesser of EITHER the calculated"
 | 
|---|
| 216 |  W " copayment (CALC COPAY) OR the",!,"maximum copayment (MAX COPAY).  "
 | 
|---|
| 217 |  W "In the event that the calculated copayment",!,"(CALC COPAY) is a "
 | 
|---|
| 218 |  W "negative figure, the veteran copayment (VET COPAY)",!
 | 
|---|
| 219 |  W "will be adjusted to zero (0). If the veteran declined to provide"
 | 
|---|
| 220 |  W " income",!,"information, the veteran will be obligated to pay the"
 | 
|---|
| 221 |  W " maximum copayment."
 | 
|---|
| 222 |  Q
 | 
|---|
| 223 |  ;
 | 
|---|
| 224 | SPNDDWN ; Text of message to explain the asset spend down
 | 
|---|
| 225 |  W !!,"EXPLANATION OF ASSET SPEND DOWN CALCULATION:"
 | 
|---|
| 226 |  W !,"============================================"
 | 
|---|
| 227 |  W !,"The veteran's assets are included in the calculation of copayments"
 | 
|---|
| 228 |  W !,"after 180 days of institutional LTC services.  The assets then may"
 | 
|---|
| 229 |  W !,"be reduced each month according to the following formula:"
 | 
|---|
| 230 |  W !
 | 
|---|
| 231 |  W !,"Single Veteran:"
 | 
|---|
| 232 |  W !
 | 
|---|
| 233 |  W !,"  TOTAL ASSETS-(VET COPAY-(INCOME-ALLOWANCE))"
 | 
|---|
| 234 |  W !
 | 
|---|
| 235 |  W !,"Married Veteran (spouse residing in the community):"
 | 
|---|
| 236 |  W !
 | 
|---|
| 237 |  W !,"  TOTAL ASSETS-(VET COPAY-(INCOME-EXPENSES-ALLOWANCE))"
 | 
|---|
| 238 |  W !
 | 
|---|
| 239 |  W !,"In other words, the assets will be reduced by the amount of the"
 | 
|---|
| 240 |  W !,"veteran's copayment that is not covered by the veteran's income "
 | 
|---|
| 241 |  W !,"after all expenses and allowances are subtracted.  If the amount"
 | 
|---|
| 242 |  W !,"of the veteran's income after all expenses and allowances are"
 | 
|---|
| 243 |  W !,"subtracted is greater than the veteran's copayment then the assets"
 | 
|---|
| 244 |  W !,"will not be reduced."
 | 
|---|
| 245 |  W !
 | 
|---|
| 246 |  Q
 | 
|---|