PXSPECAUTH ;ISL/AGP/GSN - Special Authorities APIs and RPCs ;Nov 06, 2025@13:07:01
Source file <PXSPECAUTH.m>
| action | A | extended action | Ea | event driver | Ed | subscriber | Su | protocol | O | limited protocol | LP | run routine | RR | broker | B | edit | E | server | Se | P | screenman | SM | inquire | I |
| Name | Comments | DBIA/ICR reference |
|---|---|---|
| FINDBYNAME(NAME) | ; Return the SA file ien from the NAME passed in.
|
|
| FINDBYCODE(CODE) | ; Return the SA file ien from the CODE passed in.
|
|
| GETDISPLAYNAME(IEN) | ; Return the SA Display name via the SA file ien passed in.
|
|
| GETVALUE(DEF) | ; Return the SA JSON field value from the Fileman value passed in.
|
|
| GETCODE(IEN) | ;
|
|
| GETZERO(IEN) | ; Return the entire 0 node of the SA file via ien.
|
|
| SETARRAY(AR,FULLSTRUCT) | ; Return JSON field values for the SAs optionally return the full structure of business rules.
|
|
| GETSADEF(RESULTS,INPUTS) | ; Get SAs for a patient per Location and/or Visit
|
|
| GETPATSA(DFN,ATM,LOC,VST,PXARRAY) | ;Get the patients SA indicators
|
|
| ISACTIVECODE(CODE) | ;
|
|
| BLDFDA(FDA,IEN,SAS,ISVPOV) | ;
|
|
| CONVERTTOPCE(RESULTS,SAS) | ;
|
|
| GETSAFORVISITDET(NODE900,NODE800,VISIT) | ;
|
|
| GETSAFORVISIT(RESULTS,VISIT) | ;
|
|
| GETSAFORVPOVDET(NODE900,NODE800,VPOV) | ;
|
|
| GETSAFORVPOV(RESULTS,VPOV) | ;
|
|
| SAVALUEFORVISIT(VISIT,CODE) | ;
|
|
| SETOLD800(RESULT,SAS,ISVPOV) | ;
|
|
| UPDATEROMVISIT(PXARRAY,VST) | ;
|
|
| NODETOCODE(J) | ;
|
|
| SCMAP(J) | ;
|
|
| SETVALUE(VALUE) | ;
|
|
| SETNEWSA(IEN,SA,ISVPOV) | ;
|
|
| SPECAUTHSTRUCT(RESULTS) | ;Return valid Special Authorities (SA) rules structure defined in file #820.
; Input: None. ; Output: RESULTS = JSON elements: {code}:internal abbr,{abbreviation}:external abbr code,{displayName}:Name,{sequence}:display sequence,{default}:Yes/No/Unanswered ; {whenValueIs}:value this SA code,{actions}:action to take on a linked SA code,{linkedSpecialAuthorities}:a linked SA code |
|
| SPECAUTHDEF(RESULTS,JSONIN) | ;Return Patient Special Authorities (SA) that may be selected via a JSON serialized string. *508
; Input: JSONIN = JSON elements: {patientId}:orig DFN, {dateTime}:orig ATM, {location}:orig LOC, {visitIen}:orig VST, ; {loadStructure}:true/false value (optional); Load SAs rules structure ; Output: RESULTS = JSON elements: {code}: internal abbr,{visible}:true/false,{default}:Yes/No/Unanswered |
| Name | Field # of Occurrence |
|---|---|
| FILE^DICN | SETNEWSA+4 |
| $$GET1^DIQ | GETDISPLAYNAME+1, SETARRAY+19, SETARRAY+23, SETARRAY+27, SETARRAY+31, SETARRAY+32 |
| SCCOND^PXUTLSCC | GETPATSA+4 |
| $$FMDIFF^XLFDT | GETPATSA+13, GETSAFORVISIT+18 |
| DECODE^XLFJSON | SPECAUTHDEF+9 |
| ENCODE^XLFJSON | SPECAUTHSTRUCT+6, SPECAUTHDEF+8, SPECAUTHDEF+12 |
| $$INSTALDT^XPDUTL | GETPATSA+10, GETSAFORVISIT+15 |
| RPC Name | Call Tags |
|---|---|
| PXSPECAUTH SPECAUTHSTRUCT | SPECAUTHSTRUCT |
| PXSPECAUTH SPECAUTHDEF | SPECAUTHDEF |
| Name | Line Occurrences (* Changed, ! Killed) |
|---|---|
| ^AUPNVPOV - [#9000010.07] | BLDFDA+7, GETSAFORVPOV+2, GETSAFORVPOV+3, GETSAFORVPOV+7 |
| ^AUPNVSIT - [#9000010] | GETPATSA+12, BLDFDA+7, GETSAFORVISIT+2, GETSAFORVISIT+3, GETSAFORVISIT+7, GETSAFORVISIT+17, UPDATEROMVISIT+2 |
| ^PXIND(820 - [#820] | FINDBYNAME+1, FINDBYCODE+1, GETCODE+1, GETZERO+1, SETARRAY+3, SETARRAY+4, SETARRAY+5, SETARRAY+15, SETARRAY+16, SETARRAY+18 , SETARRAY+22, SETARRAY+26, SETARRAY+30, ISACTIVECODE+2, ISACTIVECODE+3, CONVERTTOPCE+3, GETSAFORVISIT+4, GETSAFORVPOV+4 |
| Name | Line Occurrences |
|---|---|
| $$GETVALUE | SETARRAY+12 |
| $$NODETOCODE | GETSAFORVISIT+9, GETSAFORVPOV+9 |
| $$SCMAP | SETOLD800+5, UPDATEROMVISIT+4 |
| $$SETNEWSA | BLDFDA+8 |
| CONVERTTOPCE | GETSAFORVISITDET+4, GETSAFORVPOVDET+4 |
| GETPATSA | GETSADEF+9 |
| GETSADEF | SPECAUTHDEF+10 |
| GETSAFORVISIT | GETPATSA+5, GETSAFORVISITDET+2, SAVALUEFORVISIT+2 |
| GETSAFORVPOV | GETSAFORVPOVDET+2 |
| SETARRAY | GETSADEF+5, SPECAUTHSTRUCT+5 |
| SETOLD800 | GETSAFORVISITDET+3, GETSAFORVPOVDET+3 |
| >> | Not killed explicitly |
| * | Changed |
| ! | Killed |
| ~ | Newed |
| Name | Field # of Occurrence |
|---|---|
| ACTN | SETARRAY+1~, SETARRAY+23*, SETARRAY+24 |
| AR | SETARRAY~, GETSADEF+7~, GETSADEF+9, SPECAUTHSTRUCT+4~, SPECAUTHSTRUCT+5, SPECAUTHDEF+5~, SPECAUTHDEF+10 |
| AR( | GETSADEF+18, GETSADEF+20 |
| AR("specialAuthorityTypes" | SETARRAY+6*, SETARRAY+7*, SETARRAY+8*, SETARRAY+9*, SETARRAY+10*, SETARRAY+11*, SETARRAY+12*, SETARRAY+16*, SETARRAY+20*, SETARRAY+24* , SETARRAY+28*, SETARRAY+33*, SETARRAY+34* |
| AR("success" | SPECAUTHDEF+11* |
| ATM | GETPATSA~, GETPATSA+4 |
| CAVALUE | GETSADEF+1~ |
| CNT | GETSADEF+7~, GETSADEF+11*, GETSADEF+12*, GETSADEF+13, GETSADEF+15, GETSADEF+16, GETSADEF+17, GETSADEF+21, GETSADEF+22, GETSADEF+23 , CONVERTTOPCE+1~, CONVERTTOPCE+2*, CONVERTTOPCE+4*, CONVERTTOPCE+5 |
| CODE | FINDBYCODE~, FINDBYCODE+1, SETARRAY+1~, SETARRAY+2*, SETARRAY+3*, SETARRAY+4, SETARRAY+6, GETSADEF+1~, GETPATSA+1~, GETPATSA+6* , GETPATSA+7, GETPATSA+8, ISACTIVECODE~, ISACTIVECODE+2, CONVERTTOPCE+1~, CONVERTTOPCE+2*, CONVERTTOPCE+3, CONVERTTOPCE+4, GETSAFORVISIT+1~, GETSAFORVISIT+4* , GETSAFORVISIT+5, GETSAFORVISIT+9*, GETSAFORVISIT+11, GETSAFORVPOV+1~, GETSAFORVPOV+4*, GETSAFORVPOV+5, GETSAFORVPOV+9*, GETSAFORVPOV+11, SAVALUEFORVISIT~, SAVALUEFORVISIT+3 , SETOLD800+1~, SETOLD800+4*, SETOLD800+5, SETOLD800+6 |
| DA | SETNEWSA+1~ |
| DA(1 | SETNEWSA+2*, SETNEWSA+3 |
| DATE | GETPATSA+1~, GETPATSA+11*, GETPATSA+13, GETSAFORVISIT+1~, GETSAFORVISIT+16*, GETSAFORVISIT+18 |
| DATETIME | GETSADEF+1~, GETSADEF+2*, GETSADEF+9 |
| DEF | GETVALUE~, GETVALUE+1 |
| DFN | GETSADEF+1~, GETSADEF+2*, GETSADEF+9, GETPATSA~, GETPATSA+4 |
| DIC | SETNEWSA+1~, SETNEWSA+3* |
| DIC(0 | SETNEWSA+2* |
| ERR | SPECAUTHDEF+5~ |
| ERR("error" | SPECAUTHDEF+7* |
| ERR("success" | SPECAUTHDEF+7* |
| EXCLUDE | SETARRAY+1~, SETARRAY+32*, SETARRAY+34 |
| FDA | BLDFDA~, BLDFDA+12 |
| FDA( | BLDFDA+10*, BLDFDA+11* |
| FDA(9000010 | BLDFDA+13*, BLDFDA+14* |
| FN | BLDFDA+3~, BLDFDA+4*, BLDFDA+10, BLDFDA+11 |
| FOUND | GETSAFORVPOV+1~, GETSAFORVPOV+2*, GETSAFORVPOV+5*, GETSAFORVPOV+6 |
| FULLSTRUCT | SETARRAY~, SETARRAY+13 |
| HLPLN | SETARRAY+1~, SETARRAY+14*, SETARRAY+15*, SETARRAY+16 |
| ID | BLDFDA+3~, BLDFDA+6*, BLDFDA+7, BLDFDA+8, BLDFDA+10, CONVERTTOPCE+1~, CONVERTTOPCE+3*, CONVERTTOPCE+4 |
| IDX | ISACTIVECODE+1~, ISACTIVECODE+2*, ISACTIVECODE+3, BLDFDA+3~, BLDFDA+5*, BLDFDA+6, GETSAFORVISIT+1~, GETSAFORVISIT+2*, GETSAFORVISIT+3, GETSAFORVPOV+1~ , GETSAFORVPOV+2*, GETSAFORVPOV+3 |
| IEN | GETDISPLAYNAME~, GETDISPLAYNAME+1, GETCODE~, GETCODE+1, GETZERO~, GETZERO+1, SETARRAY+1~, SETARRAY+4*, SETARRAY+5, SETARRAY+8 , SETARRAY+15, SETARRAY+16, SETARRAY+18, SETARRAY+19, SETARRAY+22, SETARRAY+23, SETARRAY+26, SETARRAY+27, SETARRAY+30, SETARRAY+31 , SETARRAY+32, BLDFDA~, BLDFDA+7, BLDFDA+8, BLDFDA+9, BLDFDA+13, BLDFDA+14, SETNEWSA~, SETNEWSA+2 |
| IENS | BLDFDA+3~, BLDFDA+9*, BLDFDA+10, BLDFDA+11 |
| INPUTS | GETSADEF~ |
| INPUTS("dateTime" | GETSADEF+2 |
| INPUTS("loadStructure" | GETSADEF+3 |
| INPUTS("location" | GETSADEF+4 |
| INPUTS("patientId" | GETSADEF+2 |
| INPUTS("returnSequenceMap" | GETSADEF+24 |
| INPUTS("visitIen" | GETSADEF+4 |
| INSTDT | GETPATSA+1~, GETPATSA+10, GETSAFORVISIT+1~, GETSAFORVISIT+15 |
| INSTDT("" | GETPATSA+11, GETSAFORVISIT+16 |
| ISVPOV | BLDFDA~, BLDFDA+4, BLDFDA+7, BLDFDA+8, BLDFDA+12, SETOLD800~, SETOLD800+2, SETOLD800+6, SETNEWSA~, SETNEWSA+3 |
| J | NODETOCODE~, NODETOCODE+1, NODETOCODE+2, NODETOCODE+3, NODETOCODE+4, NODETOCODE+5, NODETOCODE+6, NODETOCODE+7, NODETOCODE+8, SCMAP~ , SCMAP+1, SCMAP+2, SCMAP+3, SCMAP+4, SCMAP+5, SCMAP+6, SCMAP+7, SCMAP+8, SCMAP+9 |
| JSONERR | SETARRAY+1~, SPECAUTHSTRUCT+4~ |
| JSONIN | SPECAUTHDEF~, SPECAUTHDEF+6 |
| LOADSTRUCT | GETSADEF+1~, GETSADEF+3*, GETSADEF+5, GETSADEF+13, GETSADEF+14 |
| LOC | GETSADEF+1~, GETSADEF+4*, GETSADEF+9, GETPATSA~, GETPATSA+4 |
| NAME | FINDBYNAME~, FINDBYNAME+1 |
| NODE | SETARRAY+1~, SETARRAY+5*, SETARRAY+7, SETARRAY+9, SETARRAY+10, SETARRAY+12, GETSADEF+1~, GETSADEF+20*, GETSADEF+21, GETSADEF+22 , GETSADEF+23, BLDFDA+3~, BLDFDA+6*, GETSAFORVISIT+1~, GETSAFORVISIT+3*, GETSAFORVISIT+4, GETSAFORVISIT+5, GETSAFORVISIT+7*, GETSAFORVISIT+10, GETSAFORVISIT+11 , GETSAFORVPOV+1~, GETSAFORVPOV+3*, GETSAFORVPOV+4, GETSAFORVPOV+5, GETSAFORVPOV+7*, GETSAFORVPOV+10, GETSAFORVPOV+11, UPDATEROMVISIT+1~, UPDATEROMVISIT+2*, UPDATEROMVISIT+5 |
| NODE0 | GETPATSA+1~, GETPATSA+12*, GETPATSA+13, GETSAFORVISIT+17*, GETSAFORVISIT+18 |
| NODE800 | GETSAFORVISITDET~, GETSAFORVISITDET+3, GETSAFORVPOVDET~, GETSAFORVPOVDET+3 |
| NODE900 | GETSAFORVISITDET~, GETSAFORVISITDET+4, GETSAFORVPOVDET~, GETSAFORVPOVDET+4 |
| ORGSA | GETPATSA+1~, GETPATSA+5 |
| ORGSA( | GETPATSA+7, GETPATSA+8 |
| PARAM | SPECAUTHDEF+5~, SPECAUTHDEF+10 |
| PCELOC | GETPATSA+1~ |
| PIECE | SETOLD800+1~, SETOLD800+5*, SETOLD800+6, SETOLD800+7, UPDATEROMVISIT+1~, UPDATEROMVISIT+4*, UPDATEROMVISIT+5 |
| PKGNAME | SETARRAY+1~, SETARRAY+31*, SETARRAY+33 |
| PXARRAY | GETPATSA~, GETPATSA+4, UPDATEROMVISIT~ |
| PXARRAY( | GETPATSA+6, GETPATSA+8*, UPDATEROMVISIT+3, UPDATEROMVISIT+5, UPDATEROMVISIT+6* |
| PXARRAY("AO" | GETPATSA+14* |
| PXARRAY("EC" | GETPATSA+14* |
| PXARRAY("IR" | GETPATSA+14* |
| PXARRAY("SC" | GETPATSA+9 |
| SETARRAY+1~, SETARRAY+17*, SETARRAY+18*, SETARRAY+19, SETARRAY+20, SETARRAY+22, SETARRAY+23, SETARRAY+24, SETARRAY+26, SETARRAY+27 , SETARRAY+28, SETARRAY+29*, SETARRAY+30*, SETARRAY+31, SETARRAY+32, SETARRAY+33, SETARRAY+34 |
|
| RESULT | SETOLD800~, SETOLD800+2*, SETOLD800+6*, SETOLD800+7* |
| RESULTS | GETSADEF~, CONVERTTOPCE~, CONVERTTOPCE+5*, GETSAFORVISIT~, GETSAFORVISIT+6, GETSAFORVISIT+12, GETSAFORVPOV~, GETSAFORVPOV+6, SPECAUTHSTRUCT~, SPECAUTHDEF~ |
| RESULTS( | CONVERTTOPCE+4*, GETSAFORVISIT+5*, GETSAFORVISIT+11*, GETSAFORVPOV+5*, GETSAFORVPOV+11* |
| RESULTS("AO" | GETSAFORVISIT+19! |
| RESULTS("EC" | GETSAFORVISIT+19! |
| RESULTS("IR" | GETSAFORVISIT+19! |
| RESULTS("SC" | GETSAFORVISIT+13 |
| RESULTS("sequenceMap" | GETSADEF+24* |
| RESULTS("specialAuthority" | GETSADEF+13*, GETSADEF+15*, GETSADEF+16*, GETSADEF+17*, GETSADEF+21*, GETSADEF+22*, GETSADEF+23* |
| RR | SETARRAY+1~, SETARRAY+21*, SETARRAY+22*, SETARRAY+23, SETARRAY+24, SETARRAY+25*, SETARRAY+26*, SETARRAY+27, SETARRAY+28 |
| SA | SETARRAY+1~, SETARRAY+27*, SETARRAY+28, UPDATEROMVISIT+1~, UPDATEROMVISIT+3*, UPDATEROMVISIT+4, UPDATEROMVISIT+5, UPDATEROMVISIT+6, SETNEWSA~, SETNEWSA+3 |
| SAIDX | BLDFDA+3~, BLDFDA+7*, BLDFDA+8*, BLDFDA+9 |
| SAS | BLDFDA~, CONVERTTOPCE~, SAVALUEFORVISIT+1~, SAVALUEFORVISIT+2, SETOLD800~, SETOLD800+3 |
| SAS( | BLDFDA+5, BLDFDA+6, CONVERTTOPCE+2, CONVERTTOPCE+4, SAVALUEFORVISIT+3, SETOLD800+4, SETOLD800+6 |
| SCVAL | GETPATSA+1~, GETPATSA+9*, GETSAFORVISIT+13* |
| SEQ | SETARRAY+1~, SETARRAY+5*, SETARRAY+6, SETARRAY+7, SETARRAY+8, SETARRAY+9, SETARRAY+10, SETARRAY+11, SETARRAY+12, SETARRAY+16 , SETARRAY+20, SETARRAY+24, SETARRAY+28, SETARRAY+33, SETARRAY+34, GETSADEF+7~, GETSADEF+11*, GETSADEF+13, GETSADEF+15, GETSADEF+17 , GETSADEF+18, GETSADEF+19, GETSADEF+20 |
| SEQMAP | GETSADEF+1~, GETSADEF+6*, GETSADEF+24 |
| SEQMAP( | GETSADEF+11, GETSADEF+13, GETSADEF+15, GETSADEF+17, GETSADEF+18, GETSADEF+19, GETSADEF+20 |
| SPECAUTH | GETSADEF+1~, GETSADEF+5 |
| SPECAUTH("specialAuthorityTypes" | GETSADEF+6 |
| TEMP | GETSAFORVISITDET+1~, GETSAFORVISITDET+2, GETSAFORVISITDET+3, GETSAFORVISITDET+4, GETSAFORVPOVDET+1~, GETSAFORVPOVDET+2, GETSAFORVPOVDET+3, GETSAFORVPOVDET+4 |
| TMP | UPDATEROMVISIT+1~, UPDATEROMVISIT+5*, UPDATEROMVISIT+6* |
| U | GETCODE+1, SETARRAY+5, SETARRAY+7, SETARRAY+9, SETARRAY+10, SETARRAY+12, GETSADEF+21, GETSADEF+22, GETSADEF+23, GETPATSA+8 , GETPATSA+9, GETPATSA+12, GETPATSA+13, ISACTIVECODE+3, BLDFDA+6, CONVERTTOPCE+4, GETSAFORVISIT+3, GETSAFORVISIT+4, GETSAFORVISIT+5, GETSAFORVISIT+10 , GETSAFORVISIT+11, GETSAFORVISIT+13, GETSAFORVISIT+17, GETSAFORVISIT+18, GETSAFORVPOV+3, GETSAFORVPOV+4, GETSAFORVPOV+5, GETSAFORVPOV+10, GETSAFORVPOV+11, SETOLD800+6 , SETOLD800+7, UPDATEROMVISIT+5, UPDATEROMVISIT+6 |
| VALUE | BLDFDA+3~, BLDFDA+6*, BLDFDA+11, UPDATEROMVISIT+1~, UPDATEROMVISIT+5*, UPDATEROMVISIT+6, SETVALUE~, SETVALUE+1 |
| VISIT | GETSAFORVISITDET~, GETSAFORVISITDET+2, GETSAFORVISIT~, GETSAFORVISIT+2, GETSAFORVISIT+3, GETSAFORVISIT+7, GETSAFORVISIT+17, SAVALUEFORVISIT~, SAVALUEFORVISIT+2 |
| VPOV | GETSAFORVPOVDET~, GETSAFORVPOVDET+2, GETSAFORVPOV~, GETSAFORVPOV+2, GETSAFORVPOV+3, GETSAFORVPOV+7 |
| VST | GETSADEF+1~, GETSADEF+4*, GETSADEF+9, GETPATSA~, GETPATSA+4, GETPATSA+5, GETPATSA+12, UPDATEROMVISIT~, UPDATEROMVISIT+2 |
| WHENVAL | SETARRAY+1~, SETARRAY+19*, SETARRAY+20 |
| X | BLDFDA+3~, BLDFDA+13*, BLDFDA+14*, GETSAFORVISIT+1~, GETSAFORVISIT+8*, GETSAFORVISIT+9, GETSAFORVISIT+10, GETSAFORVISIT+11, GETSAFORVPOV+1~, GETSAFORVPOV+8* , GETSAFORVPOV+9, GETSAFORVPOV+10, GETSAFORVPOV+11, SETNEWSA+1~, SETNEWSA+3* |
| Y | SETNEWSA+1~, SETNEWSA+5 |