[623] | 1 | ORWDGX ; SLC/KCM - Generic Orders calls for Windows Dialogs [ 08/05/96 8:21 AM ]
|
---|
| 2 | ;;3.0;ORDER ENTRY/RESULTS REPORTING;;Dec 17, 1997
|
---|
| 3 | ;
|
---|
| 4 | ACT() N X,RSLT S X=^(0),RSLT=1
|
---|
| 5 | I "DQ"'[$P(X,U,4) S RSLT=0
|
---|
| 6 | S X1=$O(^ORD(100.98,"B","ACTIVITY",0))
|
---|
| 7 | S X2=$O(^ORD(100.98,"B","NURSING",0))
|
---|
| 8 | I "DQ"'[$P(X,U,4) S RSLT=0
|
---|
| 9 | I RSLT,((U_X1_U_X2_U)'[(U_$P(X,U,5)_U)) S RSLT=0
|
---|
| 10 | Q RSLT
|
---|
| 11 | NURS() N X,RSLT S X=^(0),RSLT=1
|
---|
| 12 | I "DQ"'[$P(X,U,4) S RSLT=0
|
---|
| 13 | I RSLT,($P(X,U,5)'=$O(^ORD(100.98,"B","NURSING",0))) S RSLT=0
|
---|
| 14 | Q RSLT
|
---|
| 15 | OITEXT(Y,DLG) ; Return Orderable Item Text given dialog or quick order
|
---|
| 16 | S Y=$P(^ORD(101.41,DLG,0),U,2)
|
---|
| 17 | Q
|
---|
| 18 | LOAD(LST,PAR) ; Load a list of activity orders
|
---|
| 19 | N I,ILST,DLG,NAM,TLST
|
---|
| 20 | D GETLST^XPAR(.TLST,"ALL",PAR)
|
---|
| 21 | S I=0,ILST=0 F S I=$O(TLST(I)) Q:'I D
|
---|
| 22 | . S DLG=$P(TLST(I),U,2),NAM=$P(^ORD(101.41,+DLG,0),U,2)
|
---|
| 23 | . S ILST=ILST+1,LST(ILST)=DLG_U_NAM
|
---|
| 24 | Q
|
---|
| 25 | ;
|
---|
| 26 | N DLGTYP,OIDLG,FTDLG,OITYP,I,IFN
|
---|
| 27 | S DLGTYP=$P(^ORD(101.41,DLG,0),U,4)
|
---|
| 28 | S OIDLG=$O(^ORD(101.41,"B","OR GTX ORDERABLE ITEM",0))
|
---|
| 29 | S FTDLG=$O(^ORD(101.41,"B","OR GTX FREE TEXT OI",0))
|
---|
| 30 | I DLGTYP="D" D
|
---|
| 31 | . S I=0,IFN=0 F S I=$O(^ORD(101.41,DLG,10,I)) S X=^(I,0) D Q:IFN
|
---|
| 32 | . . I $P(X,U,2)=OIDLG S IFN=I,OITYP="O"
|
---|
| 33 | . . I $P(X,U,2)=FTDLG S IFN=I,OITYP="F"
|
---|
| 34 | . S Y="" I $L($G(^ORD(101.41,DLG,10,IFN,7))) X ^(7)
|
---|
| 35 | . I OITYP="O" S Y=$P(^ORD(101.43,+Y,0),U,1)
|
---|
| 36 | Q
|
---|
| 37 | VMDEF(LST) ; Return dialog definition for vitals/measurements
|
---|
| 38 | N ILST S ILST=0
|
---|
| 39 | S LST($$NXT)="~Measurements" D MEASURE
|
---|
| 40 | S LST($$NXT)="~Schedules" D VMSCHED
|
---|
| 41 | Q
|
---|
| 42 | MEASURE ; Get measurements available
|
---|
| 43 | S X="" F S X=$O(^ORD(101.43,"S.V/M",X)) Q:X="" D
|
---|
| 44 | . S I=$O(^ORD(101.43,"S.V/M",X,0)),LST($$NXT)="i"_I_U_X
|
---|
| 45 | S LST($$NXT)="dTPR B/P" ; ** do this with a parameter
|
---|
| 46 | Q
|
---|
| 47 | VMSCHED ; Get vitals/measurements schedules
|
---|
| 48 | S X="" F S X=$O(^PS(51.1,"APGMRV",X)) Q:X="" D
|
---|
| 49 | . S I=$O(^PS(51.1,"APGMRV",X,0)),LST($$NXT)="i"_I_U_X
|
---|
| 50 | Q
|
---|
| 51 | NXT() ; Increment index into LST
|
---|
| 52 | S ILST=ILST+1
|
---|
| 53 | Q ILST
|
---|