VPRDJ ;SLC/MKB -- Serve VistA data as JSON via RPC ;10/18/12 6:26pm
Source file <VPRDJ.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 |
---|---|---|
GET(VPR,FILTER) | ; -- Return search results as JSON in @VPR@(n)
; RPC = VPR GET PATIENT DATA JSON ; where FILTER("patientId") = DFN or DFN;ICN ; FILTER("domain") = name of desired data type (see VPRDJ0) ; FILTER("text") = boolean, to include document text [opt] ; FILTER("start") = start date.time of search [opt] ; FILTER("stop") = stop date.time of search [opt] ; FILTER("max") = maximum number of items to return [opt] ; FILTER("id") = single item id to return [opt] ; FILTER("uid") = single record uid to return [opt] ; FILTER("nowrap") = include line breaks in comments [opt] |
|
GTQ | ; add item count and terminating characters
|
|
SEPUID(FILTER) | ; -- separate uid into FILTER pieces
|
|
SYS() | ; -- return system info for JSON header
|
|
TAG(X) | ; -- Return linetag in VPRDJ0 routine for clinical domain X
|
|
ALL() | ; -- return string for all types of data
|
|
ERR(X,VAL) | ; -- return error message
|
|
HL7NOW() | ; -- Return current time in HL7 format
|
|
ADD(ITEM,COLL) | ; -- add ITEM to results
|
|
TEST(DFN,TYPE,ID,TEXT,IN) | ; -- test GET, write results to screen
|
Name | Line Occurrences |
---|---|
Function Call: WRITE |
|
RPC Name | Call Tags |
---|---|
VPR GET PATIENT DATA JSON | GET |
Name | Line Occurrences (* Changed, ! Killed) |
---|---|
^DPT - [#2] | GET+25 |
^TMP("VPR" | GET+13 |
^TMP("VPRTEXT" | GTQ+7! |
^XTMP( | GET+24 |
>> | Not killed explicitly |
* | Changed |
! | Killed |
~ | Newed |
Name | Field # of Occurrence |
---|---|
COLL | ADD~, ADD+1 |
DFN | GET+12~, GET+19*, GET+20*, GET+21*, GET+24, GET+25, TEST~, TEST+4 |
DT | GET+15* |
FILTER | GET~, GET+17, SEPUID~ |
FILTER("domain" | GET+23, SEPUID+5* |
FILTER("id" | GET+34, SEPUID+6* |
FILTER("max" | GET+29 |
FILTER("patientId" | GET+19, SEPUID+4* |
FILTER("start" | GET+27 |
FILTER("stop" | GET+28 |
FILTER("text" | GET+35 |
FILTER("uid" | GET+17, SEPUID+2! |
ICN | GET+12~, GET+20*, GET+21 |
ID | TEST~, TEST+6 |
IDX | TEST+1~, TEST+10*, TEST+11* |
IN | TEST~, TEST+8 |
IN("domain" | TEST+5* |
IN("id" | TEST+6* |
IN("patientId" | TEST+4* |
IN("systemID" | TEST+3* |
IN("text" | TEST+7* |
ITEM | ADD~, ADD+1, ADD+4, ADD+7 |
MSG | ERR+1~*, ERR+2*, ERR+3*, ERR+4*, ERR+5*, ERR+6*, ERR+7 |
OUT | TEST+1~, TEST+8, TEST+10 |
TEXT | TEST~, TEST+7 |
TYPE | GET+39*, GET+40, TEST~, TEST+5 |
U | TEST+2* |
UID | SEPUID+1~, SEPUID+2*, SEPUID+3, SEPUID+4, SEPUID+5, SEPUID+6 |
VAL | ERR~, ERR+2, ERR+3, ERR+4 |
VPR | GET~, GET+13*, GET+24*, GTQ+1, GTQ+2, GTQ+3, GTQ+5, GTQ+6, ADD+12, ADD+13 |
>> VPRBATCH | GET+24 |
>> VPRCRC | ADD+1 |
VPRERR | GET+12~, GET+25*, GTQ+2, ADD+3~, ADD+5, ADD+9, ADD+10! |
VPRI | GET+12~, GET+13*, GTQ+3, GTQ+5, GTQ+6*, ADD+12*, ADD+13 |
VPRID | GET+12~, GET+34* |
VPRITM | ADD+6~, ADD+7*, ADD+9 |
VPRMAX | GET+12~, GET+29* |
VPRP | GET+12~, GET+39* |
VPRSTART | GET+12~, GET+27*, GET+30, GET+31* |
VPRSTOP | GET+12~, GET+28*, GET+30, GET+31*, GET+32* |
VPRSYS | GET+12~, GET+14*, SEPUID+3, SYS+1 |
VPRTEXT | GET+12~, GET+35* |
VPRTMP | ADD+6~, ADD+9 |
VPRTN | GET+12~, GET+40*, GET+41 |
VPRTXT | ADD+6~, ADD+9 |
VPRTXT(1 | ADD+8* |
VPRTYPE | GET+12~, GET+23*, GET+24, GET+25, GET+39 |
VPRY | ADD+3~, ADD+7!, ADD+11, ADD+13 |
X | GET+31~*, TAG~, TAG+1*, TAG+2, ERR~, ERR+2, ERR+3, ERR+4, ERR+5, ERR+6 |
Y | TAG+1~, TAG+2*, TAG+3*, TAG+4 |
>> ZTQUEUED | GET+24 |
Name | Field # of Occurrence |
---|---|
$T(@(3) | TAG+3 |
$T(@VPRTN | GET+40 |