PSSHDPG1 ;BIRM/KML - APIs SUPPORTING REQUEST AND RETRIEVAL OF PGx DATA FROM HDR ;9/28/23
Source file <PSSHDPG1.m>
| Package | Total | Call Graph |
|---|---|---|
| Pharmacy Data Management | 2 | $$REMOVEOFFSET^PSSHDPG1 DATA^PSSPGXUT |
| Kernel | 1 | ($$FMTHL7,$$NOW)^XLFDT |
| Master Patient Index VistA | 1 | $$GETICN^MPIF001 |
| Registration | 1 | $$SITE^VASITE |
| Web Services Client | 1 | ($$EOFAC,$$GET,$$GETREST,$$STATCHK,ERR2ARR)^XOBWLIB |
| 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 |
| Package | Total | Caller Graph |
|---|---|---|
| Pharmacy Data Management | 3 | PSSHDPG1 PSSPGX PSSPGXT1 |
| Name | Comments | DBIA/ICR reference |
|---|---|---|
| GETPGXRESULTS(PSSDFN,PSSGENES) | ; get PGx (genetic test interpretation results from HDR)
; INPUT - PSSDFN = IEN of PATIENT file (#2) (the DFN) ; OUTPUT - PSSGENES = local array of drug, phenotype, genotype, activity score returned from the HDR ; Passed in by reference ; RETURN = 1^SUCCESSFUL ; -1^_errorMessage ; |
|
| GETPGXEXIT | ;
|
|
| GETICN(X) | ;GET ICN
; INPUT = X (DFN) ; OUTPUT = X1 (ICN associated with patient DFN) |
|
| GETICNX | ;
|
|
| BLDDATETM(PSSFMDT) | ; format Fileman date/time to CCYY-MM-DD_"T"_HH:MM:SS_"Z"
; format Fileman date/time to CCYY-MM-DD_"T"_HH:MM:SS_"Z" |
|
| BLDREQSTRING(ICN,PSSX,PSSDTM) | ;
|
|
| SENDREQUEST(PSSROBJ,PSSX,PSSERR) | ; post MED_ORDER_CHECK request to HDR web service to return patient genetic test results
; Input - PSSROBJ = rest service request object (passed in by reference) ; PSSX = request string to HDR ; Output - PSSRET = returned (XML) string as a result of HDR processing of the request ; - PSSERR = error object (passed in by reference) |
|
| SENDREQUESTX | ;
|
|
| SETARRAY(PSSGENES) | ; ;move from temp global into LOCAL array
|
|
| PARSE(STREAM) | ;parse out xml into temp global (copied from PARSE^ORRDI1)
|
|
| SPUSH(S,X) | ;places X on the stack S and returns the current level of the stack (copied from PARSE^ORRDI1)
|
|
| SPOP(S,X) | ;removes the top item from the stack S and put it into the variable X and returns the level that X was at (copied from PARSE^ORRDI1)
|
|
| SPEEK(S,X) | ;same as SPOP except the top item is not removed (copied from PARSE^ORRDI1)
|
|
| SPUT(S,X) | ;implementation specific, uses the stack to form a global node (copied from PARSE^ORRDI1)
|
|
| REMOVEOFFSET(TIME) | ;
|
|
| ERROR | ||
| GETTEXT(ERRARRAY) | ;
; @DESC Gets the error text from the array |
| Name | Field # of Occurrence |
|---|---|
| $$GETICN^MPIF001 | GETICN+5 |
| $$REMOVEOFFSET^PSSHDPG1 | BLDDATETM+9 |
| DATA^PSSPGXUT | SETARRAY+22 |
| $$SITE^VASITE | BLDREQSTRING+11 |
| $$FMTHL7^XLFDT | BLDDATETM+4 |
| $$NOW^XLFDT | GETPGXRESULTS+13, BLDDATETM+3, BLDREQSTRING+11 |
| $$EOFAC^XOBWLIB | ERROR+10 |
| $$GET^XOBWLIB | SENDREQUEST+10 |
| $$GETREST^XOBWLIB | SENDREQUEST+8 |
| $$STATCHK^XOBWLIB | PARSE+6 |
| ERR2ARR^XOBWLIB | ERROR+12 |
| Name | Line Occurrences (* Changed, ! Killed) |
|---|---|
| ^TMP($J | GETPGXRESULTS+9!, GETPGXEXIT+1!, SENDREQUEST+9, SENDREQUEST+11, SETARRAY+11, SETARRAY+13, SETARRAY+14, SETARRAY+15, SETARRAY+16, SETARRAY+17 , SETARRAY+18, SETARRAY+19, SETARRAY+20, PARSE+2, ERROR+15* |
| Name | Line Occurrences |
|---|---|
| $$BLDDATETM | GETPGXRESULTS+13 |
| $$GETICN | GETPGXRESULTS+11 |
| $$GETTEXT | ERROR+15 |
| $$SENDREQUEST | GETPGXRESULTS+15 |
| BLDREQSTRING | GETPGXRESULTS+14 |
| GETICNX | GETICN+4 |
| GETPGXEXIT | GETPGXRESULTS+12, GETPGXRESULTS+16 |
| PARSE | GETPGXRESULTS+18 |
| SENDREQUESTX | SENDREQUEST+9 |
| SETARRAY | GETPGXRESULTS+19 |
| SPOP | PARSE+9 |
| SPUSH | PARSE+8 |
| SPUT | PARSE+10 |
| >> | Not killed explicitly |
| * | Changed |
| ! | Killed |
| ~ | Newed |
| Name | Field # of Occurrence |
|---|---|
| %XML | PARSE+1~ |
| BREAK | PARSE+1~, PARSE+7* |
| ERRARRAY | ERROR+7~, ERROR+12, ERROR+15, GETTEXT~ |
| ERRARRAY("text" | GETTEXT+12, GETTEXT+13 |
| GL | PARSE+1~, PARSE+2*, PARSE+3, SPUT+2 |
| HH | BLDDATETM+2~ |
| I | SPUSH+1~*, SPUSH+2, SPOP+1~*, SPOP+2, SPOP+3, SPOP+4, SPEEK+1~*, SPEEK+2, SPEEK+3, SPUT+1~ , SPUT+3*, SPUT+4, SPUT+6 |
| ICN | BLDREQSTRING~, BLDREQSTRING+10 |
| INDX | SETARRAY+9~, SETARRAY+10*, SETARRAY+11*, SETARRAY+13, SETARRAY+14, SETARRAY+15, SETARRAY+16, SETARRAY+17, SETARRAY+19, SETARRAY+20 |
| J | SPOP+3~* |
| MM | BLDDATETM+2~ |
| NUM | SPUT+5~*, SPUT+6*, SPUT+7 |
| OFFSET | BLDDATETM+2~ |
| OUTCOME | GETPGXRESULTS+7~, GETPGXRESULTS+10*, GETPGXRESULTS+15*, GETPGXRESULTS+16 |
| PSS | GETTEXT+7~ |
| PSS("I" | GETTEXT+11*, GETTEXT+12*, GETTEXT+13 |
| PSS("errorText" | GETTEXT+10*, GETTEXT+13*, GETTEXT+15 |
| PSSCNT | SETARRAY+9~, SETARRAY+10*, SETARRAY+12*, SETARRAY+13, SETARRAY+14, SETARRAY+15, SETARRAY+16, SETARRAY+17, SETARRAY+18, SETARRAY+19 , SETARRAY+20, SETARRAY+23*, SETARRAY+24, SETARRAY+25, SETARRAY+27, SETARRAY+28, SETARRAY+29, SETARRAY+30, SETARRAY+31 |
| PSSDFN | GETPGXRESULTS~, GETPGXRESULTS+11 |
| PSSDTM | BLDDATETM+2~, BLDDATETM+4*, BLDDATETM+5*, BLDDATETM+6, BLDDATETM+8, BLDREQSTRING~, BLDREQSTRING+9 |
| PSSDTTM | GETPGXRESULTS+7~, GETPGXRESULTS+13*, GETPGXRESULTS+14 |
| PSSERR | GETPGXRESULTS+7~, GETPGXRESULTS+15, GETPGXRESULTS+16, SENDREQUEST~, SENDREQUEST+10, ERROR+10*, ERROR+12 |
| PSSFDBG | SETARRAY+9~, SETARRAY+24*, SETARRAY+25, SETARRAY+26, SETARRAY+27, SETARRAY+28, SETARRAY+29, SETARRAY+30, SETARRAY+31 |
| PSSFDBP | SETARRAY+9~, SETARRAY+25*, SETARRAY+29 |
| PSSFMDT | BLDDATETM~, BLDDATETM+3*, BLDDATETM+4 |
| PSSGENE | SETARRAY+9~ |
| PSSGENES | GETPGXRESULTS~, GETPGXRESULTS+8!, GETPGXRESULTS+19, SETARRAY~ |
| PSSGENES( | SETARRAY+27*, SETARRAY+28*, SETARRAY+29*, SETARRAY+30*, SETARRAY+31* |
| PSSGMAP | SETARRAY+9~, SETARRAY+24* |
| PSSGMT | BLDDATETM+2~, BLDDATETM+6*, BLDDATETM+16*, BLDDATETM+17 |
| PSSICN | GETPGXRESULTS+7~, GETPGXRESULTS+11*, GETPGXRESULTS+12, GETPGXRESULTS+14 |
| PSSINPUTVALUES | GETPGXRESULTS+7~ |
| PSSMAP | SETARRAY+9~, SETARRAY+22 |
| PSSMAP( | SETARRAY+24, SETARRAY+25, SETARRAY+29 |
| >> PSSOPTFG | SETARRAY+22 |
| PSSPERR | SETARRAY+21! |
| PSSPERR( | SETARRAY+25* |
| PSSPHEN | SETARRAY+9~ |
| PSSPMAP | SETARRAY+9~, SETARRAY+25* |
| PSSREQST | GETPGXRESULTS+7~, GETPGXRESULTS+14, GETPGXRESULTS+15 |
| PSSRESTOBJ | GETPGXRESULTS+7~, GETPGXRESULTS+15 |
| PSSRET | SENDREQUEST+5~, SENDREQUEST+9*, SENDREQUEST+10*, SENDREQUEST+11*, SENDREQUESTX+1 |
| PSSROBJ | SENDREQUEST~, SENDREQUEST+8*, SENDREQUEST+10 |
| PSSTIME | BLDDATETM+2~, BLDDATETM+8*, BLDDATETM+9*, BLDDATETM+10*, BLDDATETM+11, BLDDATETM+12*, BLDDATETM+13*, BLDDATETM+14*, BLDDATETM+16 |
| PSSX | BLDREQSTRING~, BLDREQSTRING+6!, BLDREQSTRING+7*, BLDREQSTRING+8*, BLDREQSTRING+9*, BLDREQSTRING+10*, BLDREQSTRING+11*, SENDREQUEST~, SENDREQUEST+10 |
| PSSXMLJSON | GETPGXRESULTS+7~ |
| PSSXZY | SETARRAY+9~, SETARRAY+22 |
| PSSXZY( | SETARRAY+13*, SETARRAY+14*, SETARRAY+15*, SETARRAY+16*, SETARRAY+17*, SETARRAY+18*, SETARRAY+19*, SETARRAY+20*, SETARRAY+23, SETARRAY+27 , SETARRAY+28, SETARRAY+30, SETARRAY+31 |
| READER | PARSE+4~, PARSE+5 |
| RETURN | GETPGXRESULTS+7~, GETPGXRESULTS+10*, GETPGXRESULTS+12*, GETPGXRESULTS+16*, GETPGXRESULTS+17*, GETPGXEXIT+2 |
| S | PARSE+4~, PARSE+8, PARSE+9, PARSE+10, SPUSH~, SPOP~, SPEEK~, SPUT~ |
| S( | SPUSH+1*, SPOP+2!, SPOP+3*, SPEEK+2, SPUT+3, SPUT+4, SPUT+6 |
| S("" | SPUSH+1, SPOP+1, SPEEK+1 |
| STATUS | PARSE+4~, PARSE+5*, PARSE+6 |
| STR | SPUT+1~, SPUT+2*, SPUT+4*, SPUT+7*, SPUT+8*, SPUT+9, SPUT+10, SPUT+11 |
| STREAM | PARSE~, PARSE+5 |
| TIME | REMOVEOFFSET~, REMOVEOFFSET+1*, REMOVEOFFSET+2*, REMOVEOFFSET+3*, REMOVEOFFSET+4 |
| U | BLDREQSTRING+11, SETARRAY+24, SETARRAY+25 |
| X | GETICN~, GETICN+4, GETICN+5, PARSE+1~, PARSE+9, SPUSH~, SPUSH+1, SPOP~, SPOP+2*, SPOP+3 , SPEEK~, SPEEK+2*, SPUT~, SPUT+9, SPUT+10 |
| X1 | GETICN+3~, GETICN+4*, GETICN+5*, GETICNX+1 |
| XOBERR | PARSE+4~, PARSE+6 |