1 | GMRCSLM3 ;SLC/DCM - Extract medicine results for consult tracking ;7/16/98 02:01
|
---|
2 | ;;3.0;CONSULT/REQUEST TRACKING;**1,4,15**;DEC 27, 1997
|
---|
3 | ;
|
---|
4 | ; This routine invokes IA #615,#3042
|
---|
5 | ;
|
---|
6 | EN(GMRCSEL,GMRCSR,COUNT) ;;This entry point is used to collect consult data from the Medicine Package.
|
---|
7 | ;GMRCSR="^MCAR(x," file IEN where result to associate is stored
|
---|
8 | ;in $P(^GMR(123,IEN,0),"^",15)
|
---|
9 | ; 1=Called from RT^GMRCA1 or DT^GMRCSLM2 routine
|
---|
10 | ;Consult/Request Tracking
|
---|
11 | ;GMRCSEL: The IEN of the consult from file 123.
|
---|
12 | ;COUNT: The current position in ^TMP where data is to be placed.
|
---|
13 | D ENDT,EXIT Q
|
---|
14 | ;
|
---|
15 | ENDT Q:'$D(GMRCSEL) Q:'$D(GMRCSEL)
|
---|
16 | S ORIFN=$P(^GMR(123,GMRCSEL,0),"^",3),ORACTION=8
|
---|
17 | S ^TMP("GMRCR",$J,"DT",COUNT,0)="",COUNT=COUNT+1
|
---|
18 | S X="MCOR" X ^%ZOSF("TEST") I '$T S ^TMP("GMRCR",$J,"DT",COUNT,0)="Medicine package not installed. Online results are not available.",COUNT=COUNT+1
|
---|
19 | I 'GMRCSR S ^TMP("GMRCR",$J,"DT",COUNT,0)="No Medicine results are available for review",COUNT=COUNT+1 Q
|
---|
20 | N SINGLE
|
---|
21 | S SINGLE=$$SINGLE^MCAPI(GMRCSR)
|
---|
22 | S GMRCRTIT=$P(SINGLE,U)_" SUMMARY REPORT "_$P(SINGLE,U,6)
|
---|
23 | S GMRCH="",$P(GMRCH,"-",(77-$L(GMRCRTIT))\2)=""
|
---|
24 | S ^TMP("GMRCR",$J,"DT",COUNT,0)=GMRCH_" "_GMRCRTIT_" "_GMRCH
|
---|
25 | S COUNT=COUNT+1,^TMP("GMRCR",$J,"DT",COUNT,0)="",COUNT=COUNT+1
|
---|
26 | D PRINT^MCOR I '$D(^TMP("MC",$J)) D
|
---|
27 | . S ^TMP("GMRCR",$J,"DT",COUNT,0)="No results are available for review."
|
---|
28 | . S COUNT=COUNT+1
|
---|
29 | ;GMRCFT=Field Type of D (Diagnosis, I (Indications), S (Summary)
|
---|
30 | SET S GMRCFT="D" I $D(^TMP("MC",$J,"D")) D
|
---|
31 | . S ^TMP("GMRCR",$J,"DT",COUNT,0)=$E(TAB,1,34)_"DIAGNOSIS"
|
---|
32 | . S COUNT=COUNT+1
|
---|
33 | . D SETFLD
|
---|
34 | S GMRCFT="I" I $D(^TMP("MC",$J,"I")) D
|
---|
35 | . S ^TMP("GMRCR",$J,"DT",COUNT,0)="",COUNT=COUNT+1
|
---|
36 | . S ^TMP("GMRCR",$J,"DT",COUNT,0)="INDICATIONS:",COUNT=COUNT+1
|
---|
37 | . D SETFLD
|
---|
38 | I $D(^TMP("MC",$J,"S")) D SUM
|
---|
39 | Q
|
---|
40 | EXIT K GMRCH,GMRCX,GMRCFT,GMRCFLD,GMRCSUM,GMRCFLDN,GMRCSUMP,GMRCRTIT
|
---|
41 | K GMRCPRNM,GMRCFLDP,MCC,MCK,MCMFLD,MCMUP
|
---|
42 | K ^TMP("MC",$J)
|
---|
43 | Q
|
---|
44 | SETFLD S GMRCFLD=0,GMRCFLDP=""
|
---|
45 | F S GMRCFLD=$O(^TMP("MC",$J,GMRCFT,GMRCFLD)) Q:GMRCFLD="" D
|
---|
46 | . S GMRCFLD(0)=^TMP("MC",$J,GMRCFT,GMRCFLD) D
|
---|
47 | .. S GMRCFLDN=$P(GMRCFLD(0),"^",2) Q:GMRCFLDN[";W"
|
---|
48 | .. I GMRCFLDP=GMRCFLDN S COUNT=COUNT-1,^TMP("GMRCR",$J,"DT",COUNT,0)=^TMP("GMRCR",$J,"DT",COUNT,0)_", "
|
---|
49 | .. E S GMRCFLDP=GMRCFLDN,^TMP("GMRCR",$J,"DT",COUNT,0)=GMRCFLDP_":"_$E(TAB,1,18-$L(GMRCFLDP))
|
---|
50 | .. I $L($P(GMRCFLD(0),"^",1))>45 D Q
|
---|
51 | ... S ^TMP("GMRCR",$J,"DT",COUNT,0)=^TMP("GMRCR",$J,"DT",COUNT,0)_$P(GMRCFLD(0),U)
|
---|
52 | ... S COUNT=COUNT+1
|
---|
53 | .. I $L($P(GMRCFLD(0),"^",1))'>77 S ^TMP("GMRCR",$J,"DT",COUNT,0)=^TMP("GMRCR",$J,"DT",COUNT,0)_$P(GMRCFLD(0),"^",1)
|
---|
54 | .. S COUNT=COUNT+1 Q
|
---|
55 | Q
|
---|
56 | SUM ;
|
---|
57 | S GMRCSUM=$P(^TMP("MC",$J,"S"),"^",1)
|
---|
58 | S GMRCSUMP=$P(^TMP("MC",$J,"S"),"^",2)
|
---|
59 | I $L(GMRCSUM)!($L(GMRCSUMP)) S ^TMP("GMRCR",$J,"DT",COUNT,0)="SUMMARY:"
|
---|
60 | I $L(GMRCSUM) S ^TMP("GMRCR",$J,"DT",COUNT,0)=^TMP("GMRCR",$J,"DT",COUNT,0)_$E(TAB,1,11)_GMRCSUM,COUNT=COUNT+1
|
---|
61 | I $L(GMRCSUMP) S ^TMP("GMRCR",$J,"DT",COUNT,0)="SUMMARY PROCEDURE: "_GMRCSUMP,COUNT=COUNT+1
|
---|
62 | Q
|
---|
63 | AREN(GMRCSEL,GMRCSR,GMRCPROC) ;Entry point for display of Medicine Results when associating a result with a consult - List Manager display set-up.
|
---|
64 | ;GMRCSR=^MCAR(191, file IEN where result to associate is stored
|
---|
65 | ;GMRCSEL=File ^GMR(123, IEN of consult to associate with medicine result
|
---|
66 | ;GMRCPROC=pointer to GMRC PROCEDURE (#123.3) file
|
---|
67 | S COUNT=1,TAB="",TAB=$P(TAB," ",30)
|
---|
68 | S X="MCOR" X ^%ZOSF("TEST") I '$T S ^TMP("GMRCR",$J,"DT",COUNT,0)="Medicine Package is not installed. Online results are not available.",COUNT=COUNT+1 G END
|
---|
69 | I 'GMRCSR S ^TMP("GMRCR",$J,"DT",COUNT,0)="No Medicine results are available for review.",COUNT=COUNT+1
|
---|
70 | S ORIFN=$S($G(GMRCSEL):$P(^GMR(123,+GMRCSEL,0),"^",3),1:0),ORACTION=8
|
---|
71 | S:+GMRCPROC GMRCPRNM=$$GET1^DIQ(697.2,$P(^GMR(123.3,+GMRCPROC,0),U,5),7)
|
---|
72 | S GMRCPRNM=$S($L($G(GMRCPRNM)):GMRCPRNM,1:"ELECTROCARDIOGRAM")
|
---|
73 | I +GMRCSR D PRINT^MCOR I $D(^TMP("MC",$J)) S ^TMP("GMRCR",$J,"DT",COUNT,0)=TAB_"MEDICINE RESULTS",COUNT=COUNT+1,^TMP("GMRCR",$J,"DT",COUNT,0)="",COUNT=COUNT+1 D SET
|
---|
74 | S ^TMP("GMRCR",$J,"DT",COUNT,0)="",COUNT=COUNT+1
|
---|
75 | END S GMRCCT=COUNT-1
|
---|
76 | K COUNT,GMRCH,GMRCFT,GMRCFLD,GMRCSUM,GMRCFLDN,GMRCSUMP,GMRCRTIT,GMRCPRNM,GMRCFLDP,MCC,MCK,MCMFLD,MCMUP
|
---|
77 | K ^TMP("MC",$J)
|
---|
78 | Q
|
---|