- ORWDBA83 ; SLC/GDU - Billing Awareness - Phase I [10/18/04 10:52]
- ;;3.0;ORDER ENTRY/RESULTS REPORTING;**195**;Dec 17, 1997
- ;
- ;Enable Clinical Indicator Data Capture By Provider Parameter Module
- ;ORWDBA83 - Assign the parameter to a selected provider and manually set
- ; the CIDC by provider parameter to enable/disable the CIDC
- ; functionality
- ;
- ;Local Variables
- ;CNT Counter - Used to get count of providers who do not have
- ; the parameter assigned to them.
- ;DIR Input array variable for ^DIR
- ;DTOUT Timeout indicator, output variable of ^DIR
- ;DUOUT Up arrow indicator, output variable of ^DIR
- ;OREM Error Message, output from FIND^DIC
- ;ENT Entity the parameter is assigned to, input variable for
- ; ADD^XPAR
- ;FILE File Number of file searched, input variable for FIND^DIC
- ;FLD Field Number of fields to be returned in oputput, input
- ; variable for FIND^DIC
- ;FLG Flags for search method and output format, input variable
- ; for FIND^DIC
- ;FST First, a control variable to help build DIR(0) in MT10P
- ;HC Help Count, a control variable to help build DIR("?"
- ; in MT10P.
- ;ID Indentifier, input variable for FIND^DIC
- ;IEN Internal Entry Number, standard FileMan variable for a
- ; record's internal id number. Input variable for
- ; FIND^DIC. Used to build ENT.
- ;IND Index, input variable for FIND^DIC
- ;INST Instance indicator, input variable for ENVAL^XPAR
- ;IOF Clear Screen and move cursor to top of screen, standard
- ; Kernal IO variable
- ;NAME Provider Name, parsed from RF output array from FIND^DIC
- ;NUM Maximum number of records to return, input variable for
- ; FIND^DIC
- ;NX0 Next group of providers prompt, used to help build DIR(0)
- ;NXC Next group of providers count, used to help build DIR(0)
- ;NXH Next group of providers help, used to help build DIR("?"
- ;PAR The Name or IEN of a parameter in the PARAMETER DEFINITION
- ; FILE, input variable for ADD^XPAR
- ;RF Records Found, the array variable with the results found
- ; by FIND^DIC
- ;RFC Records Found Count, The first piece of the zero node in
- ; the output array from FIND^DIC with the total number
- ; records returned
- ;ORSCR Screen, an input variable for FIND^DIC to filter out
- ; records from the search.
- ;SP Selected Provider, set to the value of Y when the user
- ; selects a provider from the list of providers returned
- ; by FIND^DIC
- ;U FileMan standard variable for data delimiter, equals "^"
- ;VAL Value of the parameter being added, input variable for
- ; ADD^XPAR
- ;X Standard FileMan work varaible
- ;X1
- ;Y Processed output of user selection, output variable for
- ; ^DIR
- ;
- ;Global Variables
- ;^XTV(8989.51 PARAMETER DEFINITION FILE, file # 8989.51
- ;
- ;External References
- ;FIND^DIC FileMan silent database call, returns an array of records
- ; matching or partly matching a value searched on.
- ;^DIR FileMan general purpose response reader
- ;KTG^ORWDBA8 Kills the temp globals
- ;LISTA^ORWDBA8
- ; Builds temp global ^TMP("ORPAL", a list of providers who
- ; have the Enable CIDC parameter assigned to them.
- ;LISTU^ORWDBA8
- ; Builds temp global ^TMP("ORPUL", a list of providers who
- ; do not have the Enable CIDC parameter assigned to them.
- ;ADD^XPAR PARAMETER TOOLS, API to add a new parameter value
- ;
- START ;Starting point of this program
- N CNT,DIR,DTOUT,DUOUT,OREM,ENT,FILE,FLD,FLG,FST,HC,ID,IEN,IND,INST,NAME
- N NUM,NX0,NXC,NXH,PAR,RF,RFC,ORSCR,SP,VAL,X,X1,Y
- ;Ask user for provider
- S DIR(0)=$P($T(FT0),";",3)
- S DIR("A")=$P($T(FA),";",3)
- S DIR("?",1)=$P($T(FH1),";",3)
- S DIR("?",2)=$P($T(FH2),";",3)
- S DIR("?",3)=$P($T(FH3),";",3)
- S DIR("?")=$P($T(FH4),";",3)
- D SCRHDR,^DIR
- ;Process user entry, search for provider
- I Y=""!($D(DTOUT))!($D(DUOUT)) G EXIT
- S FILE=200,FLD="@;.01",FLG="CP",(ID,IEN,IND,SP)="",NUM="*",VAL=Y
- S ORSCR="I $D(^XUSEC(""PROVIDER"",Y)"
- S ORSCR("S")="I $D(^TMP(""ORPUL"",$J,""A"",Y))=1"
- D FIND^DIC(FILE,IEN,FLD,FLG,VAL,NUM,IND,.ORSCR,ID,"RF","OREM")
- S RFC=$P(RF("DILIST",0),U)
- ;No matchs found alert user
- I RFC=0 D ALERT G START
- ;Single match found skip to parameter assign
- I RFC=1 S SP=RFC D ASSIGN G START
- ;10 or less matchs found, present for user selection
- I RFC<10!(RFC=10) D LTE10P
- ;More than 10 matchs found, present for user selection
- I RFC>10 S FST=1 D MT10P
- ;Process user selection from LTE10P or MT10P
- I SP="Q" G EXIT
- I SP="" D KILLVAR G START
- D ASSIGN G START
- EXIT ;Exit point for this program
- Q
- ALERT ;Alert the user that the selection returned no records.
- K DIR,X1
- S DIR(0)="E",X1=""
- S DIR("A",1)=$P($T(UA1),";",3)_" "_VAL_"."
- F X=2:1:5 S X1="UA"_X,DIR("A",X)=$P($T(@X1),";",3)
- S DIR("A")=$P($T(UA6),";",3)
- D SCRHDR,^DIR
- D KILLVAR
- Q
- ASSIGN ;Assign the parameter and enable/disable CIDC functionality
- S IEN=$P(RF("DILIST",SP,0),U),NAME=$P(RF("DILIST",SP,0),U,2)
- S DIR(0)=$P($T(SCO),";",3)_$P($T(PE),";",3)_";"_$P($T(PD),";",3)
- S DIR("A")=$P($T(PA),";",3)
- S DIR("?",1)=$P($T(PHE),";",3),DIR("?")=$P($T(PHE),";",3)
- D SCRHDR
- W !!,$P($T(M1),";",3)," ",NAME," ",$P($T(M2),";",3),!,$P($T(M3),";",3)
- D ^DIR
- I Y=""!($D(DTOUT))!($D(DUOUT)) Q
- S VAL=$S(Y="E":1,1:0),ENT=IEN_";VA(200,",INST=1,OREM=""
- S PAR=$QS($Q(^XTV(8989.51,"B","OR BILLING AWARENESS BY USER")),4)
- D ADD^XPAR(ENT,PAR,INST,VAL,.OREM)
- D KILLVAR,KTG,LISTA,LISTU
- Q
- LTE10P ;If search returned a list less then or equal to 10
- D SETDIR
- F X=1:1:RFC S DIR(0)=DIR(0)_X_":"_$P(RF("DILIST",X,0),U,2)_";"
- D SCRHDR,^DIR
- I $D(DTOUT)!($D(DUOUT)) S SP="Q"
- E S SP=Y
- Q
- MT10P ;If search returned more then 10 providers
- D SETDIR
- S CNT=0,HC=1,(NXC,NX0,NXH,SP,X,Y)=""
- F X=FST:1:10+(FST-1) Q:$D(RF("DILIST",X,0))=0 D
- . S CNT=CNT+1
- . S DIR(0)=DIR(0)_X_":"_$P(RF("DILIST",X,0),U,2)_";"
- S NXC=RFC-X,NXC=$S(NXC>10:10,1:NXC)
- S NX0=$P($P($T(D0N),";",3),"|",1)_NXC_$P($P($T(D0N),";",3),"|",2)
- S NXH=$P($P($T(DHN),";",3),"|",1)_NXC_$P($P($T(DHN),";",3),"|",2)
- S:CNT=10 DIR(0)=DIR(0)_";"_NX0
- S:FST>10 DIR(0)=DIR(0)_";"_$P($T(D0P),";",3)
- S:CNT=10 HC=HC+1,DIR("?",HC)=NXH
- S:FST>10 HC=HC+1,DIR("?",HC)=$P($T(DHP),";",3)
- D SCRHDR,^DIR
- I $D(DTOUT)!($D(DUOUT)) S SP="Q" Q
- I Y="N"!(Y="P") S FST=$S(Y="N":FST+10,1:FST-10) G MT10P
- S SP=Y Q
- ;
- SETDIR ;Set common values for DIR used by LTE10P and MT10P
- K DIR
- S DIR(0)=$P($T(SCO),";",3)
- S DIR("?",1)=$P($T(DH),";",3)
- S DIR("?")=$P($T(DHS),";",3)
- S DIR("A")=$P($T(DA),";",3)
- Q
- SCRHDR ;Screen Header
- W:$D(IOF) @IOF
- W !,$P($T(SH1),";",3),!,$P($T(SH2),";",3),!
- Q
- KILLVAR ;Kill variables to prepare for next look up
- K DIR,DTOUT,DUOUT,OREM,ENT,FILE,FLD,FLG,ID,IEN,IND,INST,NAME,NUM,NXC,NX0
- K NXH,RF,RFC,ORSCR,SP,VAL,X,X1,Y
- Q
- KTG ;Kill the temp globals used by this program
- K ^TMP("ORPAL",$J),^TMP("ORPUL",$J) Q
- LISTA ;Build a list of providers with the parameter already assigned to them.
- N ORERR,GBL,IEN,INST,LIST,PAR,X
- S LIST="^TMP(""ORPAL"",$J,""A"")",(INST,GBL)=1,ORERR=""
- S PAR=$QS($Q(^XTV(8989.51,"B","OR BILLING AWARENESS BY USER")),4)
- D ENVAL^XPAR(LIST,PAR,INST,.ORERR,GBL)
- S (IEN,X)="" F S X=$O(^TMP("ORPAL",$J,"A",X)) Q:X="" D
- . S IEN=$P(X,";"),^TMP("ORPAL",$J,"B",IEN)=""
- Q
- LISTU ;Build a list of providers who have not been assigned the parameter
- N CNT,IEN
- S IEN="",CNT=0,^TMP("ORPUL",$J,"A")=CNT
- F S IEN=$O(^XUSEC("PROVIDER",IEN)) Q:IEN="" D
- . I $D(^TMP("ORPAL",$J,"A",IEN_";VA(200,",1))=1 Q
- . S CNT=CNT+1,^TMP("ORPUL",$J,"A")=CNT
- . S ^TMP("ORPUL",$J,"A",IEN)=IEN_";VA(200,"
- Q
- ;;Text used to build options, user messages, and help
- FT0 ;;FO^1:40
- FA ;;Select the provider to assign the parameter
- FH1 ;;Enter the name/partial name of the provider to assign the parameter.
- FH2 ;;This is free text, 1 to 40 characters in length.
- FH3 ;;This search will only return those with the PROVIDER key and who
- FH4 ;;do not have the CIDC parameter assigned to them.
- SCO ;;SO^
- SH1 ;;Enable Clinical Indicator Data Capture By Provider Parameter Management
- SH2 ;;Assign and Enable/Disable Parameter By Individual Provider Option
- UA1 ;;Found no records matching the search criteria of
- UA2 ;;The reasons for this could be that during the search:
- UA3 ;; 1. The parameter is already assigned to any provider found.
- UA4 ;; 2. No providers found.
- UA5 ;; 3. No records found.
- UA6 ;;Please try again
- M1 ;;You have selected
- M2 ;;to assign the Enable Clinical Indicator Data
- M3 ;;Capture By Provider parameter to.
- PE ;;E:Assign parameter and Enable CIDC for this provider
- PD ;;D:Assign parameter and Disable CIDC for this provider
- PA ;;Assign the parameter to this provider
- PHE ;;Enter E to assign the parameter and enable CIDC for this provider.
- PHD ;;Enter D to assign the parameter and disable CIDC for this provider.
- D0N ;;N:Next | providers
- D0P ;;P:Previous 10 providers
- DH ;;Select the provider who the parameter will be assigned to.
- DHN ;;Enter N to get the next | providers.
- DHP ;;Enter P to get the previous 10 providers.
- DHS ;;Enter "^" to exit or the Enter key to return to provider lookup.
- DA ;;Select the provider to assign the parameter
- ORWDBA83 ; SLC/GDU - Billing Awareness - Phase I [10/18/04 10:52]
- +1 ;;3.0;ORDER ENTRY/RESULTS REPORTING;**195**;Dec 17, 1997
- +2 ;
- +3 ;Enable Clinical Indicator Data Capture By Provider Parameter Module
- +4 ;ORWDBA83 - Assign the parameter to a selected provider and manually set
- +5 ; the CIDC by provider parameter to enable/disable the CIDC
- +6 ; functionality
- +7 ;
- +8 ;Local Variables
- +9 ;CNT Counter - Used to get count of providers who do not have
- +10 ; the parameter assigned to them.
- +11 ;DIR Input array variable for ^DIR
- +12 ;DTOUT Timeout indicator, output variable of ^DIR
- +13 ;DUOUT Up arrow indicator, output variable of ^DIR
- +14 ;OREM Error Message, output from FIND^DIC
- +15 ;ENT Entity the parameter is assigned to, input variable for
- +16 ; ADD^XPAR
- +17 ;FILE File Number of file searched, input variable for FIND^DIC
- +18 ;FLD Field Number of fields to be returned in oputput, input
- +19 ; variable for FIND^DIC
- +20 ;FLG Flags for search method and output format, input variable
- +21 ; for FIND^DIC
- +22 ;FST First, a control variable to help build DIR(0) in MT10P
- +23 ;HC Help Count, a control variable to help build DIR("?"
- +24 ; in MT10P.
- +25 ;ID Indentifier, input variable for FIND^DIC
- +26 ;IEN Internal Entry Number, standard FileMan variable for a
- +27 ; record's internal id number. Input variable for
- +28 ; FIND^DIC. Used to build ENT.
- +29 ;IND Index, input variable for FIND^DIC
- +30 ;INST Instance indicator, input variable for ENVAL^XPAR
- +31 ;IOF Clear Screen and move cursor to top of screen, standard
- +32 ; Kernal IO variable
- +33 ;NAME Provider Name, parsed from RF output array from FIND^DIC
- +34 ;NUM Maximum number of records to return, input variable for
- +35 ; FIND^DIC
- +36 ;NX0 Next group of providers prompt, used to help build DIR(0)
- +37 ;NXC Next group of providers count, used to help build DIR(0)
- +38 ;NXH Next group of providers help, used to help build DIR("?"
- +39 ;PAR The Name or IEN of a parameter in the PARAMETER DEFINITION
- +40 ; FILE, input variable for ADD^XPAR
- +41 ;RF Records Found, the array variable with the results found
- +42 ; by FIND^DIC
- +43 ;RFC Records Found Count, The first piece of the zero node in
- +44 ; the output array from FIND^DIC with the total number
- +45 ; records returned
- +46 ;ORSCR Screen, an input variable for FIND^DIC to filter out
- +47 ; records from the search.
- +48 ;SP Selected Provider, set to the value of Y when the user
- +49 ; selects a provider from the list of providers returned
- +50 ; by FIND^DIC
- +51 ;U FileMan standard variable for data delimiter, equals "^"
- +52 ;VAL Value of the parameter being added, input variable for
- +53 ; ADD^XPAR
- +54 ;X Standard FileMan work varaible
- +55 ;X1
- +56 ;Y Processed output of user selection, output variable for
- +57 ; ^DIR
- +58 ;
- +59 ;Global Variables
- +60 ;^XTV(8989.51 PARAMETER DEFINITION FILE, file # 8989.51
- +61 ;
- +62 ;External References
- +63 ;FIND^DIC FileMan silent database call, returns an array of records
- +64 ; matching or partly matching a value searched on.
- +65 ;^DIR FileMan general purpose response reader
- +66 ;KTG^ORWDBA8 Kills the temp globals
- +67 ;LISTA^ORWDBA8
- +68 ; Builds temp global ^TMP("ORPAL", a list of providers who
- +69 ; have the Enable CIDC parameter assigned to them.
- +70 ;LISTU^ORWDBA8
- +71 ; Builds temp global ^TMP("ORPUL", a list of providers who
- +72 ; do not have the Enable CIDC parameter assigned to them.
- +73 ;ADD^XPAR PARAMETER TOOLS, API to add a new parameter value
- +74 ;
- START ;Starting point of this program
- +1 NEW CNT,DIR,DTOUT,DUOUT,OREM,ENT,FILE,FLD,FLG,FST,HC,ID,IEN,IND,INST,NAME
- +2 NEW NUM,NX0,NXC,NXH,PAR,RF,RFC,ORSCR,SP,VAL,X,X1,Y
- +3 ;Ask user for provider
- +4 SET DIR(0)=$PIECE($TEXT(FT0),";",3)
- +5 SET DIR("A")=$PIECE($TEXT(FA),";",3)
- +6 SET DIR("?",1)=$PIECE($TEXT(FH1),";",3)
- +7 SET DIR("?",2)=$PIECE($TEXT(FH2),";",3)
- +8 SET DIR("?",3)=$PIECE($TEXT(FH3),";",3)
- +9 SET DIR("?")=$PIECE($TEXT(FH4),";",3)
- +10 DO SCRHDR
- DO ^DIR
- +11 ;Process user entry, search for provider
- +12 IF Y=""!($DATA(DTOUT))!($DATA(DUOUT))
- GOTO EXIT
- +13 SET FILE=200
- SET FLD="@;.01"
- SET FLG="CP"
- SET (ID,IEN,IND,SP)=""
- SET NUM="*"
- SET VAL=Y
- +14 SET ORSCR="I $D(^XUSEC(""PROVIDER"",Y)"
- +15 SET ORSCR("S")="I $D(^TMP(""ORPUL"",$J,""A"",Y))=1"
- +16 DO FIND^DIC(FILE,IEN,FLD,FLG,VAL,NUM,IND,.ORSCR,ID,"RF","OREM")
- +17 SET RFC=$PIECE(RF("DILIST",0),U)
- +18 ;No matchs found alert user
- +19 IF RFC=0
- DO ALERT
- GOTO START
- +20 ;Single match found skip to parameter assign
- +21 IF RFC=1
- SET SP=RFC
- DO ASSIGN
- GOTO START
- +22 ;10 or less matchs found, present for user selection
- +23 IF RFC<10!(RFC=10)
- DO LTE10P
- +24 ;More than 10 matchs found, present for user selection
- +25 IF RFC>10
- SET FST=1
- DO MT10P
- +26 ;Process user selection from LTE10P or MT10P
- +27 IF SP="Q"
- GOTO EXIT
- +28 IF SP=""
- DO KILLVAR
- GOTO START
- +29 DO ASSIGN
- GOTO START
- EXIT ;Exit point for this program
- +1 QUIT
- ALERT ;Alert the user that the selection returned no records.
- +1 KILL DIR,X1
- +2 SET DIR(0)="E"
- SET X1=""
- +3 SET DIR("A",1)=$PIECE($TEXT(UA1),";",3)_" "_VAL_"."
- +4 FOR X=2:1:5
- SET X1="UA"_X
- SET DIR("A",X)=$PIECE($TEXT(@X1),";",3)
- +5 SET DIR("A")=$PIECE($TEXT(UA6),";",3)
- +6 DO SCRHDR
- DO ^DIR
- +7 DO KILLVAR
- +8 QUIT
- ASSIGN ;Assign the parameter and enable/disable CIDC functionality
- +1 SET IEN=$PIECE(RF("DILIST",SP,0),U)
- SET NAME=$PIECE(RF("DILIST",SP,0),U,2)
- +2 SET DIR(0)=$PIECE($TEXT(SCO),";",3)_$PIECE($TEXT(PE),";",3)_";"_$PIECE($TEXT(PD),";",3)
- +3 SET DIR("A")=$PIECE($TEXT(PA),";",3)
- +4 SET DIR("?",1)=$PIECE($TEXT(PHE),";",3)
- SET DIR("?")=$PIECE($TEXT(PHE),";",3)
- +5 DO SCRHDR
- +6 WRITE !!,$PIECE($TEXT(M1),";",3)," ",NAME," ",$PIECE($TEXT(M2),";",3),!,$PIECE($TEXT(M3),";",3)
- +7 DO ^DIR
- +8 IF Y=""!($DATA(DTOUT))!($DATA(DUOUT))
- QUIT
- +9 SET VAL=$SELECT(Y="E":1,1:0)
- SET ENT=IEN_";VA(200,"
- SET INST=1
- SET OREM=""
- +10 SET PAR=$QSUBSCRIPT($QUERY(^XTV(8989.51,"B","OR BILLING AWARENESS BY USER")),4)
- +11 DO ADD^XPAR(ENT,PAR,INST,VAL,.OREM)
- +12 DO KILLVAR
- DO KTG
- DO LISTA
- DO LISTU
- +13 QUIT
- LTE10P ;If search returned a list less then or equal to 10
- +1 DO SETDIR
- +2 FOR X=1:1:RFC
- SET DIR(0)=DIR(0)_X_":"_$PIECE(RF("DILIST",X,0),U,2)_";"
- +3 DO SCRHDR
- DO ^DIR
- +4 IF $DATA(DTOUT)!($DATA(DUOUT))
- SET SP="Q"
- +5 IF '$TEST
- SET SP=Y
- +6 QUIT
- MT10P ;If search returned more then 10 providers
- +1 DO SETDIR
- +2 SET CNT=0
- SET HC=1
- SET (NXC,NX0,NXH,SP,X,Y)=""
- +3 FOR X=FST:1:10+(FST-1)
- IF $DATA(RF("DILIST",X,0))=0
- QUIT
- Begin DoDot:1
- +4 SET CNT=CNT+1
- +5 SET DIR(0)=DIR(0)_X_":"_$PIECE(RF("DILIST",X,0),U,2)_";"
- End DoDot:1
- +6 SET NXC=RFC-X
- SET NXC=$SELECT(NXC>10:10,1:NXC)
- +7 SET NX0=$PIECE($PIECE($TEXT(D0N),";",3),"|",1)_NXC_$PIECE($PIECE($TEXT(D0N),";",3),"|",2)
- +8 SET NXH=$PIECE($PIECE($TEXT(DHN),";",3),"|",1)_NXC_$PIECE($PIECE($TEXT(DHN),";",3),"|",2)
- +9 IF CNT=10
- SET DIR(0)=DIR(0)_";"_NX0
- +10 IF FST>10
- SET DIR(0)=DIR(0)_";"_$PIECE($TEXT(D0P),";",3)
- +11 IF CNT=10
- SET HC=HC+1
- SET DIR("?",HC)=NXH
- +12 IF FST>10
- SET HC=HC+1
- SET DIR("?",HC)=$PIECE($TEXT(DHP),";",3)
- +13 DO SCRHDR
- DO ^DIR
- +14 IF $DATA(DTOUT)!($DATA(DUOUT))
- SET SP="Q"
- QUIT
- +15 IF Y="N"!(Y="P")
- SET FST=$SELECT(Y="N":FST+10,1:FST-10)
- GOTO MT10P
- +16 SET SP=Y
- QUIT
- +17 ;
- SETDIR ;Set common values for DIR used by LTE10P and MT10P
- +1 KILL DIR
- +2 SET DIR(0)=$PIECE($TEXT(SCO),";",3)
- +3 SET DIR("?",1)=$PIECE($TEXT(DH),";",3)
- +4 SET DIR("?")=$PIECE($TEXT(DHS),";",3)
- +5 SET DIR("A")=$PIECE($TEXT(DA),";",3)
- +6 QUIT
- SCRHDR ;Screen Header
- +1 IF $DATA(IOF)
- WRITE @IOF
- +2 WRITE !,$PIECE($TEXT(SH1),";",3),!,$PIECE($TEXT(SH2),";",3),!
- +3 QUIT
- KILLVAR ;Kill variables to prepare for next look up
- +1 KILL DIR,DTOUT,DUOUT,OREM,ENT,FILE,FLD,FLG,ID,IEN,IND,INST,NAME,NUM,NXC,NX0
- +2 KILL NXH,RF,RFC,ORSCR,SP,VAL,X,X1,Y
- +3 QUIT
- KTG ;Kill the temp globals used by this program
- +1 KILL ^TMP("ORPAL",$JOB),^TMP("ORPUL",$JOB)
- QUIT
- LISTA ;Build a list of providers with the parameter already assigned to them.
- +1 NEW ORERR,GBL,IEN,INST,LIST,PAR,X
- +2 SET LIST="^TMP(""ORPAL"",$J,""A"")"
- SET (INST,GBL)=1
- SET ORERR=""
- +3 SET PAR=$QSUBSCRIPT($QUERY(^XTV(8989.51,"B","OR BILLING AWARENESS BY USER")),4)
- +4 DO ENVAL^XPAR(LIST,PAR,INST,.ORERR,GBL)
- +5 SET (IEN,X)=""
- FOR
- SET X=$ORDER(^TMP("ORPAL",$JOB,"A",X))
- IF X=""
- QUIT
- Begin DoDot:1
- +6 SET IEN=$PIECE(X,";")
- SET ^TMP("ORPAL",$JOB,"B",IEN)=""
- End DoDot:1
- +7 QUIT
- LISTU ;Build a list of providers who have not been assigned the parameter
- +1 NEW CNT,IEN
- +2 SET IEN=""
- SET CNT=0
- SET ^TMP("ORPUL",$JOB,"A")=CNT
- +3 FOR
- SET IEN=$ORDER(^XUSEC("PROVIDER",IEN))
- IF IEN=""
- QUIT
- Begin DoDot:1
- +4 IF $DATA(^TMP("ORPAL",$JOB,"A",IEN_";VA(200,",1))=1
- QUIT
- +5 SET CNT=CNT+1
- SET ^TMP("ORPUL",$JOB,"A")=CNT
- +6 SET ^TMP("ORPUL",$JOB,"A",IEN)=IEN_";VA(200,"
- End DoDot:1
- +7 QUIT
- +8 ;;Text used to build options, user messages, and help
- FT0 ;;FO^1:40
- FA ;;Select the provider to assign the parameter
- FH1 ;;Enter the name/partial name of the provider to assign the parameter.
- FH2 ;;This is free text, 1 to 40 characters in length.
- FH3 ;;This search will only return those with the PROVIDER key and who
- FH4 ;;do not have the CIDC parameter assigned to them.
- SCO ;;SO^
- SH1 ;;Enable Clinical Indicator Data Capture By Provider Parameter Management
- SH2 ;;Assign and Enable/Disable Parameter By Individual Provider Option
- UA1 ;;Found no records matching the search criteria of
- UA2 ;;The reasons for this could be that during the search:
- UA3 ;; 1. The parameter is already assigned to any provider found.
- UA4 ;; 2. No providers found.
- UA5 ;; 3. No records found.
- UA6 ;;Please try again
- M1 ;;You have selected
- M2 ;;to assign the Enable Clinical Indicator Data
- M3 ;;Capture By Provider parameter to.
- PE ;;E:Assign parameter and Enable CIDC for this provider
- PD ;;D:Assign parameter and Disable CIDC for this provider
- PA ;;Assign the parameter to this provider
- PHE ;;Enter E to assign the parameter and enable CIDC for this provider.
- PHD ;;Enter D to assign the parameter and disable CIDC for this provider.
- D0N ;;N:Next | providers
- D0P ;;P:Previous 10 providers
- DH ;;Select the provider who the parameter will be assigned to.
- DHN ;;Enter N to get the next | providers.
- DHP ;;Enter P to get the previous 10 providers.
- DHS ;;Enter "^" to exit or the Enter key to return to provider lookup.
- DA ;;Select the provider to assign the parameter