58 lines
1.7 KiB
Mathematica
58 lines
1.7 KiB
Mathematica
|
LRLABXOL ;RVAMC/PLS/DALISC/FHS - REPRINT ACCESSION LABELS FOR ENTIRE ORDER ; 5/19/93 07:40
|
||
|
;;5.2;LAB SERVICE;**11,121,161**;Sep 27, 1994
|
||
|
; Will print all the required labels for a entire order.
|
||
|
EN K ZTSK
|
||
|
D IOCHK^LRLABXT G END:'$D(LRLABLIO)
|
||
|
D PSET^LRLABLD
|
||
|
S LRHDR="Select Order Number: "
|
||
|
1 U IO(0)
|
||
|
W !!,LRHDR R LRORD:DTIME G:'$T END G:(LRORD="")!(LRORD="^") END I LRORD?.AP!(LRORD<1) W !,"Enter a whole number for the order number." G 1
|
||
|
S LRORD=+LRORD
|
||
|
S LRODT=$O(^LRO(69,"C",LRORD,0))
|
||
|
I +LRODT<1 W " ORDER NUMBER NOT FOUND" G 1
|
||
|
I '$$GOT^LROE(LRORD,LRODT) W !!,"All tests for this order have been canceled." H 1 G 1
|
||
|
I $D(LRLABLIO("Q")) D G END
|
||
|
. S ZTIO=LRLABLIO,ZTRTN="QUE^LRLABXOL",ZTDESC="LAB ORDER LABELS",ZTSAVE("LR*")=""
|
||
|
. D ^%ZTLOAD
|
||
|
. W !,"Labels have been tasked to print ",!
|
||
|
D QUE
|
||
|
K LRORD
|
||
|
U IO(0) W !?10,"Label(s) Printed",! S LRHDR="Another Order Number: "
|
||
|
G 1
|
||
|
;
|
||
|
QUE ;
|
||
|
S LRODT=0
|
||
|
F S LRODT=$O(^LRO(69,"C",LRORD,LRODT)) Q:LRODT<1 D 2,PRINT
|
||
|
I $D(ZTQUEUED) S ZTREQ="@"
|
||
|
Q
|
||
|
;
|
||
|
2 ;
|
||
|
S LRSN=0
|
||
|
F S LRSN=+$O(^LRO(69,"C",LRORD,LRODT,LRSN)) Q:LRSN<1 D SQ
|
||
|
Q
|
||
|
;
|
||
|
SQ ; Search for accession numbers and build LRORD array 'ORD #(SEQ #,ACC AREA,ACC DATE, ACC #)=""'
|
||
|
Q:'$D(^LRO(69,LRODT,1,LRSN,2,0))
|
||
|
S SEQ=0
|
||
|
F S SEQ=+$O(^LRO(69,LRODT,1,LRSN,2,SEQ)) Q:SEQ<1 D
|
||
|
. S X=$G(^LRO(69,LRODT,1,LRSN,2,SEQ,0)),LRAD=$P(X,U,3),LRAA=$P(X,U,4),LRAN=$P(X,U,5)
|
||
|
. I LRAA,LRAD,LRAN S LRORD(LRSN,LRAA,LRAD,LRAN)=""
|
||
|
Q
|
||
|
;
|
||
|
PRINT ; Loop thru array and print labels.
|
||
|
U IO
|
||
|
S LRAA=""
|
||
|
F S LRX=$Q(LRORD) Q:LRX="" Q:$QS(LRX,0)'="LRORD" D
|
||
|
. S LRSN=$QS(LRX,1)
|
||
|
. I LRAA'=$QS(LRX,2) S LRAA=$QS(LRX,2) D LBLTYP^LRLABLD
|
||
|
. S LRAD=$QS(LRX,3),LRAN=$QS(LRX,4)
|
||
|
. K LRORD(LRSN,LRAA,LRAD,LRAN)
|
||
|
. N LRORD,LRX
|
||
|
. D PRINT^LRLABXT
|
||
|
Q
|
||
|
;
|
||
|
END ;
|
||
|
K LRHDR,LRORD,SEQ,ZTSK
|
||
|
D K^LRLABXT
|
||
|
Q
|