Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: DGDEP2

DGDEP2.m

Go to the documentation of this file.
  1. DGDEP2 ;ALB/CAW,JAN - Dependent Utilities ; 4/4/06 9:30am
  1. ;;5.3;PIMS;**45,60,395,624,688,1015,1016**;JUN 30, 2012;Build 20
  1. ;624: DGMTDPCH=flag to force recalc of adj med exp when deps change
  1. ;
  1. EN1 ; Add dependent to means test
  1. ;
  1. N DGSAVE,DGMTD,DGSAVE1
  1. I '$G(DGMTI) W !,"Not a means test - use means test options." H 2 G EN1Q
  1. I $G(DGMTACT)="VEW" W !,"Cannot edit when viewing a means test." H 2 G EN1Q
  1. S VALMBCK="",DGSAVE=VALMLST,DGSAVE1=VALMBG
  1. S VALMBG=1,VALMLST=DGCNT D SEL^VALM2 S VALMBG=DGSAVE1,VALMLST=DGSAVE G EN1Q:'$O(VALMY(0))
  1. N CTR S CTR=0 F S CTR=$O(VALMY(CTR)) Q:'CTR D
  1. . D ADD(DFN,DGDEP(CTR),$G(DGMTI))
  1. S DGMTD=$S($G(DGMTI):$P(^DGMT(408.31,DGMTI,0),U),1:DT)
  1. D ALL^DGMTU21(DFN,"VSC",DGMTD,"IPR",DGMTI)
  1. K DGDEP D INIT^DGDEP
  1. S DGMTDPCH=1
  1. EN1Q S VALMBCK="R" Q
  1. ;
  1. ADD(DFN,DGDEP,DGMTI) ;Add
  1. N DA,DR,DIE,DGMTD,DGIRI
  1. I '$G(DGMTI) W !,"Not a means test - use means test options." H 2 G ADDQ
  1. I $G(DGMTACT)="VEW" W !,"Cannot edit when viewing a means test." G ADDQ
  1. S DGMTR=$O(^DG(408.11,"B",$P(DGDEP,U,2),"")) I '$P(^DG(408.11,DGMTR,0),U,4) D G ADDQ
  1. . W !,"Cannot add a "_$P(DGDEP,U,2)_" as a dependent to the means test." H 2
  1. S DGMTD=$S($G(DGMTI):$P($G(^DGMT(408.31,DGMTI,0)),U),1:DT)
  1. D GETIENS^DGMTU2(DFN,$P(DGDEP,U,20),DGMTD)
  1. S DA=DGIRI
  1. S DIE="^DGMT(408.22,",DR="31////"_DGMTI
  1. D ^DIE
  1. S DGMTDPCH=1
  1. ADDQ Q
  1. ;
  1. EN2 ; Remove dependent from means test
  1. ;
  1. N DGSAVE1,DGSAVE2,DGMTD
  1. I '$G(DGMTI) W !,"Not a means test - use means test options." H 2 G EN2Q
  1. I $G(DGMTACT)="VEW" W !,"Cannot edit when viewing a means test." H 2 G EN2Q
  1. S VALMBCK="",DGSAVE1=VALMBG,DGSAVE2=VALMLST,VALMBG=2
  1. S VALMLST=DGCNT D SEL^VALM2 S VALMBG=DGSAVE1,VALMLST=DGSAVE2 G EN1Q:'$O(VALMY(0))
  1. N CTR S CTR=0 F S CTR=$O(VALMY(CTR)) Q:'CTR D
  1. . D REMOVE(DFN,DGDEP(CTR),$G(DGMTI))
  1. S DGMTD=$S($G(DGMTI):$P(^DGMT(408.31,DGMTI,0),U),1:DT)
  1. D ALL^DGMTU21(DFN,"VSC",DGMTD,"IPR",DGMTI)
  1. S DGMTDPCH=1
  1. EN2Q S VALMBCK="R" Q
  1. ;
  1. REMOVE(DFN,DGDEP,DGMTI) ;Remove
  1. N DA,DR,DIE,DGMTD
  1. I '$G(DGMTI) W !,"Not a means test - use means test options." H 2 G REMOVEQ
  1. I $G(DGMTACT)="VEW" W !,"Cannot edit when viewing a means test." H 2 G EN2Q
  1. S DGMTD=$S($G(DGMTI):$P($G(^DGMT(408.31,DGMTI,0)),U),1:DT)
  1. D GETIENS^DGMTU2(DFN,$P(DGDEP,U,20),DGMTD)
  1. S DA=DGIRI
  1. S DIE="^DGMT(408.22,",DR="31////@"
  1. D ^DIE S DGREMOVE=1
  1. K DGDEP D INIT^DGDEP
  1. S DGMTDPCH=1
  1. REMOVEQ K DGREMOVE Q
  1. ;
  1. EN3 ; Edit dependent demo
  1. ;
  1. S VALMBCK=""
  1. N DGSAVE1,DGSAVE2,DGMTD,DGBEG,I
  1. I $G(DGMTACT)="VEW" W !,"Cannot edit when viewing a means test." H 2 G EN3Q
  1. I '$D(DGMTI),$G(DGRPV)=1 W !,"Not while viewing" H 2 G EN3Q
  1. S VALMBCK="",DGSAVE1=VALMBG,DGSAVE2=VALMLST,VALMBG=1
  1. S VALMLST=DGCNT D SEL^VALM2 S VALMBG=DGSAVE1,VALMLST=DGSAVE2 G EN1Q:'$O(VALMY(0))
  1. N CTR S CTR=0 F S CTR=$O(VALMY(CTR)) Q:'CTR D
  1. . D EDITD(DFN,DGDEP(CTR),CTR,$G(DGMTI))
  1. S VALMBCK="R"
  1. K DGDEP D INIT^DGDEP
  1. EN3Q Q
  1. ;
  1. EDITD(DFN,DGDEP,DGW,DGMTI) ; Edit
  1. N DA,DR,DIE,DGMTDT,SPOUSE,DGREL,DGDR,CNT,RELATION,MTVER
  1. I $G(DGMTACT)="VEW" W !,"Cannot edit when viewing a means test." H 2 G EDITDQ
  1. W !!,$P(DGDEP,U)
  1. I '$G(DGMTI),$P(DGDEP,U,2)="SELF" D G EDITDQ
  1. . S DGREL("V")=$P(DGDEP,U,20) D SPOUSE^DGRPEIS2
  1. I '$G(DGMTI) W !,"Can only input information for veteran." H 2 G EN3Q
  1. S DGMTDT=$P(^DGMT(408.31,DGMTI,0),U)
  1. S MTVER=$P($G(^DGMT(408.31,DGMTI,2)),U,11)
  1. I $P(DGDEP,U,2)="SPOUSE" W !,"Married information is entered under the veteran." H 2 G EDITDQ
  1. I $P(DGDEP,U,2)="SELF" D G EDITDQ
  1. . S DGDR=101
  1. . D GETREL^DGMTU11(DFN,"S",$$LYR^DGMTSCU1($S($G(DGMTDT):DGMTDT,1:DT)))
  1. . D GETIENS^DGMTU2(DFN,DGPRI,DGMTDT) S DGVIRI=DGIRI
  1. . I DGVIRI<0 W !,"No information in Income Relation file." H 2 G EDITDQ
  1. . S DA=DGVIRI,DIE="^DGMT(408.22,",DR="[DGMT ENTER/EDIT MARITAL STATUS]" D ^DIE K DA,DIE,DR
  1. . I $G(DGMTI),$G(DGREL("S")) D
  1. . . S SPOUSE=+DGREL("S")
  1. . . D INIT^DGDEP
  1. . . S CNT=0 F S CNT=$O(DGDEP(CNT)) Q:'CNT I $P(DGDEP(CNT),U,20)=SPOUSE D ADD(DFN,DGDEP(CNT),DGMTI)
  1. S RELATION=$O(^DG(408.11,"B",$P(DGDEP,U,2),""))
  1. I '$P(^DG(408.11,+RELATION,0),U,4) W !,"Not applicable for means test" H 2 G EDITDQ
  1. S DGPRI=$P(DGDEP,U,20)
  1. D EDTV1^DGMTSC11(MTVER)
  1. I $G(DGFL)'<0 D ADD(DFN,DGDEP,DGMTI)
  1. EDITDQ ;
  1. Q