[623] | 1 | ORCXPND3 ; SLC/MKB,dcm - Expanded display of Reports ;2/21/01 14:07
|
---|
| 2 | ;;3.0;ORDER ENTRY/RESULTS REPORTING;**25,30,43,85,172**;Dec 17, 1997
|
---|
| 3 | LRA ; -- Anatomic Pathology Report
|
---|
| 4 | N DFN,Y,I,LRLLOC,LRQ
|
---|
| 5 | D TIT^ORCXPNDR("Anatomic Path Report") Q:$$OS^ORCXPNDR()
|
---|
| 6 | D PREP^ORCXPNDR
|
---|
| 7 | D RPT^ORWRP(.Y,ID,3)
|
---|
| 8 | D ITEM^ORCXPND("Anatomic Path Report")
|
---|
| 9 | S I=3 F S I=$O(^TMP("ORDATA",$J,1,I)) Q:I<1 S LCNT=LCNT+1,^TMP("ORXPND",$J,LCNT,0)=^TMP("ORDATA",$J,1,I)
|
---|
| 10 | K ^TMP("ORDATA",$J)
|
---|
| 11 | Q
|
---|
| 12 | ;
|
---|
| 13 | LRAA ; -- Alternate Anatomic Path Report
|
---|
| 14 | N DFN,Y,I,LRLLOC,LRQ
|
---|
| 15 | D TIT^ORCXPNDR("Alternate Anatomic Path Report") Q:$$OS^ORCXPNDR()
|
---|
| 16 | D PREP^ORCXPNDR I $$OS^ORCXPNDR() Q
|
---|
| 17 | D AP^LR7OSUM(ID)
|
---|
| 18 | D ITEM^ORCXPND("Anatomic Pathology Report")
|
---|
| 19 | I '$O(^TMP("LRC",$J,0)) S ^TMP("LRC",$J,1,0)="No Anatomic Pathology reports available..."
|
---|
| 20 | S I=0 F S I=$O(^TMP("LRC",$J,I)) Q:I<1 S LCNT=LCNT+1,^TMP("ORXPND",$J,LCNT,0)=^TMP("LRC",$J,I,0)
|
---|
| 21 | K ^TMP("LRC",$J)
|
---|
| 22 | Q
|
---|
| 23 | LRB1 ; -- Blood Bank Report
|
---|
| 24 | N DFN,Y,I,LRBLOOD,LRCAPA,LRDT0,LRLABKY,LRLLOC,LRO,LRPCEVSO,LRPLASMA,LRSERUM,LRT,LRUNKNOW,LRURINE,LRVIDO,LRVIDOF
|
---|
| 25 | D TIT^ORCXPNDR("Blood Bank Report") Q:$$OS^ORCXPNDR()
|
---|
| 26 | D PREP^ORCXPNDR
|
---|
| 27 | D RPT^ORWRP(.Y,ID,2)
|
---|
| 28 | D ITEM^ORCXPND("Blood Bank Report")
|
---|
| 29 | S I=5 F S I=$O(^TMP("ORDATA",$J,1,I)) Q:I<1 S LCNT=LCNT+1,^TMP("ORXPND",$J,LCNT,0)=^TMP("ORDATA",$J,1,I)
|
---|
| 30 | K ^TMP("ORDATA",$J)
|
---|
| 31 | Q
|
---|
| 32 | ;
|
---|
| 33 | LRB ; -- A better Blood Bank Report
|
---|
| 34 | N DFN,ORY,I,SUBHEAD
|
---|
| 35 | D TIT^ORCXPNDR("Blood Bank Report")
|
---|
| 36 | S DFN=ID
|
---|
| 37 | D PREP^ORCXPNDR
|
---|
| 38 | I $L($T(EN^ORWLR1)),$L($T(CPRS^VBECA3B)) D Q ;Transition to VBEC's interface
|
---|
| 39 | . K ^TMP("ORLRC",$J)
|
---|
| 40 | . D EN^ORWLR1(DFN)
|
---|
| 41 | . I '$O(^TMP("ORLRC",$J,0)) S ^TMP("ORLRC",$J,1,0)="",^TMP("ORLRC",$J,2,0)="No Blood Bank report available..."
|
---|
| 42 | . D ITEM^ORCXPND("Blood Bank Report"),BLANK^ORCXPND
|
---|
| 43 | . S I=0 F S I=$O(^TMP("ORLRC",$J,I)) Q:I'>0 S LCNT=LCNT+1,^TMP("ORXPND",$J,LCNT,0)=^TMP("ORLRC",$J,I,0)
|
---|
| 44 | . K ^TMP("ORLRC",$J)
|
---|
| 45 | S SUBHEAD("BLOOD BANK")=""
|
---|
| 46 | D EN^LR7OSUM(.ORY,DFN,,,,,.SUBHEAD)
|
---|
| 47 | I '$O(^TMP("LRC",$J,0)) S ^TMP("LRC",$J,1,0)="No Blood Bank report available..."
|
---|
| 48 | D ITEM^ORCXPND("Blood Bank Report"),BLANK^ORCXPND
|
---|
| 49 | S I=0 F S I=$O(^TMP("LRC",$J,I)) Q:I'>0 S LCNT=LCNT+1,^TMP("ORXPND",$J,LCNT,0)=^TMP("LRC",$J,I,0)
|
---|
| 50 | K ^TMP("LRC",$J),^TMP("LRH",$J)
|
---|
| 51 | Q
|
---|
| 52 | LRC ; -- Lab Cumulative
|
---|
| 53 | N DFN,ORY,I,BEG,END,OREND,ORSSTRT,ORSSTOP
|
---|
| 54 | D TIT^ORCXPNDR("Lab Cumulative")
|
---|
| 55 | S DFN=ID
|
---|
| 56 | D RANGE($S($G(ORWARD):7,1:180)) Q:OREND S BEG=+ORSSTRT,END=+ORSSTOP
|
---|
| 57 | D PREP^ORCXPNDR
|
---|
| 58 | D EN^LR7OSUM(.ORY,DFN,BEG,END)
|
---|
| 59 | D ITEM^ORCXPND("Lab Cumulative"),BLANK^ORCXPND
|
---|
| 60 | S I=0 F S I=$O(^TMP("LRC",$J,I)) Q:I'>0 S LCNT=LCNT+1,^TMP("ORXPND",$J,LCNT,0)=^TMP("LRC",$J,I,0)
|
---|
| 61 | K ^TMP("LRC",$J),^TMP("LRH",$J)
|
---|
| 62 | Q
|
---|
| 63 | ;
|
---|
| 64 | LRG ; -- Graph Lab Tests
|
---|
| 65 | N DFN,Y,I,X,BCNT,LRSS,LRCW,LRFLAG,LRCTRL,LRNSET,N,LOW,LRPCEVSO,LRPRAC,LRRB,LRTREA,LRVIDO,LRVIDOF,OREND,ORSSTRT,ORSSTOP
|
---|
| 66 | D TIT^ORCXPNDR("Graph Lab Tests") Q:$$OS^ORCXPNDR()
|
---|
| 67 | D RANGE($S($G(ORWARD):7,1:180)) Q:OREND
|
---|
| 68 | S LRSS="CH",LRCW=8,LRFLAG="",LRCTRL=0,(LRNSET,N)=80
|
---|
| 69 | D L2^LRDIST4 Q:'$D(LRTEST)
|
---|
| 70 | D PREP^ORCXPNDR
|
---|
| 71 | D RPT^ORWRP(.Y,ID,8,,,,+ORSSTRT,+ORSSTOP)
|
---|
| 72 | D ITEM^ORCXPND("Lab Graph")
|
---|
| 73 | S I=4,BCNT=0
|
---|
| 74 | F S I=$O(^TMP("ORDATA",$J,1,I)) Q:I<1 S X=^(I) D
|
---|
| 75 | . I '$L(X) S BCNT=BCNT+1 I BCNT>1 Q
|
---|
| 76 | . S LCNT=LCNT+1,^TMP("ORXPND",$J,LCNT,0)=X S:$L(X) BCNT=0
|
---|
| 77 | K ^TMP("ORDATA",$J)
|
---|
| 78 | Q
|
---|
| 79 | ;
|
---|
| 80 | LRI ; -- Interim Lab Results
|
---|
| 81 | N ORX,DFN,Y,I,X,BCNT,LREDT,LRIDT,LRLLT,LRPCEVSO,LRPRAC,LRRB,LRTREA,LRVIDO,LRVIDOF,OREND,ORSSTRT,ORSSTOP
|
---|
| 82 | D TIT^ORCXPNDR("Lab Interim Results") Q:$$OS^ORCXPNDR()
|
---|
| 83 | D RANGE($S($G(ORWARD):7,1:180)) Q:OREND
|
---|
| 84 | D SET^LRRP4
|
---|
| 85 | D PREP^ORCXPNDR
|
---|
| 86 | D RPT^ORWRP(.Y,ID,3,,,,+ORSSTRT,+ORSSTOP)
|
---|
| 87 | D ITEM^ORCXPND("Lab Interim Report")
|
---|
| 88 | S I=0,BCNT=0
|
---|
| 89 | F S I=$O(^TMP("ORDATA",$J,1,I)) Q:I<1 S X=^(I) D
|
---|
| 90 | . I '$L(X) S BCNT=BCNT+1 I BCNT>1 Q
|
---|
| 91 | . S LCNT=LCNT+1,^TMP("ORXPND",$J,LCNT,0)=X S:$L(X) BCNT=0
|
---|
| 92 | K ^TMP("ORDATA",$J)
|
---|
| 93 | Q
|
---|
| 94 | LRGEN ;Lab Results by Test
|
---|
| 95 | N DFN,Y,I,II,X,BCNT,LRPRETTY,LREDT,LRLLT,LRPCEVSO,LRPRAC,LRRB,LRTREA,LRVIDO,LRVIDOF,LRCW,LREND,LRTP,LRIX,LRWPL,LRIDT,LRSC,DIC,LRTSTS,LRORD,LRTEST,LRSUB,LRHDR,LRSSP,LRHI,LRLO
|
---|
| 96 | N LBL,LRBLOOD,LRDAT,LRDFN,LRDPF,LRDT0,LREX,LRFFLG,LRFOOT,LRLAB,LRLABKY,LRND,LRNG,LRNOP,LRNOTE,LRODT0,LRONESPC,LRONETST,LRPAGE,LRPARAM,LRPLASMA,LRPP,LRSERUM,LRPS,LRTN,LRUNKNOW,LRURINE,LRWRD,LRX,LRY
|
---|
| 97 | N AGE,I,INC,LRIDT1,LRSV,OREND,ORSSTRT,ORSSTOP
|
---|
| 98 | K ^TMP("LR",$J)
|
---|
| 99 | D TIT^ORCXPNDR("Lab Results by Test") Q:$$OS^ORCXPNDR()
|
---|
| 100 | D RANGE($S($G(ORWARD):7,1:180)) Q:OREND
|
---|
| 101 | D SET^LRGEN
|
---|
| 102 | Q:LREND!'LRTSTS
|
---|
| 103 | D PREP^ORCXPNDR
|
---|
| 104 | D RPT^ORWRP(.Y,ID,16,,,,+ORSSTRT,+ORSSTOP)
|
---|
| 105 | D ITEM^ORCXPND("Lab Results by Test")
|
---|
| 106 | S I=1,BCNT=0
|
---|
| 107 | F S I=$O(^TMP("ORDATA",$J,1,I)) Q:I<1 S X=^(I) D
|
---|
| 108 | . I '$L(X) S BCNT=BCNT+1 I BCNT>1 Q
|
---|
| 109 | . S LCNT=LCNT+1,^TMP("ORXPND",$J,LCNT,0)=X S:$L(X) BCNT=0
|
---|
| 110 | K ^TMP("ORDATA",$J)
|
---|
| 111 | Q
|
---|
| 112 | ;
|
---|
| 113 | STAT ; -- Lab test status
|
---|
| 114 | N DFN,Y,I,X,BCNT,OREND,ORSSTRT,ORSSTOP
|
---|
| 115 | D TIT^ORCXPNDR("Lab Test Status") Q:$$OS^ORCXPNDR()
|
---|
| 116 | D RANGE($S($G(ORWARD):7,1:180)) Q:$G(OREND)
|
---|
| 117 | D PREP^ORCXPNDR
|
---|
| 118 | D RPT^ORWRP(.Y,ID,9,,,,+ORSSTRT,+ORSSTOP)
|
---|
| 119 | D ITEM^ORCXPND("Lab Test Status")
|
---|
| 120 | S I=0,BCNT=0
|
---|
| 121 | F S I=$O(^TMP("ORDATA",$J,1,I)) Q:I<1 S X=$S($D(^(I))#2:^(I),$D(^(I,0))#2:^(0),1:"") D
|
---|
| 122 | . I '$L(X) S BCNT=BCNT+1 I BCNT>1 Q
|
---|
| 123 | . S LCNT=LCNT+1,^TMP("ORXPND",$J,LCNT,0)=X S:$L(X) BCNT=0
|
---|
| 124 | K ^TMP("ORDATA",$J)
|
---|
| 125 | Q
|
---|
| 126 | RANGE(BEG) ;Get date range for report
|
---|
| 127 | ;BEG=# of days (T-BEG) for start default
|
---|
| 128 | ;Output: ORSSTRT=Start date/time
|
---|
| 129 | ; ORSSTOP=Stop date/time
|
---|
| 130 | ; OREND=1 if user '^'s out, so look for it!
|
---|
| 131 | S BEG=$$FMADD^XLFDT(DT,-$G(BEG)),END=$$NOW^XLFDT
|
---|
| 132 | D RANGE^ORPRS01(BEG,END)
|
---|
| 133 | Q
|
---|
| 134 | MED(MED) ; -- Medicine Summary of Patient Procedures
|
---|
| 135 | N DFN,Y,I,X,BCNT,OREND,PROCID
|
---|
| 136 | D TIT^ORCXPNDR("Summary of Patient Procedures") Q:$$OS^ORCXPNDR()
|
---|
| 137 | D PREP^ORCXPNDR
|
---|
| 138 | S DFN=+ID,PROCID=$P(MED,"~",2)
|
---|
| 139 | D RPT^ORWRP(.Y,DFN,19,,,PROCID)
|
---|
| 140 | D ITEM^ORCXPND("Summary of Patient Procedures")
|
---|
| 141 | S I=4,BCNT=0
|
---|
| 142 | F S I=$O(^TMP("ORDATA",$J,1,I)) Q:I<1 S X=^(I) D
|
---|
| 143 | . I '$L(X) S BCNT=BCNT+1 I BCNT>1 Q
|
---|
| 144 | . I $E(X,1,4)="Pg. " Q
|
---|
| 145 | . I X["PHYSICIANS' SIGNATURE" Q
|
---|
| 146 | . S LCNT=LCNT+1,^TMP("ORXPND",$J,LCNT,0)=X S:$L(X) BCNT=0
|
---|
| 147 | K ^TMP("ORDATA",$J)
|
---|
| 148 | Q
|
---|