| 1 | LRCAPD2 ;DALISC/FHS - WORKLOAD CODE LIST REPORT ; 12/3/1997 | 
|---|
| 2 | ;;5.2;LAB SERVICE;**153,201,351**;Sep 27, 1994 | 
|---|
| 3 | EN ; | 
|---|
| 4 | W !!?5,"Produce a list of WKLD Code by Lab Section" | 
|---|
| 5 | K DIR,ZTSAVE,DX | 
|---|
| 6 | S DIR(0)="S^0:All;1:Billable Only",DIR("A")="Select WKLD CODE type to Print ",DIR("B")="Billable" D RDIR G:$G(LREND) CLEAN | 
|---|
| 7 | S LRBIL=Y,ZTSAVE("LRBIL")="" | 
|---|
| 8 | S DIR(0)="S^1:WORKLOAD LAB SECTION;2:LOCAL ACC AREA" | 
|---|
| 9 | S DIR("A")="Sort WKLD CODES By " D RDIR G:$G(LREND) CLEAN | 
|---|
| 10 | S LRSEC=Y,ZTSAVE("LRSEC")="" D | 
|---|
| 11 | . I Y=2 D  Q:$G(LREND)  S LRAA=Y,ZTSAVE("LRAA")="" Q | 
|---|
| 12 | . . S DIR(0)="P^68:QEZM",DIR("A")="Select Local Accession Area" | 
|---|
| 13 | . . D RDIR | 
|---|
| 14 | . I Y=1 D  Q:$G(LREND)  S LRSECT=Y,ZTSAVE("LRSECT")="" | 
|---|
| 15 | . . S DIR(0)="P^64.21:QEZM",DIR("A")="Select WKLD CODE LAB SECTION " | 
|---|
| 16 | . . D RDIR | 
|---|
| 17 | G:$G(LREND) CLEAN | 
|---|
| 18 | S DIR(0)="S^1:Actived Codes Only;0:All WKLD Codes" | 
|---|
| 19 | S DIR("A")="Print Activated(reported) or All Codes" D RDIR | 
|---|
| 20 | G:$G(LREND) CLEAN | 
|---|
| 21 | S LRACT=Y,ZTSAVE("LRACT")="" | 
|---|
| 22 | S DIR(0)="S^1:WKLD Name;2:NLT Code Number" | 
|---|
| 23 | S DIR("A")="Print report sorted by " | 
|---|
| 24 | D RDIR G:$G(LREND) CLEAN | 
|---|
| 25 | S LRSORT=Y,ZTSAVE("LRSORT")="" | 
|---|
| 26 | ;Q | 
|---|
| 27 | K %ZIS S %ZIS="QN",%ZIS("A")="Printer Name " D ^%ZIS G:POP CLEAN | 
|---|
| 28 | I IO'=IO(0)!($D(IO("Q"))) D   D ^%ZTLOAD,^%ZISC G CLEAN | 
|---|
| 29 | . | 
|---|
| 30 | . S ZTRTN="DQ^LRCAPD2",ZTIO=ION,ZTDESC="PRINT WKLD CODES FROM ^LAB(60 " W !!?10,"Report Queued to "_ION,! | 
|---|
| 31 | G DQ | 
|---|
| 32 | RDIR ; | 
|---|
| 33 | S LREND=0 D ^DIR | 
|---|
| 34 | S LREND=$S($D(DIRUT):1,$D(DUOUT):1,$D(DIRUT):1,$E(Y)="^":1,1:0) | 
|---|
| 35 | K DIR | 
|---|
| 36 | Q | 
|---|
| 37 | DQ ; | 
|---|
| 38 | I $D(ZTQUEUED) S ZTREQ="@" K LRDBUG | 
|---|
| 39 | K ^TMP("LR",$J) | 
|---|
| 40 | S (LRTS,LREND,LRPAG)=0,$P(LRLINE,"_",(IOM+1))="" | 
|---|
| 41 | S LRPDT=$TR($$FMTE^XLFDT($$NOW^XLFDT,"1M"),"@"," ") | 
|---|
| 42 | ;test list | 
|---|
| 43 | W:$E(IOST,1,2)="C-" @IOF | 
|---|
| 44 | S LRTSN=0 | 
|---|
| 45 | SCR F  S LRTSN=$O(^LAM(LRTSN)) Q:LRTSN<1  I $D(^(LRTSN,0))#2 S LRX=^(0) D | 
|---|
| 46 | . I $G(LRBIL),'$P(LRX,U,5) Q | 
|---|
| 47 | . I $G(LRSECT),$P(LRX,U,15)'=+LRSECT Q | 
|---|
| 48 | . I $G(LRACT),'$P(LRX,U,17) Q | 
|---|
| 49 | . I $G(LRAA),+$G(^(6))'=LRAA Q | 
|---|
| 50 | . I LRSORT=1 S ^TMP("LR",$J,$P(LRX,U),$P(LRX,U,2))=LRTSN | 
|---|
| 51 | . I LRSORT=2 S ^TMP("LR",$J,$P(LRX,U,2),$P(LRX,U))=LRTSN | 
|---|
| 52 | PRT K DIR,DR,DA,DX,LREND,ZTSAVE | 
|---|
| 53 | S LRGLB="",LRGLB=$O(^TMP("LR",$J,LRGLB)) I LRGLB="" D  G CLEAN | 
|---|
| 54 | . W !?10,"No WKLD CODES matched your Screening Criteria",!! | 
|---|
| 55 | S LRHEAD0=LRPDT_"   NLT Codes Listed by "_$S(LRSORT=1:"Name ",1:"Code Numbers ")_"     Page " | 
|---|
| 56 | S LRHEAD=" Sorted by " D | 
|---|
| 57 | . I $G(LRBIL) S LRHEAD=LRHEAD_"Billable Codes " | 
|---|
| 58 | . I $G(LRSECT) S LRHEAD=LRHEAD_"By { "_$P(^LAB(64.21,+LRSECT,0),U)_" } WKLD SECTION " | 
|---|
| 59 | . I $G(LRACT) S LRHEAD2="Active NLT Codes Only " | 
|---|
| 60 | . I '$G(LRACT) S LRHEAD2="Not sorted by Active Codes" | 
|---|
| 61 | . I $G(LRAA) S LRHEAD3=$G(LRHEAD2)_"Accession Area "_$P(^LRO(68,+$G(LRAA),0),U)_" " | 
|---|
| 62 | D HEAD S LRGLB="^TMP(""LR"","_$J_")",DIC="^LAM(",DR="0:99",S=1 | 
|---|
| 63 | F  S LRGLB=$Q(@LRGLB) Q:$QS(LRGLB,1)'="LR"!($QS(LRGLB,2)'=$J)!($G(LREND))  D | 
|---|
| 64 | . K DA S DA=@LRGLB | 
|---|
| 65 | . I $Y>(IOSL-7) D PAUSE Q:$G(LREND) | 
|---|
| 66 | . S S=$Y D EN^LRDIQ S:$D(DIRUT) LREND=1 | 
|---|
| 67 | G CLEAN | 
|---|
| 68 | Q | 
|---|
| 69 | HEAD ; | 
|---|
| 70 | S LRPAG=$G(LRPAG)+1 | 
|---|
| 71 | W $$CJ^XLFSTR(LRHEAD0_LRPAG,IOM) | 
|---|
| 72 | W $$CJ^XLFSTR(LRHEAD,IOM) | 
|---|
| 73 | I $D(LRHEAD2) W $$CJ^XLFSTR(LRHEAD2,IOM) | 
|---|
| 74 | I $D(LRHEAD3) W $$CJ^XLFSTR(LRHEAD3,IOM) | 
|---|
| 75 | Q | 
|---|
| 76 | PAUSE ; | 
|---|
| 77 | I $E(IOST)="P" W @IOF D HEAD Q | 
|---|
| 78 | Q:$E(IOST,1,2)'="C-" | 
|---|
| 79 | K DIR,X,Y S DIR(0)="E" D RDIR Q:$G(LREND) | 
|---|
| 80 | W @IOF D HEAD | 
|---|
| 81 | Q | 
|---|
| 82 | CLEAN I $D(ZTQUEUED) S ZTREQ="@" | 
|---|
| 83 | Q:$G(LRDBUG) | 
|---|
| 84 | W !! W:$E(IOST,1,2)="P-" @IOF | 
|---|
| 85 | D ^%ZISC | 
|---|
| 86 | K LRHEAD,LRHEAD2,LRHEAD3,LRPDT,LRSEC,LRSECT,LRSORT,LRAA,LRACT,LRBIL | 
|---|
| 87 | K %ZIS,DA,DIC,DR,LRI,LRLINE,LRHED,LRI,LRJ,LRK,LRTS,LRTSN,LRX,NAME,NAME1 | 
|---|
| 88 | K %,LRCC,LREND,X,Y,ZTSK,DTOUT,DUOUT,DIRUT,LRPAG,DIR | 
|---|
| 89 | K ^TMP("LR",$J),ZTSAVE,LRGLB,S,DX | 
|---|
| 90 | Q | 
|---|