1 | EASEZC3 ;ALB/jap - Compare 1010EZ Data with VistA Database (cont.) ;10/16/00 13:08
|
---|
2 | ;;1.0;ENROLLMENT APPLICATION SYSTEM;**51**;Mar 15, 2001
|
---|
3 | ;
|
---|
4 | SORT(EASAPP) ;resort ^TMP("EZDATA", to prepare for screen display
|
---|
5 | N KEYIEN,DATAKEY,ALL,EZDATA,DISPNM,PTDATA,EASMULT,TRNSFORM,QUES,Q1,QQ,QX,NQ,SECT,FFF,XNAME,MULT
|
---|
6 | K ^TMP("EZTEMP",$J),^TMP("EZDISP",$J)
|
---|
7 | S KEYIEN=.1 F S KEYIEN=$O(^TMP("EZDATA",$J,KEYIEN)) Q:'KEYIEN I $D(^(KEYIEN))>1 D
|
---|
8 | .S DATAKEY=$P(^TMP("EZDATA",$J,KEYIEN),U,4),SECT=$P(DATAKEY,";",1),QUES=$P(DATAKEY,";",2)
|
---|
9 | .;must use variable name EASMULT,EASRTR for any Transform
|
---|
10 | .S EASMULT=0 F S EASMULT=$O(^TMP("EZDATA",$J,KEYIEN,EASMULT)) Q:'EASMULT D
|
---|
11 | ..;here ALL=ezdata^accept^712.01ien
|
---|
12 | ..S ALL=$G(^TMP("EZDATA",$J,KEYIEN,EASMULT,1)),EZDATA=$P(ALL,U,1)
|
---|
13 | ..;ez data conversion for display
|
---|
14 | ..K EASRTR S TRNSFORM=$G(^EAS(711,KEYIEN,"T")) I TRNSFORM'="" X TRNSFORM S EZDATA=$G(EASRTR)
|
---|
15 | ..S PTDATA=$P($G(^TMP("EZDATA",$J,KEYIEN,EASMULT,2)),U,1)
|
---|
16 | ..I EZDATA="" S $P(^TMP("EZDATA",$J,KEYIEN,EASMULT,1),U,1)=""
|
---|
17 | ..Q:(EZDATA="")&(PTDATA="")
|
---|
18 | ..S DISPNM=$P($G(^TMP("EZDATA",$J,KEYIEN)),U,5)
|
---|
19 | ..S ^TMP("EZTEMP",$J,SECT,EASMULT,QUES)=KEYIEN_U_EZDATA_U_$P(ALL,U,2)_U_$P(ALL,U,3)_U_PTDATA
|
---|
20 | ..Q:$$SUPPRESS^EASEZU4(EASAPP,DATAKEY,0,EASVRSN) ;alb/cmf/51
|
---|
21 | ..;set another array so questions fall in proper display order
|
---|
22 | ..I QUES=+QUES D Q
|
---|
23 | ...S ^TMP("EZDISP",$J,SECT,EASMULT,QUES,0)=^TMP("EZTEMP",$J,SECT,EASMULT,QUES)_U_DISPNM
|
---|
24 | ..S Q1=$E(QUES,1) I Q1=+QUES D Q
|
---|
25 | ...S QX=$E(QUES,2,99) S:QX="." QX=0
|
---|
26 | ...S ^TMP("EZDISP",$J,SECT,EASMULT,Q1,QX)=^TMP("EZTEMP",$J,SECT,EASMULT,QUES)_U_DISPNM
|
---|
27 | ..S Q1=$E(QUES,1,2) I Q1=+QUES D
|
---|
28 | ...S QX=$E(QUES,3,99) S:QX="." QX=0
|
---|
29 | ...S ^TMP("EZDISP",$J,SECT,EASMULT,Q1,QX)=^TMP("EZTEMP",$J,SECT,EASMULT,QUES)_U_DISPNM
|
---|
30 | ;rearrange Section IIA
|
---|
31 | S SECT="IIA",MULT=1,QQ="" F S QQ=$O(^TMP("EZDISP",$J,SECT,MULT,QQ)) Q:QQ>99 Q:QQ="" D
|
---|
32 | .S XNAME=$P(^TMP("EZDISP",$J,SECT,MULT,QQ,0),U,6),NQ=$S(XNAME["Sp.":100,1:200)
|
---|
33 | .S ^TMP("EZDISP",$J,SECT,MULT,NQ,QQ)=^TMP("EZDISP",$J,SECT,MULT,QQ,0)
|
---|
34 | .K ^TMP("EZDISP",$J,SECT,MULT,QQ,0)
|
---|
35 | Q
|
---|
36 | ;
|
---|
37 | OUT ;output current contents of ^TMP("EZTEMP",
|
---|
38 | ;only used for development from programmer mode
|
---|
39 | N S,M,OLDM,QUES,Q1,QX,KEYIEN,DISPNM,EZDATA,PTDATA,X
|
---|
40 | S S="" F S S=$O(^TMP("EZDISP",$J,S)) Q:S="" D
|
---|
41 | .W !!!,"SECTION "_S
|
---|
42 | .S M=0,OLDM=0 F S M=$O(^TMP("EZDISP",$J,S,M)) Q:'M D
|
---|
43 | ..I M'=OLDM W !
|
---|
44 | ..S OLDM=M
|
---|
45 | ..S Q1="" F S Q1=$O(^TMP("EZDISP",$J,S,M,Q1)) Q:Q1="" S QX="" F S QX=$O(^TMP("EZDISP",$J,S,M,Q1,QX)) Q:QX="" D
|
---|
46 | ...S (EZDATA,PTDATA)=""
|
---|
47 | ...S X=^TMP("EZDISP",$J,S,M,Q1,QX),KEYIEN=$P(X,U,1),EZDATA=$P(X,U,2),PTDATA=$P(X,U,5),DISPNM=$P(X,U,6)
|
---|
48 | ...I Q1>99 S QUES=QX_"."
|
---|
49 | ...E S QUES=Q1_$S(QX=0:".",1:QX)
|
---|
50 | ...W !,"QUESTION "_QUES_" "_DISPNM
|
---|
51 | ...W !,?3,"1010EZ : "_EZDATA
|
---|
52 | ...W !,?3,"VistA : "_PTDATA
|
---|
53 | Q
|
---|
54 | ;
|
---|
55 | C202 ;alb/cmf/51 place race info into local711 array
|
---|
56 | N M,B,VDATA,KEY,RAC
|
---|
57 | D GETS^DIQ(2,EASDFN_",","2*","","RAC")
|
---|
58 | Q:'$D(RAC)
|
---|
59 | D D202("APPLICANT RACE - AMERICAN INDIAN OR ALASKA NATIVE","AMERI")
|
---|
60 | D D202("APPLICANT RACE - BLACK OR AFRICAN AMERICAN","BLACK")
|
---|
61 | D D202("APPLICANT RACE - HAWAIIAN OR PAC ISLANDER","NATIV")
|
---|
62 | D D202("APPLICANT RACE - ASIAN","ASIAN")
|
---|
63 | D D202("APPLICANT RACE - WHITE","WHITE")
|
---|
64 | D D202("APPLICANT RACE - UNANSWERED","UNKNO")
|
---|
65 | Q
|
---|
66 | ;
|
---|
67 | D202(AKEY,ARACE) ;
|
---|
68 | S KEY=+$$KEY711^EASEZU1(AKEY)
|
---|
69 | S M=0 F S M=$O(^TMP("EZDATA",$J,KEY,M)) Q:'M D
|
---|
70 | .S VDATA=""
|
---|
71 | .S B=$$Q202(ARACE) I +B S VDATA="YES"_$P(B,U,2)
|
---|
72 | .S $P(^TMP("EZDATA",$J,KEY,M,2),U,1)=VDATA
|
---|
73 | Q
|
---|
74 | ;
|
---|
75 | Q202(X) ;
|
---|
76 | N I,FLAG
|
---|
77 | S FLAG=0
|
---|
78 | Q:'$D(RAC) FLAG
|
---|
79 | D:'$D(RAC("B"))
|
---|
80 | .S I=""
|
---|
81 | .F S I=$O(RAC(2.02,I)) Q:I="" D
|
---|
82 | ..S RAC("B",$E(RAC(2.02,I,.01),1,5))=$E(RAC(2.02,I,.02),1)
|
---|
83 | I $D(RAC("B",X)) S FLAG=1_U_" ("_RAC("B",X)_")"
|
---|
84 | ;S I=""
|
---|
85 | ;F S I=$O(RAC(2.02,I)) Q:(I="")!(+FLAG) D
|
---|
86 | ;.I $E(RAC(2.02,I,.01),1,5)=X S FLAG=1_U_" ("_$E(RAC(2.02,I,.02),1)_")"
|
---|
87 | Q FLAG
|
---|
88 | ;
|
---|
89 | C206 ;alb/cmf/51 place ethnicity info into local711 array
|
---|
90 | N X,M,B,VDATA,KEY,ETH
|
---|
91 | D GETS^DIQ(2,EASDFN_",","6*","","ETH")
|
---|
92 | Q:'$D(ETH)
|
---|
93 | S KEY=+$$KEY711^EASEZU1("APPLICANT SPANISH, HISPANIC, OR LATIN")
|
---|
94 | S M=0 F S M=$O(^TMP("EZDATA",$J,KEY,M)) Q:'M D
|
---|
95 | .S VDATA="",B=""
|
---|
96 | .D S $P(^TMP("EZDATA",$J,KEY,M,2),U,1)=VDATA
|
---|
97 | ..S B=$$Q206("NOT") I +B S VDATA="NO"_$P(B,U,2) Q
|
---|
98 | ..S B=$$Q206("HIS") I +B S VDATA="YES"_$P(B,U,2) Q
|
---|
99 | ..S B=$$Q206("DEC") I +B S VDATA="DECLINED"_$P(B,U,2) Q
|
---|
100 | ..S B=$$Q206("UNK") I +B S VDATA="UNKNOWN"_$P(B,U,2) Q
|
---|
101 | ..Q
|
---|
102 | .Q
|
---|
103 | Q
|
---|
104 | ;
|
---|
105 | Q206(X) ;
|
---|
106 | N I,FLAG
|
---|
107 | S FLAG=0
|
---|
108 | Q:'$D(ETH) FLAG
|
---|
109 | D:'$D(ETH("B"))
|
---|
110 | .S I=""
|
---|
111 | .F S I=$O(ETH(2.06,I)) Q:I="" D
|
---|
112 | ..S ETH("B",$E(ETH(2.06,I,.01),1,3))=$E(ETH(2.06,I,.02),1)
|
---|
113 | I $D(ETH("B",X)) S FLAG=1_U_" ("_ETH("B",X)_")"
|
---|
114 | ;S I=""
|
---|
115 | ;F S I=$O(ETH(2.06,I)) Q:(I="")!(+FLAG) D
|
---|
116 | ;.I $E(ETH(2.06,I,.01),1,3)=X S FLAG=1_U_" ("_$E(ETH(2.06,I,.02),1)_")"
|
---|
117 | Q FLAG
|
---|
118 | ;
|
---|