| 1 | QAMPBMW0 ;HISC/DAD-BUILD A MONITOR WORKSHEET ;4/26/93  13:36 | 
|---|
| 2 | ;;1.0;Clinical Monitoring System;;09/13/1993 | 
|---|
| 3 | K DIR S DIR(0)="NAO^1:10:0" | 
|---|
| 4 | S DIR("A")="How many worksheets do you want? ",DIR("B")=1 | 
|---|
| 5 | S DIR("?",1)="Enter the number of monitor worksheets you want printed." | 
|---|
| 6 | S DIR("?")="You may request up to 10 worksheets." | 
|---|
| 7 | W ! D ^DIR G:$D(DIRUT) EXIT S QAOSCOPY=Y | 
|---|
| 8 | K %ZIS,IOP S %ZIS="QM" W ! D ^%ZIS G:POP EXIT | 
|---|
| 9 | I $D(IO("Q")) D  G EXIT | 
|---|
| 10 | . K IO("Q") | 
|---|
| 11 | . S ZTRTN="ENTSK^QAMPBMW0",ZTDTH=$H,ZTSAVE("QAOSCOPY")="" | 
|---|
| 12 | . S ZTDESC="Build a monitor worksheet" | 
|---|
| 13 | . D ^%ZTLOAD | 
|---|
| 14 | .Q | 
|---|
| 15 | ENTSK ; | 
|---|
| 16 | U IO | 
|---|
| 17 | F QAOSCPY=1:1:QAOSCOPY D ^QAMPBMW1 Q:QAOSQUIT  W:QAOSCOPY-QAOSCPY @IOF | 
|---|
| 18 | EXIT ; | 
|---|
| 19 | W ! D ^%ZISC | 
|---|
| 20 | K %ZIS,DIR,DIRUT,POP,QA,QAOSCOPY,QAOSCPY,QAOSD0,QAOSFILE,QAOSMID | 
|---|
| 21 | K QAOSNUM,QAOSQUIT,QAOSTAB,QAOSTEXT,QAOSTOP,UNDL,X,Y,ZTDESC,ZTDTH | 
|---|
| 22 | K ZTRTN,ZTSAVE | 
|---|
| 23 | Q | 
|---|
| 24 | ; | 
|---|
| 25 | EN(QAOSFILE) ; Print the contents of file QAOSFILE in 2 sorted columns | 
|---|
| 26 | N QA,QAOSD0,QAOSQUIT,QAOSTAB,QAOSTEXT,QAOSTOP,X | 
|---|
| 27 | S X=$$MIDDLE(QAOSFILE) | 
|---|
| 28 | S QAOSTEXT(1)=0,QAOSTOP(1)=$P(X,"^") | 
|---|
| 29 | S QAOSTEXT(2)=$P(X,"^",2),QAOSTOP(2)="" | 
|---|
| 30 | S QAOSTAB=0 K QAOSD0 | 
|---|
| 31 | F  Q:(QAOSTEXT(1)=QAOSTOP(1))&(QAOSTEXT(2)=QAOSTOP(2))  F QA=1,2 D | 
|---|
| 32 | . I QAOSTEXT(QA)'=QAOSTOP(QA) S QAOSQUIT=0 F  D  Q:QAOSQUIT | 
|---|
| 33 | .. I $G(QAOSD0(QA))="" S QAOSTEXT(QA)=$O(@(QAOSFILE_"""B"",QAOSTEXT(QA))")) | 
|---|
| 34 | .. I QAOSTEXT(QA)=QAOSTOP(QA) S QAOSQUIT=1 Q | 
|---|
| 35 | .. S QAOSD0(QA)=$O(@(QAOSFILE_"""B"",QAOSTEXT(QA),$G(QAOSD0(QA)))")) | 
|---|
| 36 | .. Q:QAOSD0(QA)'>0 | 
|---|
| 37 | .. Q:$G(@(QAOSFILE_"""B"",QAOSTEXT(QA),+QAOSD0(QA))"))=1 | 
|---|
| 38 | .. S X=$P($G(@(QAOSFILE_"+QAOSD0(QA),0)")),"^") Q:X="" | 
|---|
| 39 | .. W:'QAOSTAB ! W ?QAOSTAB,"___  ",$E(X,1,35) | 
|---|
| 40 | .. S QAOSTAB=QAOSTAB+$S('QAOSTAB:40,1:-40),QAOSQUIT=1 | 
|---|
| 41 | .. Q | 
|---|
| 42 | . Q | 
|---|
| 43 | Q | 
|---|
| 44 | ; | 
|---|
| 45 | MIDDLE(QAOSFILE) ; Return text of middle entry in B xref | 
|---|
| 46 | N QAOSD0,QAOSMID,QAOSNUM,QAOSQUIT,QAOSTEXT | 
|---|
| 47 | S QAOSNUM=$P(@(QAOSFILE_"0)"),"^",4) | 
|---|
| 48 | S (QAOSTEXT,QAOSTEXT(0))="",(QAOSQUIT,QAOSMID)=0 | 
|---|
| 49 | I QAOSNUM>1 S QAOSNUM=QAOSNUM#2+QAOSNUM\2 D | 
|---|
| 50 | . F  S QAOSTEXT(0)=QAOSTEXT,QAOSTEXT=$O(@(QAOSFILE_"""B"",QAOSTEXT)")) Q:QAOSTEXT=""!QAOSQUIT  D | 
|---|
| 51 | .. F QAOSD0=0:0 S QAOSD0=$O(@(QAOSFILE_"""B"",QAOSTEXT,QAOSD0)")) Q:QAOSD0'>0  S QAOSMID=QAOSMID+1 I QAOSMID=QAOSNUM S QAOSQUIT=1 Q | 
|---|
| 52 | .. Q | 
|---|
| 53 | . Q | 
|---|
| 54 | Q QAOSTEXT_"^"_QAOSTEXT(0) | 
|---|