| 1 | SRSWL6 ;B'HAM ISC/MAM - WAITING LIST, BRIEF-ALL ; 17 OCT 1989  7:35 AM | 
|---|
| 2 | ;;3.0; Surgery ;**34**;24 Jun 93 | 
|---|
| 3 | ; Sort by Surgical Specialty then by Patient | 
|---|
| 4 | W ! K %ZIS,POP,IOP,IO("Q") S %ZIS("A")="Print the Waiting List on which Device: ",%ZIS="Q" D ^%ZIS Q:POP | 
|---|
| 5 | ; | 
|---|
| 6 | I $D(IO("Q")) K IO("Q") S ZTDESC="SURGERY WAITING LIST",ZTRTN="BEG^SRSWL6" D ^%ZTLOAD G END | 
|---|
| 7 | BEG ; entry when queued | 
|---|
| 8 | K ^TMP("SR",$J) | 
|---|
| 9 | U IO S (SRSOUT,SRHDR)=0 D NOW^%DTC S Y=% D D^DIQ S SRTIME=$E(Y,1,12)_" at "_$E(Y,14,18) | 
|---|
| 10 | ; | 
|---|
| 11 | ; | 
|---|
| 12 | S SS="",ST="",SR="",SRW="",SRNAME="",SRRECNO="",SRSUB="",DFN="",SRSDPT="",SRSNM="",NAME="",STNAME="" | 
|---|
| 13 | ; | 
|---|
| 14 | F  S SRW=$O(^SRO(133.8,"AP",SRW)) Q:SRW=""  F  S SRRECNO=$O(^SRO(133.8,"AP",SRW,SRRECNO)) Q:SRRECNO=""  F  S SRSUB=$O(^SRO(133.8,"AP",SRW,SRRECNO,SRSUB)) Q:SRSUB=""  D MORE | 
|---|
| 15 | ; | 
|---|
| 16 | F  S NAME=$O(^TMP("SR",$J,NAME)) Q:NAME=""!(SRSOUT)  F  S SS=$O(^TMP("SR",$J,NAME,SS)) Q:SS=""!(SRSOUT)  F  S SR=$O(^TMP("SR",$J,NAME,SS,SR)) Q:SR=""!(SRSOUT)  F  S ST=$O(^TMP("SR",$J,NAME,SS,SR,ST)) Q:ST=""!(SRSOUT)  D PRINT | 
|---|
| 17 | END I $E(IOST)="P" S SRSOUT=1 W @IOF | 
|---|
| 18 | I $D(ZTQUEUED) K ^TMP("SR",$J) Q:$G(ZTSTOP)  S ZTREQ="@" Q | 
|---|
| 19 | I 'SRSOUT W !!,"Press RETURN to continue  " R X:DTIME W @IOF | 
|---|
| 20 | D ^%ZISC,^SRSKILL K SRTN | 
|---|
| 21 | Q | 
|---|
| 22 | PRINT ; print information | 
|---|
| 23 | I $Y+5>IOSL!(STNAME'=NAME) S STNAME=NAME D PAGE Q:SRSOUT | 
|---|
| 24 | ; | 
|---|
| 25 | S SRSDPT=SS,SRSS=SR,SROFN=ST | 
|---|
| 26 | ; | 
|---|
| 27 | S SRW=^SRO(133.8,SRSS,1,SROFN,0),DFN=$P(SRW,"^"),SROPER=$P(SRW,"^",2),Y=$P(SRW,"^",3) D D^DIQ S SRDT=$E(Y,1,12) | 
|---|
| 28 | ; | 
|---|
| 29 | S Y=$P(SRW,"^",4) S:Y="" SRADT="" I Y D D^DIQ S SRADT=$E(Y,1,12) | 
|---|
| 30 | ; | 
|---|
| 31 | S (Y,SROPDT)=$P(SRW,"^",5) I Y D D^DIQ S SROPDT=Y | 
|---|
| 32 | ; | 
|---|
| 33 | S SRSDPT=$S($L(SRSDPT)<24:SRSDPT,1:$E(SRSDPT,1,23)) | 
|---|
| 34 | ; | 
|---|
| 35 | K SROP,MM,MMM S:$L(SROPER)<40 SROP(1)=SROPER I $L(SROPER)>39 S SROPER=SROPER_"  " F M=1:1 D LOOP Q:MMM="" | 
|---|
| 36 | ; | 
|---|
| 37 | W !,SRDT,?15,SRSDPT,?40,SROP(1),!,"Tentative Admission: "_SRADT I $D(SROP(2)) W ?40,SROP(2) | 
|---|
| 38 | ; | 
|---|
| 39 | I SROPDT="" S SROPDT="None Specified" | 
|---|
| 40 | W !,"Tentative Date of Operation: "_SROPDT | 
|---|
| 41 | ; | 
|---|
| 42 | S SROLD=0 D OLD^SRSWLST I SROLD W !,"* Procedure performed since entry on list ("_SROLD("DATE")_")" | 
|---|
| 43 | ; | 
|---|
| 44 | W ! F LINE=1:1:80 W "-" | 
|---|
| 45 | Q | 
|---|
| 46 | LOOP ; break operation if greater than 39 characters | 
|---|
| 47 | S SROP(M)="" F LOOP=1:1 S MM=$P(SROPER," "),MMM=$P(SROPER," ",2,200) Q:MMM=""  Q:$L(SROP(M))+$L(MM)'<39  S SROP(M)=SROP(M)_MM_" ",SROPER=MMM | 
|---|
| 48 | Q | 
|---|
| 49 | PAGE ; end of page | 
|---|
| 50 | I 'SRHDR S SRHDR=1 D HDR Q | 
|---|
| 51 | ; | 
|---|
| 52 | I $E(IOST)'="P" W !!,"Press RETURN to continue, or '^' to quit:  " R X:DTIME I '$T!(X["^") S SRSOUT=1 Q | 
|---|
| 53 | D HDR | 
|---|
| 54 | Q | 
|---|
| 55 | ; | 
|---|
| 56 | MORE S DFN=SRW D DEM^VADPT S SRSDPT=VADM(1) S SRSNM=$P(^SRO(133.8,SRRECNO,0),"^"),SRSNM=$P(^SRO(137.45,SRSNM,0),"^") S ^TMP("SR",$J,SRSNM,SRSDPT,SRRECNO,SRSUB)="" | 
|---|
| 57 | Q | 
|---|
| 58 | HDR ; print heading | 
|---|
| 59 | I $D(ZTQUEUED) D ^SROSTOP I SRHALT S SRSOUT=1 Q | 
|---|
| 60 | S SRHDR=1 W:$Y @IOF W !,"Surgery Waiting List for "_NAME,!,"Printed "_SRTIME,!!,"Date Entered",?15,"Patient",?40,"Operative Procedure",! F LINE=1:1:80 W "=" | 
|---|
| 61 | Q | 
|---|