| 1 | ORWMC ; slc/dcm -Medicine Calls ;4/2/98  15:02 | 
|---|
| 2 | ;;3.0;ORDER ENTRY/RESULTS REPORTING;**10,109**;Dec 17, 1997 | 
|---|
| 3 | PROD(ROOT,DFN) ; Return procedures | 
|---|
| 4 | ; RPC: ORWMC PROCEDURES | 
|---|
| 5 | ;  See RPC definition for details on input and output parameters | 
|---|
| 6 | D GET(0) | 
|---|
| 7 | Q | 
|---|
| 8 | PROD1(ROOT,DFN) ; Return procedures | 
|---|
| 9 | ; RPC: ORWMC PROCEDURES | 
|---|
| 10 | ;  See RPC definition for details on input and output parameters | 
|---|
| 11 | D GET(1) | 
|---|
| 12 | Q | 
|---|
| 13 | GET(GSITE)      ;Get the data | 
|---|
| 14 | N MCDATA,I,X,X1,X2,ID,SITE | 
|---|
| 15 | S MCDATA=$NA(^TMP("OR",$J,"MCAR","OT")) | 
|---|
| 16 | S ROOT=$NA(^TMP("OR",$J,"MCAR","GUI")) | 
|---|
| 17 | K @MCDATA,@ROOT | 
|---|
| 18 | D EN^MCARPS2(DFN) | 
|---|
| 19 | ; -- reformat data array for rpc | 
|---|
| 20 | S ID="",SITE="" | 
|---|
| 21 | I $G(GSITE) S SITE=$$SITE^VASITE,SITE=$P(SITE,"^",2)_";"_$P(SITE,"^",3)_U | 
|---|
| 22 | F  S ID=$O(@MCDATA@(ID)) Q:ID=""  D | 
|---|
| 23 | . S @ROOT@(ID)=SITE_ID_U_@MCDATA@(ID) | 
|---|
| 24 | ;K @MCDATA | 
|---|
| 25 | Q | 
|---|
| 26 | ; | 
|---|
| 27 | RPT(ROOT,DFN,ORID) ; -- return medicine report | 
|---|
| 28 | ;  RPC: ORWMC REPORT TEXT | 
|---|
| 29 | ;  See RPC definition for details on input and output parameters | 
|---|
| 30 | ; N IORVON,IORVOFF S (IORVON,IORVOFF)="" | 
|---|
| 31 | ; | 
|---|
| 32 | ; -- init locals and globals | 
|---|
| 33 | N ID,LCNT,ORVP,DA,MCARGDA,MCARPPS,MCPRO | 
|---|
| 34 | S MCDATA=$NA(^TMP("OR",$J,"MCAR","OT")) | 
|---|
| 35 | S ROOT=$NA(^TMP("ORXPND",$J)) | 
|---|
| 36 | K @ROOT ;K @MCDATA REMOVED | 
|---|
| 37 | ; -- set up procedure id and call to get report text | 
|---|
| 38 | S ID=^TMP("OR",$J,"MCAR","OT",ORID),(DA,MCARGDA)=$P(ID,U,3),MCARPPS=$P(ID,U,4,5),MCPRO=$P(ID,U,12) | 
|---|
| 39 | D MCPPROC^MCARP | 
|---|
| 40 | S MCARGRTN=$P(ID,U,6) | 
|---|
| 41 | D @MCARPPS | 
|---|
| 42 | ; -- set up counter and vp local for dfn for formating call | 
|---|
| 43 | K @MCDATA | 
|---|
| 44 | Q | 
|---|
| 45 | ; | 
|---|
| 46 | TEST ; -- test to get exam list | 
|---|
| 47 | N I,ROOT,DFN | 
|---|
| 48 | S DFN=17 | 
|---|
| 49 | D PROD1(.ROOT,DFN) | 
|---|
| 50 | W !,"Root: ",ROOT | 
|---|
| 51 | S I=0 F  S I=$O(@ROOT@(I)) Q:'I  W !,@ROOT@(I) | 
|---|
| 52 | Q | 
|---|
| 53 | ; | 
|---|
| 54 | TEST1 ; -- test to print reprt for first 3 exams | 
|---|
| 55 | N I,ROOT,ROOT1,L,X,DFN,XQY0,ORHFS | 
|---|
| 56 | S DFN=17,XQY0="ORTEST",ORHFS=1 | 
|---|
| 57 | D PROD1(.ROOT,DFN) | 
|---|
| 58 | W !,"Root: "_ROOT | 
|---|
| 59 | S I=0 F  S I=$O(@ROOT@(I)) Q:'I  D  Q | 
|---|
| 60 | . S X=@ROOT@(I) | 
|---|
| 61 | . D RPT(.ROOT,DFN,I) | 
|---|
| 62 | . ;S L=0 F  S L=$O(@ROOT@(L)) Q:'L  W !,@ROOT@(L) | 
|---|
| 63 | Q | 
|---|