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  Sep 23, 2025@19:30:19                                                                                                                                                                                                    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