1 | ORWDBA12 ; SLC/GDU - Billing Awareness - Phase I [10/18/04 10:24]
|
---|
2 | ;;3.0;ORDER ENTRY/RESULTS REPORTING;**195**;Dec 17, 1997
|
---|
3 | ;
|
---|
4 | ;Enable Clinical Indicator Data Capture By Provider Parameter Module
|
---|
5 | ;ORWDBA12 - Delete the assigned parameter
|
---|
6 | ;
|
---|
7 | ;This program is used to delete the assigned parameter of a selected
|
---|
8 | ;provider.
|
---|
9 | ;
|
---|
10 | ;Programs Called:
|
---|
11 | ; GETS^DIQ Silent FileMan DBS call to get provider information
|
---|
12 | ; ^DIR General purpose response reader
|
---|
13 | ; DEL^XPAR Deletes the selected parameter
|
---|
14 | ; ENVAL^XPAR Returns list of records related to the parameter
|
---|
15 | ;
|
---|
16 | ;Variables used:
|
---|
17 | ; BAEI Billing Awareness Enabled Parameter Internal value
|
---|
18 | ; DIR Input array variable for ^DIR
|
---|
19 | ; DTOUT Timeout indicator output variable for ^DIR
|
---|
20 | ; DUOUT Up Arrow '^' indictor output variable for ^DIR
|
---|
21 | ; ENT Enitity, input variable for ^XPAR
|
---|
22 | ; ORERR Error, output variable for ^XPAR, and ^DIQ
|
---|
23 | ; FILE File number, input variable for ^DIQ
|
---|
24 | ; FLD Field number, input variable for ^DIQ
|
---|
25 | ; FLG Flag, input parameters variable for ^DIQ
|
---|
26 | ; FST Work variable controls build of user selection display
|
---|
27 | ; GBL Global, input parameter to direct ^XPAR output to a global
|
---|
28 | ; HC Help Count, work variable to set help text lines for ^DIR
|
---|
29 | ; INST Instance, input variable for ^XPAR
|
---|
30 | ; LIST List, output variable for ^XPAR
|
---|
31 | ; OPTCNT Option Count, counter variable to build options display
|
---|
32 | ; input variable for ^DIR
|
---|
33 | ; PAR Parameter, IEN of the parameter being worked with, input
|
---|
34 | ; variable for ^XPAR
|
---|
35 | ; PRVCNT Provider Count, counter variable to determine the number
|
---|
36 | ; of providers with the parameter assigned to them
|
---|
37 | ; PRVIEN Provider IEN, the internal entry number of the provider
|
---|
38 | ; PRVNAME Provider Name, the name of the provider
|
---|
39 | ; RF Record Found, output variable for ^DIQ
|
---|
40 | ; SELKEY Selected Key, work variable the IEN of the temp global
|
---|
41 | ; indicating the user's selection.
|
---|
42 | ; U Delemiter variable, defaulted to ^
|
---|
43 | ; X Standard work variable
|
---|
44 | ; Y Processed user selection output variable for ^DIC
|
---|
45 | ;
|
---|
46 | ;Globals Used:
|
---|
47 | ;^XTV(8989.51,"B"
|
---|
48 | ; Standard B index for the Parameters file.
|
---|
49 | ; ^XTV(8989.51,"B",Parameter Name,Parameter IEN)
|
---|
50 | ;^TMP("ORPAL",$J
|
---|
51 | ; Multipurpose temp global used for the delete process
|
---|
52 | ; Output global for ^XPAR
|
---|
53 | ; ^TMP("ORPAL",$J,"A")=total records returned
|
---|
54 | ; ^TMP("ORPAL",$J,"A",Provider IEN_";VA(200,",1)=parameter value
|
---|
55 | ; First pass processing of ^XPAR output
|
---|
56 | ; ^TMP("ORPAL",$J,"B",Provider Name)=IEN^param value
|
---|
57 | ; Second pass processing of ^XPAR output, work data for program
|
---|
58 | ; ^TMP("ORPAL",$J,"C",Record Count)=Name^IEN^param value
|
---|
59 | ; Third pass processing of ^XPAR output, input data for ^DIR, used
|
---|
60 | ; to create the user selection interface
|
---|
61 | ; ^TMP("ORPAL",$J,"D",Provider Name)=Record Count from "C"
|
---|
62 | MAIN ;Main starting point for the delete assigned Enable BA By User
|
---|
63 | ;process
|
---|
64 | N BAEI,DIR,DTOUT,DUOUT,ENT,ORERR,FILE,FLD,FLG,FST,GBL,HC,INST,LIST
|
---|
65 | N OPTCNT,PAR,PRVCNT,PRVIEN,PRVNAME,RF,SELKEY,U,X,Y
|
---|
66 | K ^TMP("ORPAL",$J),^TMP("SPL",$J)
|
---|
67 | S U="^",(INST,GBL)=1
|
---|
68 | S PAR=$QS($Q(^XTV(8989.51,"B","OR BILLING AWARENESS BY USER")),4)
|
---|
69 | BLDLST ;Build list of providers with the Enable CIDC By User parameter already
|
---|
70 | ;assigned to them.
|
---|
71 | S LIST="^TMP(""ORPAL"",$J,""A"")"
|
---|
72 | D ENVAL^XPAR(LIST,PAR,INST,.ORERR,GBL)
|
---|
73 | I ^TMP("ORPAL",$J,"A")=0 D G EXIT
|
---|
74 | . D SCRHDR
|
---|
75 | . S DIR(0)="E"
|
---|
76 | . S DIR("A",1)=$P($T(NPA1),";",2)
|
---|
77 | . S DIR("A",2)=$P($T(NPA2),";",2)
|
---|
78 | . S DIR("A",3)=$P($T(NPA3),";",2)
|
---|
79 | . S DIR("A")=$P($T(NPA4),";",2)
|
---|
80 | . W !!! D ^DIR K DIR
|
---|
81 | S FILE=200,FLD=.01,(BAEI,FLG,PRVIEN,PRVNAME,X)=""
|
---|
82 | F S X=$O(^TMP("ORPAL",$J,"A",X)) Q:X="" D
|
---|
83 | . S PRVIEN=$P(X,";")
|
---|
84 | . S BAEI=^TMP("ORPAL",$J,"A",X,1)
|
---|
85 | . K RF,ERR
|
---|
86 | . D GETS^DIQ(FILE,PRVIEN,FLD,FLG,"RF","ERR")
|
---|
87 | . S PRVNAME=RF(FILE,PRVIEN_",",.01)
|
---|
88 | . S ^TMP("ORPAL",$J,"B",PRVNAME)=PRVIEN_U_BAEI
|
---|
89 | S PRVNAME="",PRVCNT=0
|
---|
90 | F S PRVNAME=$O(^TMP("ORPAL",$J,"B",PRVNAME)) Q:PRVNAME="" D
|
---|
91 | . S PRVCNT=PRVCNT+1
|
---|
92 | . S ^TMP("ORPAL",$J,"C",PRVCNT)=PRVNAME_U_^TMP("ORPAL",$J,"B",PRVNAME)
|
---|
93 | S PRVNAME="",PRVCNT=0
|
---|
94 | F S PRVCNT=$O(^TMP("ORPAL",$J,"C",PRVCNT)) Q:PRVCNT="" D
|
---|
95 | . S PRVNAME=$P(^TMP("ORPAL",$J,"C",PRVCNT),U)
|
---|
96 | . S ^TMP("ORPAL",$J,"D",PRVNAME)=PRVCNT
|
---|
97 | S FST=1 ;Prepare for display
|
---|
98 | DISOPT ;Display the list of providers with the Enable BDC By User parameter
|
---|
99 | ;assigned to them. The user selects from this list the provider
|
---|
100 | ;whose parameter is to be deleted.
|
---|
101 | DO1 S FST=1 ;Prepare for display
|
---|
102 | DO2 D SCRHDR ;Display starts here
|
---|
103 | S (OPTCNT,PRVNAME,X)="",DIR(0)="SO"_U
|
---|
104 | F X=FST:1:10+(FST-1) Q:$D(^TMP("ORPAL",$J,"C",X))=0 D
|
---|
105 | . S OPTCNT=OPTCNT+1
|
---|
106 | . S:OPTCNT>10 OPTCNT=1
|
---|
107 | . S PRVNAME=$P(^TMP("ORPAL",$J,"C",X),U)
|
---|
108 | . S DIR(0)=DIR(0)_OPTCNT_":"_PRVNAME_";"
|
---|
109 | S:OPTCNT=10 DIR(0)=DIR(0)_";"_$P($T(D0N),";",2)
|
---|
110 | S:FST>10 DIR(0)=DIR(0)_";"_$P($T(D0P),";",2)
|
---|
111 | S DIR(0)=DIR(0)_";"_$P($T(D0Q),";",2)
|
---|
112 | S HC=1,DIR("?",HC)=$P($T(DHD),";",2)
|
---|
113 | S:OPTCNT=10 HC=HC+1,DIR("?",HC)=$P($T(DHN),";",2)
|
---|
114 | S:FST>10 HC=HC+1,DIR("?",HC)=$P($T(DHP),";",2)
|
---|
115 | S DIR("A")=$P($T(DAD),";",2)
|
---|
116 | S DIR("?")=$P($T(DHQ),";",2)
|
---|
117 | D ^DIR K DIR
|
---|
118 | I Y="Q"!(Y="")!($D(DTOUT))!($D(DUOUT)) G EXIT
|
---|
119 | I Y="N" S FST=FST+10 G DO2
|
---|
120 | I Y="P" S FST=FST-10 G DO2
|
---|
121 | S PRVNAME=Y(0),(SELKEY,PRVIEN)=""
|
---|
122 | S SELKEY=^TMP("ORPAL",$J,"D",PRVNAME)
|
---|
123 | S PRVIEN=$P(^TMP("ORPAL",$J,"C",SELKEY),U,2)
|
---|
124 | S BAEI=$P(^TMP("ORPAL",$J,"C",SELKEY),U,3)
|
---|
125 | DELETE ;Confirm the selected provider and delete the selected provider's
|
---|
126 | ;assigned Enable BDC By User parameter
|
---|
127 | D SCRHDR
|
---|
128 | W !!,$P($P($T(DPM),";",2),"|"),PRVNAME,$P($P($T(DPM),";",2),"|",2)
|
---|
129 | I BAEI=1 W !,$P($T(DPEM),";",2)
|
---|
130 | E W !,$P($T(DPDM),";",2)
|
---|
131 | S DIR(0)="Y"
|
---|
132 | S DIR("A")=$P($T(DPA),";",2)
|
---|
133 | S DIR("B")="N"
|
---|
134 | S DIR("?",1)=$P($T(DPHY),";",2)
|
---|
135 | S DIR("?")=$P($T(DPHN),";",2)
|
---|
136 | D ^DIR K DIR
|
---|
137 | I $D(DTOUT)!($D(DUOUT)) Q
|
---|
138 | I Y=1 D
|
---|
139 | . S ENT=PRVIEN_";VA(200,"
|
---|
140 | . D DEL^XPAR(ENT,PAR,INST,.ORERR)
|
---|
141 | AGAIN ;Ask the user if they want to do the delete process again.
|
---|
142 | S DIR(0)="Y"
|
---|
143 | S DIR("A")=$P($T(ADA),";",2)
|
---|
144 | S DIR("B")="N"
|
---|
145 | S DIR("?",1)=$P($T(ADHY),";",2)
|
---|
146 | S DIR("?")=$P($T(ADHN),";",2)
|
---|
147 | W !! D ^DIR K DIR
|
---|
148 | I Y=1 G MAIN
|
---|
149 | G EXIT
|
---|
150 | NPA ;No Parameter Set
|
---|
151 | ;Error trap for no Enable BDC By User parameter are currently assigned
|
---|
152 | D SCRHDR
|
---|
153 | S DIR(0)="E"
|
---|
154 | S DIR("A",1)=$P($T(NPA1),";",2)
|
---|
155 | S DIR("A",2)=$P($T(NPA2),";",2)
|
---|
156 | S DIR("A",3)=$P($T(NPA3),";",2)
|
---|
157 | S DIR("A")=$P($T(NPA4),";",2)
|
---|
158 | EXIT ;Common exit point for this program
|
---|
159 | K ^TMP("ORPAL",$J)
|
---|
160 | Q
|
---|
161 | SCRHDR ;Screen Header Display
|
---|
162 | W:$D(IOF) @IOF
|
---|
163 | W !,"Enable Clinical Indicator Data Capture By Provider Parameter Management"
|
---|
164 | W !,"Delete Assigned Parameter"
|
---|
165 | Q
|
---|
166 | ;Text for the user prompt in NPA
|
---|
167 | NPA1 ;No providers currently have the parameter assigned to them.
|
---|
168 | NPA2 ;You will need to select the 'Assign parameter to provider' option and
|
---|
169 | NPA3 ;assign this parameter to the providers.
|
---|
170 | NPA4 ;Press the return key or '^' to continue
|
---|
171 | ;This is the text to build the DIR variables for use with ^DIR in
|
---|
172 | ;DISOPT
|
---|
173 | D0N ;N:Next 10 Providers
|
---|
174 | D0P ;P:Previous 10 Providers
|
---|
175 | D0Q ;Q:Quit
|
---|
176 | DAD ;Select the provider to delete the assigned parameter
|
---|
177 | DHD ;Select the provider whose assigned parameter value is to be deleted.
|
---|
178 | DHN ;Enter N for the next 10 providers in the list.
|
---|
179 | DHP ;Enter P for the previous 10 providers in the list.
|
---|
180 | DHQ ;Enter Q to quit and return to the previous menu
|
---|
181 | ;This is the text to build the DIR variable for use with ^DIR in DELETE
|
---|
182 | ;and the user message.
|
---|
183 | DPM ;You have selected | to delete.
|
---|
184 | DPEM ;Clinical Indicator Data Capture for this provider is currently enabled.
|
---|
185 | DPDM ;Clinical Indicator Data Capture for this provider is currently disabled.
|
---|
186 | DPA ;Are you sure that you want to delete this provider's parameter
|
---|
187 | DPHY ;Enter Y for Yes to confirm deletion of this provider's parameter.
|
---|
188 | DPHN ;Enter N for No to not delete this provider's parameter.
|
---|
189 | ;This is the text to build the DIR variable for use with ^DIR in AGAIN
|
---|
190 | ADA ;Delete another provider's parameter
|
---|
191 | ADHY ;Enter Y for Yes to delete another provider's parameter.
|
---|
192 | ADHN ;Enter N for No to not delete another provider's parameter.
|
---|