1 | PXRMINQ ; SLC/PKR/PJH - Clinical Reminder inquiry routines. ;03/17/2005
|
---|
2 | ;;2.0;CLINICAL REMINDERS;**4**;Feb 04, 2005;Build 21
|
---|
3 | ;
|
---|
4 | ;====================================================
|
---|
5 | DISP(DIC,FLDS) ;Display detail.
|
---|
6 | N L
|
---|
7 | S L=0
|
---|
8 | D EN1^DIP
|
---|
9 | Q
|
---|
10 | ;
|
---|
11 | ;====================================================
|
---|
12 | HEADER(TEXT) ;Display Header (see DHD variable).
|
---|
13 | N TEMP,TEXTLEN,TEXTUND
|
---|
14 | S TEXTUND=$TR($J("",IOM)," ","-")
|
---|
15 | S TEMP=NOW_" Page "_DC
|
---|
16 | S TEXTLEN=$L(TEMP)
|
---|
17 | W TEXT
|
---|
18 | W ?(IOM-TEXTLEN),TEMP
|
---|
19 | W !,TEXTUND,!!
|
---|
20 | Q
|
---|
21 | ;
|
---|
22 | ;====================================================
|
---|
23 | LOCLIST ;Do location list inquiry.
|
---|
24 | N BY,DC,DHD,FLDS,FR,IENN,NOW,PXRMEDOK,PXRMFVPL,PXRMROOT,TO
|
---|
25 | S PXRMEDOK=1
|
---|
26 | S FLDS="[PXRM LOCATION LIST INQUIRY]"
|
---|
27 | S IENN=0
|
---|
28 | S PXRMROOT="^PXRMD(810.9,"
|
---|
29 | F Q:IENN=-1 D
|
---|
30 | . S IENN=$$SELECT(PXRMROOT,"Select LOCATION LIST: ","")
|
---|
31 | . I IENN=-1 Q
|
---|
32 | . D SET(IENN,"REMINDER LOCATION LIST INQUIRY")
|
---|
33 | . D DISP(PXRMROOT,FLDS)
|
---|
34 | Q
|
---|
35 | ;
|
---|
36 | ;====================================================
|
---|
37 | REM ;Do reminder inquiry.
|
---|
38 | N BY,DC,DHD,FLDS,FR,IENN,NOW,PXRMFVPL,PXRMROOT,TO
|
---|
39 | ;Build the finding variable pointer information.
|
---|
40 | D BLDRLIST^PXRMVPTR(811.902,.01,.PXRMFVPL)
|
---|
41 | S FLDS="[PXRM DEFINITION INQUIRY]"
|
---|
42 | S IENN=0
|
---|
43 | S PXRMROOT="^PXD(811.9,"
|
---|
44 | F Q:IENN=-1 D
|
---|
45 | . S IENN=$$SELECT(PXRMROOT,"Select Reminder Definition: ","")
|
---|
46 | . I IENN=-1 Q
|
---|
47 | . D SET(IENN,"REMINDER DEFINITION INQUIRY")
|
---|
48 | . D DISP(PXRMROOT,FLDS)
|
---|
49 | Q
|
---|
50 | ;
|
---|
51 | ;====================================================
|
---|
52 | REMVAR(VAR,IEN) ;Do reminder inquiry for reminder IEN, return formatted
|
---|
53 | ;output in VAR. VAR can be either a local variable or a global.
|
---|
54 | ;If it is a local it is indexed for the broker. If it is a global
|
---|
55 | ;it should be passed in closed form i.e., ^TMP("PXRMTEST",$J).
|
---|
56 | ;It will be returned formatted for ListMan i.e.,
|
---|
57 | ;^TMP("PXRMTEST",$J,N,0).
|
---|
58 | N %ZIS,BY,DC,DHD,DONE,FF,FILENAME,FILESPEC,FLDS,FR,GBL,HFNAME
|
---|
59 | N IND,IOP,NOW,PATH,PXRMFVPL,PXRMROOT,SUCCESS,TO,UNIQN
|
---|
60 | ;Build the finding variable pointer information.
|
---|
61 | D BLDRLIST^PXRMVPTR(811.902,.01,.PXRMFVPL)
|
---|
62 | S FLDS="[PXRM DEFINITION INQUIRY]"
|
---|
63 | S PXRMROOT="^PXD(811.9,"
|
---|
64 | D SET(IEN,"")
|
---|
65 | ;Make sure the PXRM WORKSTATION device exists.
|
---|
66 | D MKWSDEV^PXRMHOST
|
---|
67 | ;Set up the output file before DIP is called.
|
---|
68 | S PATH=$$PWD^%ZISH
|
---|
69 | S NOW=$$NOW^XLFDT
|
---|
70 | S NOW=$TR(NOW,".","")
|
---|
71 | S UNIQN=$J_NOW
|
---|
72 | S FILENAME="PXRMWSD"_UNIQN_".DAT"
|
---|
73 | S HFNAME=PATH_FILENAME
|
---|
74 | S IOP="PXRM WORKSTATION;80"
|
---|
75 | S %ZIS("HFSMODE")="W"
|
---|
76 | S %ZIS("HFSNAME")=HFNAME
|
---|
77 | D DISP(PXRMROOT,FLDS)
|
---|
78 | ;Move the host file into a global.
|
---|
79 | S GBL="^TMP(""PXRMINQ"",$J,1,0)"
|
---|
80 | S GBL=$NA(@GBL)
|
---|
81 | K ^TMP("PXRMINQ",$J)
|
---|
82 | S SUCCESS=$$FTG^%ZISH(PATH,FILENAME,GBL,3)
|
---|
83 | ;Look for a form feed, remove it and all subsequent lines.
|
---|
84 | S FF=$C(12)
|
---|
85 | I $G(VAR)["^" D
|
---|
86 | . S VAR=$NA(@VAR)
|
---|
87 | . S VAR=$P(VAR,")",1)
|
---|
88 | . S VAR=VAR_",IND,0)"
|
---|
89 | . S (DONE,IND)=0
|
---|
90 | . F Q:DONE S IND=$O(^TMP("PXRMINQ",$J,IND)) Q:+IND=0 D
|
---|
91 | .. I ^TMP("PXRMINQ",$J,IND,0)=FF S DONE=1 Q
|
---|
92 | .. S @VAR=^TMP("PXRMINQ",$J,IND,0)
|
---|
93 | E D
|
---|
94 | . S (DONE,IND)=0
|
---|
95 | . F Q:DONE S IND=$O(^TMP("PXRMINQ",$J,IND)) Q:+IND=0 D
|
---|
96 | .. S VAR(IND)=^TMP("PXRMINQ",$J,IND,0)
|
---|
97 | .. I VAR(IND)=FF S DONE=1
|
---|
98 | K ^TMP("PXRMINQ",$J)
|
---|
99 | ;Delete the host file.
|
---|
100 | S FILESPEC(FILENAME)=""
|
---|
101 | S SUCCESS=$$DEL^%ZISH(PATH,$NA(FILESPEC))
|
---|
102 | Q
|
---|
103 | ;
|
---|
104 | ;====================================================
|
---|
105 | SELECT(ROOT,PROMPT,DEFAULT) ;Select the entry.
|
---|
106 | N DIC,DTOUT,DUOUT,Y
|
---|
107 | S DIC=ROOT
|
---|
108 | S DIC(0)="AEMQ"
|
---|
109 | S DIC("A")=PROMPT
|
---|
110 | I $G(DEFAULT)'="" S DIC("B")=DEFAULT
|
---|
111 | D ^DIC
|
---|
112 | Q Y
|
---|
113 | ;
|
---|
114 | ;====================================================
|
---|
115 | SET(Y,TEXT) ;Set data for entry selection and the header.
|
---|
116 | ;
|
---|
117 | ;These variables need to be setup every time because DIP kills them.
|
---|
118 | ;They are newed in the calling routine.
|
---|
119 | S BY="NUMBER"
|
---|
120 | S (FR,TO)=+$P(Y,U,1)
|
---|
121 | ;If TEXT is null then no header.
|
---|
122 | I $L(TEXT)>0 D
|
---|
123 | . S NOW=$$NOW^XLFDT
|
---|
124 | . S NOW=$$FMTE^XLFDT(NOW,"1P")
|
---|
125 | . S DHD="W ?0 D HEADER^PXRMINQ("""_TEXT_""")"
|
---|
126 | E S DHD="@@"
|
---|
127 | Q
|
---|
128 | ;
|
---|
129 | ;====================================================
|
---|
130 | SPONSOR ;Do sponsor inquiry.
|
---|
131 | N BY,DC,DHD,FLDS,FR,IENN,NOW,PXRMEDOK,PXRMFVPL,PXRMROOT,TO
|
---|
132 | S PXRMEDOK=1
|
---|
133 | S FLDS="[PXRM SPONSOR INQUIRY]"
|
---|
134 | S IENN=0
|
---|
135 | S PXRMROOT="^PXRMD(811.6,"
|
---|
136 | F Q:IENN=-1 D
|
---|
137 | . S IENN=$$SELECT(PXRMROOT,"Select Reminder Sponsor: ","")
|
---|
138 | . I IENN=-1 Q
|
---|
139 | . D SET(IENN,"REMINDER SPONSOR INQUIRY")
|
---|
140 | . D DISP(PXRMROOT,FLDS)
|
---|
141 | Q
|
---|
142 | ;
|
---|
143 | ;====================================================
|
---|
144 | TAX ;Do taxonomy inquiry.
|
---|
145 | N BY,DC,DHD,FLDS,FR,IENN,NOW,PXRMFVPL,PXRMROOT,TO
|
---|
146 | S FLDS="[PXRM TAXONOMY INQUIRY]"
|
---|
147 | S IENN=0
|
---|
148 | S PXRMROOT="^PXD(811.2,"
|
---|
149 | F Q:IENN=-1 D
|
---|
150 | . S IENN=$$SELECT(PXRMROOT,"Select Reminder Taxonomy: ","")
|
---|
151 | . I IENN=-1 Q
|
---|
152 | . D SET(IENN,"REMINDER TAXONOMY INQUIRY")
|
---|
153 | . D DISP(PXRMROOT,FLDS)
|
---|
154 | Q
|
---|
155 | ;
|
---|
156 | ;====================================================
|
---|
157 | TERM ;Do term inquiry.
|
---|
158 | N BY,DC,DHD,FLDS,FR,IENN,NOW,PXRMFVPL,PXRMROOT,TO
|
---|
159 | ;Build the finding variable pointer information
|
---|
160 | D BLDRLIST^PXRMVPTR(811.52,.01,.PXRMFVPL)
|
---|
161 | S FLDS="[PXRM TERM INQUIRY]"
|
---|
162 | S IENN=0
|
---|
163 | S PXRMROOT="^PXRMD(811.5,"
|
---|
164 | F Q:IENN=-1 D
|
---|
165 | . S IENN=$$SELECT(PXRMROOT,"Select Reminder Term: ","")
|
---|
166 | . I IENN=-1 Q
|
---|
167 | . D SET(IENN,"REMINDER TERM INQUIRY")
|
---|
168 | . D DISP(PXRMROOT,FLDS)
|
---|
169 | Q
|
---|
170 | ;
|
---|