Added the Organization actor and fixed defaults
This commit is contained in:
parent
7ed92e118c
commit
1668056254
|
@ -2,21 +2,21 @@ GPLACTORS ; CCDCCR/GPL - CCR/CCD PROCESSING FOR ACTORS ; 7/3/08
|
|||
;;0.3;CCDCCR;nopatch;noreleasedate
|
||||
;
|
||||
; PROCESS THE ACTORS SECTION OF THE CCR
|
||||
;
|
||||
; ===Revision History===
|
||||
; 0.1 Initial Writing of Skeleton--GPL
|
||||
; 0.2 Patient Data Extraction--SMH
|
||||
; 0.3 Information System Info Extraction--SMH
|
||||
;
|
||||
; ===Revision History===
|
||||
; 0.1 Initial Writing of Skeleton--GPL
|
||||
; 0.2 Patient Data Extraction--SMH
|
||||
; 0.3 Information System Info Extraction--SMH
|
||||
;
|
||||
EXTRACT(IPXML,ALST,AXML) ; EXTRACT ACTOR FROM ALST INTO PROVIDED XML TEMPLATE
|
||||
; IPXML is the Input Actor Template into which we are going to substitute values
|
||||
; This is straight XML. Values to be substituted are in @@VAL@@ format.
|
||||
|
||||
; ALST is the actor list global generated by ACTLST^GPLCCR and is in the following format
|
||||
; ^TMP(7542,1,"ACTORS",0)=Count
|
||||
; ^TMP(7542,1,"ACTORS",n)="ActorID^ActorType^ActorIEN"
|
||||
; ActorType is an enum containing either "PROVIDER" "PATIENT" "SYSTEM"
|
||||
|
||||
; This is straight XML. Values to be substituted are in @@VAL@@ format.
|
||||
|
||||
; ALST is the actor list global generated by ACTLST^GPLCCR and is in the following format
|
||||
; ^TMP(7542,1,"ACTORS",0)=Count
|
||||
; ^TMP(7542,1,"ACTORS",n)="ActorID^ActorType^ActorIEN"
|
||||
; ActorType is an enum containing either "PROVIDER" "PATIENT" "SYSTEM"
|
||||
|
||||
; AXML is the output arrary, to contain XML.
|
||||
|
||||
N I,J,AMAP,AOID,ATYP,AIEN
|
||||
|
@ -47,6 +47,10 @@ EXTRACT(IPXML,ALST,AXML) ; EXTRACT ACTOR FROM ALST INTO PROVIDED XML TEMPLATE
|
|||
. . D QUERY^GPLXPATH(IPXML,"//Actors/ACTOR-PROVIDER","ATMP")
|
||||
. . D PROVIDER("ATMP",@ALST@(I),"ATMP2")
|
||||
. ;
|
||||
. I ATYP="ORGANIZATION" D ; PROVIDER ACTOR TYPE
|
||||
. . D QUERY^GPLXPATH(IPXML,"//Actors/ACTOR-ORG","ATMP")
|
||||
. . D ORG("ATMP",@ALST@(I),"ATMP2")
|
||||
. ;
|
||||
. D INSINNER^GPLXPATH(AXML,"ATMP2") ; INSERT INTO ROOT
|
||||
;
|
||||
D MISSING^GPLXPATH(AXML,"ACTTMP") ; SEARCH XML FOR MISSING VARS
|
||||
|
@ -61,7 +65,7 @@ PATIENT(INXML,ACTREC,OUTXML) ; PROCESS A PATIENT ACTOR
|
|||
W "PROCESSING ACTOR PATIENT ",ACTREC,!
|
||||
; N AMAP
|
||||
S AMAP=$NA(^TMP($J,"AMAP"))
|
||||
D INIT^CCRDPT(AIEN)
|
||||
D INIT^CCRDPT(AIEN)
|
||||
S @AMAP@("ACTOROBJECTID")=AOID ;ACTOR OBJECT ID
|
||||
S @AMAP@("ACTORGIVENNAME")=$$GIVEN^CCRDPT
|
||||
S @AMAP@("ACTORMIDDLENAME")=$$MIDDLE^CCRDPT
|
||||
|
@ -78,10 +82,10 @@ PATIENT(INXML,ACTREC,OUTXML) ; PROCESS A PATIENT ACTOR
|
|||
S @AMAP@("ACTORADDRESSZIPCODE")=$$ZIP^CCRDPT
|
||||
S @AMAP@("ACTORRESTEL")=$$RESTEL^CCRDPT
|
||||
S @AMAP@("ACTORWORKTEL")=$$WORKTEL^CCRDPT
|
||||
S @AMAP@("ACTORCELLTEL")=$$CELLTEL^CCRDPT
|
||||
S @AMAP@("ACTORCELLTEL")=$$CELLTEL^CCRDPT
|
||||
S @AMAP@("ACTOREMAIL")=$$EMAIL^CCRDPT
|
||||
S @AMAP@("ACTORADDRESSSOURCEID")=AOID
|
||||
D DESTROY^CCRDPT
|
||||
D DESTROY^CCRDPT
|
||||
D MAP^GPLXPATH(INXML,AMAP,OUTXML) ; MAP THE VARIABLE
|
||||
Q
|
||||
;
|
||||
|
@ -91,7 +95,7 @@ SYSTEM(INXML,ACTREC,OUTXML) ; PROCESS A SYSTEM ACTOR
|
|||
S AMAP=$NA(^TMP($J,"AMAP"))
|
||||
S @AMAP@("ACTOROBJECTID")=AOID ;ACTOR OBJECT ID
|
||||
S @AMAP@("ACTORINFOSYSNAME")=$$SYSNAME^CCRSYS
|
||||
S @AMAP@("ACTORINFOSYSVER")=$$SYSVER^CCRSYS
|
||||
S @AMAP@("ACTORINFOSYSVER")=$$SYSVER^CCRSYS
|
||||
S @AMAP@("ACTORINFOSYSSOURCEID")=AOID
|
||||
D MAP^GPLXPATH(INXML,AMAP,OUTXML) ; MAP THE VARIABLE
|
||||
Q
|
||||
|
@ -107,6 +111,16 @@ NOK(INXML,ACTREC,OUTXML) ; PROCESS A NEXT OF KIN TYPE ACTOR
|
|||
D MAP^GPLXPATH(INXML,AMAP,OUTXML) ; MAP THE VARIABLE
|
||||
Q
|
||||
;
|
||||
ORG(INXML,ACTREC,OUTXML) ; PROCESS AN ORGANIZATION TYPE ACTOR
|
||||
;
|
||||
; N AMAP
|
||||
S AMAP=$NA(^TMP($J,"AMAP"))
|
||||
S @AMAP@("ACTOROBJECTID")=AOID ;ACTOR OBJECT ID
|
||||
S @AMAP@("ORGANIZATIONNAME")="WORLDVISTA EHR CLINIC"
|
||||
S @AMAP@("ACTORSOURCEID")="ACTORSYSTEM_1"
|
||||
D MAP^GPLXPATH(INXML,AMAP,OUTXML) ; MAP THE VARIABLE
|
||||
Q
|
||||
;
|
||||
PROVIDER(INXML,ACTREC,OUTXML) ; PROCESS A PROVIDER TYPE ACTOR
|
||||
;
|
||||
; N AMAP
|
||||
|
|
|
@ -93,9 +93,11 @@ HDRMAP(CXML,DFN,IHDR) ; MAP HEADER VARIABLES: FROM, TO ECT
|
|||
S @VMAP@("DATETIME")=$$FMDTOUTC^CCRUTIL($$NOW^XLFDT,"DT")
|
||||
I IHDR="" D ; HEADER ARRAY IS NOT PROVIDED, USE DEFAULTS
|
||||
. S @VMAP@("ACTORPATIENT")="ACTORPATIENT_"_DFN
|
||||
. S @VMAP@("ACTORFROM")="ACTORPROVIDER_"_DUZ ; FROM DUZ - ???
|
||||
. S @VMAP@("ACTORFROM")="ACTORORGANIZATION_"_DUZ ; FROM DUZ - ???
|
||||
. S @VMAP@("ACTORFROM2")="ACTORSYSTEM_1" ; SECOND FROM IS THE SYSTEM
|
||||
. S @VMAP@("ACTORTO")="ACTORPATIENT_"_DFN ; FOR TEST PURPOSES,
|
||||
. S @VMAP@("ACTORTO")="ACTORPATIENT_"_DFN ; FOR TEST PURPOSES
|
||||
. S @VMAP@("PURPOSEDESCRIPTION")="CEND PHR" ; FOR TEST PURPOSES
|
||||
. S @VMAP@("ACTORTOTEXT")="Patient" ; FOR TEST PURPOSES
|
||||
. ; THIS IS THE USE CASE FOR THE PHR WHERE "TO" IS THE PATIENT
|
||||
I IHDR'="" D ; HEADER VALUES ARE PROVIDED
|
||||
. D CP^GPLXPATH(IHDR,VMAP) ; COPY HEADER VARIABLES TO MAP ARRAY
|
||||
|
|
13
p/GPLCCR0.m
13
p/GPLCCR0.m
|
@ -572,6 +572,19 @@ LOAD(ARY) ; LOAD A CCR TEMPLATE INTO ARY PASSED BY NAME
|
|||
;;</Source>
|
||||
;;</Actor>
|
||||
;;</ACTOR-PROVIDER>
|
||||
;;<ACTOR-ORG>
|
||||
;;<Actor>
|
||||
;;<ActorObjectID>@@ACTOROBJECTID@@</ActorObjectID>
|
||||
;;<Organization>
|
||||
;;<Name>@@ORGANIZATIONNAME@@</Name>
|
||||
;;</Organization>
|
||||
;;<Source>
|
||||
;;<Actor>
|
||||
;;<ActorID>@@ACTORSOURCEID</ActorID>
|
||||
;;</Actor>
|
||||
;;</Source>
|
||||
;;</Actor>
|
||||
;;</ACTOR-ORG>
|
||||
;;</Actors>
|
||||
;;<Signatures>
|
||||
;;<CCRSignature>
|
||||
|
|
Loading…
Reference in New Issue