1 | RAFLH1 ;HISC/CAH,FPT AISC/MJK,RMO-Print Radiology Exam Labels ;6/12/97 11:44
|
---|
2 | ;;5.0;Radiology/Nuclear Medicine;;Mar 16, 1998
|
---|
3 | Q:'RAEXLBLS I RAFLHFL S RACNI=RAFLHFL G PRT
|
---|
4 | F RACNI=+$P(RAFLHFL,";",2):0 S RACNI=$O(^RADPT(RADFN,"DT",RADTI,"P",RACNI)) Q:RACNI'>0 I $D(^(RACNI,0)) S RAY3=^(0) D PRT
|
---|
5 | Q
|
---|
6 | PRT S RAFMT=RAEXFM,RANUM=RAEXLBLS D PRT^RAFLH Q
|
---|
7 | ;
|
---|
8 | TEST D SET^RAPSET1 I $D(XQUIT) K XQUIT,POP Q
|
---|
9 | S RATEST="",RANUM=1,RAFMT=$S($P(RAMLC,"^",7):$P(RAMLC,"^",7),1:1)
|
---|
10 | S ZTRTN="START^RAFLH1" F RASV="RATEST","RANUM","RAFMT","RAMDIV" S ZTSAVE(RASV)=""
|
---|
11 | D ZIS^RAUTL G Q:RAPOP
|
---|
12 | START U IO S RAK=0
|
---|
13 | F S RAK=$O(^RA(78.7,RAK)) Q:RAK'>0 D SETFLH^RAFLH2(RAK)
|
---|
14 | G Q:'$D(^RA(78.2,RAFMT,0))
|
---|
15 | F RAII=1:1:RANUM W @IOF F RAI=0:0 S RAI=$O(^RA(78.2,RAFMT,"E",RAI)) Q:RAI'>0 D
|
---|
16 | . I $G(^RA(78.2,RAFMT,"E",RAI,0))'["@" D
|
---|
17 | .. X ^RA(78.2,RAFMT,"E",RAI,0)
|
---|
18 | .. Q
|
---|
19 | . E D XECFLH^RAFLH2(RAFMT,RAI)
|
---|
20 | . Q
|
---|
21 | Q ; Quit & kill
|
---|
22 | ; RAOPT("RPTPAT") is defined in the entry action field for options
|
---|
23 | ; in this case RAOPT("RPTPAT") is defined for the option RA RPTPAT.
|
---|
24 | ; RA RPTPAT is allowed to print more than one record. If multiple
|
---|
25 | ; records, this CLOSE^RAUTL will close the device after printing
|
---|
26 | ; only one record. This causes subsequent records to be displayed to
|
---|
27 | ; the HOME device.
|
---|
28 | D:'$D(RAOPT("RPTPAT")) CLOSE^RAUTL S RAK=0
|
---|
29 | F S RAK=$O(^RA(78.7,RAK)) Q:RAK'>0 D KILFLH^RAFLH2(RAK)
|
---|
30 | K %W,%Y1,DUOUT,POP,RAEXFM,RAEXLBLS,RAFLHFL,RAFMT,RAI,RAII,RAK,RAMES,RANUM,RAPOP,RASV,RATEST,RAY0,RAY1,RAY2,RAY3,ZTDESC,ZTDTH,ZTRTN,ZTSAVE,DISYS
|
---|
31 | I $D(ZTQUEUED) K RADFN,RADTI,RAFLH
|
---|
32 | Q
|
---|
33 | ;
|
---|
34 | CMP ;This code compiles flash card formats into code stored in the
|
---|
35 | ;'Compiled Logic' field #100 of file #78.2
|
---|
36 | Q:'$D(^RA(78.2,RAFMT,0)) S RAROW=$S($P(^(0),"^",2):$P(^(0),"^",2),1:6) K ^RA(78.2,RAFMT,"E"),^TMP($J,"RAFORM")
|
---|
37 | F RAI=0:0 S RAI=$O(^RA(78.2,RAFMT,1,RAI)) Q:RAI'>0 I $D(^(RAI,0)) S XX=^(0),^TMP($J,"RAFORM",+$P(XX,"^",2),+$P(XX,"^",3),$P(XX,"^"))=$P(XX,"^",4,5)
|
---|
38 | S RAN=1 F RAI=1:1:RAROW S FL=1 S:'$D(^TMP($J,"RAFORM",RAI)) ^RA(78.2,RAFMT,"E",RAN,0)="W !",RAN=RAN+1 I $D(^(RAI)) F COL=0:0 S COL=$O(^TMP($J,"RAFORM",RAI,COL)) Q:COL'>0 S %="",%=$O(^(COL,%)) S J=^(%) D STORE
|
---|
39 | W !!?5,"...format '",$P(^RA(78.2,RAFMT,0),"^"),"' has been compiled."
|
---|
40 | K RA787,RAROW,XX,RAI,RAII,RAIV,RADEF,J,TITL,COL,RAN,^TMP($J,"RAFORM")
|
---|
41 | Q
|
---|
42 | ;
|
---|
43 | STORE S RAIV="DT",RADEF="" S:$D(^RA(78.7,+%,0)) RAIV=^(0),RADEF=$P(RAIV,"^",3),RAIV=$P(RAIV,"^",5)
|
---|
44 | S RA787("E")=$G(^RA(78.7,+%,"E"))
|
---|
45 | S TITL=$S(RAIV="RAFREE":"",$P(J,"^")="NONE":"",$P(J,"^")]"":$P(J,"^"),1:RADEF)
|
---|
46 | S ^RA(78.2,RAFMT,"E",RAN,0)="W "_$S(FL:"!",1:"")_"?"_(COL-1)_","""_TITL_""","_$S(RAIV="RAFREE":""""_$P(J,"^",2)_"""",RA787("E")["$$BCDE^RAUTL18":"@"_RAIV,1:RAIV)
|
---|
47 | S RAN=RAN+1,FL=0
|
---|
48 | Q
|
---|
49 | ;
|
---|
50 | ; Exam labels are printed on the device specified in the location
|
---|
51 | ; parameter, FLASH CARD PRINTER NAME in File 79.1. If there is no
|
---|
52 | ; value in that field, the user will be prompted for a device. The
|
---|
53 | ; number of exam labels printed is defined in the location parameter,
|
---|
54 | ; HOW MANY EXAM LABELS PER EXAM. That number is not changed by any
|
---|
55 | ; parameter or combination of parameters. If that number is zero (or
|
---|
56 | ; null), then no exam labels will be printed.
|
---|