1 | ORPR01 ; slc/dcm/rv - Some day my prints will come ;09/13/06 13:30
|
---|
2 | ;;3.0;ORDER ENTRY/RESULTS REPORTING;**11,69,92,260**;Dec 17, 1997;Build 26
|
---|
3 | LBL ;Print Labels
|
---|
4 | W !,"Print how many labels? 1// "
|
---|
5 | R X:DTIME
|
---|
6 | S:X="" X=1
|
---|
7 | Q:X["^"
|
---|
8 | I X'?1N.N!(X>10!(X<1)) W !,"Enter a number between 1 and 10" G LBL
|
---|
9 | D P2("L",X)
|
---|
10 | Q
|
---|
11 | LBL1(SNUM,ORTIMES) ;
|
---|
12 | ;SNUM=1 to suppress form feed, passed to PRINT^ORPR00
|
---|
13 | ;ORTIMES=# of copies
|
---|
14 | N ORX,OR3,ORPK,ORTCNT,ORPKG
|
---|
15 | D GET(ORIFN),R1(3,$G(ORTIMES))
|
---|
16 | Q
|
---|
17 | CHT ;Print Chart copies
|
---|
18 | I '$L(ORL) N OR4 S OR4="" D LOC^ORUTL I +$G(OREND) S OREND="" Q
|
---|
19 | D P2("C")
|
---|
20 | Q
|
---|
21 | WRK ;Print Work copies
|
---|
22 | I '$L(ORL) N OR4 S OR4="" D LOC^ORUTL I +$G(OREND) S OREND="" Q
|
---|
23 | D P2("W")
|
---|
24 | Q
|
---|
25 | SRV ;Print Service copies
|
---|
26 | D P2("S")
|
---|
27 | Q
|
---|
28 | REQ ;Print Requisitions
|
---|
29 | D P2("R")
|
---|
30 | Q
|
---|
31 | REQ1(SNUM,ORSCREEN) ;
|
---|
32 | ;SNUM=1 to suppress form feed, passed to PRINT^ORPR00
|
---|
33 | N ORX,OR3,ORPK,ORTCNT,ORPKG
|
---|
34 | D GET(ORIFN),R1(4,,$G(ORSCREEN))
|
---|
35 | Q
|
---|
36 | R1(PIECE,ORTIMES,ORSCREEN) ;
|
---|
37 | ;PIECE=4 for requisitions
|
---|
38 | ;PIECE=3 for labels
|
---|
39 | ;ORTIMES=# of copies
|
---|
40 | ;ORSCREEN=Mumps screen to pass to PRINT^ORPR00
|
---|
41 | N P,ORFMT,ORIGVIEW,ORDLG
|
---|
42 | Q:'$G(PIECE)
|
---|
43 | S P=$P(ORX,"^",14),ORDLG=+$P(ORX,"^",5)
|
---|
44 | I 'P Q
|
---|
45 | S ORIGVIEW=1,ORFMT=$$GET^XPAR("SYS",$S(PIECE=3:"ORPF WARD LABEL FORMAT",PIECE=4:"ORPF WARD REQUISITION FORMAT",1:""),P,"I")
|
---|
46 | I PIECE=4,(P=$O(^DIC(9.4,"B","DIETETICS",0))),(ORDLG'=$O(^ORD(101.41,"B","FHW SPECIAL MEAL",0))) S ORFMT=0
|
---|
47 | I ORFMT<1 W !?2,$C(7),"Cannot print",!?2,$S(PIECE=3:"Labels",PIECE=4:"Requisitions",1:"")_" not set up for orders in the "_$P(^DIC(9.4,P,0),"^")_" package." D READ^ORUTL Q
|
---|
48 | D CPRINT(ORIFN,$G(ORTIMES),$G(ORSCREEN))
|
---|
49 | Q
|
---|
50 | CPRINT(ORIFN,ORTIMES,ORSCREEN) ; Printit
|
---|
51 | N X
|
---|
52 | I +$G(ORFMT)'>0 Q
|
---|
53 | I $G(ORTCNT) D
|
---|
54 | . I $P($G(^ORD(100.23,ORFMT,0)),"^",4) S ORTCNT=ORTCNT\$P(^(0),"^",4)+1 Q
|
---|
55 | . S ORTCNT=ORTCNT\75+1
|
---|
56 | S X=($P(^ORD(100.23,ORFMT,0),"^",2)+$P($G(^OR(100,+ORIFN,2,0)),U,4))
|
---|
57 | I '$G(ORFIRST1),($Y+X+$S($G(ORTCNT)>0:ORTCNT-1,1:0)>(ORIOSL-3)) D Q:+$G(OREND)
|
---|
58 | . I $G(ORFOOT) D FOOT(ORFOOT)
|
---|
59 | . I $G(ORHEAD) D HEAD(ORHEAD)
|
---|
60 | . I '$G(ORHEAD),'$G(ORFOOT) W @ORIOF
|
---|
61 | D PRINT^ORPR00(ORFMT,$S($G(ORTIMES):ORTIMES,1:1),0,$G(SNUM),$G(ORSCREEN))
|
---|
62 | Q
|
---|
63 | HEAD(FMT) ;
|
---|
64 | Q:+$G(OREND)
|
---|
65 | S IOF=ORIOF
|
---|
66 | D PRINT^ORPR00(FMT,1)
|
---|
67 | S IOF="!"
|
---|
68 | Q
|
---|
69 | FOOT(FMT) ; Print Footer
|
---|
70 | Q:+$G(OREND)
|
---|
71 | S:IOF?1"!"."!" $P(IOF,"!",$S(ORIOSL>200:200,ORIOSL-$Y>1:ORIOSL-$Y,1:2))=""
|
---|
72 | D PRINT^ORPR00(FMT,1)
|
---|
73 | I $E(IOST)="C" D
|
---|
74 | . N DIR
|
---|
75 | . S DIR(0)="FO^1:1",DIR("A")="Press RETURN to continue or '^' to exit"
|
---|
76 | . S DIR("?")="Enter '^' to quit present report or '^^' to quit to menu"
|
---|
77 | . D ^DIR
|
---|
78 | . I $S($D(DIROUT):1,$D(DUOUT):1,$D(DTOUT):1,1:0) S OREND=1
|
---|
79 | S IOF=ORIOF
|
---|
80 | Q
|
---|
81 | GET(ORIFN) ;Get stuff
|
---|
82 | N I,ORTX,X
|
---|
83 | S ORX=^OR(100,ORIFN,0),OR3=$G(^(3)),ORPK=$G(^(4)),ORPKG=$P(ORX,"^",14)
|
---|
84 | S ORTCNT=0,I=0
|
---|
85 | D TEXT^ORQ12(.ORTX,ORIFN) F S I=$O(ORTX(I)) Q:I<1 S X=ORTX(I),ORTCNT=ORTCNT+$L(X)
|
---|
86 | Q
|
---|
87 | P2(REPORT,ORTIMES) ;Sort 'n print
|
---|
88 | ;REPORT=type of report (L=labels, R=requisitions, S=service copies,
|
---|
89 | ; C=chart copies, W=work copies)
|
---|
90 | ;ORTIMES=# of copies
|
---|
91 | Q:'$L($G(REPORT))
|
---|
92 | N NQUE
|
---|
93 | S NQUE=$S(REPORT="S":1,1:""),REPORT=$S(REPORT="C":"1^^^^",REPORT="L":"^1^^^",REPORT="R":"^^1^^",REPORT="S":"^^^1^",REPORT="W":"^^^^1",1:"")
|
---|
94 | Q:'$L(REPORT)
|
---|
95 | I '$G(ORNMBR) S ORNMBR=$$ORDERS^ORCHART("jive") I 'ORNMBR S VALMBCK="" Q
|
---|
96 | Q:'$O(^TMP("OR",$J,"CURRENT","IDX",0))
|
---|
97 | N ORAL,ORIFN,ORSEQ,OACTION,ORIDX
|
---|
98 | K ^TMP("OREPRINT",$J)
|
---|
99 | D FULL^VALM1
|
---|
100 | S VALMBCK="R"
|
---|
101 | F ORIDX=1:1:($L(ORNMBR,",")-1) S ORSEQ=$P(ORNMBR,",",ORIDX) Q:+$G(OREND) D
|
---|
102 | . I +ORSEQ>0,$D(^TMP("OR",$J,"CURRENT","IDX",ORSEQ)) S ORIFN=+^TMP("OR",$J,"CURRENT","IDX",ORSEQ),OACTION=$P($P(^(ORSEQ),"^"),";",2),^TMP("OREPRINT",$J,ORIDX)=ORIFN_";"_OACTION
|
---|
103 | I $O(^TMP("OREPRINT",$J,0)) D PRINT^ORPR02(ORVP,"^TMP(""OREPRINT"",$J)",,ORL,REPORT,"1^^^^1^1^1",NQUE,$G(ORTIMES))
|
---|
104 | K ^TMP("OREPRINT",$J)
|
---|
105 | Q
|
---|