Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Info |  Source |  Call Graph |  Caller Graph |  Entry Points |  External References |  Used in RPC |  FileMan Files Accessed Via FileMan Db Call |  Global Variables Directly Accessed |  Label References |  Local Variables  | All
Print Page as PDF
Routine: ORSPECAUTH

Package: Order Entry Results Reporting

Routine: ORSPECAUTH


Information

ORSPECAUTH ;SLC/AGP/GSN - Ordering Special Authorities ;Dec 03, 2025@07:24:59

Source Information

Source file <ORSPECAUTH.m>

Call Graph

Call Graph

Call Graph Total: 7

Package Total Call Graph
Kernel 2 $$NOW^XLFDT  (DECODE,ENCODE)^XLFJSON  
VA FileMan 2 $$FIND1^DIC  UPDATE^DIE  
PCE Patient Care Encounter 1 ($$FINDBYCODE,$$GETDISPLAYNAME,$$GETVALUE,$$SETVALUE,GETSADEF,SETARRAY)^PXSPECAUTH  
Problem List 1 $$SHOWSA^GMPLSPECAUTH  
Toolkit 1 $$GET^XPAR  

Caller Graph

Legends:

Legend of Colors

Package Component Superscript legend

action A extended action Ea event driver Ed subscriber Su protocol O limited protocol LP run routine RR broker B edit E server Se print P screenman SM inquire I

Caller Graph

Caller Graph Total: 8

Package Total Caller Graph
Order Entry Results Reporting 8 ORCSAVE  ORCSAVE2  ORMBLDPS  ORMPS  ORMPS2  ORMPS3  ORQ21  ORWU  

Entry Points

Name Comments DBIA/ICR reference
RETURNPARAMS(RESULT) ;
CHECKORDER(ORIFN,ORDA,ORPSO) ;Order checks
GETENVIND(RESULTS,ORIEN,CHECKMULT) ;Get SA indicators for this order
GETFROMMULT(RESULTS,ORIEN) ;Build SA new mult structure
GETHL7(ORMSG,ORIFN) ;Receive from OP pharm ZSC HL7 order add/update ZSC Segs(s) (old and/or new SA structures)
; New mult ZSC array structure example Old single ZSC fixed fields structure example
; 4 pcs ZSC|1|SC|1 9 pcs ZSC|1|1||||||0
; ZSC|2|MST|0
; ZSC|3|AO|1
UPDATE112(OIEN,ID,VAL,TMPARR) ;Add/Update new SA mult file #100.0112
SETHL7(ORMSG,START,ORIEN) ;Send to OP pharm New or Old HL7 ZSC structure
; AGP met with Pharmacy they were okay with the HL7 changes, however a project has not been stood up may change when Pharmacy start works on it
SETOLD(OLDSTR,SEQMAP,PARRAY,CDE,VALUE) ;
FINDSABYCODE(ARR,CODE) ;Find IDX for SA CODE in an ORSA type array
FINDTMPIDX(ARR,CODE,OCNT) ;Find IDX for SA CODE in an TMPARR type array
SAFORORDER(TMPARR,HASIND,SEQMAP,OCNT,ORIFN,ORSA) ;Merge an orders base JSON SA seqmap type array with SA tmparr per Codes (index to index)
SAFORORDERS(RESULTS,IJSON) ;
SAFORORDERSX ;
SETERROR(RESULTS,ERROR) ;
UPDATEORDERSA(RESULTS,IJSON) ;update an Orders SA values new mult
UPDATEORDERSAX ;
OLDSC(J) ; -- Returns name of SC field by piece number
OLDCODE(J) ; -- Returns code of SC field by piece number
CODETOOLD(J) ; -- Returns pso old fixed string piece number per CODE.
ZSC(ORMSG) ;Find the index of the 1st ZSC seg & the number of pieces in the ZSC segment. (New mult ZSCs, including "ZSC", will have 5 pieces and old >5)

External References

Name Field # of Occurrence
$$FIND1^DIC SAFORORDERS+15
UPDATE^DIE GETHL7+23, UPDATE112+5, UPDATEORDERSA+17
$$SHOWSA^GMPLSPECAUTH RETURNPARAMS+3
$$FINDBYCODE^PXSPECAUTH GETHL7+13, GETHL7+19
$$GETDISPLAYNAME^PXSPECAUTH GETFROMMULT+5
$$GETVALUE^PXSPECAUTH SAFORORDER+14, SAFORORDER+32
$$SETVALUE^PXSPECAUTH UPDATEORDERSA+11
GETSADEF^PXSPECAUTH SAFORORDERS+13
SETARRAY^PXSPECAUTH SETHL7+3
$$NOW^XLFDT SAFORORDERS+9
DECODE^XLFJSON SAFORORDERS+3, UPDATEORDERSA+2
ENCODE^XLFJSON SAFORORDERSX+2, UPDATEORDERSAX+1
$$GET^XPAR RETURNPARAMS+1, RETURNPARAMS+2, SETHL7+4, SAFORORDERS+10

Used in RPC

RPC Name Call Tags
ORSPECAUTH SAFORORDERS SAFORORDERS
ORSPECAUTH UPDATEORDERSA UPDATEORDERSA

FileMan Files Accessed Via FileMan Db Call

FileNo Call Tags
^DIC(9.4 - [#9.4] FIND1^DIC

Global Variables Directly Accessed

Name Line Occurrences  (* Changed,  ! Killed)
^OR(100 - [#100] CHECKORDER+4, CHECKORDER+5, CHECKORDER+6, CHECKORDER+7, GETENVIND+2, GETENVIND+3, GETFROMMULT+3, GETFROMMULT+4, GETHL7+21, SETHL7+6
, SETHL7+11, SETHL7+12, SETHL7+17, SAFORORDER+3, SAFORORDER+6, SAFORORDER+14, SAFORORDER+17, SAFORORDERS+30
^TMP("ORSPECAUTH INDFORORDER" SAFORORDERS+4!
^TMP("ORSPECAUTH UPDATEINDICATOR" UPDATEORDERSA+3!

Label References

Name Line Occurrences
$$CHECKORDER SAFORORDERS+19
$$CODETOOLD SETHL7+21, SETOLD+2
$$FINDSABYCODE SAFORORDER+7, SAFORORDER+26, SAFORORDER+37
$$FINDTMPIDX SAFORORDER+7, SAFORORDER+26, SAFORORDER+37
$$OLDCODE GETHL7+13, SAFORORDER+21
$$OLDSC GETENVIND+5
$$ZSC GETHL7+8
GETFROMMULT GETENVIND+2
SAFORORDER SAFORORDERS+27, SAFORORDERS+32
SAFORORDERSX SAFORORDERS+6
SETERROR GETHL7+24, UPDATE112+2, UPDATE112+6, SAFORORDERS+6, UPDATEORDERSA+4, UPDATEORDERSA+18
SETOLD SETHL7+14, SETHL7+24
UPDATE112 GETHL7+14, GETHL7+20
UPDATEORDERSAX UPDATEORDERSA+4

Local Variables

Legend:

>> Not killed explicitly
* Changed
! Killed
~ Newed

Name Field # of Occurrence
ACT CHECKORDER+1~, CHECKORDER+7*, CHECKORDER+8
ARR FINDSABYCODE~, FINDTMPIDX~
ARR( FINDSABYCODE+3, FINDSABYCODE+4
ARR("orders" FINDTMPIDX+3, FINDTMPIDX+4
CDE SETHL7+2~, SETHL7+21*, SETOLD~, SETOLD+2
CHECKMULT GETENVIND~
CNT GETENVIND+1~, GETENVIND+4*, GETENVIND+5*, GETFROMMULT+1~, GETFROMMULT+2*, GETFROMMULT+6*, GETHL7+5~, SETHL7+2~, SETHL7+9*, SETHL7+13*
, SETHL7+19*, SETHL7+23*, SETHL7+29*, SAFORORDERS+1~, UPDATEORDERSA+1~, UPDATEORDERSA+9*, UPDATEORDERSA+13*, UPDATEORDERSA+14, ZSC+3~*, ZSC+10*
CNT1 SETHL7+2~, SETHL7+9*, SETHL7+13*, SETHL7+19*, SETHL7+23*
CODE GETHL7+5~, GETHL7+18*, GETHL7+19, FINDSABYCODE~, FINDSABYCODE+4, FINDTMPIDX~, FINDTMPIDX+4, SAFORORDER+1~, SAFORORDER+21*, SAFORORDER+24
, SAFORORDERS+1~
CURSA GETHL7+5~
DEF SAFORORDER+1~, SAFORORDER+14*, SAFORORDER+15, SAFORORDER+32*, SAFORORDER+33
DFN SAFORORDERS+1~, SAFORORDERS+6*, SAFORORDERS+7, UPDATEORDERSA+1~, UPDATEORDERSA+4*
DISPNAME GETFROMMULT+1~, GETFROMMULT+5*, GETFROMMULT+6
EIDX GETFROMMULT+1~, SETHL7+2~, SETHL7+11*, SETHL7+12, SAFORORDER+1~, SAFORORDER+6*, SAFORORDER+13, SAFORORDER+14, SAFORORDERS+1~
ERROR GETHL7+5~, GETHL7+24, UPDATE112+1~, UPDATE112+2*, UPDATE112+6, SAFORORDERS+1~, SETERROR~, SETERROR+2, UPDATEORDERSA+1~, UPDATEORDERSA+18
FAIL UPDATEORDERSA+1~, UPDATEORDERSA+6*, UPDATEORDERSA+18*, UPDATEORDERSA+19
FDA GETHL7+5~, UPDATE112+1~, UPDATEORDERSA+1~, UPDATEORDERSA+7!, UPDATEORDERSA+16
FDA( UPDATE112+4*, UPDATEORDERSA+14*
FDA(100 GETHL7+21*, GETHL7+22*, UPDATEORDERSA+13*, UPDATEORDERSA+15*
FLD GETHL7+5~, GETHL7+22*, UPDATEORDERSA+1~, UPDATEORDERSA+5*, UPDATEORDERSA+15*
HASIND SAFORORDER~, SAFORORDER+11*, SAFORORDER+30*, SAFORORDERS+1~, SAFORORDERS+26*, SAFORORDERS+27, SAFORORDERS+28, SAFORORDERS+32
ID GETHL7+5~, GETHL7+13*, GETHL7+14, GETHL7+19*, GETHL7+20, UPDATE112~, UPDATE112+2, UPDATE112+4
IDNM GETHL7+5~, GETHL7+13*
IDX GETHL7+5~, FINDSABYCODE+1~, FINDSABYCODE+2*, FINDSABYCODE+3*, FINDSABYCODE+4, FINDTMPIDX+1~, FINDTMPIDX+2*, FINDTMPIDX+3*, FINDTMPIDX+4, SAFORORDERS+1~
, SAFORORDERS+17*, SAFORORDERS+18
IENS GETHL7+5~, UPDATE112+1~, UPDATE112+4*, UPDATEORDERSA+1~, UPDATEORDERSA+14*
IFN GETFROMMULT+1~, GETFROMMULT+2*, GETFROMMULT+3*, GETFROMMULT+4
II ZSC+3~, ZSC+8*, ZSC+9, ZSC+10
IIDX UPDATEORDERSA+1~, UPDATEORDERSA+9*, UPDATEORDERSA+10, UPDATEORDERSA+11
IJSON SAFORORDERS~, UPDATEORDERSA~
INDICATOR UPDATEORDERSA+1~, UPDATEORDERSA+10*, UPDATEORDERSA+14
INPUTS SAFORORDERS+1~, SAFORORDERS+13, UPDATEORDERSA+1~
INPUTS("dateTime" SAFORORDERS+9*
INPUTS("loadStructure" SAFORORDERS+5
INPUTS("locationId" SAFORORDERS+11!
INPUTS("orders" SAFORORDERS+8!, UPDATEORDERSA+6, UPDATEORDERSA+8, UPDATEORDERSA+9, UPDATEORDERSA+10, UPDATEORDERSA+11
INPUTS("patientId" SAFORORDERS+6, UPDATEORDERSA+4
INPUTS("returnSequenceMap" SAFORORDERS+12*
J OLDSC~, OLDSC+1, OLDSC+2, OLDSC+3, OLDSC+4, OLDSC+5, OLDSC+6, OLDSC+7, OLDSC+8, OLDSC+9
, OLDCODE~, OLDCODE+1, OLDCODE+2, OLDCODE+3, OLDCODE+4, OLDCODE+5, OLDCODE+6, OLDCODE+7, OLDCODE+8, OLDCODE+9
, CODETOOLD~, CODETOOLD+1, CODETOOLD+2, CODETOOLD+3, CODETOOLD+4, CODETOOLD+5, CODETOOLD+6, CODETOOLD+7, CODETOOLD+8
LOADSTRUCT SAFORORDERS+1~, SAFORORDERS+5*
MATCH SAFORORDER+1~, SAFORORDER+22*, SAFORORDER+23, SAFORORDER+25*
NEW112 SETHL7+2~, SETHL7+6*, SETHL7+8, SETHL7+16
NEWHL7 SETHL7+2~, SETHL7+4*, SETHL7+5, SETHL7+11, SETHL7+12, SETHL7+13, SETHL7+22, SETHL7+23
NODE GETENVIND+1~, GETENVIND+3*, GETENVIND+5, GETFROMMULT+1~, GETFROMMULT+4*, GETFROMMULT+5, SETHL7+2~, SETHL7+17*, SETHL7+22, SAFORORDER+1~
, SAFORORDER+17*, SAFORORDER+18, SAFORORDER+20
NODE112 GETHL7+5~
OCNT FINDTMPIDX~, FINDTMPIDX+3, FINDTMPIDX+4, SAFORORDER~, SAFORORDER+7, SAFORORDER+9, SAFORORDER+10, SAFORORDER+12, SAFORORDER+15, SAFORORDER+26
, SAFORORDER+28, SAFORORDER+29, SAFORORDER+31, SAFORORDER+33, SAFORORDER+37, SAFORORDER+39, SAFORORDER+40, SAFORORDER+41, SAFORORDERS+2~, SAFORORDERS+17*
, SAFORORDERS+20*, SAFORORDERS+22, SAFORORDERS+23, SAFORORDERS+25, SAFORORDERS+27, SAFORORDERS+32
OIDX UPDATEORDERSA+1~, UPDATEORDERSA+6*, UPDATEORDERSA+8, UPDATEORDERSA+9, UPDATEORDERSA+10, UPDATEORDERSA+11
OIEN UPDATE112~, UPDATE112+2, UPDATE112+4, UPDATE112+6
OLDSA GETHL7+5~
OLDST GETHL7+5~, GETHL7+12*, GETHL7+13
OLDSTR SETHL7+2~, SETHL7+4*, SETHL7+14, SETHL7+24, SETHL7+26, SETHL7+28*, SETHL7+29, SETOLD~, SETOLD+3*
OLDVALUES SAFORORDER+1~
OR3 CHECKORDER+1~, CHECKORDER+7*, SAFORORDERS+2~, SAFORORDERS+30*, SAFORORDERS+31
ORDA CHECKORDER~, CHECKORDER+3, CHECKORDER+6, SAFORORDERS+2~, SAFORORDERS+18*, SAFORORDERS+19, SAFORORDERS+22, SAFORORDERS+25
ORDERS SAFORORDERS+2~, SAFORORDERS+8*
ORDERS( SAFORORDERS+17, SAFORORDERS+18
ORGIFN SAFORORDERS+2~, SAFORORDERS+31*, SAFORORDERS+32
ORIEN GETENVIND~, GETENVIND+2, GETENVIND+3, GETFROMMULT~, GETFROMMULT+3, GETFROMMULT+4, SETHL7~, SETHL7+6, SETHL7+11, SETHL7+12
, SETHL7+17
ORIFN CHECKORDER~, CHECKORDER+3, CHECKORDER+4, CHECKORDER+5, CHECKORDER+6, CHECKORDER+7, GETHL7~, GETHL7+14, GETHL7+20, GETHL7+21
, GETHL7+22, GETHL7+24, SAFORORDER~, SAFORORDER+3, SAFORORDER+6, SAFORORDER+14, SAFORORDER+17, SAFORORDERS+2~, SAFORORDERS+18*, SAFORORDERS+19
, SAFORORDERS+22, SAFORORDERS+25, SAFORORDERS+27, SAFORORDERS+30, UPDATEORDERSA+1~, UPDATEORDERSA+8*, UPDATEORDERSA+13, UPDATEORDERSA+14, UPDATEORDERSA+15, UPDATEORDERSA+18
ORMSG GETHL7~, GETHL7+6, GETHL7+7, SETHL7~, ZSC~
ORMSG( SETHL7+13*, SETHL7+23*, SETHL7+29*, ZSC+8, ZSC+9, ZSC+10
ORPSO CHECKORDER~, CHECKORDER+2*, CHECKORDER+5, SAFORORDERS+2~, SAFORORDERS+15*, SAFORORDERS+19
ORSA SAFORORDER~, SAFORORDER+7, SAFORORDER+26, SAFORORDER+37, SAFORORDERS+2~, SAFORORDERS+13
ORSA( SAFORORDER+9, SAFORORDER+10, SAFORORDER+28, SAFORORDER+29, SAFORORDER+39, SAFORORDER+40
ORSA("sequenceMap" SAFORORDERS+14
ORSA("specialAuthority" SAFORORDERS+14, SAFORORDERS+23
ORSAMSG GETHL7+5~, GETHL7+6*, GETHL7+7*, GETHL7+8
ORSAMSG( GETHL7+11, GETHL7+17, GETHL7+18
PARRAY SETHL7+2~, SETHL7+14, SETHL7+24, SETOLD~
PARRAY( SETHL7+5*, SETHL7+27, SETHL7+28, SETOLD+3*
PCE ZSC+3~*, ZSC+10*, ZSC+11
PLACE SETHL7+2~, SETHL7+5*, SETHL7+21*, SETHL7+22, SETHL7+27*, SETHL7+28, SETOLD+1~, SETOLD+2*, SETOLD+3
PRIO CHECKORDER+1~
QQ GETHL7+5~, GETHL7+13*
RESULT RETURNPARAMS~, FINDSABYCODE+1~, FINDSABYCODE+2*, FINDSABYCODE+3, FINDSABYCODE+4*, FINDSABYCODE+5, FINDTMPIDX+1~, FINDTMPIDX+2*, FINDTMPIDX+3, FINDTMPIDX+4*
, FINDTMPIDX+5
RESULT("saOnProblems" RETURNPARAMS+3*, RETURNPARAMS+4
RESULT("specialAuthority" RETURNPARAMS+1*, RETURNPARAMS+2*, RETURNPARAMS+4*
RESULTS GETENVIND~, GETENVIND+2, GETFROMMULT~, SAFORORDERS~, SAFORORDERS+4*, SETERROR~, UPDATEORDERSA~, UPDATEORDERSA+3*
RESULTS( GETENVIND+5*, GETFROMMULT+6*
RESULTS("error" SETERROR+2*
RESULTS("success" SETERROR+1*
SA SAFORORDER+1~, SAFORORDERS+2~, SAFORORDERS+14*, SAFORORDERS+27, SAFORORDERS+32
SAFROMORDER SAFORORDERS+1~, SAFORORDERS+10*, SAFORORDERS+21
SAIDX SAFORORDER+1~
SAORX SAFORORDER+1~, SAFORORDER+7*, SAFORORDER+8, SAFORORDER+9, SAFORORDER+10, SAFORORDER+26*, SAFORORDER+27, SAFORORDER+28, SAFORORDER+29, SAFORORDER+37*
, SAFORORDER+38, SAFORORDER+39, SAFORORDER+40
SATMPX SAFORORDER+1~, SAFORORDER+7*, SAFORORDER+8*, SAFORORDER+9, SAFORORDER+10, SAFORORDER+12, SAFORORDER+15, SAFORORDER+26*, SAFORORDER+27*, SAFORORDER+28
, SAFORORDER+29, SAFORORDER+31, SAFORORDER+33, SAFORORDER+37*, SAFORORDER+38*, SAFORORDER+39, SAFORORDER+40, SAFORORDER+41
SEG ZSC+3~, ZSC+9*
SEQ GETFROMMULT+1~, SETHL7+2~, SETHL7+9*, SETHL7+10*, SETHL7+11, SETHL7+13, SETHL7+14, SETHL7+19*, SETHL7+20*, SETHL7+21
, SETHL7+23, SETHL7+24, SAFORORDER+1~, SAFORORDER+4*, SAFORORDER+5*, SAFORORDER+6, SAFORORDER+7, SAFORORDER+23*, SAFORORDER+24, SAFORORDER+26
, SAFORORDER+35*, SAFORORDER+36*, SAFORORDER+37
SEQMAP GETFROMMULT+1~, SETHL7+2~, SETHL7+3*, SETHL7+14, SETHL7+24, SETOLD~, SAFORORDER~, SAFORORDERS+2~, SAFORORDERS+14*, SAFORORDERS+27
, SAFORORDERS+32
SEQMAP( SETHL7+10, SETHL7+11, SETHL7+13, SETHL7+14, SETHL7+20, SETHL7+21, SETHL7+23, SETHL7+24, SAFORORDER+5, SAFORORDER+6
, SAFORORDER+7, SAFORORDER+23, SAFORORDER+24, SAFORORDER+26, SAFORORDER+36, SAFORORDER+37
SPECAUTH GETFROMMULT+1~, SETHL7+2~, SETHL7+3
SPECAUTH("specialAuthorityTypes" SETHL7+3
START SETHL7~, SETHL7+9, SETHL7+19, SETHL7+29
TMPARR GETHL7+5~, GETHL7+14, GETHL7+20, GETHL7+24, UPDATE112~, UPDATE112+2, UPDATE112+6, SAFORORDER~, SAFORORDER+7, SAFORORDER+26
, SAFORORDER+37, SAFORORDERS+2~, SAFORORDERS+6, SAFORORDERS+27, SAFORORDERS+32, UPDATEORDERSA+1~, UPDATEORDERSA+4, UPDATEORDERSA+18
TMPARR("orders" SAFORORDER+9*, SAFORORDER+10*, SAFORORDER+12, SAFORORDER+15*, SAFORORDER+28*, SAFORORDER+29*, SAFORORDER+31, SAFORORDER+33*, SAFORORDER+39*, SAFORORDER+40*
, SAFORORDER+41, SAFORORDERS+22*, SAFORORDERS+23*, SAFORORDERS+25*
TMPARR("patientId" SAFORORDERS+7*
TMPARR("success" SAFORORDERSX+1*, UPDATEORDERSA+19*
U CHECKORDER+5, CHECKORDER+6, CHECKORDER+7, GETENVIND+5, GETFROMMULT+4, GETFROMMULT+5, GETHL7+10, GETHL7+11, GETHL7+13, GETHL7+21
, SETHL7+6, SETHL7+12, SETHL7+22, SAFORORDER+3, SAFORORDER+14, SAFORORDER+20, SAFORORDERS+31, ZSC+11
VAL UPDATE112~, UPDATE112+3, UPDATE112+4
VALUE GETHL7+5~, GETHL7+13*, GETHL7+14, GETHL7+18*, GETHL7+20, SETHL7+2~, SETHL7+12*, SETHL7+13, SETHL7+14, SETHL7+22*
, SETHL7+23, SETHL7+24, SETOLD~, SETOLD+3, UPDATEORDERSA+1~, UPDATEORDERSA+11*, UPDATEORDERSA+12, UPDATEORDERSA+14
X GETENVIND+1~, GETENVIND+5*, SAFORORDER+1~, SAFORORDER+19*, SAFORORDER+20, SAFORORDER+21
Y GETENVIND+1~, GETENVIND+5*, SAFORORDER+1~, SAFORORDER+20*, SAFORORDER+32, ZSC+3~*, ZSC+10*, ZSC+11
ZSC GETHL7+5~, GETHL7+8*, GETHL7+10, GETHL7+11, GETHL7+16
ZSCX GETHL7+5~, GETHL7+16*, GETHL7+17*, GETHL7+18
ZSEG GETHL7+5~, GETHL7+11*, GETHL7+12
Info |  Source |  Call Graph |  Caller Graph |  Entry Points |  External References |  Used in RPC |  FileMan Files Accessed Via FileMan Db Call |  Global Variables Directly Accessed |  Label References |  Local Variables  | All