1 | EASECU2 ;ALB/LBD - Income Utilities ;14 AUG 2001
|
---|
2 | ;;1.0;ENROLLMENT APPLICATION SYSTEM;**5**;Mar 15, 2001
|
---|
3 | ;
|
---|
4 | GETIENS(DFN,DGPRI,DGDT) ;Look-up individual annual income and income relation
|
---|
5 | ; Input -- DFN Patient file IEN
|
---|
6 | ; DGPRI Patient Relation IEN
|
---|
7 | ; DGDT Date/Time
|
---|
8 | ; Output -- DGINI Individual Annual Income IEN
|
---|
9 | ; DGIRI Income Relation IEN
|
---|
10 | ; DGERR 1=ERROR and 0=NO ERROR
|
---|
11 | S DGERR=0
|
---|
12 | S DGINI=$$GETIN(DFN,DGPRI,DGDT) S:DGINI<0 DGERR=1
|
---|
13 | I 'DGERR S DGIRI=$$GETIR(DFN,DGINI) S:DGIRI<0 DGERR=1
|
---|
14 | Q
|
---|
15 | ;
|
---|
16 | GETIN(DFN,DGPRI,DGDT) ;Look-up individual annual income
|
---|
17 | ; Add a new entry if one is not found
|
---|
18 | ; Input -- DFN Patient file IEN
|
---|
19 | ; DGPRI Patient Relation IEN
|
---|
20 | ; DGDT Date/Time
|
---|
21 | ; Output -- Individual Annual Income IEN
|
---|
22 | N DGINI,DGYR
|
---|
23 | S DGYR=$E(DGDT,1,3)_"0000"
|
---|
24 | ; get IEN of individual annual income for LTC co-pay (test type 3)
|
---|
25 | S DGINI=+$$IAI^DGMTU3(DGPRI,DGYR,3)
|
---|
26 | I '$D(^DGMT(408.21,DGINI,0)) S DGINI=$$ADDIN(DFN,DGPRI,DGYR)
|
---|
27 | GETINQ Q $S(DGINI>0:DGINI,1:-1)
|
---|
28 | ;
|
---|
29 | ADDIN(DFN,DGPRI,DGYR) ;Add a new individual annual income entry
|
---|
30 | ; Input -- DFN Patient file IEN
|
---|
31 | ; DGPRI Patient Relation IEN
|
---|
32 | ; DGYR Test Year
|
---|
33 | ; Output -- New Individual Annual Income IEN
|
---|
34 | N DA,DD,DGINI,DGNOW,DIC,DIK,DINUM,DLAYGO,DO,X,Y,%
|
---|
35 | D NOW^%DTC S DGNOW=%
|
---|
36 | S X=DGYR,(DIC,DIK)="^DGMT(408.21,",DIC(0)="L",DLAYGO=408.21
|
---|
37 | D FILE^DICN S DGINI=+Y
|
---|
38 | I DGINI>0 D
|
---|
39 | .L +^DGMT(408.21,DGINI)
|
---|
40 | .S $P(^DGMT(408.21,DGINI,0),"^",2)=DGPRI,^("USR")=DUZ_"^"_DGNOW
|
---|
41 | .I $G(DGMTI) S ^DGMT(408.21,DGINI,"MT")=DGMTI
|
---|
42 | .S DA=DGINI D IX1^DIK L -^DGMT(408.21,DGINI)
|
---|
43 | ADDINQ Q $S(DGINI>0:DGINI,1:-1)
|
---|
44 | ;
|
---|
45 | GETIR(DFN,DGINI) ;Look-up income relation
|
---|
46 | ; Add a new entry if one is not found
|
---|
47 | ; Input -- DFN Patient file IEN
|
---|
48 | ; DGINI Individual Annual Income IEN
|
---|
49 | ; Output -- Income Relation IEN
|
---|
50 | N DGIRI
|
---|
51 | S DGIRI=+$O(^DGMT(408.22,"AIND",DGINI,0))
|
---|
52 | I '$D(^DGMT(408.22,DGIRI,0)) S DGIRI=$$ADDIR(DFN,DGINI)
|
---|
53 | GETIRQ Q $S(DGIRI>0:DGIRI,1:-1)
|
---|
54 | ;
|
---|
55 | ADDIR(DFN,DGINI) ;Add a new income relation entry
|
---|
56 | ; Input -- DFN Patient file IEN
|
---|
57 | ; DGINI Individual Annual Income IEN
|
---|
58 | ; Output -- New Income Relation IEN
|
---|
59 | N DA,DD,DGIRI,DIC,DIK,DINUM,DLAYGO,DO,X,Y
|
---|
60 | S X=DFN,(DIC,DIK)="^DGMT(408.22,",DIC(0)="L",DLAYGO=408.22
|
---|
61 | D FILE^DICN S DGIRI=+Y
|
---|
62 | I DGIRI>0 L +^DGMT(408.22,DGIRI) S $P(^DGMT(408.22,DGIRI,0),"^",2)=DGINI,DA=DGIRI D IX1^DIK L -^DGMT(408.22,DGIRI)
|
---|
63 | ADDIRQ Q $S(DGIRI>0:DGIRI,1:-1)
|
---|