EASECSC6 ;ALB/PHH,LBD - LTC Co-Pay Test Screen Deductible Expense ;13 AUG 2001
;;1.0;ENROLLMENT APPLICATION SYSTEM;**5,7,34**;Mar 15, 2001
;
; Input -- DFN Patient IEN
; DGMTDT Date of Test
; DGVINI Veteran Individual Annual Income IEN
; DGVIRI Veteran Income Relation IEN
; DGVPRI Veteran Patient Relation IEN
; DGMTI LTC Co-Pay Test IEN
; Output -- None
;
EN ;Entry point for expense screen
S DGMTSCI=6 D HD^EASECSCU
D DIS
S DGRNG="1-10" G EN^EASECSCR
;
EN1 ;Entry point for read processor return
D ALL^EASECU21(DFN,"CS",DGMTDT,"IPR",$S($G(DGMTI):DGMTI,1:""))
I DGX!($G(DGSELTY)["V") S DGPRI=DGVPRI,DGPRTY="V" D EDT
Q K DGCNT,DGDEP,DGDR,DGMTOUT,DGPRI,DGPRTY,DGREL,DGSEL,DGSELTY,DGX,DGY,DTOUT,DUOUT,Y
G EN
;
DIS ;Display deductible expenses
N DGDC,DGDET,DGIN0,DGIN1,DGIN2,DGINT,DGINTF,DGNC,DGND,DGNWT,DGNWTF,DGSP,DGVIR0,DGCNT
D DEP^EASECSU3,INC^EASECSU3 S DGCNT=1
W !!?39,"Veteran" W:DGSP " and Spouse" W ?73,"Total"
W !?36,"------------------------------------------"
D HIGH^DGMTSCU1(1,DGMTACT),FLD(.DGIN1,3,"Education")
D HIGH^DGMTSCU1(2,DGMTACT),FLD(.DGIN1,2,"Funeral and Burial")
D HIGH^DGMTSCU1(3,DGMTACT),FLD(.DGIN1,4,"Rent/Mortgage")
D HIGH^DGMTSCU1(4,DGMTACT),FLD(.DGIN1,5,"Utilities")
D HIGH^DGMTSCU1(5,DGMTACT),FLD(.DGIN1,6,"Car Payment Only")
D HIGH^DGMTSCU1(6,DGMTACT),FLD(.DGIN1,7,"Food")
D HIGH^DGMTSCU1(7,DGMTACT),FLD(.DGIN1,1,"Non-reimbursed Medical Expenses")
D HIGH^DGMTSCU1(8,DGMTACT),FLD(.DGIN1,8,"Court-ordered Payments")
D HIGH^DGMTSCU1(9,DGMTACT),FLD(.DGIN1,9,"Insurance")
D HIGH^DGMTSCU1(10,DGMTACT),FLD(.DGIN1,10,"Taxes")
W !?56,"Total -->",?66,$J($$AMT^DGMTSCU1(DGDET),12)
Q
;
FLD(DGIN,DGPCE,DGTXT) ;Display income fields
;
; Input -- DGIN as Individual Annual Income 0 node for vet,
; spouse, and dependents
; DGPCE as piece position wanted
; DGTXT as income description
;
; Also keeps running total if DGGTOT is defined (grand
; total)
;
N DGTOT,I,AMT
I '$D(DGBL) S $P(DGBL," ",26)=""
W:DGCNT<10 " "
W " ",$E(DGTXT_DGBL,1,26)
S AMT=$$AMT^DGMTSCU1($P(DGIN("V"),U,DGPCE))
W $J(AMT,15)
W " "
S DGTOT="",I="" F S I=$O(DGIN(I)) Q:I="" I $P(DGIN(I),"^",DGPCE)]"" S DGTOT=DGTOT+$P(DGIN(I),"^",DGPCE)
W " ",$J($$AMT^DGMTSCU1(DGTOT),12)
S DGCNT=DGCNT+1
Q
;
EDT ;Edit income fields
N DA,DGERR,DGFIN,DGINI,DGIN0,DGIRI,DGVIR0,DIE,DR
D GETIENS^EASECU2(DFN,DGPRI,DGMTDT) G EDTQ:DGERR
I $G(DGSEL)]"" W !!,"NAME: ",$$NAME^DGMTU1(DGPRI)
S DGVIR0=$G(^DGMT(408.22,DGVIRI,0))
S DGIN1=$G(^DGMT(408.21,DGINI,1))
S DA=DGINI,DIE="^DGMT(408.21,",DR="[EASEC ENTER/EDIT EXPENSES]" D ^DIE S:'$D(DGFIN) DGMTOUT=1
I DGIN1'=$G(^DGMT(408.21,DGINI,1)) D
.S DR="103////^S X=DUZ;104///^S X=""NOW"""
.I '$G(^DGMT(408.21,DGINI,"MT")) S DR=DR_";31////^S X=$G(DGMTI)"
.D ^DIE
EDTQ Q
--- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HEASECSC6 2973 printed Dec 13, 2024@01:54:13 Page 2
EASECSC6 ;ALB/PHH,LBD - LTC Co-Pay Test Screen Deductible Expense ;13 AUG 2001
+1 ;;1.0;ENROLLMENT APPLICATION SYSTEM;**5,7,34**;Mar 15, 2001
+2 ;
+3 ; Input -- DFN Patient IEN
+4 ; DGMTDT Date of Test
+5 ; DGVINI Veteran Individual Annual Income IEN
+6 ; DGVIRI Veteran Income Relation IEN
+7 ; DGVPRI Veteran Patient Relation IEN
+8 ; DGMTI LTC Co-Pay Test IEN
+9 ; Output -- None
+10 ;
EN ;Entry point for expense screen
+1 SET DGMTSCI=6
DO HD^EASECSCU
+2 DO DIS
+3 SET DGRNG="1-10"
GOTO EN^EASECSCR
+4 ;
EN1 ;Entry point for read processor return
+1 DO ALL^EASECU21(DFN,"CS",DGMTDT,"IPR",$SELECT($GET(DGMTI):DGMTI,1:""))
+2 IF DGX!($GET(DGSELTY)["V")
SET DGPRI=DGVPRI
SET DGPRTY="V"
DO EDT
Q KILL DGCNT,DGDEP,DGDR,DGMTOUT,DGPRI,DGPRTY,DGREL,DGSEL,DGSELTY,DGX,DGY,DTOUT,DUOUT,Y
+1 GOTO EN
+2 ;
DIS ;Display deductible expenses
+1 NEW DGDC,DGDET,DGIN0,DGIN1,DGIN2,DGINT,DGINTF,DGNC,DGND,DGNWT,DGNWTF,DGSP,DGVIR0,DGCNT
+2 DO DEP^EASECSU3
DO INC^EASECSU3
SET DGCNT=1
+3 WRITE !!?39,"Veteran"
if DGSP
WRITE " and Spouse"
WRITE ?73,"Total"
+4 WRITE !?36,"------------------------------------------"
+5 DO HIGH^DGMTSCU1(1,DGMTACT)
DO FLD(.DGIN1,3,"Education")
+6 DO HIGH^DGMTSCU1(2,DGMTACT)
DO FLD(.DGIN1,2,"Funeral and Burial")
+7 DO HIGH^DGMTSCU1(3,DGMTACT)
DO FLD(.DGIN1,4,"Rent/Mortgage")
+8 DO HIGH^DGMTSCU1(4,DGMTACT)
DO FLD(.DGIN1,5,"Utilities")
+9 DO HIGH^DGMTSCU1(5,DGMTACT)
DO FLD(.DGIN1,6,"Car Payment Only")
+10 DO HIGH^DGMTSCU1(6,DGMTACT)
DO FLD(.DGIN1,7,"Food")
+11 DO HIGH^DGMTSCU1(7,DGMTACT)
DO FLD(.DGIN1,1,"Non-reimbursed Medical Expenses")
+12 DO HIGH^DGMTSCU1(8,DGMTACT)
DO FLD(.DGIN1,8,"Court-ordered Payments")
+13 DO HIGH^DGMTSCU1(9,DGMTACT)
DO FLD(.DGIN1,9,"Insurance")
+14 DO HIGH^DGMTSCU1(10,DGMTACT)
DO FLD(.DGIN1,10,"Taxes")
+15 WRITE !?56,"Total -->",?66,$JUSTIFY($$AMT^DGMTSCU1(DGDET),12)
+16 QUIT
+17 ;
FLD(DGIN,DGPCE,DGTXT) ;Display income fields
+1 ;
+2 ; Input -- DGIN as Individual Annual Income 0 node for vet,
+3 ; spouse, and dependents
+4 ; DGPCE as piece position wanted
+5 ; DGTXT as income description
+6 ;
+7 ; Also keeps running total if DGGTOT is defined (grand
+8 ; total)
+9 ;
+10 NEW DGTOT,I,AMT
+11 IF '$DATA(DGBL)
SET $PIECE(DGBL," ",26)=""
+12 if DGCNT<10
WRITE " "
+13 WRITE " ",$EXTRACT(DGTXT_DGBL,1,26)
+14 SET AMT=$$AMT^DGMTSCU1($PIECE(DGIN("V"),U,DGPCE))
+15 WRITE $JUSTIFY(AMT,15)
+16 WRITE " "
+17 SET DGTOT=""
SET I=""
FOR
SET I=$ORDER(DGIN(I))
if I=""
QUIT
IF $PIECE(DGIN(I),"^",DGPCE)]""
SET DGTOT=DGTOT+$PIECE(DGIN(I),"^",DGPCE)
+18 WRITE " ",$JUSTIFY($$AMT^DGMTSCU1(DGTOT),12)
+19 SET DGCNT=DGCNT+1
+20 QUIT
+21 ;
EDT ;Edit income fields
+1 NEW DA,DGERR,DGFIN,DGINI,DGIN0,DGIRI,DGVIR0,DIE,DR
+2 DO GETIENS^EASECU2(DFN,DGPRI,DGMTDT)
if DGERR
GOTO EDTQ
+3 IF $GET(DGSEL)]""
WRITE !!,"NAME: ",$$NAME^DGMTU1(DGPRI)
+4 SET DGVIR0=$GET(^DGMT(408.22,DGVIRI,0))
+5 SET DGIN1=$GET(^DGMT(408.21,DGINI,1))
+6 SET DA=DGINI
SET DIE="^DGMT(408.21,"
SET DR="[EASEC ENTER/EDIT EXPENSES]"
DO ^DIE
if '$DATA(DGFIN)
SET DGMTOUT=1
+7 IF DGIN1'=$GET(^DGMT(408.21,DGINI,1))
Begin DoDot:1
+8 SET DR="103////^S X=DUZ;104///^S X=""NOW"""
+9 IF '$GET(^DGMT(408.21,DGINI,"MT"))
SET DR=DR_";31////^S X=$G(DGMTI)"
+10 DO ^DIE
End DoDot:1
EDTQ QUIT