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

EASEZPV2.m

Go to the documentation of this file.
  1. EASEZPV2 ;ALB/AMA/GTS/CMF - GATHER VISTA MEANS TEST DATA TO PRINT FROM DG OPTIONS ; 8/1/08 1:27pm
  1. ;;1.0;ENROLLMENT APPLICATION SYSTEM;**57,66,70**;Mar 15, 2001;Build 26
  1. ;
  1. V408(EASDFN,EASMTIEN) ;GATHER MEANS TEST DATA -- CALLED FROM VISTA^EASEZPVD
  1. ; INPUT:
  1. ; EASDFN - POINTER TO PATIENT FILE (#2)
  1. ; EASMTIEN - MeansTestIEN (#408.31)
  1. N MTIFN,MTDT,INCREL
  1. S MTIFN=+$G(EASMTIEN)
  1. S MTDT=$$GET1^DIQ(408.31,MTIFN_",",.01,"I")
  1. ;
  1. ;GET DATA FROM FILES 408.12, 408.13, 408.21, AND 408.22
  1. D I408^EASEZPVI(EASDFN,MTDT,.INCREL)
  1. I $D(INCREL)>1 D
  1. . ;MODIFIED FROM A408^EASEZC2
  1. . N IENS,B,FILE,M,MM,TYPE,IEN,NSD,FLD,IEN2
  1. . N FFF,PERS,GRP,GRP1,SUBF,SUBIEN,WHERE
  1. . S IENS=$G(INCREL(408,"V",1))
  1. . ;ADD "INCOME YEAR" AND "DECLINES TO GIVE INFO" INTO ^TMP GLOBALS
  1. . N EZTMPIEN
  1. . S EZTMPIEN=$O(^TMP("EZDATA",$J,""),-1)+1
  1. . S ^TMP("EZDATA",$J,EZTMPIEN)="408.21^408.21^.01^IIC;999^Income Year"
  1. . S ^TMP("EZINDEX",$J,"A",408.21,408.21,.01,EZTMPIEN)=EZTMPIEN_"^APPLICANT INCOME YEAR"
  1. . S EZTMPIEN=EZTMPIEN+1
  1. . S ^TMP("EZDATA",$J,EZTMPIEN)="408.31^408.31^.14^IIC;998^Declines To Give Info"
  1. . S ^TMP("EZINDEX",$J,"A",408.31,408.31,.14,EZTMPIEN)=EZTMPIEN_"^APPLICANT DECLINES TO GIVE INFO"
  1. . I MTIFN>0 S B=0 D GET408(408.31,"A",MTIFN)
  1. . S IEN=$P(IENS,U,3),IEN2=$P(IENS,U,4) ;EAS*66 - GENERATE ADJ EXP
  1. . I +IEN,+IEN2 D GROSS^DGMTSCU4(IEN,EASDFN,MTDT,IEN2)
  1. . ;
  1. . I IENS S B=0 F FILE=408.12,2,408.21,408.22 D GET408(FILE,"A",IENS)
  1. . ;MODIFIED FROM SP408^EASEZC2
  1. . S IENS=$G(INCREL(408,"S",1))
  1. . I IENS S B=0 F FILE=408.12,408.13,408.21,408.22 D GET408(FILE,"S",IENS)
  1. . ;EAS*1.0*70 -- GET SPOUSE GROSS ANNUAL INCOME AND NET WORTH
  1. . D SPGAINW
  1. . ;
  1. . ;MODIFIED FROM C1N408^EASEZC2
  1. . S (M,MM)=0 F S M=$O(INCREL(408,"C",M)) Q:'M D
  1. . . S IEN=+$P(INCREL(408,"C",M),U,2)
  1. . . S NSD="" F FLD=.01,.09,.03 D
  1. . . . S FFF=408.13_U_408.13_U_FLD,VDATA=$$GET^EASEZC1(IEN,FFF)
  1. . . . I FLD=.09 S VDATA=$$SSNOUT^EASEZT1(VDATA)
  1. . . . I FLD=.03 S VDATA=$$XDATE^EASEZT1(VDATA)
  1. . . . S NSD=NSD_VDATA_U
  1. . . I MM=0 D I 1
  1. . . . S MM=1
  1. . . . S PERS("EZ","CHILD1",1)=NSD
  1. . . . S PERS("EZ","CHILD1",1,"IENS")=INCREL(408,"C",M)
  1. . . E D
  1. . . . S PERS("EZ","CHILD(N)",MM)=NSD
  1. . . . S PERS("EZ","CHILD(N)",MM,"IENS")=INCREL(408,"C",M)
  1. . . . S MM=MM+1
  1. . ;
  1. . ;get identifying data for child in database
  1. . ;EAS*1.0*70 - duplicate the gross annual income entries
  1. . ; for CHILD1, using the CHILD(N) index IENs
  1. . F FLD=.08,.14,.17 D
  1. . . S KEY=$O(^TMP("EZINDEX",$J,"CN",408.21,408.21,FLD,0)) Q:'KEY
  1. . . S ^TMP("EZINDEX",$J,"C1",408.21,408.21,FLD,KEY)=^TMP("EZINDEX",$J,"CN",408.21,408.21,FLD,KEY)
  1. . ;
  1. . F TYPE="CHILD1","CHILD(N)" S M=0 F S M=$O(PERS("EZ",TYPE,M)) Q:'M D
  1. . . S IENS=$G(PERS("EZ",TYPE,M,"IENS")) Q:IENS=""
  1. . . S GRP=$S(TYPE="CHILD1":"C1",1:"CN")
  1. . . ;associate each ien with file/subfile
  1. . . S B=0 F FILE=408.12,408.13,408.21,408.22 D
  1. . . . S B=B+1,IEN=+$P(IENS,U,B) Q:'IEN
  1. . . . I 'MTDT,((FILE=408.21)!(FILE=408.22)) Q
  1. . . . D CONT
  1. . . ;EAS*1.0*70
  1. . . S IEN=$P($G(PERS("EZ",TYPE,M,"IENS")),U,4) Q:'IEN
  1. . . N IATY S IATY=$$GET^EASEZC1(IEN,"408.22^408.22^.12")
  1. . . I IATY'="YES" D Q
  1. . . . I EASVRSN>5.99,(TYPE="CHILD(N)") D DELETE(GRP,(M+1))
  1. . . . E D DELETE(GRP,M)
  1. Q
  1. ;
  1. GET408(FILE,SRCE,IENS) ;GATHER THE DATA FROM THE 408 FILES
  1. ; INPUT:
  1. ; FILE - FILE TO SEARCH
  1. ; SRCE - SOURCE OF DATA ("A"PPLICANT, "S"POUSE)
  1. ; IENS - IEN FROM THE INCREL ARRAY
  1. ;
  1. N IEN,FLD,MAP,VDATA,KEY
  1. ;IF NO MEANS TEST, THEN DON'T GATHER ANY MONEY AMOUNTS
  1. I 'MTDT,((FILE=408.21)!(FILE=408.22)) Q
  1. S B=B+1,IEN=+$P(IENS,U,B) Q:'IEN Q:FILE=2
  1. I (FILE=408.22),('MTIFN!($P($G(^DGMT(FILE,+IEN,"MT")),U)'=MTIFN)) Q
  1. S FLD=0 F S FLD=$O(^TMP("EZINDEX",$J,SRCE,FILE,FILE,FLD)) Q:'FLD D
  1. . S MAP=FILE_U_FILE_U_FLD
  1. . S VDATA=$$GET^EASEZC1(IEN,MAP)
  1. . I (FILE=408.31),(FLD=.14) D
  1. . . I (VDATA="")!(VDATA=0) S VDATA="NO"
  1. . . I VDATA=1 S VDATA="YES"
  1. . I (FILE=408.21) D
  1. . . I (FLD=.08) S VDATA=$$SUMSSI^EASEZT2(VDATA,IEN)
  1. . . I (FLD=2.01) S VDATA=$$SUMCASH^EASEZT2(VDATA,IEN)
  1. . . I (FLD=2.04) S VDATA=$$SUMPROP^EASEZT2(VDATA,IEN)
  1. . . Q
  1. . Q:VDATA=-1 Q:VDATA=""
  1. . I (SRCE="S"),(FILE=408.13),(FLD=.09) S VDATA=$$SSNOUT^EASEZT1(VDATA)
  1. . I (SRCE="S"),(FILE=408.13),(FLD=.03) S VDATA=$$XDATE^EASEZT1(VDATA)
  1. . S KEY=0 F S KEY=$O(^TMP("EZINDEX",$J,SRCE,FILE,FILE,FLD,KEY)) Q:'KEY D
  1. . . S ^TMP("EZDATA",$J,KEY,1,2)=VDATA
  1. . . I (FILE=408.21),(SRCE="A") D
  1. . . . I ";2.01;2.03;2.04;"'[(";"_FLD_";") Q
  1. . . . N TEXT,NEWKEY
  1. . . . I FLD=2.01 S TEXT="APPLICANT CASH IN BANK2"
  1. . . . I FLD=2.03 S TEXT="APPLICANT REAL PROPERTY LESS MORTGAGES2"
  1. . . . I FLD=2.04 S TEXT="APPLICANT STOCKS BONDS ASSETS LESS DEBTS2"
  1. . . . S NEWKEY=+$$KEY711^EASEZU1(TEXT)
  1. . . . S ^TMP("EZDATA",$J,NEWKEY,1,2)=VDATA
  1. ;
  1. I (FILE=408.12),(SRCE="S") D
  1. . S SUBF=408.1275
  1. . S FLD=0 F S FLD=$O(^TMP("EZINDEX",$J,SRCE,FILE,SUBF,FLD)) Q:'FLD D
  1. . . S SUBIEN=$$I1275^EASEZI(IEN)
  1. . . S MAP=FILE_U_SUBF_U_FLD,WHERE=IEN_";"_SUBIEN
  1. . . S VDATA=$$GET^EASEZC1(WHERE,MAP)
  1. . . Q:VDATA=-1 Q:VDATA=""
  1. . . S KEY=0 F S KEY=$O(^TMP("EZINDEX",$J,SRCE,FILE,SUBF,FLD,KEY)) Q:'KEY D
  1. . . . S ^TMP("EZDATA",$J,KEY,1,2)=VDATA
  1. Q
  1. ;
  1. CONT ;CONTINUATION OF CHILD FINANCIAL DATA
  1. ;
  1. I (FILE=408.22),('MTIFN!'IEN!($P($G(^DGMT(FILE,+IEN,"MT")),U)'=MTIFN)) Q
  1. S FLD=0 F S FLD=$O(^TMP("EZINDEX",$J,GRP,FILE,FILE,FLD)) Q:FLD="" D
  1. . S MAP=FILE_U_FILE_U_FLD
  1. . S GRP1=GRP I (EASVRSN>5.99),(FILE=408.21),("^.08^.14^.17^2.01^2.03^2.04^"[("^"_FLD_"^")) S GRP1="CN"
  1. . S VDATA=$$GET^EASEZC1(IEN,MAP)
  1. . I (FILE=408.21) D
  1. . . I (FLD=.08) S VDATA=$$SUMSSI^EASEZT2(VDATA,IEN)
  1. . . I (FLD=2.01) S VDATA=$$SUMCASH^EASEZT2(VDATA,IEN)
  1. . . I (FLD=2.04) S VDATA=$$SUMPROP^EASEZT2(VDATA,IEN)
  1. . . Q
  1. . Q:VDATA=-1 Q:VDATA=""
  1. . I (FILE=408.13),(FLD=.09) S VDATA=$$SSNOUT^EASEZT1(VDATA)
  1. . I (FILE=408.13),(FLD=.03) S VDATA=$$XDATE^EASEZT1(VDATA)
  1. . ;store link in all 1010EZ elements associated with this file/subfile
  1. . S KEY=$O(^TMP("EZINDEX",$J,GRP1,FILE,FILE,FLD,0)) Q:'KEY
  1. . S MM=M I EASVRSN>5.99,FILE=408.21,"^.08^.14^.17^2.01^2.03^2.04^"[("^"_FLD_"^") S:(TYPE="CHILD(N)") MM=M+1
  1. . S ^TMP("EZDATA",$J,KEY,MM,2)=VDATA
  1. ;get data in subfile #408.1275
  1. I FILE=408.12 S SUBF=408.1275 D
  1. . S FLD=0 F S FLD=$O(^TMP("EZINDEX",$J,GRP,FILE,SUBF,FLD)) Q:FLD="" D
  1. . . S SUBIEN=$$I1275^EASEZI(IEN)
  1. . . S MAP=FILE_U_SUBF_U_FLD,WHERE=IEN_";"_SUBIEN
  1. . . S VDATA=$$GET^EASEZC1(WHERE,MAP)
  1. . . Q:VDATA=-1 Q:VDATA=""
  1. . . ;store link in all 1010EZ elements associated with this file/subfile
  1. . . S KEY=0 F S KEY=$O(^TMP("EZINDEX",$J,GRP,FILE,SUBF,FLD,KEY)) Q:'KEY D
  1. . . . S ^TMP("EZDATA",$J,KEY,MM,2)=VDATA
  1. Q
  1. SPGAINW ;Determine when to print Spouse's
  1. ;Gross Annual Income and Net Worth Amounts
  1. N IEN,MLY,LWSP,ACTSP
  1. S IEN=$P($G(INCREL(408,"V",1)),U,4) Q:'IEN
  1. S MLY=$$GET^EASEZC1(IEN,"408.22^408.22^.05")
  1. I MLY'="YES" D DELETE("S",1) Q
  1. ;
  1. S LWSP=$$GET^EASEZC1(IEN,"408.22^408.22^.06")
  1. S ACTSP=+$$GET^EASEZC1(IEN,"408.22^408.22^.07")
  1. I (LWSP'="YES"),(ACTSP<600) D DELETE("S",1) Q
  1. Q
  1. DELETE(SRCE,MULT) ;Delete dependent's GAI and NW amounts
  1. N FILE,FLD,KEY,X
  1. S FILE=408.21 F FLD=.08,.14,.17,2.01,2.03,2.04 D
  1. . S KEY=0 F S KEY=$O(^TMP("EZINDEX",$J,SRCE,FILE,FILE,FLD,KEY)) Q:'KEY D
  1. . . F X=1,2 K ^TMP("EZDATA",$J,KEY,MULT,X)
  1. Q