1 | RGEX05 ;BAY/ALS-LISTMANAGER ROUTINE FOR REMOTE PDAT IN EXCEPTION HANDLER ;10/04/01
|
---|
2 | ;;1.0;CLINICAL INFO RESOURCE NETWORK;**23,20,31**;30 Apr 99
|
---|
3 | ;Reference to RPCCHK^XWB2HL7 supported by IA #3144
|
---|
4 | ;Reference to RTNDATA^XWBDRPC supported by IA #3149
|
---|
5 | EN(ICN) ;main entry point for RG EXCPT REMOTE PDAT
|
---|
6 | D EN^VALM("RG EXCPT RPDAT")
|
---|
7 | Q
|
---|
8 | HDR ;header code
|
---|
9 | S VALMHDR(1)="MPI/PD REMOTE PATIENT DATA"
|
---|
10 | S VALMHDR(2)=""
|
---|
11 | Q
|
---|
12 | INIT ;
|
---|
13 | K ^TMP("RGEXC5",$J)
|
---|
14 | K @VALMAR
|
---|
15 | I '$D(ICN) G EXIT
|
---|
16 | S LIN=1,X=0,STR="",TXT=""
|
---|
17 | S TXT="-> For ICN "_$P(ICN,"V",1) S STR=$$SETSTR^VALM1(TXT,STR,2,78) D ADDTMP
|
---|
18 | S L=0 F S L=$O(TFARR(L)) Q:'L D
|
---|
19 | . S SL=$P(TFARR(L),"^",1)
|
---|
20 | . S STATUS=$P(TFL(SL),"^",3)
|
---|
21 | . I STATUS["Handle" S STATUS="Error in Process"
|
---|
22 | . E I STATUS["New" S STATUS="Request Sent"
|
---|
23 | . E I STATUS["Running" S STATUS="Awaiting Response"
|
---|
24 | . E I STATUS["Done" S STATUS="Response Received"
|
---|
25 | . S TXT=" "_$P(TFL(SL),"^")_" status: ("_STATUS_")"
|
---|
26 | . D ADDTMP
|
---|
27 | . S STR=$$SETSTR^VALM1(TXT,STR,2,78) D ADDTMP D
|
---|
28 | . S LOC=$P(TFL(SL),"^",2)
|
---|
29 | . N STATUS,RETURN,RESULT,RET,RESULT
|
---|
30 | . I '$D(^XTMP("RGPDAT"_ICN,0)) S TXT=" - No patient data query exists for this patient." S STR=$$SETSTR^VALM1(TXT,STR,2,78) D ADDTMP
|
---|
31 | . I $D(^XTMP("RGPDAT"_ICN,LOC,0)) D
|
---|
32 | .. S RETURN(0)=$P(^XTMP("RGPDAT"_ICN,LOC,0),"^")
|
---|
33 | .. D RPCCHK^XWB2HL7(.RESULT,RETURN(0)) I +RESULT(0)=1 D
|
---|
34 | ... D RTNDATA^XWBDRPC(.RET,RETURN(0)) D
|
---|
35 | ... I $G(RET(0))<0 S TXT="No Data Returned Due To: "_$P(RET(0),"^",2,99) S STR=$$SETSTR^VALM1(TXT,STR,2,78) D ADDTMP Q
|
---|
36 | ... I $G(RET)'="",$D(@RET) S GLO=RET F S GLO=$Q(@GLO) Q:$QS(GLO,1)'=$J S TXT=@GLO S STR=$$SETSTR^VALM1(TXT,STR,2,78) D ADDTMP
|
---|
37 | ... S R="" F S R=$O(RET(R)) Q:R="" S TXT=RET(R) S STR=$$SETSTR^VALM1(TXT,STR,2,78) D ADDTMP ;**31
|
---|
38 | K ICNARR,R,L,SL,LOC,TFL,GLO
|
---|
39 | S VALMCNT=LIN-1
|
---|
40 | Q
|
---|
41 | ADDTMP ;
|
---|
42 | S ^TMP("RGEXC5",$J,LIN,0)=STR
|
---|
43 | S ^TMP("RGEXC5",$J,"IDX",LIN,LIN)=""
|
---|
44 | S LIN=LIN+1,STR=""
|
---|
45 | Q
|
---|
46 | HELP ;
|
---|
47 | S X="?" D DISP^XQORM1 W !!
|
---|
48 | Q
|
---|
49 | EXIT ;
|
---|
50 | S VALMBCK=""
|
---|
51 | K ^TMP("RGEXC5",$J),LIN,X,STR,TXT
|
---|
52 | S VALMBCK="R"
|
---|
53 | Q
|
---|