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

DGMTU21.m

Go to the documentation of this file.
  1. DGMTU21 ;ALB/RMO - Income Utilities Cont. ;6 MAR 1992 8:40 am
  1. ;;5.3;PIMS;**33,45,182,1015,1016**;JUN 30, 2012;Build 20
  1. ;
  1. ALL(DFN,DGTYPE,DGDT,DGRTY,DGMT) ;Select patient relation, individual annual
  1. ; income and income relation arrays of internal
  1. ; entry numbers
  1. ; Input -- DFN Patient file IEN
  1. ; DGTYPE Type of Relation which can
  1. ; contain:
  1. ; V for veteran
  1. ; S for spouse
  1. ; C for dependent children
  1. ; or
  1. ; D for all dependents
  1. ; DGDT Date/Time
  1. ; DGRTY Type of Array to Return
  1. ; which can contain:
  1. ; I for Ind Annual Income
  1. ; P for Patient Relation
  1. ; R for Income Relation
  1. ; (Optional - default IPR)
  1. ; DGMT IFN of Means Test (optional)
  1. ; Output -- DGREL Patient Relation IEN Array
  1. ; DGINC Individual Annual Income IEN Array
  1. ; DGINR Income Relation IEN Array
  1. ; DGDEP Number of Dependents
  1. K DGINC,DGINR,DGREL
  1. N DGCNT,DGLY,DGPRTY
  1. S:'$D(DGRTY) DGRTY="IPR" S DGLY=$$LYR^DGMTSCU1(DGDT)
  1. D GETREL^DGMTU11(DFN,DGTYPE,DGLY,$G(DGMT))
  1. S DGPRTY="" F S DGPRTY=$O(DGREL(DGPRTY)) Q:DGPRTY="" D SET
  1. I DGRTY'["P" K DGREL
  1. ALLQ Q
  1. ;
  1. SET ;Set individual annual income and income relation arrays
  1. N DGCNT,DGPRI,DGINI,DGIRI
  1. I "CD"[DGPRTY S DGCNT=0 F S DGCNT=$O(DGREL(DGPRTY,DGCNT)) Q:'DGCNT D
  1. .S DGPRI=+DGREL(DGPRTY,DGCNT) D GET
  1. .I DGINI,DGRTY["I" S DGINC(DGPRTY,DGCNT)=DGINI
  1. .I DGIRI,DGRTY["R" S DGINR(DGPRTY,DGCNT)=DGIRI
  1. I "SV"[DGPRTY D
  1. .S DGPRI=+DGREL(DGPRTY) D GET
  1. .I DGINI,DGRTY["I" S DGINC(DGPRTY)=DGINI
  1. .I DGIRI,DGRTY["R" S DGINR(DGPRTY)=DGIRI
  1. Q
  1. ;
  1. GET ;Look-up individual annual income and income relation IEN
  1. S DGINI=+$$IAI^DGMTU3(DGPRI,DGLY,$S($G(DGMT):$P($G(^DGMT(408.31,DGMT,0)),"^",19),1:1))
  1. S DGIRI=+$O(^DGMT(408.22,"AIND",DGINI,0))
  1. Q
  1. ;
  1. ; GTS - DG*5.3*688
  1. UPDTTSTS(DFN,IY) ;Update all tests for IY of converted IAI rec's
  1. ; INPUT: DFN - Patient file IEN
  1. ; IY - Income Year FM format (ex: 306 for 2006)
  1. ;
  1. ; OUTPUT: RESULT
  1. ; 1 - Converted records
  1. ; 0 - Did not convert records
  1. ;
  1. N RESULT,TYPE,TESTDT,IRIEN,DGMT2
  1. S RESULT=0
  1. F TYPE=1,2,4 DO
  1. . S TESTDT=""
  1. . S IRIEN=""
  1. . I $D(^DGMT(408.31,"AID",TYPE)) DO
  1. . . F Q:('$D(^DGMT(408.31,"AID",TYPE,DFN))) S TESTDT=$O(^DGMT(408.31,"AID",TYPE,DFN,TESTDT)) Q:(+TESTDT=0) DO
  1. . . . I $E(TESTDT,2,4)=IY DO
  1. . . . . S IRIEN=$O(^DGMT(408.31,"AID",TYPE,DFN,TESTDT,""))
  1. . . . . ; Update 2.11 in 408.31 rec
  1. . . . . S DGMT2(408.31,+IRIEN_",",2.11)=1
  1. . . . . S DGERR=""
  1. . . . . D FILE^DIE("","DGMT2",DGERR)
  1. . . . . S RESULT=1
  1. Q RESULT
  1. ;
  1. ; GTS - DG*5.3*688
  1. LSTNP(DFN,DGDT,DGMTYPT) ;Last MT/CP/LTC4 test for a patient regardless of Primary status
  1. ; Input -- DFN Patient IEN
  1. ; DGDT Date/Time (Optional- default today@2359)
  1. ; DGMTYPT Type of Test (Optional - if not defined
  1. ; Means Test will be assumed)
  1. ; Output -- Annual Means Test IEN^Date of Test
  1. ; ^Status Name^Status Code^Source of Test
  1. N DGIDT,DGMTFL1,DGMTI,DGNOD,Y I '$D(DGMTYPT) S DGMTYPT=1
  1. S DGIDT=$S($G(DGDT)>0:-DGDT,1:-DT) S:'$P(DGIDT,".",2) DGIDT=DGIDT_.2359
  1. F S DGIDT=+$O(^DGMT(408.31,"AID",DGMTYPT,DFN,DGIDT)) Q:'DGIDT!$G(DGMTFL1) D
  1. .F DGMTI=0:0 S DGMTI=+$O(^DGMT(408.31,"AID",DGMTYPT,DFN,DGIDT,DGMTI)) Q:'DGMTI!$G(DGMTFL1) D
  1. ..S DGNOD=$G(^DGMT(408.31,DGMTI,0)) I DGNOD!(DGMTYPT=4) S DGMTFL1=1,Y=DGMTI_"^"_$P(^(0),"^")_"^"_$$MTS^DGMTU(DFN,+$P(^(0),"^",3))_"^"_$P(DGNOD,"^",23)
  1. Q $G(Y)