VistA Analysis » VistA Reference » RPCs » ORQQXQA PATIENT

ORQQXQA PATIENT

Function returns a list of notifications for a patient for the current user.

Properties

Property Value
Label PATIENT
MUMPS Implementation ORQQXQA
Return Type ARRAY

Input Parameters

Name Type Maximum Data Length Required Description
PATIENT ID LITERAL 16 true The record number of the patient from the Patient File (#2).
START DATE LITERAL 16   Start date for retrieving patient notifications in Fileman format.
STOP DATE LITERAL 16   Stop date for retrieving patient notifications in Fileman format.

MUMPS Method Description

Property Value
Method PATIENT^ORQQXQA
Method Comment return current user's notifications for patient ORPT
Input Parameters ORPT
Code
 Q:'$L($G(ORPT))
N STRTDATE,STOPDATE S STRTDATE="",STOPDATE=""
D USER^XQALERT("^TMP(""ORB"",$J)",DUZ,STRTDATE,STOPDATE)
N I,J,INFO,ORX,URG,ORN,ORPTN,SORT,SVAL,TVAL,MSG,ORNAME,INVDT,PT,NODE,ORT
N ORTOT
S ORTOT=^TMP("ORB",$J)
S J=0,NODE="",TVAL=""
F I=1:1:ORTOT S ORX=$P(^TMP("ORB",$J,I),U,2) I ($P(ORX,";")["OR"),($P(ORX,",",2)=ORPT) D
.S ORN=$P($P(ORX,";"),",",3)
.S INVDT=9999999-$P(ORX,";",3)
.D SORT^ORQORB(.SORT) S SORT=$S($L($G(SORT)):SORT,1:"P") ;sort method
.I SORT'="P" D
..D URGENCY^ORQORB(.URG,ORN) S URG=$S($G(URG)>0:URG,1:2)
..S ORNAME=$P(^ORD(100.9,ORN,0),U)
.S INFO=$P(^TMP("ORB",$J,I)," ")
.S MSG=$S(INFO="I":INFO,1:" ")_" "_$P($P(^TMP("ORB",$J,I),U),"):",2)
.I SORT="U" S SVAL=URG_U_ORNAME
.I SORT="T" S SVAL=ORNAME
.I SORT="P" S SVAL=""
.S ^TMP("ORB2",$J,SVAL_U_INVDT)=ORX_U_MSG_U_ORPT_U_$P(ORX,";",3)
F S NODE=$O(^TMP("ORB2",$J,NODE)) Q:NODE="" S J=J+1 D
.S SVAL=$P(NODE,U)
.I SORT'="P",(TVAL'=SVAL) D
..S ORY(J)=U_$S(SORT="U":$S(SVAL=1:"HIGH",SVAL=3:"LOW",1:"MODERATE"),1:SVAL)_":",TVAL=SVAL,J=J+1
.S ORY(J)=^TMP("ORB2",$J,NODE)
I J=0 S ORY(1)="^No notifications found."
K ^TMP("ORB",$J),^TMP("ORB2",$J)

CPRS

File Type Description
NOT OSEHRA CPRS  


Document generated on August 31st 2022, 2:55:43 pm