1 | GMTSDEM2 ; SLC/DLT,KER - Demographics (cont) ; 12/11/2002 [9/16/03 7:29am]
|
---|
2 | ;;2.7;Health Summary;**56,58,60,62**;Oct 20, 1995
|
---|
3 | ;
|
---|
4 | ; External References
|
---|
5 | ; DBIA 10061 OAD^VADPT
|
---|
6 | ; DBIA 10061 DEM^VADPT
|
---|
7 | ; DBIA 951 ^IBE(355.1
|
---|
8 | ; DBIA 794 ^DIC(36
|
---|
9 | ; DBIA 2056 $$GET1^DIQ (file #36, and #355.1)
|
---|
10 | ; DBIA 10145 ALL^IBCNS1
|
---|
11 | ; DBIA 10104 $$UP^XLFSTR
|
---|
12 | ;
|
---|
13 | NOKC ; Next of Kin Component
|
---|
14 | N GMTSNOK S GMTSNOK="" D NOK Q
|
---|
15 | NOK ; Next of Kin
|
---|
16 | Q:$D(GMTSQIT) N %,%H,STR,STR1,STR2,NOKTYPE,ADR,VAERR,VAOA K VAOA("A") D OAD^VADPT
|
---|
17 | I $L($G(VAOA(9))) D
|
---|
18 | . ; Primary Next of Kin
|
---|
19 | . S NOKTYPE="Primary" D DNOK
|
---|
20 | . S VAOA("A")=3 D OAD^VADPT
|
---|
21 | . I $L($G(VAOA(9))) D
|
---|
22 | . . ; Secondary Next of Kin
|
---|
23 | . . K GMTSNOK S NOKTYPE="Secondary" D DNOK
|
---|
24 | Q
|
---|
25 | DNOK ; Display Next of Kin
|
---|
26 | D:'$D(GMTSNOK) WRT^GMTSDEM("",,,,0) Q:$D(GMTSQIT)
|
---|
27 | S STR1=$$UP^XLFSTR(VAOA(9)),STR2=$S('$L(VAOA(10)):"<not given>",1:$$UP^XLFSTR(VAOA(10)))
|
---|
28 | D WRT^GMTSDEM(($G(NOKTYPE)_" NOK"),STR1,"Relation",STR2,1) Q:$D(GMTSQIT)
|
---|
29 | S ADR=$G(VAOA(1)) K VAOA(1) I '$L(ADR) S ADR=$G(VAOA(2)) K VAOA(2) I '$L(ADR) S ADR=$G(VAOA(3)) K VAOA(3)
|
---|
30 | S STR=$S('$L(ADR):"<street address not available>",1:$$UP^XLFSTR(ADR))
|
---|
31 | K:STR="<street address not available>" VAOA(1),VAOA(2),VAOA(3)
|
---|
32 | D WRT^GMTSDEM("",STR,"Phone",VAOA(8),1) Q:$D(GMTSQIT)
|
---|
33 | S ADR=$G(VAOA(2)) K VAOA(2) I '$L(ADR) S ADR=$G(VAOA(3)) K VAOA(3)
|
---|
34 | S STR=$$UP^XLFSTR(ADR) D:$L(STR) WRT^GMTSDEM("",STR,,,1) Q:$D(GMTSQIT)
|
---|
35 | S ADR=$G(VAOA(3))
|
---|
36 | S STR=$$UP^XLFSTR(ADR) D:$L(STR) WRT^GMTSDEM("",STR,,,1) Q:$D(GMTSQIT)
|
---|
37 | I VAOA(4)'="" D
|
---|
38 | . S STR=$$UP^XLFSTR(VAOA(4)) S:VAOA(5) STR=STR_", "_$$UP^XLFSTR($P(VAOA(5),U,2)) S:VAOA(6) STR=STR_" "_$$UP^XLFSTR(VAOA(6))
|
---|
39 | . D WRT^GMTSDEM("",STR,,,1) Q:$D(GMTSQIT)
|
---|
40 | Q
|
---|
41 | ;
|
---|
42 | INS ; Insurance Info
|
---|
43 | N I,INSURE,GMTSX,IEN,VAL,CLAIM,COMPANY,TYPE,COB,SUBSCRIB,GROUP,HOLDER,EFFECT,EXPIRE
|
---|
44 | D ALL^IBCNS1(DFN,"INSURE") Q:$O(INSURE(0))=""
|
---|
45 | S I=0 F S I=$O(INSURE(I)) Q:'I D Q:$D(GMTSQIT)
|
---|
46 | . S (COMPANY,TYPE,GROUP,HOLDER,EFFECT,EXPIRE)=""
|
---|
47 | . S GMTSX=INSURE(I,0),IEN=+GMTSX
|
---|
48 | . ; Insurance Company
|
---|
49 | . S COMPANY=$$GET1^DIQ(36,(+IEN_","),.01) Q:'$L(COMPANY)
|
---|
50 | . S CLAIM=INSURE(I,355.3)
|
---|
51 | . ; Policy Type
|
---|
52 | . S IEN=$P(CLAIM,"^",9)
|
---|
53 | . S TYPE="" I IEN]"" D
|
---|
54 | . . S TYPE=$$GET1^DIQ(355.1,(+IEN_","),.01) S TYPE=$$ABR(TYPE)
|
---|
55 | . ; Group Number
|
---|
56 | . S GROUP=$P(CLAIM,"^",4)
|
---|
57 | . S GMTSX=INSURE(I,0),VAL=$P(GMTSX,"^",6)
|
---|
58 | . ; Insurance Policy Holder
|
---|
59 | . S HOLDER=$S(VAL="v":"SELF",VAL="s":"SPOUSE",1:"OTHER")
|
---|
60 | . ; Insurance Effect Date
|
---|
61 | . S EFFECT=$P(GMTSX,"^",8)
|
---|
62 | . ; Insurance Expiration Date
|
---|
63 | . S EXPIRE=$P(GMTSX,"^",4)
|
---|
64 | . ; Subscriber ID
|
---|
65 | . S SUBSCRIB=$P($G(INSURE(I,0)),"^",2)
|
---|
66 | . ; Coordination of Benefits
|
---|
67 | . S COB=+($P($G(INSURE(I,0)),"^",20))
|
---|
68 | . S COB=$S(COB=1:"PRIMARY",COB=2:"SECONDARY",COB=3:"TERTIARY",1:"UNKNOWN")
|
---|
69 | . Q:$D(GMTSQIT) D WRT^GMTSDEM("",,,,0) Q:$D(GMTSQIT)
|
---|
70 | . D WRT^GMTSDEM("Insurance Company",$E(COMPANY,1,27),"Holder",HOLDER,1) Q:$D(GMTSQIT)
|
---|
71 | . I $L(TYPE)!($L(EFFECT)) D WRT^GMTSDEM("Policy Type",$E(TYPE,1,28),"Effective",$$EDT^GMTSU(EFFECT),1) Q:$D(GMTSQIT)
|
---|
72 | . I $L(GROUP)!($L(EXPIRE)) D WRT^GMTSDEM("Group #",$E(GROUP,1,28),"Expires",$$EDT^GMTSU(EXPIRE),1) Q:$D(GMTSQIT)
|
---|
73 | . I $L(SUBSCRIB)!($L(COB)) D WRT^GMTSDEM("Subscriber ID",$E(SUBSCRIB,1,28),"Coord. of Benefits",COB,1) Q:$D(GMTSQIT)
|
---|
74 | Q
|
---|
75 | ;
|
---|
76 | RACE ; Race and Ethnicity
|
---|
77 | N GMTS D ER(+($G(DFN)),.GMTS) I $L($G(GMTS(2)))!($L($G(GMTS(6)))) D Q
|
---|
78 | . N GMTSD,GMTSI,GMTSC
|
---|
79 | . S (GMTSI,GMTSC)=0 F GMTSI=1:1 Q:'$L($P($G(GMTS(6)),"^",GMTSI)) D Q:$D(GMTSQIT)
|
---|
80 | . . S GMTSD=$P($G(GMTS(6)),"^",GMTSI),GMTSC=GMTSC+1
|
---|
81 | . . D:+GMTSC=1 WRT^GMTSDEM("Ethnicity",GMTSD,"",,1) Q:$D(GMTSQIT)
|
---|
82 | . . D:+GMTSC>1 WRT^GMTSDEM("",GMTSD,"",,1) Q:$D(GMTSQIT)
|
---|
83 | . Q:$D(GMTSQIT)
|
---|
84 | . S (GMTSI,GMTSC)=0 F GMTSI=1:1 Q:'$L($P($G(GMTS(2)),"^",GMTSI)) D Q:$D(GMTSQIT)
|
---|
85 | . . S GMTSD=$P($G(GMTS(2)),"^",GMTSI),GMTSC=GMTSC+1
|
---|
86 | . . D:+GMTSC=1 WRT^GMTSDEM("Race",GMTSD,"",,1) Q:$D(GMTSQIT)
|
---|
87 | . . D:+GMTSC>1 WRT^GMTSDEM("",GMTSD,"",,1) Q:$D(GMTSQIT)
|
---|
88 | I '$L($G(GMTS(2)))&('$L($G(GMTS(6)))) D Q
|
---|
89 | . N GMTSD,GMTSI,GMTSC S GMTSD=$G(GMTS(.06)) D WRT^GMTSDEM("Race",GMTSD,"",,1) Q:$D(GMTSQIT)
|
---|
90 | Q
|
---|
91 | RE ; Race and Ethnicity Component
|
---|
92 | N GMTS D ER(+($G(DFN)),.GMTS) I $L($G(GMTS(2)))!($L($G(GMTS(6)))) D Q
|
---|
93 | . N GMTSD,GMTSI,GMTSC
|
---|
94 | . S (GMTSI,GMTSC)=0 F GMTSI=1:1 Q:'$L($P($G(GMTS(6)),"^",GMTSI)) D Q:$D(GMTSQIT)
|
---|
95 | . . S GMTSD=$P($G(GMTS(6)),"^",GMTSI),GMTSC=GMTSC+1
|
---|
96 | . . D:+GMTSC=1 WRT^GMTSDEM("Ethnicity",GMTSD,"",,1) Q:$D(GMTSQIT)
|
---|
97 | . . D:+GMTSC>1 WRT^GMTSDEM("",GMTSD,"",,1) Q:$D(GMTSQIT)
|
---|
98 | . Q:$D(GMTSQIT)
|
---|
99 | . S (GMTSI,GMTSC)=0 F GMTSI=1:1 Q:'$L($P($G(GMTS(2)),"^",GMTSI)) D Q:$D(GMTSQIT)
|
---|
100 | . . S GMTSD=$P($G(GMTS(2)),"^",GMTSI),GMTSC=GMTSC+1
|
---|
101 | . . D:+GMTSC=1 WRT^GMTSDEM("Race",GMTSD,"",,1) Q:$D(GMTSQIT)
|
---|
102 | . . D:+GMTSC>1 WRT^GMTSDEM("",GMTSD,"",,1) Q:$D(GMTSQIT)
|
---|
103 | I '$L($G(GMTS(2)))&('$L($G(GMTS(6)))) D Q
|
---|
104 | . N GMTSD,GMTSI,GMTSC S GMTSD=$G(GMTS(.06)) D WRT^GMTSDEM("Race",GMTSD,"",,1) Q:$D(GMTSQIT)
|
---|
105 | Q
|
---|
106 | ER(DFN,GMTS) ; Get Ethnicity and Race
|
---|
107 | N VADM,VA,VAERR,GMTSD,GMTSI,GMTSC,X,Y S DFN=+($G(DFN)) Q:+DFN=0
|
---|
108 | D DEM^VADPT S GMTSD=$P($G(VADM(8)),"^",2),GMTS(.06)=GMTSD,GMTS("OLD")=GMTSD
|
---|
109 | S GMTSI=0 F S GMTSI=$O(VADM(11,GMTSI)) Q:+GMTSI=0 D
|
---|
110 | . S GMTSD=$P($G(VADM(11,GMTSI)),"^",2) S:$L(GMTSD) GMTS(6)=$G(GMTS(6))_"^"_GMTSD
|
---|
111 | S GMTSD=$G(GMTS(6)) F Q:$E(GMTSD,1)'="^" S GMTSD=$E(GMTSD,2,$L(GMTSD))
|
---|
112 | S GMTS(6)=GMTSD S GMTSI=0 F S GMTSI=$O(VADM(12,GMTSI)) Q:+GMTSI=0 D
|
---|
113 | . S GMTSD=$P($G(VADM(12,GMTSI)),"^",2) S:$L(GMTSD) GMTS(2)=$G(GMTS(2))_"^"_GMTSD
|
---|
114 | S GMTSD=$G(GMTS(2)) F Q:$E(GMTSD,1)'="^" S GMTSD=$E(GMTSD,2,$L(GMTSD))
|
---|
115 | S GMTS(2)=GMTSD,GMTSD=$G(GMTS(6))_"^^"_$G(GMTS(2)) F Q:$E(GMTSD,1)'="^" S GMTSD=$E(GMTSD,2,$L(GMTSD))
|
---|
116 | S GMTS("NEW")=GMTSD,GMTS(.06)=$G(GMTS(.06)),GMTS(2)=$G(GMTS(2)),GMTS(6)=$G(GMTS(6))
|
---|
117 | Q
|
---|
118 | ;
|
---|
119 | ABR(X) ; Abbreviations
|
---|
120 | S X=$$UP^XLFSTR($G(X)) N TM,AB,SID S TM="PROCEDURES",AB="PROC" S:X[TM X=$$SW(X,TM,AB)
|
---|
121 | S TM="SUPPLEMENTAL",AB="SUP" S:X[TM X=$$SW(X,TM,AB) S TM="ORGANIZATION",AB="ORG" S:X[TM X=$$SW(X,TM,AB) S TM="ORIGIZ",AB="ORG" S:X[TM X=$$SW(X,TM,AB)
|
---|
122 | S TM="ORGANIZ",AB="ORG" S:X[TM X=$$SW(X,TM,AB) S TM="MAINTENANCE",AB="MAINT" S:X[TM X=$$SW(X,TM,AB) S TM="PROVIDER",AB="PROV" S:X[TM X=$$SW(X,TM,AB)
|
---|
123 | S TM="INDIVIDUAL",AB="INDIVID" S:X[TM X=$$SW(X,TM,AB) S TM="ASSOCATION",AB="ASSOC" S:X[TM X=$$SW(X,TM,AB) S TM="ASSOCIATION",AB="ASSOC" S:X[TM X=$$SW(X,TM,AB)
|
---|
124 | S TM="PRACT",AB="PRACT" S:X[TM X=$$SW(X,TM,AB) S TM="INSURANCE",AB="INS" S:X[TM X=$$SW(X,TM,AB) S TM="ETC.",AB="ETC" S:X[TM X=$$SW(X,TM,AB)
|
---|
125 | S TM="(ONLY)",AB="" S:X[TM X=$$SW(X,TM,AB) S TM="PROTECTION",AB="PROT" S:X[TM X=$$SW(X,TM,AB) S TM="PRACTICE",AB="PRACT" S:X[TM X=$$SW(X,TM,AB)
|
---|
126 | Q X
|
---|
127 | SW(X,Y,Z) ; Swap Abbreviation with Term
|
---|
128 | N TM,AB
|
---|
129 | S X=$G(X),TM=$$TRIM($G(Y)),AB=$$TRIM($G(Z)) Q:X="" "" Q:TM="" X Q:TM=AB X
|
---|
130 | F Q:X'[TM S X=$P(X,TM,1)_AB_$P(X,TM,2)
|
---|
131 | Q X
|
---|
132 | TRIM(X) ; Trim Spaces
|
---|
133 | S X=$G(X) Q:X="" X F Q:$E(X,1)'=" " S X=$E(X,2,$L(X))
|
---|
134 | F Q:$E(X,$L(X))'=" " S X=$E(X,1,($L(X)-1))
|
---|
135 | F Q:X'[" " S X=$P(X," ",1)_" "_$P(X," ",2,229)
|
---|
136 | Q X
|
---|