1 | GMTSLRS7 ; SLC/JER,KER - Sel Cum Lab Comp w/Sel Items ; 01/06/2003
|
---|
2 | ;;2.7;Health Summary;**28,47,58**;Oct 20, 1995
|
---|
3 | ;
|
---|
4 | ; External References
|
---|
5 | ; DBIA 67 ^LAB(60
|
---|
6 | ; DBIA 525 ^LR( all fields
|
---|
7 | ; DBIA 10035 ^DPT( field 63 Read w/Fileman
|
---|
8 | ; DBIA 2056 $$GET1^DIQ (file 2)
|
---|
9 | ;
|
---|
10 | MAIN ; Selected Cumulative Lab w/Selection Items
|
---|
11 | N GMTSI,GMW,HDR,LRDFN,MAX,TEST,RWIDTH,GMCMNT,COMMNBR,GMCOM,TAB
|
---|
12 | S LRDFN=+($$GET1^DIQ(2,(+($G(DFN))_","),63,"I")) Q:+LRDFN=0 Q:'$D(^LR(LRDFN))
|
---|
13 | S MAX=$S(+($G(GMTSNDM))>0:+($G(GMTSNDM)),1:999) Q:'$O(GMTSEG(GMTSEGN,60,0))
|
---|
14 | S RWIDTH=4,GMTSI=0 F S GMTSI=$O(GMTSEG(GMTSEGN,60,GMTSI)) Q:GMTSI'>0 D Q:$D(GMTSQIT)
|
---|
15 | . S TEST=GMTSEG(GMTSEGN,60,GMTSI) D ^GMTSLRSE
|
---|
16 | Q:'$D(^TMP("LRS",$J)) S GMCMNT=$S($P($G(^GMT(142.99,1,0)),U,3)="Y":1,1:0),COMMNBR=0
|
---|
17 | D DISPLAY I GMCMNT,'$D(GMTSQIT) D WRTCOMM
|
---|
18 | K ^TMP("LRS",$J),^TMP("LRSR",$J)
|
---|
19 | Q
|
---|
20 | DISPLAY ; Displays up to 7 tests across page
|
---|
21 | N HDR,TST,GMI,GMX,GMW,IT,IX D INVRT S IT=""
|
---|
22 | F GMI=0:1:6 S IT=$O(^TMP("LRS",$J,IT)) Q:'IT D Q:$D(GMTSQIT)
|
---|
23 | . S IX="" F S IX=$O(^(IT,IX)) Q:IX'>0 D Q:$D(GMTSQIT)
|
---|
24 | . . S TST=+$P(^(IX),U,3)
|
---|
25 | . . S HDR(GMI)=$S(TST'="":$E($P($G(^LAB(60,TST,.1)),U),1,7),1:"")
|
---|
26 | . . K ^TMP("LRS",$J,IT)
|
---|
27 | Q:$D(GMTSQIT) D WRTHDR S IX=""
|
---|
28 | F GMW=1:1:MAX S IX=$O(^TMP("LRSR",$J,IX)) Q:+IX'>0 D Q:$D(GMTSQIT)
|
---|
29 | . D CKP^GMTSUP Q:$D(GMTSQIT) D:GMTSNPG WRTHDR
|
---|
30 | . S IT="" F GMI=0:1:6 S IT=$O(^TMP("LRSR",$J,IX,IT)) Q:IT="" D Q:$D(GMTSQIT)
|
---|
31 | . . D WRT I '$O(^TMP("LRSR",$J,IX,IT)) W !
|
---|
32 | Q:$D(GMTSQIT)
|
---|
33 | I '$D(GMTSOBJ),(+$G(GMW)=+$G(MAX)),(+IX>0),$O(^TMP("LRSR",$J,IX)) D Q:$D(GMTSQIT)
|
---|
34 | . D CKP^GMTSUP Q:$D(GMTSQIT)
|
---|
35 | . W $C(7),!?10,"** Additional Results available outside occurrence limit **",!
|
---|
36 | Q
|
---|
37 | WRTHDR ; Writes Column Header
|
---|
38 | N GMI D CKP^GMTSUP Q:$D(GMTSQIT) W "Collection DT"
|
---|
39 | W ?19,$S(+$G(GMCMNT):" ",1:""),"Spec"
|
---|
40 | F GMI=0:1:6 D Q:$D(GMTSQIT)
|
---|
41 | . D CKP^GMTSUP Q:'$D(HDR(GMI))!($D(GMTSQIT))
|
---|
42 | . W ?(((8*GMI+25)+(7-$L(HDR(GMI))\2))),$E(HDR(GMI),1,7)
|
---|
43 | Q:$D(GMTSQIT) D CKP^GMTSUP Q:$D(GMTSQIT) W !
|
---|
44 | I '$D(GMTSOBJ) D CKP^GMTSUP Q:$D(GMTSQIT) W !
|
---|
45 | Q
|
---|
46 | WRT ; Writes the Lab Record
|
---|
47 | S GMX=^TMP("LRSR",$J,IX,IT),TAB=$P(GMX,U)
|
---|
48 | I GMI=0!(GMTSNPG) D
|
---|
49 | . I +$G(GMCMNT),$D(^TMP("LRS",$J,"C",IX))>0,$D(GMCOM("DT",IX))'>0,COMMNBR<26 D
|
---|
50 | . . S GMLTR=$C(97+COMMNBR) S COMMNBR=COMMNBR+1
|
---|
51 | . . S GMCOM("DT",IX)=GMLTR,GMCOM("LTR",GMLTR)=IX
|
---|
52 | . I +$G(GMCMNT) W $E($G(GMCOM("DT",IX)),1),?2,$P(GMX,U,2),?19,$E($P($P(GMX,U,3),";",2),1,5) Q
|
---|
53 | . W $P(GMX,U,2),?19,$E($P($P(GMX,U,3),";",2),1,5)
|
---|
54 | W ?(8*TAB+25),$P(GMX,U,4)," ",$P(GMX,U,5)
|
---|
55 | Q
|
---|
56 | WRTCOMM ; Writes the lab Comments
|
---|
57 | N GMLTR,GMLINE
|
---|
58 | Q:$D(GMCOM)'>0
|
---|
59 | D CKP^GMTSUP Q:$D(GMTSQIT) W "COMMENTS:",!
|
---|
60 | S GMLTR=""
|
---|
61 | F S GMLTR=$O(GMCOM("LTR",GMLTR)) Q:GMLTR']"" D Q:$D(GMTSQIT)
|
---|
62 | . S IX=$G(GMCOM("LTR",GMLTR)),GMLINE=0
|
---|
63 | . F S GMLINE=$O(^TMP("LRS",$J,"C",+IX,GMLINE)) Q:GMLINE'>0 D Q:$D(GMTSQIT)
|
---|
64 | . . D CKP^GMTSUP Q:$D(GMTSQIT) I GMTSNPG W "COMMENTS:",!
|
---|
65 | . . W:GMLINE=1!GMTSNPG GMLTR_"."
|
---|
66 | . . W ?3,$G(^TMP("LRS",$J,"C",+IX,GMLINE)),!
|
---|
67 | Q
|
---|
68 | ;
|
---|
69 | INVRT ; Inverts Global Array
|
---|
70 | ;
|
---|
71 | ; From: ^TMP("LRS",$J,IT,IX)=CDT^SPC^TNM^RSLT^FLAG^UNIT^LO^HI
|
---|
72 | ; To: ^TMP("LRSR",$J,IX,IT)=GMI,CDT,SPC,RSLT,FLAG
|
---|
73 | ;
|
---|
74 | N GMI,GMW,IT,IX S IT=""
|
---|
75 | F GMI=0:1:6 S IT=$O(^TMP("LRS",$J,IT)) Q:IT'>0 S IX="" F S IX=$O(^TMP("LRS",$J,IT,IX)) Q:IX="" S ^TMP("LRSR",$J,IX,IT)=GMI_U_$P(^TMP("LRS",$J,IT,IX),U,1,2)_U_$P(^TMP("LRS",$J,IT,IX),U,4,5)
|
---|
76 | Q
|
---|