1 | GMTSOBE ; SLC/KER - HS Object - Export ; 01/06/2003
|
---|
2 | ;;2.7;Health Summary;**58**;Oct 20, 1995
|
---|
3 | ;
|
---|
4 | ; External References
|
---|
5 | ;
|
---|
6 | ; DBIA 10096 ^%ZOSF("DEL"
|
---|
7 | ; DBIA 2056 $$GET1^DIQ (file #200 and 4.3)
|
---|
8 | ; DBIA 10112 $$SITE^VASITE
|
---|
9 | ; DBIA 10103 $$DOW^XLFDT
|
---|
10 | ; DBIA 10103 $$DT^XLFDT
|
---|
11 | ; DBIA 10103 $$FMTE^XLFDT
|
---|
12 | ; DBIA 10103 $$NOW^XLFDT
|
---|
13 | ; DBIA 10104 $$UP^XLFSTR
|
---|
14 | ; DBIA 10070 ^XMD
|
---|
15 | ;
|
---|
16 | EN ; Main Entry Point to Export a HS Object
|
---|
17 | N %Z,GMTS,GMTSCP,GMTSD,GMTSDM,GMTSDT,GMTSDW,GMTSEX,GMTSFRM,GMTSHD
|
---|
18 | N GMTSI,GMTSN,GMTSNC,GMTSND,GMTSNN,GMTSNX,GMTSO,GMTSON,GMTSOND
|
---|
19 | N GMTSQIT,GMTSRT,GMTSRTN,GMTSSX,GMTST,GMTSTMP,GMTSTN,GMTSTN0
|
---|
20 | N GMTSTNAT,GMTSTNT,GMTSTNV,GMTSTR,GMTSTT,GMTSTXT,GMTSUSR,GMTSX
|
---|
21 | N X,XCNP,XMDUZ,XMSCR,XMSUB,XMTEXT,XMY,XMZ,Y I +($G(DUZ))=0 W !!," User not defined" Q
|
---|
22 | S GMTSUSR=$$GET1^DIQ(200,(+($G(DUZ))_","),.01) I '$L(GMTSUSR) W !!," Invalid User" Q
|
---|
23 | S X=$$OBJ^GMTSOBL Q:+X'>0 S GMTSFRM=$P($$SITE^VASITE,"^",2),GMTSO=+X,GMTSOND=$G(^GMT(142.5,+GMTSO,0))
|
---|
24 | S GMTSON=$P(GMTSOND,"^",1),GMTST=+($P(GMTSOND,"^",3)) Q:GMTST=0
|
---|
25 | S GMTSTN0=$G(^GMT(142,+GMTST,0)),GMTSTNT=$G(^GMT(142,+GMTST,"T"))
|
---|
26 | S GMTSTNV=$G(^GMT(142,+GMTST,"VA")),GMTSTN=$P(GMTSTN0,"^",1) Q:'$L(GMTSTN)
|
---|
27 | S GMTSTT=$P(GMTSTNT,"^",1) S:'$L(GMTSTT)&($L(GMTSTN)) GMTSTT=$$EN2^GMTSUMX(GMTSTN)
|
---|
28 | I GMTSTN="GMTS HS ADHOC OPTION" D Q
|
---|
29 | . W !," Can not export a Health Summary Object using GMTS HS ADHOC OPTION",!," (Adhoc) Health Summary Type."
|
---|
30 | S GMTSTNAT=+GMTSTNV I GMTSTNAT>0 D Q
|
---|
31 | . W !," Can not export a Health Summary Object using a nationally released",!," Remote Data View Health Summary Type."
|
---|
32 | S GMTSRTN="GMTSOBX" D INIT,TYPE,OBJ,MAIL
|
---|
33 | K ^TMP($J,"GMTSOBXM")
|
---|
34 | Q
|
---|
35 | INIT ; Initialize Export Routine
|
---|
36 | Q:'$L(GMTSON) Q:'$L(GMTSFRM) Q:'$L(GMTSUSR)
|
---|
37 | W !!," Exporting Object Routine - ",GMTSRTN D CRTN(GMTSRTN)
|
---|
38 | N GMTST,GMTSI
|
---|
39 | K ^TMP($J,"GMTSOBXM")
|
---|
40 | S GMTST=$$CREATED D TL(GMTST)
|
---|
41 | D BL D:$L($G(GMTSON)) TL((" Object: "_GMTSON))
|
---|
42 | D:$L($G(GMTSFRM)) TL((" From: "_GMTSFRM))
|
---|
43 | D:$L($G(GMTSUSR)) TL((" Sender: "_GMTSUSR))
|
---|
44 | D:$L($G(GMTSON))!($L($G(GMTSFRM)))!($L($G(GMTSUSR))) BL
|
---|
45 | D TL(" 1) Use Packman to unpack the routine GMTSOBX contained in this message."),BL
|
---|
46 | D TL(" 2) Use the following Option to install the Health Summary Object")
|
---|
47 | D TL(" contained in this message."),BL
|
---|
48 | D TL(" GMTS OBJ IMPORT/INSTALL")
|
---|
49 | D TL(" Import/Install a Health Summary Object"),BL
|
---|
50 | D TL(" or run the routine INS^GMTSOBJ"),BL
|
---|
51 | D TL("$END TXT")
|
---|
52 | D TL(("$ROU "_GMTSRTN))
|
---|
53 | D TL((GMTSRTN_" ; CIO/SLC - HS Exported Object ; "_$P($$FMTE^XLFDT($$NOW^XLFDT,"5Z"),"@",1)))
|
---|
54 | D TL((" ;;"_$$VER_";Health Summary;;Oct 20, 1995")),S
|
---|
55 | D:$L($G(GMTSON)) TL((" ; Object: "_GMTSON))
|
---|
56 | D:$L($G(GMTSFRM)) TL((" ; From: "_GMTSFRM))
|
---|
57 | D:$L($G(GMTSUSR)) TL((" ; Sender: "_GMTSUSR)) D S,Q
|
---|
58 | Q
|
---|
59 | ;
|
---|
60 | TYPE ; Export Health Summary Type
|
---|
61 | ; This will not export:
|
---|
62 | ; National Health Summary Types
|
---|
63 | ; Local Components
|
---|
64 | ; Components with Selected Items
|
---|
65 | N GMTSCP,GMTSHD,GMTSNC,GMTSND,GMTSNN,GMTSRT,GMTSTMP,GMTSTR
|
---|
66 | N GMTSNX,GMTSSX,GMTSD
|
---|
67 | D TL(("TYPE ; Health Summary Type"))
|
---|
68 | I +($G(^GMT(142,+GMTST,"VA")))>0 D Q Q
|
---|
69 | D TL((" ;"_GMTSTN)),TL((" ;"_GMTSTT))
|
---|
70 | S GMTSTMP=$G(^GMT(142,+($G(GMTST)),0)),GMTSTMP=GMTSTN,$P(GMTSTMP,"^",2)="",$P(GMTSTMP,"^",5)=""
|
---|
71 | D TL((" ;0;"_GMTSTMP))
|
---|
72 | S GMTSRT="^GMT(142,"_+($G(GMTST))_","
|
---|
73 | S GMTSNN="^GMT(142,"_+($G(GMTST))_",1)"
|
---|
74 | S GMTSNC="^GMT(142,"_+($G(GMTST))_",1," S GMTSTR=1
|
---|
75 | F S GMTSNN=$Q(@GMTSNN) Q:GMTSNN=""!(GMTSNN'[GMTSNC) D
|
---|
76 | . S GMTSTR=$P($P(GMTSNN,GMTSRT,2),")",1)
|
---|
77 | . S:$P(GMTSTR,",",3)="1" GMTSD(+($P(GMTSTR,",",2)))="" Q:$P(GMTSTR,",",3)="1"
|
---|
78 | . S GMTSNX=$Q(@GMTSNN),GMTSSX=$P($P(GMTSNX,GMTSRT,2),")",1)
|
---|
79 | . S:$P(GMTSSX,",",3)="1" GMTSD(+($P(GMTSSX,",",2)))="" Q:$P(GMTSSX,",",3)="1"
|
---|
80 | . S GMTSND=@GMTSNN I GMTSTR="1,0" D TL((" ;"_GMTSTR_";"_GMTSND)) Q
|
---|
81 | . S GMTSCP=+($P(GMTSND,"^",2)) Q:+GMTSCP>1000
|
---|
82 | . S GMTSHD=$P($G(^GMT(142.1,+GMTSCP,0)),"^",9)
|
---|
83 | . S:$P(GMTSND,"^",5)="" $P(GMTSND,"^",5)=GMTSHD
|
---|
84 | . S:+($P(GMTSTR,",",2))=0 GMTSND=""
|
---|
85 | . I +($P(GMTSTR,",",2))=0,+($P(GMTSTR,",",4))>0,$D(GMTSD(+($P(GMTSTR,",",4)))) Q
|
---|
86 | . D TL((" ;"_GMTSTR_";"_GMTSND))
|
---|
87 | D TL((" ;99;"_$H)) D:$L(GMTSTT) TL((" ;""T"";"_GMTSTT)) D Q
|
---|
88 | Q
|
---|
89 | ;
|
---|
90 | OBJ ; Export an Object
|
---|
91 | N GMTSNC,GMTSND,GMTSNN,GMTSRT,GMTSTMP,GMTSTR
|
---|
92 | D TL(("OBJ ; Health Summary Object")),TL((" ;"_GMTSON))
|
---|
93 | S GMTSTMP=$G(^GMT(142.5,+GMTSO,0)),$P(GMTSTMP,"^",3)="",$P(GMTSTMP,"^",17)="",$P(GMTSTMP,"^",18)="",$P(GMTSTMP,"^",19)=""
|
---|
94 | D TL((" ;0;"_GMTSTMP)) S GMTSRT="^GMT(142.5,"_+($G(GMTSO))_","
|
---|
95 | S GMTSNN="^GMT(142.5,"_+($G(GMTSO))_",1)",GMTSNC="^GMT(142.5,"_+($G(GMTSO))_",1,"
|
---|
96 | F S GMTSNN=$Q(@GMTSNN) Q:GMTSNN=""!(GMTSNN'[GMTSNC) D
|
---|
97 | . S GMTSTR=$P($P(GMTSNN,GMTSRT,2),")",1),GMTSND=@GMTSNN D TL((" ;"_GMTSTR_";"_GMTSND))
|
---|
98 | D Q,TL(("$END ROU "_GMTSRTN))
|
---|
99 | Q
|
---|
100 | ;
|
---|
101 | ; Message
|
---|
102 | Q ; Quit Line
|
---|
103 | D TL(" Q") Q
|
---|
104 | S ; Spacer/Comment Line
|
---|
105 | D TL(" ; ") Q
|
---|
106 | BL ; Blank Line
|
---|
107 | D TL(" ") Q
|
---|
108 | TL(X) ; Text Line
|
---|
109 | N GMTS S GMTS=+($G(^TMP($J,"GMTSOBXM",0))),GMTS=GMTS+1
|
---|
110 | S ^TMP($J,"GMTSOBXM",GMTS,0)=$G(X),^TMP($J,"GMTSOBXM",0)=GMTS
|
---|
111 | Q
|
---|
112 | ;
|
---|
113 | ; Mailman Support
|
---|
114 | MAIL ; Send Object via Mailman
|
---|
115 | N %Z,XCNP,XMSCR,XMDUZ,XMY,XMZ,XMSUB,XMY,XMTEXT,XMDUZ,GMTSN,GMTSQIT Q:'$D(^TMP($J,"GMTSOBXM"))
|
---|
116 | S XMDUZ=+($G(DUZ)) S:+XMDUZ=0 GMTSQIT=1 S GMTSN=$$XMY S:'$L(GMTSN) GMTSQIT=1 S:$L(GMTSN) XMY(GMTSN)=""
|
---|
117 | S XMSUB=$$XMSUB S:'$L(XMSUB) GMTSQIT=1 S XMTEXT="^TMP("_$J_",""GMTSOBXM""," Q:+($G(GMTSQIT))>0
|
---|
118 | D:+($G(GMTSQIT))'>0 ^XMD I +($G(XMZ))>0 H 1 W !," Message [",+($G(XMZ)),"] sent"
|
---|
119 | K %Z,XCNP,XMSCR,XMDUZ,XMY,XMZ,XMSUB,XMY,XMTEXT,XMDUZ,^TMP($J,"GMTSOBXM")
|
---|
120 | Q
|
---|
121 | XMY(X) ; Get Addressee
|
---|
122 | S X=$$GET1^DIQ(200,(+($G(DUZ))_","),.01) Q X
|
---|
123 | XMSUB(X) ; Get Subject
|
---|
124 | N GMTSON S GMTSON=$P($G(^GMT(142.5,+($G(GMTSO)),0)),"^",1)
|
---|
125 | S X="Exported Health Summary Object" S:$L(GMTSON) X=$E(("Export HS Obj: "_GMTSON),1,65)
|
---|
126 | Q X
|
---|
127 | DOM(X) ; Domain
|
---|
128 | S X=$$GET1^DIQ(4.3,"1,",.01) Q X
|
---|
129 | DOW(X) ; Day of Week
|
---|
130 | S X=$$DT^XLFDT,X=$$DOW^XLFDT(X),X=$$UP^XLFSTR(X) Q X
|
---|
131 | NOW(X) ; Now
|
---|
132 | N GMTSD,GMTST S X=$$NOW^XLFDT,X=$$FMTE^XLFDT(X,"5Z"),GMTSD=$P(X,"@",1)
|
---|
133 | S GMTST=$P($P(X,"@",2),":",1,2),X=GMTSD S:$L(GMTST) X=GMTSD_" at "_GMTST
|
---|
134 | Q X
|
---|
135 | ;
|
---|
136 | ; Miscellaneous
|
---|
137 | CRTN(X) ; Clear Routine
|
---|
138 | S X=$G(X) Q:'$L(X) Q:$L(X)>8 Q:$$ROK(X)=0 X ^%ZOSF("DEL") Q
|
---|
139 | VER(X) ; Health Summary Version
|
---|
140 | N GMTSEX,GMTSTXT S X="GMTS",GMTSEX="S GMTSTXT=$T(+2^"_X_")" X GMTSEX S X=$P(GMTSTXT,";",3) Q X
|
---|
141 | ROK(X) ; Routine is OK
|
---|
142 | S X=$G(X) Q:'$L(X) 0
|
---|
143 | N GMTSEX,GMTSTXT S GMTSEX="S GMTSTXT=$T(+1^"_X_")" X GMTSEX Q:'$L(GMTSTXT) 0 Q 1
|
---|
144 | CREATED(X) ; Created Text
|
---|
145 | N GMTST,GMTSN,GMTSDM,GMTSDW,GMTSDT S GMTST="$TXT",GMTSN=$$XMY S:$L(GMTSN) GMTST=GMTST_" Created by "_GMTSN
|
---|
146 | S GMTSDM=$$DOM S:$L(GMTSDM) GMTST=GMTST_" at "_GMTSDM S GMTSDW=$$DOW S:$L(GMTSDW) GMTST=GMTST_" on "_GMTSDW
|
---|
147 | S GMTSDT=$$NOW S:$L(GMTSDT) GMTST=GMTST_", "_GMTSDT S X=GMTST
|
---|
148 | Q X
|
---|