- DGPMTSO2 ;ALB/LM - TREATING SPECIALTY INPATIENT LISTING BY TS ;2-2-93
- ;;5.3;Registration;**1015**;Aug 13, 1993;Build 21
- ;
- START Q:'PTLTS
- S REPORT="< < PATIENT LISTING BY TREATING SPECIALTY > >"
- S (PAGE,TOTAL)=0
- D HEAD^DGPMTSO
- D SUBHEAD
- ;
- DIV S DIV="" F DIV1=0:0 S DIV=$O(^TMP($J,"PTLTS",DIV)) Q:DIV="" D:$Y+8>IOSL HEAD^DGPMTSO,SUBHEAD Q:END W !?5,"DIVISION: ",$S($D(^DG(40.8,DIV,0)):$P(^(0),"^"),1:"EMPTY") D TREAT Q:END S SUBCOUNT=^TMP($J,"PTLTS",DIV) D TOTAL Q:END
- ;
- G:END END
- D:$Y+8>IOSL HEAD^DGPMTSO,SUBHEAD Q:END
- F L=1:1:(IOM-3) W "-"
- W !!?3,"TOTAL = ",$J($P(TOTAL,"^",1),4),?25,"PASS = ",$J($P(TOTAL,"^",2),4),?45,"AA = ",$J($P(TOTAL,"^",3),4),?65,"UA = ",$J($P(TOTAL,"^",4),4),?85,"ASIH = ",$J($P(TOTAL,"^",5),4),?105,"PTS REMAINING = ",$J($P(TOTAL,"^",6),4)
- S PTLTS=0
- ;
- END K ADMDT,DGTS,DGTS1,DIV,DIV1,ID,IFN,L,PAGE,PTNM,PTNM1,REPORT,SUBCOUNT,TOTAL,TREAT,TREAT1,TSXFR,WARD,PTLTS,SUBNAME
- Q
- ;
- TREAT S TREAT="" F TREAT1=0:0 S TREAT=$O(^TMP($J,"PTLTS",DIV,TREAT)) Q:TREAT="" Q:END D DGTS
- Q
- ;
- DGTS S DGTS="" F DGTS1=0:0 S DGTS=$O(^TMP($J,"PTLTS",DIV,TREAT,DGTS)) Q:DGTS="" D:$Y+8>IOSL HEAD^DGPMTSO,SUBHEAD Q:END W !!?10,"FACILITY TREATING SPECIALTY: ",TREAT D PTNM Q:END S SUBCOUNT=^TMP($J,"PTLTS",DIV,TREAT,DGTS) S SUBNAME="TS" D SUB
- Q
- ;
- PTNM S PTNM="" F PTNM1=0:0 S PTNM=$O(^TMP($J,"PTLTS",DIV,TREAT,DGTS,PTNM)) Q:PTNM="" F IFN=0:0 S IFN=$O(^TMP($J,"PTLTS",DIV,TREAT,DGTS,PTNM,IFN)) Q:'IFN D INFO Q:END
- Q
- ;
- INFO S WARD=$P(^TMP($J,"PTLTS",DIV,TREAT,DGTS,PTNM,IFN),"^")
- S ADMDT=$P(^TMP($J,"PTLTS",DIV,TREAT,DGTS,PTNM,IFN),"^",2)
- S TSXFR=$P(^TMP($J,"PTLTS",DIV,TREAT,DGTS,PTNM,IFN),"^",3)
- S ABSENCE=$P(^TMP($J,"PTLTS",DIV,TREAT,DGTS,PTNM,IFN),"^",4)
- S ID=$S($D(^DPT(IFN,.36)):$P(^DPT(IFN,.36),"^",3),1:"")
- ;
- I $Y+8>IOSL D HEAD^DGPMTSO,SUBHEAD Q:END
- LINE W !,PTNM,?30,ID,?45,ADMDT,?65,WARD,?100,TSXFR,?120,ABSENCE
- Q
- ;
- TOTAL S $P(TOTAL,"^",1)=$P(TOTAL,"^",1)+$P(SUBCOUNT,"^",1) ; current patients
- S $P(TOTAL,"^",2)=$P(TOTAL,"^",2)+$P(SUBCOUNT,"^",2) ; pass
- S $P(TOTAL,"^",3)=$P(TOTAL,"^",3)+$P(SUBCOUNT,"^",3) ; aa
- S $P(TOTAL,"^",4)=$P(TOTAL,"^",4)+$P(SUBCOUNT,"^",4) ; ua
- S $P(TOTAL,"^",5)=$P(TOTAL,"^",5)+$P(SUBCOUNT,"^",5) ; asih
- S $P(TOTAL,"^",6)=$P(TOTAL,"^")-$P(TOTAL,"^",3)-$P(TOTAL,"^",4)-$P(TOTAL,"^",5) ; Current patient minus absences except Pass equals patient's remaining.
- ;
- S SUBNAME="DIVISION"
- ;
- SUB D:$Y+6>IOSL HEAD^DGPMTSO Q:END
- ;
- S $P(SUBCOUNT,"^",6)=$P(SUBCOUNT,"^")-$P(SUBCOUNT,"^",3)-$P(SUBCOUNT,"^",4)-$P(SUBCOUNT,"^",5) ; Current patient minus absences except Pass equals patient's remaining.
- W !
- F L=1:1:(IOM-3) W "-"
- W !,SUBNAME,!
- W "SUBCOUNT = ",$J($P(SUBCOUNT,"^",1),4),?25,"PASS = ",$J($P(SUBCOUNT,"^",2),4),?45,"AA = ",$J($P(SUBCOUNT,"^",3),4),?65,"UA = ",$J($P(SUBCOUNT,"^",4),4),?85,"ASIH = ",$J($P(SUBCOUNT,"^",5),4)
- W ?105,"PTS REMAINING = ",$J($P(SUBCOUNT,"^",6),4),!
- Q
- ;
- SUBHEAD ;
- Q:END
- W !!,"PATIENT",?30,"PT'S ID",?45,"ADMISSION DATE",?65,"INPATIENT WARD",?100,"LAST TS SERVICE",?120,"ABSENCE",!
- F L=1:1:(IOM-3) W "-"
- W !
- Q
- DGPMTSO2 ;ALB/LM - TREATING SPECIALTY INPATIENT LISTING BY TS ;2-2-93
- +1 ;;5.3;Registration;**1015**;Aug 13, 1993;Build 21
- +2 ;
- START IF 'PTLTS
- QUIT
- +1 SET REPORT="< < PATIENT LISTING BY TREATING SPECIALTY > >"
- +2 SET (PAGE,TOTAL)=0
- +3 DO HEAD^DGPMTSO
- +4 DO SUBHEAD
- +5 ;
- DIV SET DIV=""
- FOR DIV1=0:0
- SET DIV=$ORDER(^TMP($JOB,"PTLTS",DIV))
- IF DIV=""
- QUIT
- IF $Y+8>IOSL
- DO HEAD^DGPMTSO
- DO SUBHEAD
- IF END
- QUIT
- WRITE !?5,"DIVISION: ",$SELECT($DATA(^DG(40.8,DIV,0)):$PIECE(^(0),"^"),1:"EMPTY")
- DO TREAT
- IF END
- QUIT
- SET SUBCOUNT=^TMP($JOB,"PTLTS",DIV)
- DO TOTAL
- IF END
- QUIT
- +1 ;
- +2 IF END
- GOTO END
- +3 IF $Y+8>IOSL
- DO HEAD^DGPMTSO
- DO SUBHEAD
- IF END
- QUIT
- +4 FOR L=1:1:(IOM-3)
- WRITE "-"
- +5 WRITE !!?3,"TOTAL = ",$JUSTIFY($PIECE(TOTAL,"^",1),4),?25,"PASS = ",$JUSTIFY($PIECE(TOTAL,"^",2),4),?45,"AA = ",...
- ... $JUSTIFY($PIECE(TOTAL,"^",3),4),?65,"UA = ",$JUSTIFY($PIECE(TOTAL,"^",4),4),?85,"ASIH = ",$JUSTIFY($PIECE(TOTAL,"^",5),4),?105,"PTS REMAINING = ",$JUSTIFY($PIECE(TOTAL,"^",6),4)
- +6 SET PTLTS=0
- +7 ;
- END KILL ADMDT,DGTS,DGTS1,DIV,DIV1,ID,IFN,L,PAGE,PTNM,PTNM1,REPORT,SUBCOUNT,TOTAL,TREAT,TREAT1,TSXFR,WARD,PTLTS,SUBNAME
- +1 QUIT
- +2 ;
- TREAT SET TREAT=""
- FOR TREAT1=0:0
- SET TREAT=$ORDER(^TMP($JOB,"PTLTS",DIV,TREAT))
- IF TREAT=""
- QUIT
- IF END
- QUIT
- DO DGTS
- +1 QUIT
- +2 ;
- DGTS SET DGTS=""
- FOR DGTS1=0:0
- SET DGTS=$ORDER(^TMP($JOB,"PTLTS",DIV,TREAT,DGTS))
- IF DGTS=""
- QUIT
- IF $Y+8>IOSL
- DO HEAD^DGPMTSO
- DO SUBHEAD
- IF END
- QUIT
- WRITE !!?10,"FACILITY TREATING SPECIALTY: ",TREAT
- DO PTNM
- IF END
- QUIT
- SET SUBCOUNT=^TMP($JOB,"PTLTS",DIV,TREAT,DGTS)
- SET SUBNAME="TS"
- DO SUB
- +1 QUIT
- +2 ;
- PTNM SET PTNM=""
- FOR PTNM1=0:0
- SET PTNM=$ORDER(^TMP($JOB,"PTLTS",DIV,TREAT,DGTS,PTNM))
- IF PTNM=""
- QUIT
- FOR IFN=0:0
- SET IFN=$ORDER(^TMP($JOB,"PTLTS",DIV,TREAT,DGTS,PTNM,IFN))
- IF 'IFN
- QUIT
- DO INFO
- IF END
- QUIT
- +1 QUIT
- +2 ;
- INFO SET WARD=$PIECE(^TMP($JOB,"PTLTS",DIV,TREAT,DGTS,PTNM,IFN),"^")
- +1 SET ADMDT=$PIECE(^TMP($JOB,"PTLTS",DIV,TREAT,DGTS,PTNM,IFN),"^",2)
- +2 SET TSXFR=$PIECE(^TMP($JOB,"PTLTS",DIV,TREAT,DGTS,PTNM,IFN),"^",3)
- +3 SET ABSENCE=$PIECE(^TMP($JOB,"PTLTS",DIV,TREAT,DGTS,PTNM,IFN),"^",4)
- +4 SET ID=$SELECT($DATA(^DPT(IFN,.36)):$PIECE(^DPT(IFN,.36),"^",3),1:"")
- +5 ;
- +6 IF $Y+8>IOSL
- DO HEAD^DGPMTSO
- DO SUBHEAD
- IF END
- QUIT
- LINE WRITE !,PTNM,?30,ID,?45,ADMDT,?65,WARD,?100,TSXFR,?120,ABSENCE
- +1 QUIT
- +2 ;
- TOTAL ; current patients
- SET $PIECE(TOTAL,"^",1)=$PIECE(TOTAL,"^",1)+$PIECE(SUBCOUNT,"^",1)
- +1 ; pass
- SET $PIECE(TOTAL,"^",2)=$PIECE(TOTAL,"^",2)+$PIECE(SUBCOUNT,"^",2)
- +2 ; aa
- SET $PIECE(TOTAL,"^",3)=$PIECE(TOTAL,"^",3)+$PIECE(SUBCOUNT,"^",3)
- +3 ; ua
- SET $PIECE(TOTAL,"^",4)=$PIECE(TOTAL,"^",4)+$PIECE(SUBCOUNT,"^",4)
- +4 ; asih
- SET $PIECE(TOTAL,"^",5)=$PIECE(TOTAL,"^",5)+$PIECE(SUBCOUNT,"^",5)
- +5 ; Current patient minus absences except Pass equals patient's remaining.
- SET $PIECE(TOTAL,"^",6)=$PIECE(TOTAL,"^")-$PIECE(TOTAL,"^",3)-$PIECE(TOTAL,"^",4)-$PIECE(TOTAL,"^",5)
- +6 ;
- +7 SET SUBNAME="DIVISION"
- +8 ;
- SUB IF $Y+6>IOSL
- DO HEAD^DGPMTSO
- IF END
- QUIT
- +1 ;
- +2 ; Current patient minus absences except Pass equals patient's remaining.
- SET $PIECE(SUBCOUNT,"^",6)=$PIECE(SUBCOUNT,"^")-$PIECE(SUBCOUNT,"^",3)-$PIECE(SUBCOUNT,"^",4)-$PIECE(SUBCOUNT,"^",5)
- +3 WRITE !
- +4 FOR L=1:1:(IOM-3)
- WRITE "-"
- +5 WRITE !,SUBNAME,!
- +6 WRITE "SUBCOUNT = ",$JUSTIFY($PIECE(SUBCOUNT,"^",1),4),?25,"PASS = ",$JUSTIFY($PIECE(SUBCOUNT,"^",2),4),?45,"AA = ",$JUSTIFY($PIECE(SUBCOUNT,"^",3),4),?65,"UA = ",$JUSTIFY($PIECE(SUBCOUNT,"^",4),4),?85,"ASIH = ",$JUSTIFY($PIECE(SUBCOUN
- T,"^",5),4)
- +7 WRITE ?105,"PTS REMAINING = ",$JUSTIFY($PIECE(SUBCOUNT,"^",6),4),!
- +8 QUIT
- +9 ;
- SUBHEAD ;
- +1 IF END
- QUIT
- +2 WRITE !!,"PATIENT",?30,"PT'S ID",?45,"ADMISSION DATE",?65,"INPATIENT WARD",?100,"LAST TS SERVICE",?120,"ABSENCE",!
- +3 FOR L=1:1:(IOM-3)
- WRITE "-"
- +4 WRITE !
- +5 QUIT