DGJOPRT ;ALB/MAF - SORT/PRINT IRT ; JAN 28,1991@900
;;5.3;Registration;**1015**;Aug 13, 1993;Build 21
EN S DGJTDIR=1,DGJTSTAT="^"_$O(^DG(393.2,"B","INCOMPLETE",0))_"^" G OUT
EN1 S (DGJTDIR,DGJTCK)=2
OUT S (DGJFL,DGJTMESS)=0 W !!,"Sort output by: PATIENT// " D ZSET1 S X="" R X:DTIME G QUIT:X="^"!('$T) I X=""!("Pp"[X) S X="2"
S X=$S("Ee"[X:1,"Dd"[X:3,"Ss"[X:4,1:X)
I X="?" D ZSET1,HELP1 G OUT
S DGJTSR=$E(X) D IN^DGHELP W ! I %=-1 D ZSET1,HELP1 G OUT
OUT1 S DGJFL=0 W !!,"Print report for: (I)Inpatients, (O)Outpatients, (B)Both// " D ZSET2 S X="" R X:DTIME G QUIT:X="^"!('$T) I X=""!("Bb"[X) S X=3
S X=$S("Ii"[X:1,"Oo"[X:2,1:X)
I X="?" D ZSET2,HELP2 G OUT1
S DGJTSR1=$E(X) D IN^DGHELP W ! I %=-1 D ZSET2,HELP2 G OUT1
I $D(^DG(43,1,"GL")) S DGJTMUL=$P(^DG(43,1,"GL"),"^",2)
I DGJTDIR=2 D SEL G QUIT:$D(DUOUT)!$D(DTOUT)
S DGJTL=$S(DGJTSR=1:"DAT",DGJTSR=2:"PAT",DGJTSR=3:"PHY",DGJTSR=4:"SER",1:"QUIT")
G ^DGJOPRT1
QUIT K %,BY,DHD,DIC,DIOEND,DIS,DIR,DTOUT,DUOUT,FR,FLDS,K,L,TO,DGJTCK,DGJTDIR,DGJTL,DGJTMESS,DGJTMUL,DGJTSR,DGJTSTAT,DGJTUN,VAUTN,VAUTY,DGJFL,DGJTSR1,DGJ(0),X,Y,Z Q
HELP1 W !!,"Choose a number or first initial :" F K=2:1:5 W !?15,$P(Z,"^",K)
W ! Q
HELP2 W !!,"Choose a number or first initial:" F K=2:1:4 W !?15,$P(Z,"^",K)
W ! Q
ZSET1 S Z="^1 EVENT DATE^2 PATIENT^3 DOCTOR^4 SERVICE/TREATING SPECIALTY^" Q
ZSET2 S Z="^1 INPATIENTS ONLY^2 OUTPATIENTS ONLY^3 BOTH INPATIENT and OUTPATIENTS^" Q
SEL S DIR("A")="Select INCOMPLETE RECORD STATUS: ",DIR(0)="SA^A:ALL;D:UNDICTATED;T:NOT TRANSCRIBED;S:UNSIGNED;R:NOT REVIEWED",DIR("B")="ALL"
S DIR("?")="Enter desired status that you would like to have listed on the report"
S DIR("?",1)="CHOOSE FROM: "
S DIR("?",2)=" A FOR ALL",DIR("?",3)=" D FOR UNDICTATED",DIR("?",4)=" T FOR NOT TRANSCRIBED",DIR("?",5)=" S FOR UNSIGNED",DIR("?",6)=" R FOR NOT REVIEWED" D ^DIR
I $D(DTOUT)!$D(DUOUT) Q
I Y="A" S DGJTSTAT="^"_$O(^DG(393.2,"B","INCOMPLETE",0))_"^"_$O(^DG(393.2,"B","DICTATED",0))_"^"_$O(^DG(393.2,"B","TRANSCRIBED",0))_"^"_$O(^DG(393.2,"B","SIGNED",0))_"^" Q
S DGJTSTAT="^"
D SET
S $P(DIR(0),"^",1)=$P(DIR(0),"^",1)_"O",$P(DIR(0),"^",2)=$E($P(DIR(0),"^",2),7,999) K DIR("B")
F I=2:1:6 S DIR("?",I)=$S($D(DIR("?",I+1)):DIR("?",I+1),1:"")
S DIR("A")="Select another STATUS: "
ASK D ^DIR I $D(DUOUT)!$D(DTOUT) Q
I X]"" D SET G ASK
Q
SET S X=$S(Y="D":"INCOMPLETE",Y="T":"DICTATED",Y="S":"TRANSCRIBED",Y="R":"SIGNED",Y="C":"r",1:"INCOMPLETE")
S X=$O(^DG(393.2,"B",X,0))
S DGJTSTAT=DGJTSTAT_X_"^"
Q
CK S X=Y Q
DGJOPRT ;ALB/MAF - SORT/PRINT IRT ; JAN 28,1991@900
+1 ;;5.3;Registration;**1015**;Aug 13, 1993;Build 21
EN SET DGJTDIR=1
SET DGJTSTAT="^"_$ORDER(^DG(393.2,"B","INCOMPLETE",0))_"^"
GOTO OUT
EN1 SET (DGJTDIR,DGJTCK)=2
OUT SET (DGJFL,DGJTMESS)=0
WRITE !!,"Sort output by: PATIENT// "
DO ZSET1
SET X=""
READ X:DTIME
IF X="^"!('$TEST)
GOTO QUIT
IF X=""!("Pp"[X)
SET X="2"
+1 SET X=$SELECT("Ee"[X:1,"Dd"[X:3,"Ss"[X:4,1:X)
+2 IF X="?"
DO ZSET1
DO HELP1
GOTO OUT
+3 SET DGJTSR=$EXTRACT(X)
DO IN^DGHELP
WRITE !
IF %=-1
DO ZSET1
DO HELP1
GOTO OUT
OUT1 SET DGJFL=0
WRITE !!,"Print report for: (I)Inpatients, (O)Outpatients, (B)Both// "
DO ZSET2
SET X=""
READ X:DTIME
IF X="^"!('$TEST)
GOTO QUIT
IF X=""!("Bb"[X)
SET X=3
+1 SET X=$SELECT("Ii"[X:1,"Oo"[X:2,1:X)
+2 IF X="?"
DO ZSET2
DO HELP2
GOTO OUT1
+3 SET DGJTSR1=$EXTRACT(X)
DO IN^DGHELP
WRITE !
IF %=-1
DO ZSET2
DO HELP2
GOTO OUT1
+4 IF $DATA(^DG(43,1,"GL"))
SET DGJTMUL=$PIECE(^DG(43,1,"GL"),"^",2)
+5 IF DGJTDIR=2
DO SEL
IF $DATA(DUOUT)!$DATA(DTOUT)
GOTO QUIT
+6 SET DGJTL=$SELECT(DGJTSR=1:"DAT",DGJTSR=2:"PAT",DGJTSR=3:"PHY",DGJTSR=4:"SER",1:"QUIT")
+7 GOTO ^DGJOPRT1
QUIT KILL %,BY,DHD,DIC,DIOEND,DIS,DIR,DTOUT,DUOUT,FR,FLDS,K,L,TO,DGJTCK,DGJTDIR,DGJTL,DGJTMESS,DGJTMUL,DGJTSR,DGJTSTAT,DGJTUN,VAUTN,VAUTY,DGJFL,DGJTSR1,DGJ(0),X,Y,Z
QUIT
HELP1 WRITE !!,"Choose a number or first initial :"
FOR K=2:1:5
WRITE !?15,$PIECE(Z,"^",K)
+1 WRITE !
QUIT
HELP2 WRITE !!,"Choose a number or first initial:"
FOR K=2:1:4
WRITE !?15,$PIECE(Z,"^",K)
+1 WRITE !
QUIT
ZSET1 SET Z="^1 EVENT DATE^2 PATIENT^3 DOCTOR^4 SERVICE/TREATING SPECIALTY^"
QUIT
ZSET2 SET Z="^1 INPATIENTS ONLY^2 OUTPATIENTS ONLY^3 BOTH INPATIENT and OUTPATIENTS^"
QUIT
SEL SET DIR("A")="Select INCOMPLETE RECORD STATUS: "
SET DIR(0)="SA^A:ALL;D:UNDICTATED;T:NOT TRANSCRIBED;S:UNSIGNED;R:NOT REVIEWED"
SET DIR("B")="ALL"
+1 SET DIR("?")="Enter desired status that you would like to have listed on the report"
+2 SET DIR("?",1)="CHOOSE FROM: "
+3 SET DIR("?",2)=" A FOR ALL"
SET DIR("?",3)=" D FOR UNDICTATED"
SET DIR("?",4)=" T FOR NOT TRANSCRIBED"
SET DIR("?",5)=" S FOR UNSIGNED"
SET DIR("?",6)=" R FOR NOT REVIEWED"
DO ^DIR
+4 IF $DATA(DTOUT)!$DATA(DUOUT)
QUIT
+5 IF Y="A"
SET DGJTSTAT="^"_$ORDER(^DG(393.2,"B","INCOMPLETE",0))_"^"_$ORDER(^DG(393.2,"B","DICTATED",0))_"^"_$ORDER(^DG(393.2,"B","TRANSCRIBED",0))_"^"_$ORDER(^DG(393.2,"B","SIGNED",0))_"^"
QUIT
+6 SET DGJTSTAT="^"
+7 DO SET
+8 SET $PIECE(DIR(0),"^",1)=$PIECE(DIR(0),"^",1)_"O"
SET $PIECE(DIR(0),"^",2)=$EXTRACT($PIECE(DIR(0),"^",2),7,999)
KILL DIR("B")
+9 FOR I=2:1:6
SET DIR("?",I)=$SELECT($DATA(DIR("?",I+1)):DIR("?",I+1),1:"")
+10 SET DIR("A")="Select another STATUS: "
ASK DO ^DIR
IF $DATA(DUOUT)!$DATA(DTOUT)
QUIT
+1 IF X]""
DO SET
GOTO ASK
+2 QUIT
SET SET X=$SELECT(Y="D":"INCOMPLETE",Y="T":"DICTATED",Y="S":"TRANSCRIBED",Y="R":"SIGNED",Y="C":"r",1:"INCOMPLETE")
+1 SET X=$ORDER(^DG(393.2,"B",X,0))
+2 SET DGJTSTAT=DGJTSTAT_X_"^"
+3 QUIT
CK SET X=Y
QUIT