Produced by Araxis Merge on 4/4/2019 2:57:40 PM Central Daylight Time. See www.araxis.com for information about Merge. This report uses XHTML and CSS2, and is best viewed with a modern standards-compliant browser. For optimum results when printing this report, use landscape orientation and enable printing of background images and colours in your browser.
# | Location | File | Last Modified |
---|---|---|---|
1 | C:\AraxisMergeCompare\Pri_un\VHIE_VDIF\AccessGateway\CDA_Gateway\CustomClasses | HS.Local.VA.HS.Access.CDA.xml | Tue Apr 2 18:53:43 2019 UTC |
2 | C:\AraxisMergeCompare\Pri_re\eHealth Exchange Enhancements Phase 2-redacted\VHIE_VDIF\AccessGateway\CDA_Gateway\CustomClasses | HS.Local.VA.HS.Access.CDA.xml | Wed Apr 3 12:41:16 2019 UTC |
Description | Between Files 1 and 2 |
|
---|---|---|
Text Blocks | Lines | |
Unchanged | 10 | 4204 |
Changed | 9 | 66 |
Inserted | 0 | 0 |
Removed | 0 | 0 |
Whitespace | |
---|---|
Character case | Differences in character case are significant |
Line endings | Differences in line endings (CR and LF characters) are ignored |
CR/LF characters | Not shown in the comparison detail |
No regular expressions were active.
1 | <?xml | |
2 | version="1 .0" | |
3 | encoding=" UTF-8" | |
4 | ?> | |
5 | <Export | |
6 | generator= "Cache" | |
7 | version="2 5" | |
8 | zv="Cache for UNIX ( Red Hat En terprise L inux for x 86-64) 201 7.1.3 (Bui ld 317_0_1 8518U)" | |
9 | ts="2019-0 2-08 12:36 :30" | |
10 | > | |
11 | <Class | |
12 | name="HS.L ocal.VA.HS .Access.CD A.HS.Gatew ay.Access. Manager" | |
13 | > | |
14 | <Super> | |
15 | HS.Gateway .Access.Ma nager | |
16 | </Super> | |
17 | <TimeChang ed> | |
18 | 65051,4108 4.312694 | |
19 | </TimeChan ged> | |
20 | <TimeCreat ed> | |
21 | 65016,3115 6.021544 | |
22 | </TimeCrea ted> | |
23 | ||
24 | <Method | |
25 | name="Batc hFetchRequ estAsync" | |
26 | > | |
27 | <FormalSpe c> | |
28 | <![CDATA[p Request:HS .Message.P atientBatc hFetchRequ estAsync,& pResponse: HS.Message .PatientBa tchFetchRe sponseAsyn c]]> | |
29 | </FormalSp ec> | |
30 | <ReturnTyp e> | |
31 | %Status | |
32 | </ReturnTy pe> | |
33 | <Implement ation> | |
34 | <![CDATA[ | |
35 | #d im tSC As %Status | |
36 | #d im tIdent As HS.Type s.Identifi er | |
37 | #d im tAddr A s HS.Types .Address | |
38 | #d im tTele A s HS.Types .Telecom | |
39 | $$ $HSPerfSta rt("Sendin g Async Ba tch Fetch Requests") | |
40 | Se t tSC=$$$O K,$ZT="Tra p" | |
41 | Se t tSequenc e=$I(^HS.F etchStatus ), tAgKey= "T"_tSeque nce,tToken ="" | |
42 | Se t tInitial Notified=0 | |
43 | Do { | |
44 | Kill %streamle tDoDefault ing | |
45 | Set tAudName=p Request.La stName_", "_pRequest .FirstName | |
46 | Set: pRequest.M iddleName' ="" tAudNa me=tAudNam e_" "_pReq uest.Middl eName | |
47 | Set pResponse= ##Class(HS .Message.P atientBatc hFetchResp onseAsync) .%New() | |
48 | If ' $$$HSLicen sed("Compo site Healt h Record") Set tSC=$ $Error^%ap iOBJ(6083, $ZE) Quit | |
49 | //cr eate SDA f or inserti ng patient demograph ics | |
50 | //en able CodeT ableDetail indexing if using t he viewer | |
51 | If $ $$IsViewer Running,'p Request.Ag gregateOnl y { Kill % codetables 3 Set %cod etables3=0 } | |
52 | Set tPat=##Cla ss(HS.SDA3 .Patient). %New() | |
53 | Set tPat.MPIID =pRequest. MPIID | |
54 | Set tPat.Name. FamilyName =pRequest. LastName | |
55 | Set tPat.Name. GivenName= pRequest.F irstName | |
56 | Set tPat.Name. MiddleName =pRequest. MiddleName | |
57 | Set tPat.Name. NamePrefix =pRequest. Prefix | |
58 | Set tPat.Name. NameSuffix =pRequest. Suffix | |
59 | Set tPat.Mothe rsMaidenNa me=pReques t.MothersM aidenSurna me | |
60 | Set tPat.Prima ryLanguage .Code=pReq uest.Langu age | |
61 | Set tPat.Relig ion.Code=p Request.Re ligiousAff iliation | |
62 | Set tPat.Marit alStatus.C ode=pReque st.Marital Status | |
63 | Set tPat.Gende r.Code=pRe quest.Sex | |
64 | Set tPat.Exten sion=pRequ est.Extens ion | |
65 | ||
66 | //cu stom add b egin BW 01 /03/2018 | |
67 | Set tPat.Exten sion.Autho ritativeRa ces=pReque st.Extensi on.Authori tativeRace s | |
68 | ||
69 | If ( pRequest.B irthPlace. City'="")| |(pRequest .BirthPlac e.State'=" ")||(pRequ est.BirthP lace.Count ry'="") { | |
70 | Set tB irthDetail =##class(H S.SDA3.Add ress).%New () | |
71 | If (pR equest.Bir thPlace.Ci ty'="") { | |
72 | Set tBir thCity=##c lass(HS.SD A3.CodeTab leDetail.C ity).%New( ) | |
73 | Set tBir thCity.Cod e = pReque st.BirthPl ace.City | |
74 | Set tBir thDetail.C ity = tBir thCity | |
75 | } | |
76 | If (pR equest.Bir thPlace.St ate'="") { | |
77 | Set tBir thState=## class(HS.S DA3.CodeTa bleDetail. State).%Ne w() | |
78 | Set tBir thState.Co de = pRequ est.BirthP lace.State | |
79 | Set tBir thDetail.S tate = tBi rthState | |
80 | } | |
81 | If (pR equest.Bir thPlace.Co untry'="") { | |
82 | Set tBir thCountry= ##class(HS .SDA3.Code TableDetai l.Country) .%New() | |
83 | Set tBir thCountry. Code = pRe quest.Birt hPlace.Cou ntry | |
84 | Set tBir thDetail.C ountry = t BirthCount ry | |
85 | } | |
86 | Set tP at.BirthPl ace=tBirth Detail | |
87 | } | |
88 | //cu stom add e nd BW 01/0 3/2018 | |
89 | ||
90 | //lo ad multipl e races fr om registr y, with op tional cod e table | |
91 | Set tCodeTable =##class(H S.Registry .Config).G etKeyValue ("\Registr y\Patient\ RaceCodeTa ble","") | |
92 | For tI=1:1:$L( pRequest.R ace,",") { | |
93 | Set tR aceDetail= ##class(HS .SDA3.Code TableDetai l.Race).%N ew() | |
94 | Set tR aceDetail. Code=$P(pR equest.Rac e,",",tI) | |
95 | If tCo deTable="" { | |
96 | Set tRac eDetail.De scription= $Case(tRac eDetail.Co de,"I":"Am erican Ind ian","A":" Asian","B" :"Black"," H":"Hispan ic","W":"W hite",:"") | |
97 | } Else { | |
98 | Set tCod eOb=##clas s(HS.Regis try.Codes) .IDKeyOpen ($ZCVT(tCo deTable,"U "),$ZCVT(t RaceDetail .Code,"U") ) | |
99 | If $IsOb ject(tCode Ob) { | |
100 | Set tRaceD etail.SDAC odingStand ard=tCodeT able | |
101 | Set tRaceD etail.Desc ription=tC odeOb.Desc ription | |
102 | } | |
103 | } | |
104 | Do tPa t.Races.In sert(tRace Detail) | |
105 | Set:tI =1 tPat.Ra ce=tRaceDe tail | |
106 | } | |
107 | if ( pRequest.E thnicGroup '="") { | |
108 | Set tC odeTable=# #class(HS. Registry.C onfig).Get KeyValue(" \Registry\ Patient\Et hnicityCod eTable","" ) | |
109 | Set tE thDetail=# #class(HS. SDA3.CodeT ableDetail .EthnicGro up).%New() | |
110 | Set tE thDetail.C ode=pReque st.EthnicG roup | |
111 | If tCo deTable="" { | |
112 | // mappi ng based o n HS.UI.Re gistry.Pat ients:Ethn icValueLis t and Ethn icDisplayL ist | |
113 | Set tEth Detail.Des cription=$ Case(tEthD etail.Code ,"A":"Afri can","S":" Asian","E" :"European ","I":"Ind ian","L":" Latin Amer ican","M": "Middle Ea stern","P" :"Pacific Islander", "O":"Other ",:"") | |
114 | } Else { | |
115 | Set tCod eOb=##clas s(HS.Regis try.Codes) .IDKeyOpen ($ZCVT(tCo deTable,"U "),$ZCVT(t EthDetail. Code,"U")) | |
116 | If $IsOb ject(tCode Ob) { | |
117 | Set tEthDe tail.SDACo dingStanda rd=tCodeTa ble | |
118 | Set tEthDe tail.Descr iption=tCo deOb.Descr iption | |
119 | } | |
120 | } | |
121 | Set tP at.EthnicG roup=tEthD etail | |
122 | } | |
123 | Set tDOB=pRequ est.DOB Se t:tDOB'="" &&(tDOB'[" ,") tDOB=t DOB_",0" | |
124 | Set: tDOB'="" t Pat.BirthT ime=$ZDT(t DOB,3) | |
125 | Set tPat.Commu nicationPr eference=p Request.Co mmunicatio nPreferenc e | |
126 | For tI=1:1:pRe quest.Requ ests.Count () { | |
127 | Set tR equest=pRe quest.Requ ests.GetAt (tI) | |
128 | If tI= 1 { Set tP at.Entered At=..Coded Organizati on(tReques t.Facility ) } | |
129 | Set tN um=##class (HS.SDA3.P atientNumb er).%New() | |
130 | Set tN um.Number= tRequest.M RN | |
131 | Set tN um.Organiz ation=..Co dedOrganiz ation(tReq uest.Assig ningAuthor ity) | |
132 | Set tN um.NumberT ype="MRN" | |
133 | Do tPa t.PatientN umbers.Ins ert(tNum) | |
134 | } | |
135 | IF p Request.SS N'="" { | |
136 | Set tN um=##Class (HS.SDA3.P atientNumb er).%New() | |
137 | Set tN um.Number= pRequest.S SN | |
138 | Set tN um.NumberT ype="SSN" | |
139 | Do tPa t.PatientN umbers.Ins ert(tNum) | |
140 | } | |
141 | For tI=1:1:pRe quest.Iden tifiers.Co unt() { | |
142 | Set tI dent=pRequ est.Identi fiers.GetA t(tI) | |
143 | Set tN um=##Class (HS.SDA3.P atientNumb er).%New() | |
144 | Set tN um.Number= tIdent.Ext ension | |
145 | Set tN um.NumberT ype=tIdent .Use | |
146 | If 'tN um.NumberT ypeIsValid (tNum.Numb erType) Se t tNum.Num berType="O TH" | |
147 | Set tN um.Organiz ation=..Co dedOrganiz ation(tIde nt.Assigni ngAuthorit yName) | |
148 | Do tPa t.PatientN umbers.Ins ert(tNum) | |
149 | } | |
150 | For tI=1:1:pRe quest.Addr esses.Coun t() { | |
151 | Set tA ddr=pReque st.Address es.GetAt(t I) | |
152 | Set tA d=##Class( HS.SDA3.Ad dress).%Ne w() | |
153 | Set tA d.Street=t Addr.Stree tLine | |
154 | Set tA d.City.Cod e=tAddr.Ci ty, tAd.Ci ty.Descrip tion=tAddr .City | |
155 | Set tA d.State.Co de=tAddr.S tate, tAd. State.Desc ription=tA ddr.State | |
156 | Set tA d.Zip.Code =tAddr.Pos talCode, t Ad.Zip.Des cription=t Addr.Posta lCode | |
157 | Do tPa t.Addresse s.Insert(t Ad) | |
158 | } | |
159 | For tI=1:1:pRe quest.Tele coms.Count () { | |
160 | Set tT ele=pReque st.Telecom s.GetAt(tI ) | |
161 | Set tU se=tTele.U se | |
162 | IF tUs e="H"||(tU se="HP"),t Pat.Contac tInfo.Home PhoneNumbe r="" {Set tPat.Conta ctInfo.Hom ePhoneNumb er=tTele.P honeNumber Full} | |
163 | IF tUs e="WP",tPa t.ContactI nfo.WorkPh oneNumber= "" {Set tP at.Contact Info.WorkP honeNumber =tTele.Pho neNumberFu ll} | |
164 | IF tTe le.Email'= "",tPat.Co ntactInfo. EmailAddre ss="" {Set tPat.Cont actInfo.Em ailAddress =tTele.Ema il} | |
165 | } | |
166 | Set tStrm=##cl ass(HS.SDA 3.Streamle t.Patient) .%New(),tS trm.SDA=tP at,tStrm.A ggregation Key=tAgKey | |
167 | set tStrm.Sour ceMRN=pReq uest.Facil ity_"^"_pR equest.Ass igningAuth ority_"^"_ pRequest.M RN | |
168 | Set tSC=tStrm. SaveStream let() Quit :$$$ISERR( tSC) | |
169 | If ' pRequest.A ggregateOn ly { | |
170 | If $$$ IsViewerRu nning { | |
171 | Set tSC= ##class(we b.SDA3.Loa der).Initi alLoad(tAg Key,tStrm, pRequest.S essionId,. tToken) K ill %codet ables3 Qui t:$$$ISERR (tSC) | |
172 | } Else {Set tTok en=$LB(tAg Key)} | |
173 | } | |
174 | // Q ueue up a purge for non-API ba sed fetche s | |
175 | // A PI based o nes are qu eued for p urge by th e query pr ocess, aft er the dat a has been processed | |
176 | If ' (pRequest. %IsA("HS.M essage.Pat ientBatchQ ueryReques tAsync")) { | |
177 | Set ^H S.Viewer.A GPurgeQ("S ","S-"_pRe quest.Sess ionId,tAgK ey,$H)="" | |
178 | } | |
179 | Set pResponse. Token=tTok en | |
180 | Set pResponse. Sequence=t Sequence,t Start=$ZU( 188) | |
181 | Set tThisGW=## Class(HS.G ateway.Con fig).NameI ndexOpen(# #Class(HS. Util.Insta ller.Confi gItem).Get ThisCompon entName()) .EndPoint | |
182 | Lock +^HS.Fetc hStatus(tS equence,"P end") //ne ed the loc k because multiple j obs might be updatin g the stat us | |
183 | Set ^HS.FetchS tatus(tSeq uence)=$LB (tToken,tS tart,tStar t,"","",pR equest.Ses sionId) // $LB(token, starttime, updatedtim e,complete time,abort time,sessi onID) | |
184 | ||
185 | If ' pRequest.A ggregateOn ly { | |
186 | Set tS C=..SendNo tify("Init ialize",tA gKey,tToke n) Quit:$$ $ISERR(tSC ) Set tIn itialNotif ied=1 | |
187 | Do tSt rm.AGNotif y(tAgKey) | |
188 | } | |
189 | //Fo r each req uest in th e list, cr eate an as ync reques t thinger, log it in the globa l, fire of f remote o perations | |
190 | Set tAudMRNs=" ",tAudMPIs ="" //for audit | |
191 | For tI=1:1:pRe quest.Requ ests.Count () { | |
192 | Set tR equest=##C lass(HS.Me ssage.Pati entFetchRe questAsync ).%New() | |
193 | Set tS C=tRequest .CopyFrom( pRequest.R equests.Ge tAt(tI),.t Request) Q uit:$$$ISE RR(tSC) | |
194 | Set tM RN=tReques t.Facility _"^"_tRequ est.MRN_"^ "_tRequest .Assigning Authority | |
195 | Set tA udMRNs=tAu dMRNs_$LB( tMRN) | |
196 | Set:'$ Listfind(t AudMPIs,tR equest.MPI ID) tAudMP Is=tAudMPI s_$LB(tReq uest.MPIID ) | |
197 | Set tR equest.Add itionalInf o=pRequest .Requests. GetAt(tI). Additional Info //cop yfrom miss es that | |
198 | Set tR equest.SAM LData=pReq uest.Reque sts.GetAt( tI).SAMLDa ta | |
199 | Set tR equest.Fil ters=pRequ est.Reques ts.GetAt(t I).Filters //and tha t | |
200 | Set tR equest.Seq uence=tSeq uence | |
201 | Set tR equest.Ret urnGateway =tThisGW | |
202 | Set tR equest.Tok en=$LG(tTo ken) | |
203 | Set tM atch=pRequ est.Reques ts.GetAt(t I) | |
204 | //copy identifie rs | |
205 | For tJ =1:1:tMatc h.Identifi ers.Count( ) Do tRequ est.Identi fiers.Inse rt(tMatch. Identifier s.GetAt(tJ )) | |
206 | #; Use the demog raphics fr om the fir st patient request. | |
207 | If tI= 1 Set ^HS. FetchStatu s(tSequenc e,"Demogra phics",tMR N)=1 | |
208 | Set ^H S.FetchSta tus(tSeque nce,"Pend" ,tMRN)="", ^HS.FetchS tatus(tSeq uence,"Que ue",tMRN)= "" | |
209 | Set ^H S.FetchSta tus(tSeque nce,"Stats ",tMRN)=$L B($zu(188) ,"","",0," ",1) //$LB (startfetc htime,star tloadtime, completeti me,# of en cs loaded, start date of last e nc loaded, %status) | |
210 | Set tS C=..SendRe questAsync (..Gateway Operations ,tRequest) | |
211 | } | |
212 | If . .FetchRegi stryData { | |
213 | Set tR equest=##c lass(HS.Me ssage.Regi strySDAReq uest).%New (),tReques t.MPIID=pR equest.MPI ID | |
214 | Set tR equest.Not ifyOperati ons=..%Con figName, t Request.Se quence=tSe quence | |
215 | // Be careful wi th changin g this MRN . Currentl y it is us ed by EPRF etchNotifi cation() | |
216 | // as well as we b.SDA3.Loa der:OnAfte rContainer Load() (at least) | |
217 | Set tM RN="Regist ry^Registr y^" | |
218 | Set ^H S.FetchSta tus(tSeque nce,"Pend" ,tMRN)="", ^HS.FetchS tatus(tSeq uence,"Que ue",tMRN)= "" | |
219 | Set ^H S.FetchSta tus(tSeque nce,"Stats ",tMRN)=$L B($zu(188) ,"","",0," ",1) //$LB (startfetc htime,star tloadtime, completeti me,# of en cs loaded, start date of last e nc loaded, %status) | |
220 | Set tS C=..SendRe questSync( ..Registry Operations ,tRequest, .tResponse ) | |
221 | IF $$$ ISERR(tSC) { | |
222 | Set tRes ponse=##Cl ass(HS.Mes sage.EPRFe tchNotific ation).%Ne w(),tRespo nse.Status =tSC | |
223 | } Else { | |
224 | Set tRes ponse.Faci lity="Regi stry",tRes ponse.MRN= "Registry" ,tResponse .Assigning Authority= "",tRespon se.Validat ed=1 | |
225 | Set tRes ponse.Stat us=$$$OK | |
226 | } | |
227 | Set tS C=..EPRFet chNotifica tion(tResp onse,.tDum my) | |
228 | } | |
229 | Lock -^HS.Fetc hStatus(tS equence,"P end") | |
230 | Quit :$$$ISERR( tSC) | |
231 | //Au dit the re quest | |
232 | IF p Request.%I sA("HS.Mes sage.Patie ntBatchQue ryRequestA sync") { | |
233 | Set tS C=$$$HSAud itExportRe cords(.tLo gID,pReque st.Request Id,pReques t.Requesti ngUser,pRe quest.Requ estingUser Roles,pReq uest.Reque stingGatew ay,tAudMRN s,..%Sessi onId,pRequ est.Reques tingForPro xyUserID,t AudName,tA udMPIs) | |
234 | } El se { | |
235 | Set tS C=$$$HSAud itViewReco rds(.tLogI D,pRequest .RequestId ,pRequest. Requesting User,pRequ est.Reques tingUserRo les,pReque st.Request ingGateway ,tAudMRNs, ..%Session Id,pReques t.Requesti ngForProxy UserID,tAu dName,tAud MPIs) | |
236 | } | |
237 | Quit :$$$ISERR( tSC) | |
238 | //Lo op on .1 s econd boun dary until wait time has passe d or '$D(q ueue) | |
239 | Set tWaitPerio d=..WaitPe riod, tWai tTimeoutEr ror=..Wait TimeoutErr or | |
240 | IF p Request.%I sA("HS.Mes sage.Patie ntBatchQue ryRequestA sync") { | |
241 | Set tW aitPeriod= pRequest.W aitPeriod, tWaitTime outError=p Request.Wa itTimeoutE rror | |
242 | } | |
243 | For tI=0:100:t WaitPeriod -1 Hang .1 Quit:'$D( ^HS.FetchS tatus(tSeq uence,"Que ue")) | |
244 | Set tMRN="" | |
245 | Set pResponse. Token=tTok en | |
246 | For { | |
247 | Set tM RN=$O(^HS. FetchStatu s(tSequenc e,"Stats", tMRN),1,tS tat) Quit: tMRN="" | |
248 | Do pRe sponse.Fac ility.Inse rt($P(tMRN ,"^")) | |
249 | IF $$$ ISERR($LG( tStat,6)) { | |
250 | Do pResp onse.Reque stStatus.I nsert($LG( tStat,6)) | |
251 | Kill ^HS .FetchStat us(tSequen ce,"Pend", tMRN),^HS. FetchStatu s(tSequenc e,"Queue", tMRN) | |
252 | } ELSE IF '$D(^HS .FetchStat us(tSequen ce,"Pend", tMRN))!('t WaitTimeou tError) { | |
253 | DO pResp onse.Reque stStatus.I nsert($$$O K) | |
254 | } Else { | |
255 | Set $Lis t(^HS.Fetc hStatus(tS equence),5 )=$ZU(188) //abort a dditional fetches | |
256 | Set tRes ult = $$$H SError($$$ HSErrReque stTimeout, $P(tMRN,"^ "),(tWaitP eriod/1000 )) | |
257 | Do pResp onse.Reque stStatus.I nsert(tRes ult) | |
258 | } | |
259 | } | |
260 | } While (0) | |
261 | Exit | |
262 | If tInitialN otified{ | |
263 | If $ $$ISERR(tS C) {Do ..S endNotify( "Abort",tA gKey,tToke n,tSC)} | |
264 | Else If $LG(^HS .FetchStat us(tSequen ce),5) {Do ..SendNot ify("Abort ",tAgKey,t Token,$$$E RROR($$$HS ErrRequest Timeout))} | |
265 | Else If $D(^HS. FetchStatu s(tSequenc e,"Queue") ) {Do ..Se ndNotify(" WaitTimeou t",tAgKey, tToken)} | |
266 | } | |
267 | $$ $HSPerfEnd | |
268 | Qu it tSC | |
269 | Trap | |
270 | Se t $ZT="",t SC=$$$EnsS ystemError | |
271 | IF $D(tSeque nce),$D(^H S.FetchSta tus(tSeque nce)) { | |
272 | Set $List(^HS. FetchStatu s(tSequenc e),5)=$ZU( 188) | |
273 | } | |
274 | Se t tMRN="" | |
275 | Fo r { | |
276 | Set tMRN=$O(^H S.FetchSta tus(tSeque nce,"Pend" ,tMRN)) Qu it:tMRN="" | |
277 | Do p Response.F acility.In sert($P(tM RN,"^")) | |
278 | Do p Response.R equestStat us.Insert( tSC) | |
279 | } | |
280 | ||
281 | Go to Exit | |
282 | ]]> | |
283 | </Implemen tation> | |
284 | </Method> | |
285 | </Class> | |
286 | ||
287 | ||
288 | <Class | |
289 | name="HS.L ocal.VA.HS .Access.CD A.HS.Gatew ay.Access. QueryProce ss" | |
290 | > | |
291 | <Descripti on> | |
292 | Custom que ry process to fix do c filter ( fixed afte r 15.03) | |
293 | </Descript ion> | |
294 | <Super> | |
295 | HS.Gateway .Access.Qu eryProcess | |
296 | </Super> | |
297 | <TimeChang ed> | |
298 | 65051,4186 8.901283 | |
299 | </TimeChan ged> | |
300 | <TimeCreat ed> | |
301 | 65015,3411 1.511102 | |
302 | </TimeCrea ted> | |
303 | ||
304 | <Method | |
305 | name="OnIn it" | |
306 | > | |
307 | <ReturnTyp e> | |
308 | %Status | |
309 | </ReturnTy pe> | |
310 | <Implement ation> | |
311 | <![CDATA[ | |
312 | Se t %HSTrans former = # #class(HS. Local.VA.H S.Access.C DA.HS.Util .XSLTTrans former).%N ew() | |
313 | Qu it ##super () | |
314 | ]]> | |
315 | </Implemen tation> | |
316 | </Method> | |
317 | ||
318 | <Method | |
319 | name="OnRe quest" | |
320 | > | |
321 | <FormalSpe c> | |
322 | pRequest:H S.Message. SearchAndF etchReques t,*pRespon se:HS.Mess age.Search AndFetchRe sponse | |
323 | </FormalSp ec> | |
324 | <ReturnTyp e> | |
325 | %Status | |
326 | </ReturnTy pe> | |
327 | <Implement ation> | |
328 | <![CDATA[ | |
329 | #d im tSC As %Status | |
330 | Se t pRespons e=##class( HS.Message .SearchAnd FetchRespo nse).%New( ) | |
331 | Se t tSC=$$$O K,$ZT="Tra p" | |
332 | Se t tAgKey=" " | |
333 | ||
334 | Do { | |
335 | If p Request.Fo rmat = "CU STOM" { | |
336 | Set tS C = ..Send RequestSyn c(pRequest .CustomOpe ration, pR equest, .p Response) | |
337 | Quit | |
338 | } | |
339 | #dim tRequest As HS.Mess age.Patien tSearchReq uest | |
340 | //Co nstruct a patient se arch reque st | |
341 | Set tRequest=# #Class(HS. Message.Pa tientSearc hRequest). %New() | |
342 | Set tResponse= ##Class(HS .Message.P atientSear chResponse ).%New() | |
343 | IF p Request.MP IID'="" { | |
344 | Set tR equest.MPI ID=pReques t.MPIID | |
345 | } El seIf (pReq uest.MRN'= "")&&(pReq uest.Assig ningAuthor ity'="") { | |
346 | Set tR equest.MRN =pRequest. MRN | |
347 | Set tR equest.Ass igningAuth ority=pReq uest.Assig ningAuthor ity | |
348 | } El seIf (pReq uest.SSN'= "") { | |
349 | Set tR equest.SSN =pRequest. SSN | |
350 | } El seIf (pReq uest.Analy ticsID'="" ) { | |
351 | Set tR equest.Ana lyticsID=p Request.An alyticsID | |
352 | } El se { | |
353 | Set tS C = $$NotF oundErr() Quit | |
354 | } | |
355 | //Fo r the sear ch request , if the i nfotype fi lter inclu des "PAT", don't do MPI filter ing, | |
356 | //be cause by d efinition any record contains PAT (and a lso there' s no InfoT ype index for these) | |
357 | Set tGotPATFil t=0 | |
358 | For tFiltNum=1 :1:pReques t.Filters. InfoTypes. Count() { | |
359 | IF pRe quest.Filt ers.InfoTy pes.GetAt( tFiltNum)= "PAT" {Set tGotPATFi lt=1 Quit} | |
360 | } | |
361 | Set: 'tGotPATFi lt tReques t.InfoType s=pRequest .Filters.I nfoTypes | |
362 | Set tRequest.I gnoreSecon daryMPI=pR equest.Ign oreSeconda ryMPI | |
363 | Set tSC=##Clas s(HS.Types .RequestIn fo).CopyFr om(pReques t,.tReques t) Quit:$$ $ISERR(tSC ) | |
364 | //Pe rform the search | |
365 | Set tSC=..Send RequestSyn c(..MPIOpe rations,tR equest,.tR esponse) Q uit:$$$ISE RR(tSC) | |
366 | For tI=tRespon se.Results .Count():- 1:1 { | |
367 | //remo ve any mat ches with unconsente d demograp hics | |
368 | Do:tRe sponse.Res ults.GetAt (tI).MRN=" " tRespons e.Results. RemoveAt(t I) | |
369 | } | |
370 | If ' tResponse. Results.Co unt() { | |
371 | // No matches .. . | |
372 | Set tS C = $$NotF oundErr() Quit | |
373 | } | |
374 | ||
375 | // N ow, proces s the resu lts into a batch fet ch request | |
376 | #dim tBatchReq uest As HS .Message.P atientBatc hQueryRequ estAsync | |
377 | #dim tBatchRes ponse As H S.Message. PatientBat chFetchRes ponseAsync | |
378 | #dim tIndex As %Integer | |
379 | Set tBatchRequ est = ##cl ass(HS.Mes sage.Patie ntBatchQue ryRequestA sync).%New () | |
380 | Set tBest=tRes ponse.MPII DList.GetA t(1) | |
381 | Set tSC=##Clas s(HS.Types .PatientIn fo).CopyFr om(tBest,. tBatchRequ est) Quit: $$$ISERR(t SC) | |
382 | Set tSC=##Clas s(HS.Types .RequestIn fo).CopyFr om(pReques t,.tBatchR equest) Qu it:$$$ISER R(tSC) | |
383 | Set tBatchRequ est.WaitPe riod=pRequ est.WaitPe riod | |
384 | Set tBatchRequ est.WaitTi meoutError =pRequest. WaitTimeou tError | |
385 | Set tSC=##clas s(HS.IHE.U til).Merge Additional Info(pRequ est,.tBatc hRequest) Quit:$$$IS ERR(tSC) | |
386 | Set tBatchRequ est.Addres ses=tBest. Addresses, tBatchRequ est.Teleco ms=tBest.T elecoms,tB atchReques t.Identifi ers=tBest. Identifier s | |
387 | //cu stom add b egin DEP 1 2/12/28 | |
388 | Set tBatchRequ est.Extens ion=tBest. Extension | |
389 | Set tBatchRequ est.BirthP lace=tBest .BirthPlac e | |
390 | //cu stom add e nd DEP 12/ 12/28 | |
391 | Try { | |
392 | Set tS essionId=% session.Se ssionId | |
393 | } Ca tch { | |
394 | Set tS essionId = $JOB | |
395 | } | |
396 | Set tBatchRequ est.Sessio nId = tSes sionId | |
397 | Set tBatchRequ est.Reques tId=tRespo nse.Reques tId | |
398 | Set tBatchRequ est.Aggreg ateOnly=1 | |
399 | ||
400 | #; C USTOM: sav e doc numb er for man ual filter ing later | |
401 | If p Request.Fi lters'="", pRequest. Filters.Do cumentNumb ers.Count( )>0 { | |
402 | Set tD ocNumber = pRequest. Filters.Do cumentNumb ers.GetAt( 1) | |
403 | Do pRe quest.Filt ers.Docume ntNumbers. Clear() | |
404 | } | |
405 | ||
406 | If p Request.Fi lters'="", pRequest.F ilters.Inf oTypes.Cou nt()||pReq uest.Filte rs.Dates.C ount()||pR equest.Fil ters.Visit Numbers.Co unt() { | |
407 | Set tU seFilters= 1 | |
408 | } El se { | |
409 | Set tU seFilters= 0 | |
410 | } | |
411 | ||
412 | #; C USTOM: for performan ce only is sue one fe tch if XDS encounter /document context | |
413 | Set xdsEncount er = pRequ est.Additi onalInfo.G etAt("xdsb Context:Vi sitNumber" ) | |
414 | Set xdsMRN = p Request.Ad ditionalIn fo.GetAt(" xdsbContex t:MRN") | |
415 | Set xdsAA = pR equest.Add itionalInf o.GetAt("x dsbContext :Assigning Authority" ) | |
416 | Set xdsFacilit y = pReque st.Additio nalInfo.Ge tAt("xdsbC ontext:Fac ility") | |
417 | ||
418 | For tIndex = 1 :1:tRespon se.Results .Count() { | |
419 | #dim t Match As H S.Message. PatientSea rchMatch | |
420 | #dim t Fetch As H S.Message. PatientFet chRequestA sync | |
421 | Set tM atch = tRe sponse.Res ults.GetAt (tIndex) | |
422 | If ..E xcludeExte rnalFacili ties { | |
423 | Set tFac ility = tM atch.Facil ity | |
424 | If ##cla ss(HS.Faci lity.Confi g).%Exists Id(tFacili ty) && (## class(HS.F acility.Co nfig).Exte rnalHIEGet Stored(tFa cility)) C ontinue | |
425 | } | |
426 | #; CUS TOM: only issue one fetch if X DS encount er/documen t context | |
427 | If xds Encounter] "" { | |
428 | Continue :xdsMRN'=t Match.MRN | |
429 | Continue :xdsAA'=tM atch.Assig ningAuthor ity | |
430 | Continue :xdsFacili ty'=tMatch .Facility | |
431 | } | |
432 | Set tF etch = ##c lass(HS.Me ssage.Pati entFetchRe questAsync ).%New() | |
433 | Set tS C=##Class( HS.Types.R equestInfo ).CopyFrom (pRequest, .tFetch) Q uit:$$$ISE RR(tSC) | |
434 | Set tS C=##class( HS.IHE.Uti l).MergeAd ditionalIn fo(tMatch, .tFetch) Q uit:$$$ISE RR(tSC) | |
435 | Set tF etch.MRN = tMatch.MR N | |
436 | Set tF etch.MPIID = tMatch. MPIID | |
437 | Set tF etch.Assig ningAuthor ity = tMat ch.Assigni ngAuthorit y | |
438 | Set tF etch.Facil ity = tMat ch.Facilit y | |
439 | Set tF etch.Gatew ay = tMatc h.Gateway | |
440 | Set tF etch.Conse nt = tMatc h.Consent | |
441 | Set tF etch.Filte rs = pRequ est.Filter s | |
442 | Set tF etch.UseFi lters=tUse Filters | |
443 | Set tF etch.Reque stId=tResp onse.Reque stId | |
444 | //copy identifie rs | |
445 | For tI =1:1:tMatc h.Identifi ers.Count( ) Do tFetc h.Identifi ers.Insert (tMatch.Id entifiers. GetAt(tI)) | |
446 | // Add this | |
447 | Do tBa tchRequest .Requests. Insert(tFe tch) | |
448 | } | |
449 | //Pe rform the fetches | |
450 | Set tSC = ..Se ndRequestS ync(..EPRT arget,tBat chRequest, .tBatchRes ponse) Qui t:$$$ISERR (tSC) | |
451 | Set tGotOK=0 | |
452 | //Di d we get b ack any OK responses ? Registr ySDAQuery doesn't co unt. | |
453 | For tI=1:1:tBa tchRespons e.RequestS tatus.Coun t() { | |
454 | IF $$$ ISOK(tBatc hResponse. RequestSta tus.GetAt( tI)) && (t BatchRespo nse.Facili ty.GetAt(t I)'="Regis try") {Set tGotOK=1 Quit} | |
455 | } | |
456 | // S etup AgKey so APIs c an setup p urge no ma tter what data comes back. Ma ke sure th ere is act ually a Se quence def ined | |
457 | Set: (tBatchRes ponse.Sequ ence'="") tAgKey="T" _tBatchRes ponse.Sequ ence | |
458 | IF ' tGotOK {Se t tSC = $$ $HSError($ $$HSErrNoS uccessfulR equests,tB atchRespon se.Request Status.Cou nt()) Quit } | |
459 | ||
460 | $$$H STRACE("Ba ck from EP R","reques t,response ",tBatchRe quest,tBat chResponse ) | |
461 | ||
462 | Set tAllowInco mpleteResu lt = $Case (pRequest. AllowIncom pleteResul t,"":..All owIncomple teResult," allow":1," disallow": 0) | |
463 | Set tOneErrore d = 0 | |
464 | For tI=1:1:tBa tchRespons e.RequestS tatus.Coun t() { | |
465 | Set tS C2=tBatchR esponse.Re questStatu s.GetAt(tI ) | |
466 | If $$$ ISERR(tSC2 ) Set:'tAl lowIncompl eteResult tSC = tSC2 Set:tAllo wIncomplet eResult tO neErrored = 1 Quit | |
467 | } | |
468 | Quit :$$$ISERR( tSC) | |
469 | ||
470 | #dim tSDAStrea m As %Glob alCharacte rStream | |
471 | ||
472 | // N ext, grab the XML | |
473 | Set tSC=##Clas s(HS.SDA3. Container) .MakeSDASt ream(tAgKe y,.tSDAStr eam,,,pReq uest.Trans lationProf ile,tOneEr rored) | |
474 | Quit :$$$ISERR( tSC) | |
475 | ||
476 | If t OneErrored Set pResp onse.Incom pleteResul t = 1 | |
477 | ||
478 | do t SDAStream. Rewind() | |
479 | $$$H STRACE("be fore","bef ore",tSDAS tream) | |
480 | do t SDAStream. Rewind() | |
481 | ||
482 | #; C USTOM: fix , manually apply doc filter | |
483 | #; n ot using c ached XSLT Transforme r or file since styl esheet is so small a nd this is just a wo rkaround | |
484 | If $ G(tDocNumb er) '= "" { | |
485 | Try { | |
486 | Set tPar ams("docum entNumber" ) = "'"_tD ocNumber_" '" | |
487 | Set tXSL T = %HSTra nsformer | |
488 | #; ##cla ss(HS.Util .XSLTTrans former).%N ew() | |
489 | $$$Throw OnError(tX SLT.Transf orm(tSDASt ream,"xdat a://"_..%C lassName(1 )_":DocFil terFix",.t Fixed,.tPa rams)) | |
490 | do tFixe d.Rewind() | |
491 | $$$HSTRA CE("after" ,"after",t Fixed) | |
492 | do tFixe d.Rewind() | |
493 | Set tSDA Stream = t Fixed | |
494 | Kill tPa rams | |
495 | } | |
496 | Catch ex { | |
497 | Set tSC = ex.AsSta tus() | |
498 | Quit | |
499 | } | |
500 | } | |
501 | Set tQuickStre am=##Class (HS.SDA3.Q uickStream ).%New() | |
502 | Set tSC=tQuick Stream.Cop yFrom(tSDA Stream) Qu it:$$$ISER R(tSC) | |
503 | IF ( pRequest.F ormat="HTM L")||(pReq uest.Forma t="PDF") { | |
504 | Set tF ormat=pReq uest.Forma t,tId=pReq uest.Repor tCode,tTyp e="Report" | |
505 | } El se { | |
506 | Set tI d=pRequest .Format,tF ormat=tId, tType="XML " | |
507 | } | |
508 | ||
509 | If p Request.Ad ditionalIn fo.GetAt(" DocumentUn iqueId")'= "" Set tPa rams("docu mentUnique Id")="'"_p Request.Ad ditionalIn fo.GetAt(" DocumentUn iqueId")_" '" | |
510 | ||
511 | $$$H STRACESTAR TCALL | |
512 | Set tSC=##Clas s(HS.Repor ts.Patient .ReportRun ).Push(tQu ickStream. %Id(),tTyp e,tId,"",t Format,.pR esponse,.t Params) | |
513 | $$$H STRACEENDC ALL | |
514 | ||
515 | Quit :$$$ISERR( tSC) | |
516 | Do # #Class(HS. Reports.Pa tient.Repo rtRun).Pur geRun(%HSR eportRun) | |
517 | Quit | |
518 | ||
519 | } While (0) | |
520 | Exit | |
521 | // Queue up a purge, i f we have aggregated anything | |
522 | Se t:tAgKey'= "" ^HS.Vie wer.AGPurg eQ("S","AP I",tAgKey, $H)="" | |
523 | Se t pRespons e.tStatus= tSC Quit $ $$OK //un til Ensemb le fix, we have to p ass status in OK mes sage | |
524 | Trap | |
525 | Se t $ZT="",t SC=$$$EnsS ystemError | |
526 | Go to Exit | |
527 | ||
528 | NotFoundEr r() | |
529 | If pRequest. MPIID'="" { | |
530 | Quit $$$HSErro r($$$HSErr MPINotFoun d,pRequest .MPIID) | |
531 | } ElseIf (pR equest.MRN '="")&&(pR equest.Ass igningAuth ority'="") { | |
532 | Quit $$$HSErro r($$$HSErr MRNNotFoun d,pRequest .MRN_"-"_p Request.As signingAut hority) | |
533 | } ElseIf pRe quest.SSN' ="" { | |
534 | Quit $$$HSErro r($$$HSErr SSNNotFoun d,pRequest .SSN) | |
535 | } Else { | |
536 | Quit $$$HSErro r($$$HSErr InvalidReq uest) | |
537 | } | |
538 | ]]> | |
539 | </Implemen tation> | |
540 | </Method> | |
541 | ||
542 | <XData | |
543 | name="DocF ilterFix" | |
544 | > | |
545 | <Descripti on> | |
546 | CUSTOM: Re moves all documents except for the given document | |
547 | </Descript ion> | |
548 | <Data> | |
549 | <![CDATA[ | |
550 | <?xml vers ion="1.0"? > | |
551 | <xsl:style sheet vers ion="1.0" xmlns:xsl= "http://ww w.w3.org/1 999/XSL/Tr ansform"> | |
552 | <x sl:param n ame="docum entNumber" /> | |
553 | <x sl:templat e match="n ode()|@*"> | |
554 | <xsl :copy> | |
555 | <xsl:a pply-templ ates selec t="node()| @*"/> | |
556 | </xs l:copy> | |
557 | </ xsl:templa te> | |
558 | <x sl:templat e match="D ocument[no t(Document Number = $ documentNu mber)]"/> | |
559 | </xsl:styl esheet> | |
560 | ]]> | |
561 | </Data> | |
562 | </XData> | |
563 | ||
564 | <Storage | |
565 | name="Defa ult" | |
566 | > | |
567 | <Type> | |
568 | %Library.C acheStorag e | |
569 | </Type> | |
570 | </Storage> | |
571 | </Class> | |
572 | ||
573 | ||
574 | <Class | |
575 | name="HS.L ocal.VA.HS .Access.CD A.HS.IHE.X DSb.OnDema nd.Process " | |
576 | > | |
577 | <Descripti on> | |
578 | Custom pro cess to sp ecify filt ers | |
579 | </Descript ion> | |
580 | <Super> | |
581 | HS.IHE.XDS b.OnDemand .Process | |
582 | </Super> | |
583 | <TimeChang ed> | |
584 | 65015,3419 6.067273 | |
585 | </TimeChan ged> | |
586 | <TimeCreat ed> | |
587 | 65015,3419 6.067273 | |
588 | </TimeCrea ted> | |
589 | ||
590 | <Method | |
591 | name="Gene rate" | |
592 | > | |
593 | <Descripti on> | |
594 | Override: support do cument con text | |
595 | </Descript ion> | |
596 | <FormalSpe c> | |
597 | pRequest:H S.Message. XMLMessage ,pDocument :HS.IHE.XD Sb.Types.D ocument,*p Attach:HS. IHE.Common .Messages. MIMEAttach ment | |
598 | </FormalSp ec> | |
599 | <ReturnTyp e> | |
600 | %Status | |
601 | </ReturnTy pe> | |
602 | <Implement ation> | |
603 | <![CDATA[ | |
604 | Se t tSC = $$ $OK | |
605 | Tr y { | |
606 | #; C reate the search and fetch req uest | |
607 | #dim tGenerate Request As HS.Messag e.SearchAn dFetchRequ est | |
608 | #dim tGenerate Response A s HS.Messa ge.SearchA ndFetchRes ponse | |
609 | Set tGenerateR equest = # #class(HS. Message.Se archAndFet chRequest) .%New() | |
610 | Set tGenerateR equest.Wai tPeriod = ..WaitPeri od | |
611 | Set tGenerateR equest.Wai tTimeoutEr ror = ..Wa itTimeoutE rror | |
612 | Set tSC = ##cl ass(HS.Typ es.Request Info).XMLM essageToRe questInfo( pRequest,. tGenerateR equest) $$ $ThrowOnEr ror(tSC) | |
613 | Set tGenerateR equest.MPI ID = pDocu ment.Conte xt.MPIID | |
614 | Set tGenerateR equest.MRN = pDocume nt.Context .MRN | |
615 | Set tGenerateR equest.Ass igningAuth ority = pD ocument.Co ntext.Assi gningAutho rity | |
616 | // h ardcode th e name of the Transl ation Prof ile to use until we get a patc h that pro vides | |
617 | // t he name in pDocument .Context.T ransProfil e. | |
618 | Set tGenerateR equest.Tra nslationPr ofile="VA- VHIE" //pD ocument.Co ntext.Tran sProfile | |
619 | ||
620 | #; S et the out put format based on document c ontext | |
621 | If p Document.C ontext.Tra nsformType = "XSLT" { | |
622 | Set tG enerateReq uest.Forma t = pDocum ent.Contex t.Transfor mOption | |
623 | } El se { | |
624 | Set tG enerateReq uest.Forma t = pDocum ent.Contex t.Transfor mType | |
625 | If pDo cument.Con text.Trans formType = "CUSTOM" { | |
626 | Set tGen erateReque st.CustomO peration = pDocument .Context.T ransformOp tion | |
627 | } Else { | |
628 | Set tGen erateReque st.ReportC ode = pDoc ument.Cont ext.Transf ormOption | |
629 | } | |
630 | } | |
631 | ||
632 | #; F ilters | |
633 | If p Document.C ontext.Vis itNumber ' = "" { | |
634 | Set en cNo = $P(p Document.C ontext.Vis itNumber," |",1) | |
635 | Set do cNo = $P(p Document.C ontext.Vis itNumber," |",2) | |
636 | Set tG enerateReq uest.Filte rs = ##cla ss(HS.Type s.Filters) .%New() | |
637 | If enc No '= "" D o tGenerat eRequest.F ilters.Vis itNumbers. Insert(enc No) | |
638 | If doc No'="" { // only fe tch encoun ter and do cument for C62 | |
639 | Do tGene rateReques t.Filters. InfoTypes. Insert("PA T") | |
640 | Do tGene rateReques t.Filters. InfoTypes. Insert("EN C") | |
641 | Do tGene rateReques t.Filters. InfoTypes. Insert("DO C") | |
642 | Do tGene rateReques t.Filters. DocumentNu mbers.Inse rt(docNo) | |
643 | } | |
644 | } | |
645 | ||
646 | #; A dditional filters - used by co nsumer pro cess to en sure a dyn amic docum ent doesn' t try to c onsume its elf | |
647 | If ' ..IgnoreSe condaryMPI { | |
648 | Do tGe nerateRequ est.Additi onalInfo.S etAt(pRequ est.Name," xdsbReques tName") | |
649 | Do tGe nerateRequ est.Additi onalInfo.S etAt(1,"xd sbConsumeO nly") | |
650 | ||
651 | #; Whe n generati ng an on-d emand docu ment, do n ot consume any other dynamic d ocument fr om this re pository | |
652 | Set tT hisReposit oryOID = # #class(HS. Data.OIDMa p).OIDForT ype($names pace,"Repo sitory") | |
653 | Do tGe nerateRequ est.Additi onalInfo.S etAt(tThis Repository OID,"xdsbE xcludeRepo sitory:1") | |
654 | } | |
655 | ||
656 | #; A lways set the xdsbCo ntext:* ke ys for the consumer process | |
657 | #; F or other ( stable and foreign o n-demand) documents, check aga inst the s cope of th is on-dema nd documen t | |
658 | Do t GenerateRe quest.Addi tionalInfo .SetAt(pDo cument.Con text.Assig ningAuthor ity,"xdsbC ontext:Ass igningAuth ority") | |
659 | Do t GenerateRe quest.Addi tionalInfo .SetAt(pDo cument.Con text.Facil ity,"xdsbC ontext:Fac ility") | |
660 | Do t GenerateRe quest.Addi tionalInfo .SetAt(pDo cument.Con text.MPIID ,"xdsbCont ext:MPIID" ) | |
661 | Do t GenerateRe quest.Addi tionalInfo .SetAt(pDo cument.Con text.MRN," xdsbContex t:MRN") | |
662 | Do t GenerateRe quest.Addi tionalInfo .SetAt($G( encNo),"xd sbContext: VisitNumbe r") | |
663 | Do t GenerateRe quest.Addi tionalInfo .SetAt($G( docNo),"xd sbContext: DocumentNu mber") | |
664 | Do t GenerateRe quest.Addi tionalInfo .SetAt(pDo cument.Uni queId,"Doc umentUniqu eId") | |
665 | ||
666 | #; F orward hos t settings | |
667 | Set tGenerateR equest.Sea rchMode = ..SearchMo de | |
668 | Set tGenerateR equest.Ign oreSeconda ryMPI = .. IgnoreSeco ndaryMPI | |
669 | ||
670 | #; S end search and fetch | |
671 | Set tSC = ..Se ndRequestS ync(..Quer yProcess, tGenerateR equest, .t GenerateRe sponse) | |
672 | If $ IsObject(t GenerateRe sponse) { | |
673 | #; not hing in th e response | |
674 | If tGe nerateResp onse.XMLDa ta.Size=0, tGenerateR esponse.HT MLData.Siz e=0,tGener ateRespons e.BinaryDa ta.Size=0 { | |
675 | #; if th e response status is that the MPI is not found, it was filte red by con sent, atta ch an empt y document | |
676 | If $$$IS ERR(tGener ateRespons e.tStatus) && ($syst em.Status. GetErrorCo des(tGener ateRespons e.tStatus) ["MPINotFo und") { | |
677 | Se t tGenerat eResponse. tStatus=$$ $OK | |
678 | Se t tSC = ## class(Ens. Util.URLSt ream).GetU RLStream(" xdata://"_ ..%ClassNa me(1)_":Em ptyRespons e", .tResp onseDocume nt) | |
679 | Do :$$$ISOK(t SC) tGener ateRespons e.XMLData. CopyFrom(t ResponseDo cument) | |
680 | } Else { | |
681 | Set tSC = $$$ERROR($ $$GeneralE rror,"No p atient dat a found fo r On Deman d document ") | |
682 | } | |
683 | } | |
684 | } | |
685 | $$$T hrowOnErro r(tSC) | |
686 | $$$T hrowOnErro r(tGenerat eResponse. tStatus) | |
687 | ||
688 | #; C reate the attachemen t | |
689 | Set pAttach = ##class(HS .IHE.Commo n.Messages .MIMEAttac hment).%Ne w() | |
690 | Set pAttach.Co ntentTrans ferEncodin g = "binar y" | |
691 | If t GenerateRe quest.Form at="PDF" { | |
692 | Set pA ttach.Cont entType = "applicati on/pdf" | |
693 | Set tS C = pAttac h.Body.Cop yFrom(tGen erateRespo nse.Binary Data) | |
694 | } | |
695 | If t GenerateRe quest.Form at="CUSTOM " { | |
696 | Set pA ttach.Cont entType = "applicati on/octet-s tream" | |
697 | Set tS C = pAttac h.Body.Cop yFrom(tGen erateRespo nse.Binary Data) | |
698 | } | |
699 | Else If tGenera teRequest. Format="HT ML" { | |
700 | Set pA ttach.Cont entType = "text/html " | |
701 | Set tS C = pAttac h.Body.Cop yFrom(tGen erateRespo nse.HTMLDa ta) | |
702 | } | |
703 | Else { | |
704 | Set pA ttach.Cont entType = "text/xml" | |
705 | Set tS C = pAttac h.Body.Cop yFrom(tGen erateRespo nse.XMLDat a) | |
706 | } | |
707 | $$$T hrowOnErro r(tSC) | |
708 | ||
709 | } Catch ex { Set tSC = ex.AsStat us() } | |
710 | Qu it tSC | |
711 | ]]> | |
712 | </Implemen tation> | |
713 | </Method> | |
714 | ||
715 | <Storage | |
716 | name="Defa ult" | |
717 | > | |
718 | <Type> | |
719 | %Library.C acheStorag e | |
720 | </Type> | |
721 | </Storage> | |
722 | </Class> | |
723 | ||
724 | ||
725 | <Class | |
726 | name="HS.L ocal.VA.HS .Access.CD A.HS.Util. XSLTHelper " | |
727 | > | |
728 | <Super> | |
729 | HS.Util.XS LTHelper | |
730 | </Super> | |
731 | <TimeChang ed> | |
732 | 65015,3427 0.068546 | |
733 | </TimeChan ged> | |
734 | <TimeCreat ed> | |
735 | 65015,3427 0.068546 | |
736 | </TimeCrea ted> | |
737 | ||
738 | <Method | |
739 | name="eval uate" | |
740 | > | |
741 | <FormalSpe c> | |
742 | Args... | |
743 | </FormalSp ec> | |
744 | <ReturnTyp e> | |
745 | %String | |
746 | </ReturnTy pe> | |
747 | <Implement ation> | |
748 | <![CDATA[ | |
749 | If Args(1)=" dateAdd" { | |
750 | Quit ..dateAdd (Args(2), $NUMBER(Ar gs(3),"I") , $Get(Arg s(4), $ZDa teTime($Ho rolog, 3)) ) | |
751 | } ElseIf Arg s(1)="stsT ranslate" { | |
752 | Quit ..stsTran slate(Args (2), Args( 3), Args(4 ), Args(5) ) | |
753 | } | |
754 | Se t tSc = ## super(Args ...) | |
755 | Qu it tSc | |
756 | ZT RAP "BAD:" _$g(Args(1 )) | |
757 | ]]> | |
758 | </Implemen tation> | |
759 | </Method> | |
760 | ||
761 | <Method | |
762 | name="date Add" | |
763 | > | |
764 | <ClassMeth od> | |
765 | 1 | |
766 | </ClassMet hod> | |
767 | <FormalSpe c> | |
768 | pDatePart: %String="" ,pIntExp:% Integer="" ,pStartDat eODBCForma t:%String= {$ZDateTim e($Horolog , 3)} | |
769 | </FormalSp ec> | |
770 | <ReturnTyp e> | |
771 | %Integer | |
772 | </ReturnTy pe> | |
773 | <Implement ation> | |
774 | <![CDATA[ | |
775 | #d im eExcept ion As %Ex ception.Ab stractExce ption | |
776 | ||
777 | Tr y { | |
778 | Set tDateAdd = $System.S QL.DATEADD (pDatePart , pIntExp, pStartDat eODBCForma t) | |
779 | } | |
780 | Ca tch eExcep tion { | |
781 | Set tDateAdd = "" | |
782 | } | |
783 | ||
784 | Qu it tDateAd d | |
785 | ]]> | |
786 | </Implemen tation> | |
787 | </Method> | |
788 | ||
789 | <Method | |
790 | name="stsT ranslate" | |
791 | > | |
792 | <ClassMeth od> | |
793 | 1 | |
794 | </ClassMet hod> | |
795 | <FormalSpe c> | |
796 | pFromCS:%S tring="",p FromCode:% String="", pToCS:%Str ing="",pTy pe:%String ="" | |
797 | </FormalSp ec> | |
798 | <ReturnTyp e> | |
799 | %String | |
800 | </ReturnTy pe> | |
801 | <Implement ation> | |
802 | <![CDATA[ | |
803 | #d im eExcept ion As %Ex ception.Ab stractExce ption | |
804 | Se t tCode = "" | |
805 | Tr y { | |
806 | If p Type = "de sc" { | |
807 | Set tS c = ##clas s(HS.Local .VA.Termin ology.Cust omTranslat ionProfile ).Map("", pFromCS, " ", pFromCo de, .pToCS , .tCode, .tCode) | |
808 | } El se { | |
809 | Set tS c = ##clas s(HS.Local .VA.Termin ology.Cust omTranslat ionProfile ).Map("", pFromCS, p FromCode, "", .pToCS , .tCode, .tCode) | |
810 | } | |
811 | } | |
812 | Ca tch eExcep tion { | |
813 | } | |
814 | Qu it tCode | |
815 | ]]> | |
816 | </Implemen tation> | |
817 | </Method> | |
818 | </Class> | |
819 | ||
820 | ||
821 | <Class | |
822 | name="HS.L ocal.VA.HS .Access.CD A.HS.Util. XSLTTransf ormer" | |
823 | > | |
824 | <Super> | |
825 | HS.Util.XS LTTransfor mer | |
826 | </Super> | |
827 | <TimeChang ed> | |
828 | 65015,3398 1.465596 | |
829 | </TimeChan ged> | |
830 | <TimeCreat ed> | |
831 | 65015,3398 1.465596 | |
832 | </TimeCrea ted> | |
833 | ||
834 | <Method | |
835 | name="Init ialize" | |
836 | > | |
837 | <ReturnTyp e> | |
838 | %Status | |
839 | </ReturnTy pe> | |
840 | <Implement ation> | |
841 | <![CDATA[ | |
842 | Se t ..XSLTCa llbackHand lerClass=" HS.Local.V A.HS.Acces s.CDA.HS.U til.XSLTHe lper" | |
843 | Qu it ##super () | |
844 | ]]> | |
845 | </Implemen tation> | |
846 | </Method> | |
847 | </Class> | |
848 | ||
849 | ||
850 | <Class | |
851 | name="HS.L ocal.VA.HS .Access.CD A.Producti on" | |
852 | > | |
853 | <Descripti on> | |
854 | An example productio n showing a HealthSh are Viewer configura tion | |
855 | </Descript ion> | |
856 | <IncludeCo de> | |
857 | HS.Common | |
858 | </IncludeC ode> | |
859 | <Procedure Block> | |
860 | 1 | |
861 | </Procedur eBlock> | |
862 | <Super> | |
863 | HS.Util.Ab stractProd uction | |
864 | </Super> | |
865 | <TimeChang ed> | |
866 | 65026,4738 5.700344 | |
867 | </TimeChan ged> | |
868 | <TimeCreat ed> | |
869 | 65015,3393 7.108836 | |
870 | </TimeCrea ted> | |
871 | ||
872 | <Property | |
873 | name="Imag eViewerInt egration" | |
874 | > | |
875 | <Descripti on> | |
876 | The extern al image v iewing ser vice that HealthShar e is integ rated with . This is optional. The effect s of | |
877 | this setti ng may dep end on its value. Se e the docu mentation for more i nformation . | |
878 | </Descript ion> | |
879 | <Type> | |
880 | %String | |
881 | </Type> | |
882 | <Parameter | |
883 | name="DISP LAYLIST" | |
884 | value=",,e Health Glo bal enable d" | |
885 | /> | |
886 | <Parameter | |
887 | name="VALU ELIST" | |
888 | value=",,e HGT" | |
889 | /> | |
890 | </Property > | |
891 | ||
892 | <Property | |
893 | name="UseU MLSForDocu mentNaviga tion" | |
894 | > | |
895 | <Descripti on> | |
896 | Whether to match con cepts foun d in docue mts to hig h-level co ncepts in the UMLS m etathesaur us, | |
897 | which allo ws filteri ng and dis play based on specif ic medical terms and high-leve l concepts . | |
898 | </Descript ion> | |
899 | <Type> | |
900 | %Boolean | |
901 | </Type> | |
902 | <InitialEx pression> | |
903 | 0 | |
904 | </InitialE xpression> | |
905 | </Property > | |
906 | ||
907 | <Parameter | |
908 | name="SETT INGS" | |
909 | > | |
910 | <Default> | |
911 | ImageViewe rIntegrati on,UseUMLS ForDocumen tNavigatio n | |
912 | </Default> | |
913 | </Paramete r> | |
914 | ||
915 | <Method | |
916 | name="OnSt art" | |
917 | > | |
918 | <Descripti on> | |
919 | Called wh en the Pro duction st arts | |
920 | </Descript ion> | |
921 | <ClassMeth od> | |
922 | 1 | |
923 | </ClassMet hod> | |
924 | <FormalSpe c> | |
925 | pTimeStart ed:%String | |
926 | </FormalSp ec> | |
927 | <ReturnTyp e> | |
928 | %Status | |
929 | </ReturnTy pe> | |
930 | <Implement ation> | |
931 | <![CDATA[ | |
932 | set sc=## super(pTim eStarted) if 'sc qui t sc | |
933 | set:$$$Ch eckCompone ntStatus(" VIEWER") s c=##class( HS.SDA3.Co ntainer).P urgeAllDat a() | |
934 | quit sc | |
935 | ]]> | |
936 | </Implemen tation> | |
937 | </Method> | |
938 | ||
939 | <XData | |
940 | name="Prod uctionDefi nition" | |
941 | > | |
942 | <Data> | |
943 | <![CDATA[ | |
944 | <Productio n Name="HS .Local.VA. HS.Access. CDA.Produc tion" Test ingEnabled ="true" Lo gGeneralTr aceEvents= "false"> | |
945 | <Descrip tion>Acces s gateway production specifica lly for VD IF XDS.b Q D/RD</Desc ription> | |
946 | <ActorPo olSize>3</ ActorPoolS ize> | |
947 | <Setting Target="P roduction" Name="Shu tdownTimeo ut">10</Se tting> | |
948 | <Item Na me="HS.Gat eway.Acces s.Manager" Category= "" ClassNa me="HS.Gat eway.Acces s.Manager" PoolSize= "0" Enable d="true" F oreground= "false" Di sableError Traps="fal se" Commen t="" LogTr aceEvents= "false" Sc hedule=""> | |
949 | <Setti ng Target= "Host" Nam e="Inactiv ityTimeout ">0</Setti ng> | |
950 | <Setti ng Target= "Host" Nam e="FetchRe gistryData ">1</Setti ng> | |
951 | <Setti ng Target= "Host" Nam e="TraceOp erations"> </Setting> | |
952 | </Item> | |
953 | <Item Na me="HUB" C ategory="" ClassName ="HS.Hub.H SWS.Remote Operations " PoolSize ="0" Enabl ed="true" Foreground ="false" D isableErro rTraps="fa lse" Comme nt="" LogT raceEvents ="false" S chedule="" > | |
954 | <Setti ng Target= "Host" Nam e="Inactiv ityTimeout ">0</Setti ng> | |
955 | <Setti ng Target= "Host" Nam e="Service Name">HSRE GISTRY</Se tting> | |
956 | </Item> | |
957 | <Item Na me="GATEWA Y" Categor y="" Class Name="HS.G ateway.HSW S.RemoteOp erations" PoolSize=" 2" Enabled ="true" Fo reground=" false" Dis ableErrorT raps="fals e" Comment ="" LogTra ceEvents=" false" Sch edule=""> | |
958 | <Setti ng Target= "Host" Nam e="Inactiv ityTimeout ">0</Setti ng> | |
959 | </Item> | |
960 | <Item Na me="HS.Vie wer.Servic es" Catego ry="" Clas sName="HS. Viewer.Ser vices" Poo lSize="0" Enabled="t rue" Foreg round="fal se" Disabl eErrorTrap s="false" Comment="" LogTraceE vents="fal se" Schedu le=""> | |
961 | <Setti ng Target= "Host" Nam e="Inactiv ityTimeout ">0</Setti ng> | |
962 | </Item> | |
963 | <Item Na me="HS.Uti l.Maintena nceService " Category ="" ClassN ame="HS.Ut il.Mainten anceServic e" PoolSiz e="1" Enab led="true" Foregroun d="false" Comment="" LogTraceE vents="fal se" Schedu le=""> | |
964 | <Setti ng Target= "Host" Nam e="Inactiv ityTimeout ">0</Setti ng> | |
965 | <Setti ng Target= "Adapter" Name="Call Interval"> 60</Settin g> | |
966 | </Item> | |
967 | <Item Na me="HS.Gat eway.Acces s.QueryPro cess" Cate gory="" Cl assName="H S.Gateway. Access.Que ryProcess" PoolSize= "0" Enable d="true" F oreground= "false" Co mment="" L ogTraceEve nts="false " Schedule =""> | |
968 | <Setti ng Target= "Host" Nam e="Inactiv ityTimeout ">0</Setti ng> | |
969 | </Item> | |
970 | <Item Na me="HS.Gat eway.Acces s.WebServi ces" Categ ory="" Cla ssName="HS .Gateway.A ccess.WebS ervices" P oolSize="0 " Enabled= "true" For eground="f alse" Comm ent="" Log TraceEvent s="false" Schedule=" "> | |
971 | <Setti ng Target= "Host" Nam e="Inactiv ityTimeout ">0</Setti ng> | |
972 | <Setti ng Target= "Host" Nam e="Registe rGatewayOn Startup">1 </Setting> | |
973 | <Setti ng Target= "Host" Nam e="Resourc eRequired" >%HS_WebSe rvices</Se tting> | |
974 | <Setti ng Target= "Host" Nam e="QueryPr ocess">VA. HS.Gateway .Access.Qu eryProcess </Setting> | |
975 | <Setti ng Target= "Host" Nam e="TraceOp erations"> </Setting> | |
976 | </Item> | |
977 | <Item Na me="HS.Gat eway.Acces s.Push.Del iveryManag er" Catego ry="" Clas sName="HS. Gateway.Ac cess.Push. DeliveryMa nager" Poo lSize="1" Enabled="t rue" Foreg round="fal se" Commen t="" LogTr aceEvents= "false" Sc hedule=""> | |
978 | <Setti ng Target= "Host" Nam e="Inactiv ityTimeout ">0</Setti ng> | |
979 | </Item> | |
980 | <Item Na me="HS.Uti l.Trace.Op erations" Category=" " ClassNam e="HS.Util .Trace.Ope rations" P oolSize="1 " Enabled= "true" For eground="f alse" Comm ent="" Log TraceEvent s="false" Schedule=" "> | |
981 | </Item> | |
982 | <Item Na me="HS.Gat eway.Acces s.Push.Fil eSampleOpe ration" Ca tegory="" ClassName= "HS.Gatewa y.Access.P ush.FileSa mpleOperat ion" PoolS ize="1" En abled="tru e" Foregro und="false " DisableE rrorTraps= "false" Co mment="" L ogTraceEve nts="false " Schedule =""> | |
983 | <Setti ng Target= "Host" Nam e="Inactiv ityTimeout ">0</Setti ng> | |
984 | <Setti ng Target= "Adapter" Name="File Path">../. ./Data/HSA CCCDA/Out< /Setting> | |
985 | </Item> | |
986 | <Item Na me="HS.Gat eway.Acces s.Push.Fax SampleOper ation" Cat egory="" C lassName=" HS.Gateway .Access.Pu sh.FaxSamp leOperatio n" PoolSiz e="1" Enab led="true" Foregroun d="false" DisableErr orTraps="f alse" Comm ent="" Log TraceEvent s="false" Schedule=" "> | |
987 | <Setti ng Target= "Host" Nam e="Inactiv ityTimeout ">0</Setti ng> | |
988 | <Setti ng Target= "Adapter" Name="Cred entials">S ENDER</Set ting> | |
989 | <Setti ng Target= "Adapter" Name="SMTP Server">ma il.iscinte rnal.com</ Setting> | |
990 | </Item> | |
991 | <Item Na me="HS.Gat eway.Acces s.Push.Dir ectEmailSa mpleOperat ion" Categ ory="" Cla ssName="HS .Gateway.A ccess.Push .DirectEma ilSampleOp eration" P oolSize="1 " Enabled= "true" For eground="f alse" Disa bleErrorTr aps="false " Comment= "" LogTrac eEvents="f alse" Sche dule=""> | |
992 | <Setti ng Target= "Host" Nam e="Inactiv ityTimeout ">0</Setti ng> | |
993 | <Setti ng Target= "Adapter" Name="Cred entials">S ENDER</Set ting> | |
994 | <Setti ng Target= "Adapter" Name="SMTP Server">ma il.iscinte rnal.com</ Setting> | |
995 | </Item> | |
996 | <Item Na me="XDSb R egistry" C ategory="" ClassName ="HS.Util. SOAPClient .Operation s" PoolSiz e="1" Enab led="true" Foregroun d="false" Comment="" LogTraceE vents="fal se" Schedu le=""> | |
997 | <Setti ng Target= "Host" Nam e="Inactiv ityTimeout ">0</Setti ng> | |
998 | <Setti ng Target= "Host" Nam e="Service Name">XDSb .Registry< /Setting> | |
999 | </Item> | |
1000 | <Item Na me="XDSb R epository" Category= "" ClassNa me="HS.Uti l.SOAPClie nt.Operati ons" PoolS ize="1" En abled="tru e" Foregro und="false " Comment= "" LogTrac eEvents="f alse" Sche dule=""> | |
1001 | <Setti ng Target= "Host" Nam e="Inactiv ityTimeout ">0</Setti ng> | |
1002 | <Setti ng Target= "Host" Nam e="Service Name">XDSb .Repositor y</Setting > | |
1003 | </Item> | |
1004 | <Item Na me="HS.IHE .XDSb.Push .Operation s" Categor y="" Class Name="HS.I HE.XDSb.Pu sh.Operati ons" PoolS ize="1" En abled="tru e" Foregro und="false " Comment= "" LogTrac eEvents="f alse" Sche dule=""> | |
1005 | <Setti ng Target= "Host" Nam e="Inactiv ityTimeout ">0</Setti ng> | |
1006 | <Setti ng Target= "Host" Nam e="Reposit oryTarget" >XDSb Repo sitory</Se tting> | |
1007 | </Item> | |
1008 | <Item Na me="HS.IHE .XDSb.Repo sitory.Ser vices" Cat egory="" C lassName=" HS.IHE.XDS b.Reposito ry.Service s" PoolSiz e="0" Enab led="true" Foregroun d="false" Comment="" LogTraceE vents="fal se" Schedu le=""> | |
1009 | <Setti ng Target= "Host" Nam e="Inactiv ityTimeout ">0</Setti ng> | |
1010 | <Setti ng Target= "Host" Nam e="XDSbRet rieveTarge t">VA.HS.I HE.XDSb.On Demand.Pro cess</Sett ing> | |
1011 | </Item> | |
1012 | <Item Na me="HS.IHE .XDSb.OnDe mand.Proce ss" Catego ry="" Clas sName="HS. IHE.XDSb.O nDemand.Pr ocess" Poo lSize="0" Enabled="t rue" Foreg round="fal se" Commen t="" LogTr aceEvents= "false" Sc hedule=""> | |
1013 | <Setti ng Target= "Host" Nam e="WaitPer iod">30000 0</Setting > | |
1014 | </Item> | |
1015 | <Item Na me="HS.IHE .XDSb.Cons umer.Viewe rFetchProc ess" Categ ory="" Cla ssName="HS .IHE.XDSb. Consumer.V iewerFetch Process" P oolSize="0 " Enabled= "true" For eground="f alse" Comm ent="" Log TraceEvent s="false" Schedule=" "> | |
1016 | </Item> | |
1017 | <Item Na me="HS.IHE .XDSb.Cons umer.Opera tions" Cat egory="" C lassName=" HS.IHE.XDS b.Consumer .Operation s" PoolSiz e="1" Enab led="true" Foregroun d="false" Comment="" LogTraceE vents="fal se" Schedu le=""> | |
1018 | <Setti ng Target= "Host" Nam e="XDSbReg istryServi ceName">XD Sb.Query</ Setting> | |
1019 | </Item> | |
1020 | <Item Na me="VA.HS. Gateway.Ac cess.Query Process" C ategory="" ClassName ="HS.Local .VA.HS.Acc ess.CDA.HS .Gateway.A ccess.Quer yProcess" PoolSize=" 0" Enabled ="true" Fo reground=" false" Com ment="" Lo gTraceEven ts="false" Schedule= ""> | |
1021 | <Setti ng Target= "Host" Nam e="Inactiv ityTimeout ">0</Setti ng> | |
1022 | <Setti ng Target= "Host" Nam e="EPRTarg et">VA.HS. Gateway.Ac cess.Manag er</Settin g> | |
1023 | <Setti ng Target= "Host" Nam e="TraceOp erations"> *FULL*</Se tting> | |
1024 | </Item> | |
1025 | <Item Na me="VA.HS. IHE.XDSb.O nDemand.Pr ocess" Cat egory="" C lassName=" HS.Local.V A.HS.Acces s.CDA.HS.I HE.XDSb.On Demand.Pro cess" Pool Size="0" E nabled="tr ue" Foregr ound="fals e" Comment ="" LogTra ceEvents=" false" Sch edule=""> | |
1026 | <Setti ng Target= "Host" Nam e="Inactiv ityTimeout ">0</Setti ng> | |
1027 | <Setti ng Target= "Host" Nam e="QueryPr ocess">VA. HS.Gateway .Access.Qu eryProcess </Setting> | |
1028 | <Setti ng Target= "Host" Nam e="WaitPer iod">30000 0</Setting > | |
1029 | </Item> | |
1030 | <Item Na me="VA.HS. Gateway.Ac cess.Manag er" Catego ry="" Clas sName="HS. Local.VA.H S.Access.C DA.HS.Gate way.Access .Manager" PoolSize=" 0" Enabled ="true" Fo reground=" false" Dis ableErrorT raps="fals e" Comment ="" LogTra ceEvents=" false" Sch edule=""> | |
1031 | <Setti ng Target= "Host" Nam e="Inactiv ityTimeout ">0</Setti ng> | |
1032 | <Setti ng Target= "Host" Nam e="FetchRe gistryData ">1</Setti ng> | |
1033 | <Setti ng Target= "Host" Nam e="TraceOp erations"> *FULL*</Se tting> | |
1034 | </Item> | |
1035 | </Producti on> | |
1036 | ]]> | |
1037 | </Data> | |
1038 | </XData> | |
1039 | </Class> | |
1040 | ||
1041 | ||
1042 | <Class | |
1043 | name="HS.L ocal.VA.HS .Access.CD A.Setup" | |
1044 | > | |
1045 | <IncludeCo de> | |
1046 | HS.Common | |
1047 | </IncludeC ode> | |
1048 | <Super> | |
1049 | %Registere dObject | |
1050 | </Super> | |
1051 | <TimeChang ed> | |
1052 | 65049,4462 0 | |
1053 | </TimeChan ged> | |
1054 | <TimeCreat ed> | |
1055 | 65023,3486 5.725818 | |
1056 | </TimeCrea ted> | |
1057 | ||
1058 | <Method | |
1059 | name="Setu p" | |
1060 | > | |
1061 | <Descripti on> | |
1062 | D ##class( HS.Local.V A.HS.Acces s.CDA).Set up() | |
1063 | </Descript ion> | |
1064 | <ClassMeth od> | |
1065 | 1 | |
1066 | </ClassMet hod> | |
1067 | <FormalSpe c> | |
1068 | pLocalPath :%String=" ",pEnviron ment:%Stri ng="DEV",p Version:%S tring="" | |
1069 | </FormalSp ec> | |
1070 | <ReturnTyp e> | |
1071 | %Status | |
1072 | </ReturnTy pe> | |
1073 | <Implement ation> | |
1074 | <![CDATA[ | |
1075 | Ne w $namespa ce | |
1076 | Se t $namespa ce = "HSLI B" | |
1077 | se t tSC = 1 | |
1078 | se t pVars("T emplate") = "HS.Loca l.VA.HS.Ac cess.CDA.P roduction" | |
1079 | do ##class(H S.Util.Ins taller).In stallAcces sGateway(" HSACCCDA", .pVars) | |
1080 | do ##class(H S.Director ).StartAll () | |
1081 | do ..S etupRegist ry(pLocalP ath, pEnvi ronment, p Version) | |
1082 | ]]> | |
1083 | </Implemen tation> | |
1084 | </Method> | |
1085 | ||
1086 | <Method | |
1087 | name="Setu pRegistry" | |
1088 | > | |
1089 | <Descripti on> | |
1090 | D ##class( HS.Local.V A.HS.Acces s.CDA).Set upRegistry () | |
1091 | </Descript ion> | |
1092 | <ClassMeth od> | |
1093 | 1 | |
1094 | </ClassMet hod> | |
1095 | <FormalSpe c> | |
1096 | pLocalPath :%String=" ",pEnviron ment:%Stri ng="DEV",p Version:%S tring="" | |
1097 | </FormalSp ec> | |
1098 | <ReturnTyp e> | |
1099 | %Status | |
1100 | </ReturnTy pe> | |
1101 | <Implement ation> | |
1102 | <![CDATA[ | |
1103 | se t tSC = 1 | |
1104 | ||
1105 | tr y { | |
1106 | do . .CodedEntr ies(pLocal Path, pEnv ironment, pVersion) | |
1107 | do . .InfoTypes (pLocalPat h, pEnviro nment, pVe rsion) | |
1108 | do . .OIDs(pLoc alPath, pE nvironment , pVersion ) | |
1109 | do . .ConfigReg istry(pLoc alPath, pE nvironment , pVersion ) | |
1110 | do . .ServiceRe gistry(pLo calPath, p Environmen t, pVersio n) | |
1111 | do . .XMLSummar y(pLocalPa th, pEnvir onment, pV ersion) | |
1112 | ;do ..SetDefau ltSettings (pLocalPat h, pEnviro nment, pVe rsion) | |
1113 | do . .Delivery( pLocalPath , pEnviron ment, pVer sion) | |
1114 | ; Ed ge just do es Termino logy, so . .. you kno w... let's do it | |
1115 | ; If ever the Edge needs more than just that , things w e don't | |
1116 | ; wa nt in the Registry, move the t erminology stuff her e too. | |
1117 | do . .SetupEdge (pLocalPat h, pEnviro nment, pVe rsion) | |
1118 | ||
1119 | $$ $ThrowOnEr ror(##clas s(HS.Direc tor).StopA ll()) | |
1120 | $$ $ThrowOnEr ror(##clas s(HS.Direc tor).Start All()) | |
1121 | } | |
1122 | ca tch sc { | |
1123 | set tSC = 0 | |
1124 | If $ $$WritePro g write !, "Problem S etting up Registry f or CDA Gen eration: " _sc.Displa yString(0) | |
1125 | } | |
1126 | ||
1127 | If $$$WriteP rog write !,"Termino logy Class Package I nstallatio n Return C ode = ",tS C | |
1128 | ]]> | |
1129 | </Implemen tation> | |
1130 | </Method> | |
1131 | ||
1132 | <Method | |
1133 | name="Setu pEdge" | |
1134 | > | |
1135 | <Descripti on> | |
1136 | D ##class( HS.Local.V A.HS.Acces s.CDA).Set upEdge() | |
1137 | Hey, we ne ed the ter minology o n the edge s too, so just calli ng it Setu pEdge for external f olks | |
1138 | </Descript ion> | |
1139 | <ClassMeth od> | |
1140 | 1 | |
1141 | </ClassMet hod> | |
1142 | <FormalSpe c> | |
1143 | pLocalPath :%String=" ",pEnviron ment:%Stri ng="DEV",p Version:%S tring="" | |
1144 | </FormalSp ec> | |
1145 | <ReturnTyp e> | |
1146 | %Status | |
1147 | </ReturnTy pe> | |
1148 | <Implement ation> | |
1149 | <![CDATA[ | |
1150 | se t tSC = 1 | |
1151 | ||
1152 | tr y { | |
1153 | do # #class(HS. Local.VA.T erminology .Setup).Se tup(pLocal Path, pEnv ironment) | |
1154 | } | |
1155 | ca tch { | |
1156 | set tSC = 0 | |
1157 | If $ $$WritePro g write !, "Problem l oading Ter minology C lasses" | |
1158 | } | |
1159 | ||
1160 | If $$$WriteP rog write !,"Termino logy Class Package I nstallatio n Return C ode = ",tS C | |
1161 | ]]> | |
1162 | </Implemen tation> | |
1163 | </Method> | |
1164 | ||
1165 | <Method | |
1166 | name="GetD efaultsByE nv" | |
1167 | > | |
1168 | <ClassMeth od> | |
1169 | 1 | |
1170 | </ClassMet hod> | |
1171 | <FormalSpe c> | |
1172 | <![CDATA[p Environmen t:%String= "DEV",&pLi st]]> | |
1173 | </FormalSp ec> | |
1174 | <ReturnTyp e> | |
1175 | %Status | |
1176 | </ReturnTy pe> | |
1177 | <Implement ation> | |
1178 | <![CDATA[ | |
1179 | se t defs("DE V", "HomeC ommunityId ") = "2.16 .840.1.113 883.4.349" | |
1180 | se t defs("DE V", "MVIHo st") = " SERVER . DOMAIN . EXT " | |
1181 | se t defs("DE V", "MVIPo rt") = " PORT " | |
1182 | se t defs("DE V", "ESRHo st") = " SERVER . DOMAIN . EXT " | |
1183 | se t defs("DE V", "ESRPo rt") = " PORT " | |
1184 | se t defs("DE V", "STSHo st") = " SERVER . DOMAIN . EXT " | |
1185 | se t defs("DE V", "STSPo rt") = " PORT " | |
1186 | ||
1187 | se t defs("DE VLocal", " HomeCommun ityId") = "2.16.840. 1.113883.4 .349" | |
1188 | se t defs("DE VLocal", " MVIHost") = "MOCK-HO ST" | |
1189 | se t defs("DE VLocal", " MVIPort") = " PORT " | |
1190 | se t defs("DE VLocal", " ESRHost") = "MOCK-HO ST" | |
1191 | se t defs("DE VLocal", " ESRPort") = " PORT " | |
1192 | se t defs("DE VLocal", " STSHost") = "MOCK-HO ST" | |
1193 | se t defs("DE VLocal", " STSPort") = " PORT " | |
1194 | ||
1195 | se t defs("SQ A2", "Home CommunityI d") = "2.1 6.840.1.11 3883.4.349 " | |
1196 | se t defs("SQ A2", "MVIH ost") = " SERVER . DOMAIN . EXT " | |
1197 | se t defs("SQ A2", "MVIP ort") = " PORT " | |
1198 | se t defs("SQ A2", "ESRH ost") = " SERVER . DOMAIN . EXT " | |
1199 | se t defs("SQ A2", "ESRP ort") = " PORT " | |
1200 | se t defs("SQ A2", "STSH ost") = " SERVER . DOMAIN . EXT " | |
1201 | se t defs("SQ A2", "STSP ort") = " PORT " | |
1202 | ||
1203 | se t defs("SQ A1", "Home CommunityI d") = "2.1 6.840.1.11 3883.4.349 " | |
1204 | se t defs("SQ A1", "MVIH ost") = " SERVER . DOMAIN . EXT " | |
1205 | se t defs("SQ A1", "MVIP ort") = " PORT " | |
1206 | se t defs("SQ A1", "ESRH ost") = " SERVER . DOMAIN . EXT " | |
1207 | se t defs("SQ A1", "ESRP ort") = " PORT " | |
1208 | se t defs("SQ A1", "STSH ost") = " SERVER . DOMAIN . EXT " | |
1209 | se t defs("SQ A1", "STSP ort") = " PORT " | |
1210 | ||
1211 | se t defs("PR EPROD", "H omeCommuni tyId") = " 2.16.840.1 .113883.4. 349" | |
1212 | se t defs("PR EPROD", "M VIHost") = " SERVER . DOMAIN . EXT " | |
1213 | se t defs("PR EPROD", "M VIPort") = " PORT " | |
1214 | se t defs("PR EPROD", "E SRHost") = " SERVER . DOMAIN . EXT " | |
1215 | se t defs("PR EPROD", "E SRPort") = " PORT " | |
1216 | se t defs("PR EPROD", "S TSHost") = " SERVER . DOMAIN . EXT " | |
1217 | se t defs("PR EPROD", "S TSPort") = "7305" | |
1218 | ||
1219 | se t defs("PR OD", "Home CommunityI d") = "2.1 6.840.1.11 3883.4.349 " | |
1220 | se t defs("PR OD", "MVIH ost") = "s ervices.ea uth. DOMAIN . EXT " | |
1221 | se t defs("PR OD", "MVIP ort") = " PORT " | |
1222 | se t defs("PR OD", "ESRH ost") = " SERVER . DOMAIN . EXT " | |
1223 | se t defs("PR OD", "ESRP ort") = " PORT " | |
1224 | se t defs("PR OD", "STSH ost") = " SERVER . DOMAIN . EXT " | |
1225 | se t defs("PR OD", "STSP ort") = " PORT " | |
1226 | ||
1227 | Me rge pList = defs(pEn vironment) | |
1228 | ||
1229 | qu it $$$OK | |
1230 | ]]> | |
1231 | </Implemen tation> | |
1232 | </Method> | |
1233 | ||
1234 | <Method | |
1235 | name="Code dEntries" | |
1236 | > | |
1237 | <Descripti on> | |
1238 | Setup code d entries required b y XDS regi stry metad ata valida tion | |
1239 | ||
1240 | </Descript ion> | |
1241 | <ClassMeth od> | |
1242 | 1 | |
1243 | </ClassMet hod> | |
1244 | <FormalSpe c> | |
1245 | pLocalPath :%String=" ",pEnviron ment:%Stri ng="DEV",p Version:%S tring="" | |
1246 | </FormalSp ec> | |
1247 | <Implement ation> | |
1248 | <![CDATA[ | |
1249 | If $$$WriteP rog Write !,"HS.Loca l.VA.HS.Ac cess.CDA.S etup:Coded Entries - adding LOI NC codes f or XDS" | |
1250 | ||
1251 | Ne w $namespa ce | |
1252 | Se t $namespa ce = "HSRE GISTRY" | |
1253 | ||
1254 | #; LOINC cod es | |
1255 | Se t oid = "2 .16.840.1. 113883.6.1 " | |
1256 | Se t codes("3 4133-9") = "Patient Summary" | |
1257 | Se t codes("1 1506-3") = "Encounte r Summary" | |
1258 | Se t codes("2 8570-0") = "Provider -Unspecifi ed Procedu re Note" | |
1259 | Se t codes("1 1488-4") = "Consult Note" | |
1260 | Se t codes("1 8842-5") = "Discharg e Summary" | |
1261 | Se t codes("3 4117-2") = "History and Physic al" | |
1262 | Se t codes("2 7898-6") = "Patholog y Study" | |
1263 | Se t codes("1 8733-6") = "Progress Note" | |
1264 | Se t codes("1 8733-6") = "Progress Note" | |
1265 | Se t codes("1 8726-0") = "Radiolog y Study" | |
1266 | Se t codes("2 9752-3") = "Perioper ative Repo rt" | |
1267 | Fo r type = " contentTyp eCode","cl assCode"," typeCode" { | |
1268 | If $ $$WritePro g Write !, ?4,type | |
1269 | Set code="" Fo r { Set co de = $O(co des(code), 1,desc) Qu it:code="" | |
1270 | If $$$ WriteProg Write !,?8 ,oid," ",c ode," ",de sc | |
1271 | $$$Thr owOnError( ##class(HS .IHE.Coded Entry).Cre ate(type,o id,code,de sc)) | |
1272 | } | |
1273 | } | |
1274 | ||
1275 | If $$$WriteP rog Write !,"HS.Loca l.VA.HS.Ac cess.CDA.S etup:Coded Entries - success" | |
1276 | ]]> | |
1277 | </Implemen tation> | |
1278 | </Method> | |
1279 | ||
1280 | <Method | |
1281 | name="Info Types" | |
1282 | > | |
1283 | <Descripti on> | |
1284 | Prepopulat e "seen" d ocument su btypes so they can b e specifie d in push filter | |
1285 | </Descript ion> | |
1286 | <ClassMeth od> | |
1287 | 1 | |
1288 | </ClassMet hod> | |
1289 | <FormalSpe c> | |
1290 | pLocalPath :%String=" ",pEnviron ment:%Stri ng="DEV",p Version:%S tring="" | |
1291 | </FormalSp ec> | |
1292 | <Implement ation> | |
1293 | <![CDATA[ | |
1294 | Ne w $namespa ce | |
1295 | Se t $namespa ce = "HSRE GISTRY" | |
1296 | ||
1297 | If $$$WriteP rog Write !,"HS.Loca l.VA.HS.Ac cess.CDA.S etup:InfoT ypes - add ing docume nt types" | |
1298 | ||
1299 | #; document type codes used for push | |
1300 | Fo r type="CP ","CR","DS ","HP","LR ","PN","RA ","SR","PR OGRESS NOT E" { | |
1301 | If $ $$WritePro g Write !, ?4,"DOC.", type | |
1302 | Set ^HS.InfoTy pesSub("DO C."_type)= "" | |
1303 | } | |
1304 | ||
1305 | If $$$WriteP rog Write !,"HS.Loca l.VA.HS.Ac cess.CDA.S etup:InfoT ypes - suc cess" | |
1306 | ]]> | |
1307 | </Implemen tation> | |
1308 | </Method> | |
1309 | ||
1310 | <Method | |
1311 | name="OIDs " | |
1312 | > | |
1313 | <Descripti on> | |
1314 | Setup OIDs | |
1315 | </Descript ion> | |
1316 | <ClassMeth od> | |
1317 | 1 | |
1318 | </ClassMet hod> | |
1319 | <FormalSpe c> | |
1320 | pLocalPath :%String=" ",pEnviron ment:%Stri ng="DEV",p Version:%S tring="" | |
1321 | </FormalSp ec> | |
1322 | <Implement ation> | |
1323 | <![CDATA[ | |
1324 | Ne w $namespa ce | |
1325 | Se t $namespa ce = "HSRE GISTRY" | |
1326 | ||
1327 | Se t tSC = .. GetDefault sByEnv(pEn vironment, .tDefs) | |
1328 | ||
1329 | If $$$WriteP rog Write !,"HS.Loca l.VA.HS.Ac cess.CDA.S etup:OIDs - adding O IDs" | |
1330 | ||
1331 | Se t tOid = # #class(HS. Data.OIDMa p).ObjectF orOID("2.1 6.840.1.11 3883.4.349 ") | |
1332 | If 'tO id { | |
1333 | If $$$WriteP rog Write !,?4,"USVH A - 2.16.8 40.1.11388 3.4.349" | |
1334 | $$ $ThrowOnEr ror(##clas s(HS.Data. OIDMap).Fi leOID("USV HA","CodeS ystem","2. 16.840.1.1 13883.4.34 9","Depart ment of Ve terans Aff airs","Ass igningAuth ority")) | |
1335 | } Else { | |
1336 | If $$$WriteP rog Write !,?4,"USVH A - 2.16.8 40.1.11388 3.4.349 al ready exis ts, skippi ng" | |
1337 | } | |
1338 | ||
1339 | Se t tOid = # #class(HS. Data.OIDMa p).ObjectF orOID(tDef s("HomeCom munityId") ) | |
1340 | if 'tOid { | |
1341 | If $ $$WritePro g Write !, ?4,"VA - " _tDefs("Ho meCommunit yId") | |
1342 | $$$T hrowOnErro r(##class( HS.Data.OI DMap).File OID("VA"," HomeCommun ity",tDefs ("HomeComm unityId"), "Departmen t of Veter ans Affair s","Assign ingAuthori ty")) | |
1343 | } Else { | |
1344 | If $ $$WritePro g Write !, ?4,"VA - " _tDefs("Ho meCommunit yId")_" al ready exis ts, skippi ng" | |
1345 | } | |
1346 | ||
1347 | If pEnvironm ent = "DEV " { | |
1348 | ; ne ed to add OIDs for e ach Edge. Modify be low lines to accomod ate Edges connected to your Ac cess Gatew ay | |
1349 | If $ $$WritePro g Write !, "HS.Local. VA.HS.Acce ss.CDA.Set up:OIDs - adding OID s for each Edge" | |
1350 | Set tOid = ##c lass(HS.Da ta.OIDMap) .ObjectFor OID("2.16. 840.1.1138 83.4.349.9 83") | |
1351 | if ' tOid { | |
1352 | If $$$ WriteProg Write !,?4 ,"Edge - C hyShr" | |
1353 | $$$Thr owOnError( ##class(HS .Data.OIDM ap).FileOI D("983","F acility"," 2.16.840.1 .113883.4. 349.983"," Cheyenne V eterans Af fairs Hosp ital","Ass igningAuth ority")) | |
1354 | } El se { | |
1355 | If $$$ WriteProg Write !,?4 ,"Edge - C hyShr alea dy exists, skipping" | |
1356 | } | |
1357 | ||
1358 | Set tOid = ##c lass(HS.Da ta.OIDMap) .ObjectFor OID("2.16. 840.1.1138 83.4.349.9 83") | |
1359 | if ' tOid { | |
1360 | If $$$ WriteProg Write !,?4 ,"Edge - D aytShr" | |
1361 | $$$Thr owOnError( ##class(HS .Data.OIDM ap).FileOI D("984","F acility"," 2.16.840.1 .113883.4. 349.984"," Dayton Vet erans Affa irs Hospit al","Assig ningAuthor ity")) | |
1362 | } El se { | |
1363 | If $$$ WriteProg Write !,?4 ,"Edge - D aytShr ale ady exists , skipping " | |
1364 | } | |
1365 | } | |
1366 | ||
1367 | ; OIDs for o ur reposit ories. | |
1368 | Se t tOid = # #class(HS. Data.OIDMa p).ObjectF orOID(tDef s("HomeCom munityId") _".1") | |
1369 | if 'tOid { | |
1370 | If $ $$WritePro g Write !, ?4,"HSACCC DA OID ... " | |
1371 | $$$T hrowOnErro r(##class( HS.Data.OI DMap).File OID("HSACC CDA", "Rep ository", tDefs("Hom eCommunity Id")_".1", "On-Deman d Reposito ry")) | |
1372 | } Else { | |
1373 | If $ $$WritePro g Write !, ?4,"HSACCC DA OID ale ady exists , skipping " | |
1374 | } | |
1375 | Se t tOid = # #class(HS. Data.OIDMa p).ObjectF orOID(tDef s("HomeCom munityId") _".2") | |
1376 | if 'tOid { | |
1377 | If $ $$WritePro g Write !, ?4,"HSREPO SITORY OID ..." | |
1378 | $$$T hrowOnErro r(##class( HS.Data.OI DMap).File OID("HSREP OSITORY", "Repositor y", tDefs( "HomeCommu nityId")_" .2", "Stab le Reposit ory")) | |
1379 | } Else { | |
1380 | If $ $$WritePro g Write !, ?4,"HSREPO SITORY OID aleady ex ists, skip ping" | |
1381 | } | |
1382 | ||
1383 | If $$$WriteP rog Write !,"HS.Loca l.VA.HS.Ac cess.CDA.S etup:OIDs - success" | |
1384 | ]]> | |
1385 | </Implemen tation> | |
1386 | </Method> | |
1387 | ||
1388 | <Method | |
1389 | name="Conf igRegistry " | |
1390 | > | |
1391 | <Descripti on> | |
1392 | Setup conf iguration registry i tems | |
1393 | </Descript ion> | |
1394 | <ClassMeth od> | |
1395 | 1 | |
1396 | </ClassMet hod> | |
1397 | <FormalSpe c> | |
1398 | pLocalPath :%String=" ",pEnviron ment:%Stri ng="DEV",p Version:%S tring="" | |
1399 | </FormalSp ec> | |
1400 | <Implement ation> | |
1401 | <![CDATA[ | |
1402 | Ne w $namespa ce | |
1403 | Se t $namespa ce = "HSRE GISTRY" | |
1404 | ||
1405 | If $$$WriteP rog Write !,"HS.Loca l.VA.HS.Ac cess.CDA.S etup:Confi gRegistry - updating configura tion regis try" | |
1406 | ||
1407 | #; IHE domai n | |
1408 | Se t data("\I HE\Affinit yDomain") = "VA" | |
1409 | Se t data("\I HE\HomeCom munity") = "VA" | |
1410 | ||
1411 | #; used by C DA transfo rms to pop ulate cust odian | |
1412 | Se t data("\G eneral\IHE Version") = "1" | |
1413 | Se t data("\H omeCommuni ty\Address \City") = "Washingto n" | |
1414 | Se t data("\H omeCommuni ty\Address \Country") = "USA" | |
1415 | Se t data("\H omeCommuni ty\Address \State") = "DC" | |
1416 | Se t data("\H omeCommuni ty\Address \StreetLin e1") = "81 0 Vermont Avenue, NW " | |
1417 | Se t data("\H omeCommuni ty\Address \Zip") = " 20420" | |
1418 | Se t data("\H omeCommuni ty\Telecom \Workphone ") = "(123 ) 456-7890 " | |
1419 | ||
1420 | #; TODO - wh at should this be fo r the VA p atient/enc ounter doc , the C62 does not u se it | |
1421 | Se t data("\L egalAuthen ticator\Ad dress\City ") = "Wash ington" | |
1422 | Se t data("\L egalAuthen ticator\Ad dress\Coun try") = "U SA" | |
1423 | Se t data("\L egalAuthen ticator\Ad dress\Stat e") = "DC" | |
1424 | Se t data("\L egalAuthen ticator\Ad dress\Stre etLine1") = "810 Ver mont Avenu e, NW" | |
1425 | Se t data("\L egalAuthen ticator\Ad dress\Zip" ) = "20420 " | |
1426 | Se t data("\L egalAuthen ticator\Na me\Family" ) = "Inter Systems" | |
1427 | Se t data("\L egalAuthen ticator\Na me\Given") = "Health Share" | |
1428 | Se t data("\L egalAuthen ticator\Te lecom\Work phone") = "(123) 456 -7890" | |
1429 | ||
1430 | Se t key="" F or { Set k ey = $o(da ta(key),1, value) Qui t:key="" | |
1431 | If $ $$WritePro g Write !, ?4,key," = ",value | |
1432 | $$$T hrowOnErro r(##class( HS.Registr y.Config). AddUpdateK eyValue(ke y,value)) | |
1433 | } | |
1434 | ||
1435 | If $$$WriteP rog Write !,"HS.Loca l.VA.HS.Ac cess.CDA.S etup:Confi gRegistry - success" | |
1436 | ]]> | |
1437 | </Implemen tation> | |
1438 | </Method> | |
1439 | ||
1440 | <Method | |
1441 | name="Serv iceRegistr y" | |
1442 | > | |
1443 | <Descripti on> | |
1444 | Setup serv ice Regist ry | |
1445 | </Descript ion> | |
1446 | <ClassMeth od> | |
1447 | 1 | |
1448 | </ClassMet hod> | |
1449 | <FormalSpe c> | |
1450 | pLocalPath :%String=" ",pEnviron ment:%Stri ng="DEV",p Version:%S tring="" | |
1451 | </FormalSp ec> | |
1452 | <Implement ation> | |
1453 | <![CDATA[ | |
1454 | Ne w $namespa ce | |
1455 | Se t $namespa ce = "HSRE GISTRY" | |
1456 | ||
1457 | Se t tSC = .. GetDefault sByEnv(pEn vironment, .tDefs) | |
1458 | ||
1459 | If $$$WriteP rog Write !,"HS.Loca l.VA.HS.Ac cess.CDA.S etup:Servi ceRegistry - start" | |
1460 | ||
1461 | #; HS.Util.I nstaller.K it.IHE.XDS b.Registry marks the wrong ser vice as th e XDSb.Que ry device, | |
1462 | #; which is interferin g with the "End Poin t" drop do wn in push system de livery pol icy setup | |
1463 | #d im service as HS.Reg istry.Serv ice.SOAP | |
1464 | If $$$WriteP rog Write !,?4,"Fixi ng XDSb.Re gistry ser vice..." | |
1465 | Se t service = ##class( HS.Registr y.Service. SOAP).EndP ointForNam eType("XDS b.Registry ","SOAP",. sc) $$$Thr owOnError( sc) | |
1466 | Se t service. DeviceFunc tion = "" | |
1467 | Se t service. Push = 1 | |
1468 | $$ $ThrowOnEr ror(servic e.%Save()) | |
1469 | If $$$WriteP rog Write !,?4,"Fixi ng XDSb.Qu ery servic e..." | |
1470 | Se t service = ##class( HS.Registr y.Service. SOAP).EndP ointForNam eType("XDS b.Query"," SOAP",.sc) $$$ThrowO nError(sc) | |
1471 | Se t service. DeviceFunc tion = "XD Sb.Query" | |
1472 | Se t service. Push = 0 | |
1473 | $$ $ThrowOnEr ror(servic e.%Save()) | |
1474 | ||
1475 | If $$$WriteP rog Write !,?4,"Add/ Update VA. CTService service... " | |
1476 | Se t service = ##class( HS.Registr y.Service. SOAP).EndP ointForNam eType("VA. CTService" ,"SOAP",.s c) | |
1477 | If $$$WriteP rog Write !,?4,"trie d VA.CTSer vice servi ce..." | |
1478 | if 'service { | |
1479 | If $$$WriteP rog Write !,?4,"VA.C TService s ervice doe sn't exist , adding n ew..." | |
1480 | set service = ##class(HS .Registry. Service.SO AP).%New() | |
1481 | set service.Na me = "VA.C TService" | |
1482 | } | |
1483 | se t service. Host = tDe fs("STSHos t") | |
1484 | se t service. Port = tDe fs("STSPor t") | |
1485 | se t service. URL = "/st s.webservi ce/ctServi ce" | |
1486 | se t service. SOAPVersio n = "1.1" | |
1487 | $$ $ThrowOnEr ror(servic e.%Save()) | |
1488 | ||
1489 | If $$$WriteP rog Write "OK" | |
1490 | ||
1491 | If $$$WriteP rog Write !,"HS.Loca l.VA.HS.Ac cess.CDA.S etup:Servi ceRegistry - success " | |
1492 | ]]> | |
1493 | </Implemen tation> | |
1494 | </Method> | |
1495 | ||
1496 | <Method | |
1497 | name="XMLS ummary" | |
1498 | > | |
1499 | <Descripti on> | |
1500 | Setup XML Summaries | |
1501 | </Descript ion> | |
1502 | <ClassMeth od> | |
1503 | 1 | |
1504 | </ClassMet hod> | |
1505 | <FormalSpe c> | |
1506 | pLocalPath :%String=" ",pEnviron ment:%Stri ng="DEV",p Version:%S tring="" | |
1507 | </FormalSp ec> | |
1508 | <Implement ation> | |
1509 | <![CDATA[ | |
1510 | Ne w $namespa ce | |
1511 | Se t $namespa ce = "HSRE GISTRY" | |
1512 | ||
1513 | If $$$WriteP rog Write !,"HS.Loca l.VA.HS.Ac cess.CDA.S etup:XMLSu mmary - ad ding XML s ummaries" | |
1514 | ||
1515 | Se t items($i (items),"C ode") = "Z -CCDA-Pati ent" | |
1516 | Se t items(it ems,"Descr iption") = "VA Custo m Patient Summary (C CDA)" | |
1517 | Se t items(it ems,"SDAVe rsion") = 3 | |
1518 | Se t items(it ems,"Forma tCode") = "urn:hl7-o rg:sdwg:cc da-structu redBody:1. 1" | |
1519 | Se t items(it ems,"Forma tScheme") = "1.3.6.1 .4.1.19376 .1.2.3" | |
1520 | Se t items(it ems,"Secti onTypes") = $LB("PAT ","ADV","A LG","APT", "DXG","ENC ","PRB","H IS","LAB", "OBS","RAD ","PRC","P EX","MED", "VXU","DOC ") | |
1521 | ||
1522 | Se t items($i (items),"C ode") = "Z -CCDA-Enco unter" | |
1523 | Se t items(it ems,"Descr iption") = "VA Custo m Encounte r Summary (CCDA)" | |
1524 | Se t items(it ems,"SDAVe rsion") = 3 | |
1525 | Se t items(it ems,"Forma tCode") = "urn:hl7-o rg:sdwg:cc da-structu redBody:2. 1" | |
1526 | Se t items(it ems,"Forma tScheme") = "1.3.6.1 .4.1.19376 .1.2.3" | |
1527 | Se t items(it ems,"Secti onTypes") = $LB("PAT ","ADV","A LG","APT", "DXG","ENC ","PRB","H IS","LAB", "OBS","RAD ","PRC","P EX","MED", "VXU","DOC ") | |
1528 | ||
1529 | Se t items($i (items),"C ode") = "Z -C62" | |
1530 | Se t items(it ems,"Descr iption") = "VA Custo m Unstruct ured Docum ent (C62)" | |
1531 | Se t items(it ems,"SDAVe rsion") = 3 | |
1532 | Se t items(it ems,"Forma tCode") = "urn:ihe:i ti:xds-sd: text:2008" | |
1533 | Se t items(it ems,"Forma tScheme") = "1.3.6.1 .4.1.19376 .1.2.3" | |
1534 | Se t items(it ems,"Secti onTypes") = $LB("PAT ","ENC","D OC") | |
1535 | ||
1536 | Se t items($i (items),"C ode") = "Z -VA-CCDAv2 1-CCD" | |
1537 | Se t items(it ems,"Descr iption") = "VA Custo m Patient Summary (C CDA) v2.1" | |
1538 | Se t items(it ems,"SDAVe rsion") = 3 | |
1539 | Se t items(it ems,"Forma tCode") = "urn:hl7-o rg:sdwg:cc da-structu redBody:2. 1" | |
1540 | Se t items(it ems,"Forma tScheme") = "1.3.6.1 .4.1.19376 .1.2.3" | |
1541 | Se t items(it ems,"Secti onTypes") = $LB("PAT ","ADV","A LG","APT", "DXG","ENC ","PRB","H IS","LAB", "OBS","RAD ","PRC","P EX","MED", "VXU","DOC ") | |
1542 | ||
1543 | Se t items($i (items),"C ode") = "Z -C32v25" | |
1544 | Se t items(it ems,"Descr iption") = "VA Custo m Continui ty of Care Document (CCD, HITS P C32)" | |
1545 | Se t items(it ems,"SDAVe rsion") = 3 | |
1546 | Se t items(it ems,"Forma tCode") = "urn:ihe:p cc:xphr:20 07" | |
1547 | Se t items(it ems,"Forma tScheme") = "IHE PCC " | |
1548 | Se t items(it ems,"Secti onTypes") = $LB("PAT ","ALG","E NC","PRB", "LAB","OBS ","PRC","M ED","VXU", "DOC") | |
1549 | ||
1550 | Se t items($i (items),"C ode") = "Z -MHV-CCDA- CCD" | |
1551 | Se t items(it ems,"Descr iption") = "VA Custo m MyHealth eVet Cust om Patient Summary ( CCDA)" | |
1552 | Se t items(it ems,"SDAVe rsion") = 3 | |
1553 | Se t items(it ems,"Forma tCode") = "urn:hl7-o rg:sdwg:cc da-structu redBody:1. 1" | |
1554 | Se t items(it ems,"Forma tScheme") = "1.3.6.1 .4.1.19376 .1.2.3" | |
1555 | Se t items(it ems,"Secti onTypes") = $LB("PAT ","ADV","A LG","APT", "DXG","ENC ","PRB","H IS","LAB", "OBS","RAD ","PRC","P EX","MED", "VXU","DOC ") | |
1556 | ||
1557 | Se t items($i (items),"C ode") = "Z -MHV-CCDAv 21-CCD" | |
1558 | Se t items(it ems,"Descr iption") = "VA Custo m MyHealth eVet Cust om Patient Summary ( CCDA) v2.1 " | |
1559 | Se t items(it ems,"SDAVe rsion") = 3 | |
1560 | Se t items(it ems,"Forma tCode") = "urn:hl7-o rg:sdwg:cc da-structu redBody:2. 1" | |
1561 | Se t items(it ems,"Forma tScheme") = "1.3.6.1 .4.1.19376 .1.2.3" | |
1562 | Se t items(it ems,"Secti onTypes") = $LB("PAT ","ADV","A LG","APT", "DXG","ENC ","PRB","H IS","LAB", "OBS","RAD ","PRC","P EX","MED", "VXU","DOC ") | |
1563 | ||
1564 | Fo r i = 1:1: items { | |
1565 | If $ $$WritePro g Write !, ?4,items(i ,"Code") | |
1566 | Set item = ##c lass(HS.Re ports.Pati ent.XMLSum maryType). %New() | |
1567 | Set item.Code = $G(items (i,"Code") ) | |
1568 | Set item.Descr iption = $ G(items(i, "Descripti on")) | |
1569 | Set item.Resou rceRequire d = $G(ite ms(i,"Reso urceRequir ed")) | |
1570 | Set item.SDAVe rsion = $G (items(i," SDAVersion ")) | |
1571 | Set item.Forma tCode = $G (items(i," FormatCode ")) | |
1572 | Set item.Forma tScheme = $G(items(i ,"FormatSc heme")) | |
1573 | For j=1:1:$LL( items(i,"S ectionType s")) { | |
1574 | Do ite m.SectionT ypes.Inser t($LI(item s(i,"Secti onTypes"), j)) | |
1575 | } | |
1576 | $$$T hrowOnErro r(##class( HS.Util.Hu bServices) .InvokeHub Service("H S.Hub.HSWS .WebServic es","HS.Hu b.HSWS.Web ServicesCl ient","Add EditXMLSum maryType", .sc,item)) | |
1577 | $$$T hrowOnErro r(sc) | |
1578 | } | |
1579 | ||
1580 | If $$$WriteP rog Write !,"HS.Loca l.VA.HS.Ac cess.CDA.S etup:XMLSu mmary - su ccess" | |
1581 | ]]> | |
1582 | </Implemen tation> | |
1583 | </Method> | |
1584 | ||
1585 | <Method | |
1586 | name="Deli very" | |
1587 | > | |
1588 | <Descripti on> | |
1589 | Setup deli very for o n-demands | |
1590 | </Descript ion> | |
1591 | <ClassMeth od> | |
1592 | 1 | |
1593 | </ClassMet hod> | |
1594 | <FormalSpe c> | |
1595 | pLocalPath :%String=" ",pEnviron ment:%Stri ng="DEV",p Version:%S tring="" | |
1596 | </FormalSp ec> | |
1597 | <Implement ation> | |
1598 | <![CDATA[ | |
1599 | Ne w $namespa ce | |
1600 | Se t $namespa ce = "HSRE GISTRY" | |
1601 | If $$$WriteP rog Write !,"HS.Loca l.VA.HS.Ac cess.CDA.S etup:Deliv ery - star ting" | |
1602 | Hang 5 | |
1603 | ||
1604 | If $$$WriteP rog Write !,?4,"Do # #class(HS. Push.Subsc ription.Sy stemPolicy ).%DeleteE xtent()" | |
1605 | Do ##class(H S.Push.Sub scription. SystemPoli cy).%Delet eExtent() | |
1606 | If $$$WriteP rog Write !,?4,"Do # #class(HS. Push.Deliv ery.System Policy).%D eleteExten t()" | |
1607 | Do ##class(H S.Push.Del ivery.Syst emPolicy). %DeleteExt ent() | |
1608 | If $$$WriteP rog Write !,?4,"Do # #class(HS. Push.Regis try.Recipi ent).%Dele teExtent() " | |
1609 | Do ##class(H S.Push.Reg istry.Reci pient).%De leteExtent () | |
1610 | If $$$WriteP rog Write !,?4,"Do # #class(HS. Push.Deliv eryOption) .%DeleteEx tent()" | |
1611 | Do ##class(H S.Push.Del iveryOptio n).%Delete Extent() | |
1612 | If $$$WriteP rog Write !,?4,"Do # #class(HS. Push.Trans formation) .%DeleteEx tent()" | |
1613 | Do ##class(H S.Push.Tra nsformatio n).%Delete Extent() | |
1614 | ||
1615 | If $$$WriteP rog Write !,?4,"Push Transform s" | |
1616 | ||
1617 | Se t transfor m = ##clas s(HS.Push. WebService s.Containe rs.Transfo rmation).% New() | |
1618 | Se t transfor m.Name = "CCDA P atient Sum mary" | |
1619 | Se t transfor m.ContentS cope = "MPI" | |
1620 | Se t transfor m.Transfor mationType = "XSLT" | |
1621 | Se t transfor m.XSLTFile Spec = "Z-CCDA -Patient" | |
1622 | Se t txPatien tCCDA = $$ addTransfo rm(transfo rm) | |
1623 | ||
1624 | ; Add for ea ch on-dema nd documen t format y ou need | |
1625 | Se t transfor m = ##clas s(HS.Push. WebService s.Containe rs.Transfo rmation).% New() | |
1626 | Se t transfor m.Name = "CCDA v 2.1 Patien t Summary" | |
1627 | Se t transfor m.ContentS cope = "MPI" | |
1628 | Se t transfor m.Transfor mationType = "XSLT" | |
1629 | Se t transfor m.XSLTFile Spec = "Z-VA-C CDAv21-CCD " | |
1630 | Se t txPatien tCCDA21 = $$addTrans form(trans form) | |
1631 | ||
1632 | Se t transfor m = ##clas s(HS.Push. WebService s.Containe rs.Transfo rmation).% New() | |
1633 | Se t transfor m.Name = "MHV CC DA Patient Summary" | |
1634 | Se t transfor m.ContentS cope = "MPI" | |
1635 | Se t transfor m.Transfor mationType = "XSLT" | |
1636 | Se t transfor m.XSLTFile Spec = "Z-MHV- CCDA-CCD" | |
1637 | Se t txPatien tMHVCCDA = $$addTran sform(tran sform) | |
1638 | ||
1639 | Se t transfor m = ##clas s(HS.Push. WebService s.Containe rs.Transfo rmation).% New() | |
1640 | Se t transfor m.Name = "MHV CC DA v2.1 Pa tient Summ ary" | |
1641 | Se t transfor m.ContentS cope = "MPI" | |
1642 | Se t transfor m.Transfor mationType = "XSLT" | |
1643 | Se t transfor m.XSLTFile Spec = "Z-MHV- CCDAv21-CC D" | |
1644 | Se t txPatien tMHVCCDA21 = $$addTr ansform(tr ansform) | |
1645 | ||
1646 | Se t transfor m = ##clas s(HS.Push. WebService s.Containe rs.Transfo rmation).% New() | |
1647 | Se t transfor m.Name = "C32 Pa tient Summ ary" | |
1648 | Se t transfor m.ContentS cope = "MPI" | |
1649 | Se t transfor m.Transfor mationType = "XSLT" | |
1650 | Se t transfor m.XSLTFile Spec = "Z-C32v 25" | |
1651 | Se t txPatien tC32 = $$a ddTransfor m(transfor m) | |
1652 | ||
1653 | Se t transfor m = ##clas s(HS.Push. WebService s.Containe rs.Transfo rmation).% New() | |
1654 | Se t transfor m.Name = "CCDA E ncounter S ummary" | |
1655 | Se t transfor m.ContentS cope = "Enc" | |
1656 | Se t transfor m.Transfor mationType = "XSLT" | |
1657 | Se t transfor m.XSLTFile Spec = "Z-CCDA -Encounter " | |
1658 | Se t txEncoun ter = $$ad dTransform (transform ) | |
1659 | ||
1660 | Se t transfor m = ##clas s(HS.Push. WebService s.Containe rs.Transfo rmation).% New() | |
1661 | Se t transfor m.Name = "C62 Un structured Document" | |
1662 | Se t transfor m.ContentS cope = "Enc" | |
1663 | Se t transfor m.Transfor mationType = "XSLT" | |
1664 | Se t transfor m.XSLTFile Spec = "Z-C62" | |
1665 | Se t txDocume nt = $$add Transform( transform) | |
1666 | ||
1667 | If $$$WriteP rog Write !,?4,"Deli very Optio ns" | |
1668 | ||
1669 | Se t option = ##class(H S.Push.Web Services.C ontainers. DeliveryOp tion).%New () | |
1670 | Se t option.N ame = " XDSb OnDem and" | |
1671 | Se t option.D eliveryTyp e = " XDSb.OnDem and" | |
1672 | Se t option.D eliveryOpe ration = " HS.IHE.XDS b.Push.Ope rations" | |
1673 | Se t optOnDem and = $$ad dOption(op tion) | |
1674 | ||
1675 | If $$$WriteP rog Write !,?4,"Rece iving Syst em" | |
1676 | ||
1677 | Se t system = ##class(H S.Push.Web Services.C ontainers. Recipient) .%New() | |
1678 | Se t system.N ame = "Defaul t" | |
1679 | Se t system.D escription = "Intern al push (e .g. XDSb o n-demand r egistratio n)" | |
1680 | Se t system.A ctive = 1 | |
1681 | Se t sysDefau lt = $$add System(sys tem) | |
1682 | ||
1683 | Se t policy = ##class(H S.Push.Web Services.C ontainers. DeliveryPo licy).%New () | |
1684 | Se t policy.R ecipientTy pe = "sys tem" | |
1685 | Se t policy.R egistryId = sysD efault | |
1686 | Se t policy.N ame = "Reg ister OnDe mand" | |
1687 | Se t policy.D eliveryOpt ion = optO nDemand | |
1688 | Se t policy.T ransformat ion = txPa tientCCDA2 1 | |
1689 | Se t policy.A ccessGatew ay = ..ge tGatewayID Retry("HSA CCCDA", 1, 30) | |
1690 | Se t policy.E ndPoint = ..ge tServiceID ("XDSb.Reg istry") | |
1691 | Se t polOnDem and = $$ad dPolicy(po licy) | |
1692 | ||
1693 | Se t subscrip tion = ##c lass(HS.Pu sh.WebServ ices.Conta iners.Subs criptionPo licy).%New () | |
1694 | Se t subscrip tion.Recip ientType = "syst em" | |
1695 | Se t subscrip tion.Regis tryId = sysDe fault | |
1696 | Se t subscrip tion.Name = "OnDe mand Patie nt Summary " | |
1697 | Se t subscrip tion.Subsc riptionBas is = "A" //All | |
1698 | Se t subscrip tion.Deliv eryPolicy = polOn Demand | |
1699 | Se t subscrip tion.Trans formation = txPat ientCCDA | |
1700 | Se t subscrip tion.Subje ct = "Pati ent Summar y" | |
1701 | Se t subscrip tion.Effec tiveDate = +$H | |
1702 | Se t subscrip tion.Expir ationDate = "" | |
1703 | Se t subPatie nt = $$add Subscripti on(subscri ption) | |
1704 | ||
1705 | ; add subscr iption for each regi stered doc ument/form at | |
1706 | Se t subscrip tion = ##c lass(HS.Pu sh.WebServ ices.Conta iners.Subs criptionPo licy).%New () | |
1707 | Se t subscrip tion.Recip ientType = "syst em" | |
1708 | Se t subscrip tion.Regis tryId = sysDe fault | |
1709 | Se t subscrip tion.Name = "OnDe mand v2.1 Patient Su mmary" | |
1710 | Se t subscrip tion.Subsc riptionBas is = "A" //All | |
1711 | Se t subscrip tion.Deliv eryPolicy = polOn Demand | |
1712 | Se t subscrip tion.Trans formation = txPat ientCCDA21 | |
1713 | Se t subscrip tion.Subje ct = "Pati ent Summar y 2.1" | |
1714 | Se t subscrip tion.Effec tiveDate = +$H | |
1715 | Se t subscrip tion.Expir ationDate = "" | |
1716 | Se t subPatie nt = $$add Subscripti on(subscri ption) | |
1717 | ||
1718 | ;S et subscri ption = ## class(HS.P ush.WebSer vices.Cont ainers.Sub scriptionP olicy).%Ne w() | |
1719 | ;S et subscri ption.Reci pientType = "sys tem" | |
1720 | ;S et subscri ption.Regi stryId = sysD efault | |
1721 | ;S et subscri ption.Name = "MHV OnDemand Patient Su mmary" | |
1722 | ;S et subscri ption.Subs criptionBa sis = "A" //All | |
1723 | ;S et subscri ption.Deli veryPolicy = polO nDemand | |
1724 | ;S et subscri ption.Tran sformation = txPa tientMHVCC DA | |
1725 | ;S et subscri ption.Subj ect = "MHV Patient S ummary" | |
1726 | ;S et subscri ption.Effe ctiveDate = +$H | |
1727 | ;S et subscri ption.Expi rationDate = "" | |
1728 | ;S et subPati ent = $$ad dSubscript ion(subscr iption) | |
1729 | ||
1730 | ;S et subscri ption = ## class(HS.P ush.WebSer vices.Cont ainers.Sub scriptionP olicy).%Ne w() | |
1731 | ;S et subscri ption.Reci pientType = "sys tem" | |
1732 | ;S et subscri ption.Regi stryId = sysD efault | |
1733 | ;S et subscri ption.Name = "MHV OnDemand v2.1 Patie nt Summary " | |
1734 | ;S et subscri ption.Subs criptionBa sis = "A" //All | |
1735 | ;S et subscri ption.Deli veryPolicy = polO nDemand | |
1736 | ;S et subscri ption.Tran sformation = txPa tientMHVCC DA21 | |
1737 | ;S et subscri ption.Subj ect = "MHV Patient S ummary 2.1 " | |
1738 | ;S et subscri ption.Effe ctiveDate = +$H | |
1739 | ;S et subscri ption.Expi rationDate = "" | |
1740 | ;S et subPati ent = $$ad dSubscript ion(subscr iption) | |
1741 | ||
1742 | Se t subscrip tion = ##c lass(HS.Pu sh.WebServ ices.Conta iners.Subs criptionPo licy).%New () | |
1743 | Se t subscrip tion.Recip ientType = "syst em" | |
1744 | Se t subscrip tion.Regis tryId = sysDe fault | |
1745 | Se t subscrip tion.Name = "OnDe mand Patie nt C32" | |
1746 | Se t subscrip tion.Subsc riptionBas is = "A" //All | |
1747 | Se t subscrip tion.Deliv eryPolicy = polOn Demand | |
1748 | Se t subscrip tion.Trans formation = txPat ientC32 | |
1749 | Se t subscrip tion.Subje ct = "Pati ent Summar y" | |
1750 | Se t subscrip tion.Effec tiveDate = +$H | |
1751 | Se t subscrip tion.Expir ationDate = "" | |
1752 | Se t subPatie nt = $$add Subscripti on(subscri ption) | |
1753 | ||
1754 | Se t subscrip tion = ##c lass(HS.Pu sh.WebServ ices.Conta iners.Subs criptionPo licy).%New () | |
1755 | Se t subscrip tion.Recip ientType = "syst em" | |
1756 | Se t subscrip tion.Regis tryId = sysDe fault | |
1757 | Se t subscrip tion.Name = "OnDe mand Encou nter Summa ry" | |
1758 | Se t subscrip tion.Subsc riptionBas is = "I" //Info Typ e | |
1759 | Se t subscrip tion.Deliv eryPolicy = polOn Demand | |
1760 | Se t subscrip tion.Trans formation = txEnc ounter | |
1761 | Se t subscrip tion.Subje ct = "Enco unter Summ ary" | |
1762 | Se t subscrip tion.Effec tiveDate = +$H | |
1763 | Se t subscrip tion.Expir ationDate = "" | |
1764 | Se t subEncou nter = $$a ddSubscrip tion(subsc ription) | |
1765 | Do addSearch Terms(subE ncounter,s ubscriptio n.Subscrip tionBasis, $LB("ENC") ) | |
1766 | ||
1767 | Se t subscrip tion = ##c lass(HS.Pu sh.WebServ ices.Conta iners.Subs criptionPo licy).%New () | |
1768 | Se t subscrip tion.Recip ientType = "syst em" | |
1769 | Se t subscrip tion.Regis tryId = sysDe fault | |
1770 | Se t subscrip tion.Name = "OnDe mand Unstr uctured Do cument" | |
1771 | Se t subscrip tion.Subsc riptionBas is = "I" //Info Typ e | |
1772 | Se t subscrip tion.Deliv eryPolicy = polOn Demand | |
1773 | Se t subscrip tion.Trans formation = txDoc ument | |
1774 | Se t subscrip tion.Subje ct = "Unst ructured D ocument" | |
1775 | Se t subscrip tion.Effec tiveDate = +$H | |
1776 | Se t subscrip tion.Expir ationDate = "" | |
1777 | Se t subDocum ent = $$ad dSubscript ion(subscr iption) | |
1778 | Do addSearch Terms(subD ocument,su bscription .Subscript ionBasis,$ LB("DOC.CP ","DOC.CR" ,"DOC.DS", "DOC.HP"," DOC.LR","D OC.PN","DO C.RA","DOC .SR","DOC. PROGRESS N OTE")) | |
1779 | ||
1780 | ||
1781 | If $$$WriteP rog Write !,"HS.Loca l.VA.HS.Ac cess.CDA.S etup:Deliv ery - succ ess" | |
1782 | Qu it | |
1783 | ||
1784 | addTransfo rm(transfo rm) | |
1785 | If $$$WriteP rog Write !,?8,trans form.Name | |
1786 | $$ $ThrowOnEr ror(##clas s(HS.Util. HubService s).InvokeH ubService( "HS.Push.W ebServices ","HS.Push .WebServic esClient", "AddEditTr ansformati on",.respo nse,transf orm)) | |
1787 | $$ $ThrowOnEr ror(respon se.Status) | |
1788 | Qu it respons e.ID | |
1789 | addOption( option) | |
1790 | If $$$WriteP rog Write !,?8,optio n.Name | |
1791 | $$ $ThrowOnEr ror(##clas s(HS.Util. HubService s).InvokeH ubService( "HS.Push.W ebServices ","HS.Push .WebServic esClient", "AddEditDe liveryOpti on",.respo nse,option )) | |
1792 | $$ $ThrowOnEr ror(respon se.Status) | |
1793 | Qu it respons e.ID | |
1794 | addSystem( system) | |
1795 | If $$$WriteP rog Write !,?8,syste m.Name | |
1796 | $$ $ThrowOnEr ror(##clas s(HS.Util. HubService s).InvokeH ubService( "HS.Push.W ebServices ","HS.Push .WebServic esClient", "AddEditRe ceivingSys tem",.resp onse,syste m)) | |
1797 | $$ $ThrowOnEr ror(respon se.Status) | |
1798 | Qu it respons e.ID | |
1799 | addPolicy( policy) | |
1800 | If $$$WriteP rog Write !,?12,"Del ivery Poli cy: ",poli cy.Name | |
1801 | $$ $ThrowOnEr ror(##clas s(HS.Util. HubService s).InvokeH ubService( "HS.Push.W ebServices ","HS.Push .WebServic esClient", "AddEditDe liveryPoli cy",.respo nse,policy )) | |
1802 | $$ $ThrowOnEr ror(respon se.Status) | |
1803 | Qu it respons e.ID | |
1804 | addSubscri ption(subs cription) | |
1805 | If $$$WriteP rog Write !,?12,"Sub scription: ",subscri ption.Name | |
1806 | $$ $ThrowOnEr ror(##clas s(HS.Util. HubService s).InvokeH ubService( "HS.Push.W ebServices ","HS.Push .WebServic esClient", "AddEditSu bscription Policy",.r esponse,su bscription )) | |
1807 | $$ $ThrowOnEr ror(respon se.Status) | |
1808 | Qu it respons e.ID | |
1809 | addSearchT erms(polic y,basis,li st) | |
1810 | Se t terms = ##class(HS .Push.WebS ervices.Co ntainers.L istTermIte ms).%New() | |
1811 | Se t terms.Po licyId = po licy | |
1812 | Se t terms.Su bscription Basis = "I " | |
1813 | Fo r i=1:1:$L L(list) { | |
1814 | Do t erms.Terms .Insert($L I(list,i)) | |
1815 | If $ $$WritePro g Write !, ?16,"Term: ",$LI(lis t,i) | |
1816 | } | |
1817 | $$ $ThrowOnEr ror(##clas s(HS.Util. HubService s).InvokeH ubService( "HS.Push.W ebServices ","HS.Push .WebServic esClient", "AddEditSe archTerms" ,.sc,terms )) | |
1818 | $$ $ThrowOnEr ror(sc) | |
1819 | Qu it | |
1820 | ]]> | |
1821 | </Implemen tation> | |
1822 | </Method> | |
1823 | ||
1824 | <Method | |
1825 | name="getG atewayIDRe try" | |
1826 | > | |
1827 | <Descripti on> | |
1828 | convert na mespace in to HS.Gate way.Config ID | |
1829 | </Descript ion> | |
1830 | <ClassMeth od> | |
1831 | 1 | |
1832 | </ClassMet hod> | |
1833 | <FormalSpe c> | |
1834 | namespace: %String, h angTime:%I nteger, ti meOut:%Int eger | |
1835 | </FormalSp ec> | |
1836 | <ReturnTyp e> | |
1837 | %String | |
1838 | </ReturnTy pe> | |
1839 | <Implement ation> | |
1840 | <![CDATA[ | |
1841 | Se t ret = "" | |
1842 | Set cn t = 0 | |
1843 | Set sc e = "" | |
1844 | For { | |
1845 | tr y { | |
1846 | If $$$Wr iteProg Wr ite !,?8," Getting "_ namespace_ " ["_hangT ime_"s ("_ cnt_"s/"_t imeOut_"s) ]" | |
1847 | Set ret = ..getGat ewayID(nam espace) | |
1848 | Return:r et ret | |
1849 | } catch sc { | |
1850 | Set sce = sc | |
1851 | } | |
1852 | If $$$WriteP rog Write !,?8,"Gate way "_name space_" no t register ed yet, wa iting "_ha ngTime_"s ("_cnt_"s/ "_timeOut_ "s)" | |
1853 | Ha ng hangTim e | |
1854 | Se t cnt = cn t + hangTi me | |
1855 | If cnt > tim eOut { | |
1856 | If sce | |
1857 | { | |
1858 | Thro w sce | |
1859 | } Else { | |
1860 | Thro w | |
1861 | } | |
1862 | } | |
1863 | } | |
1864 | Return ret | |
1865 | ]]> | |
1866 | </Implemen tation> | |
1867 | </Method> | |
1868 | ||
1869 | <Method | |
1870 | name="getG atewayID" | |
1871 | > | |
1872 | <Descripti on> | |
1873 | convert na mespace in to HS.Gate way.Config ID | |
1874 | </Descript ion> | |
1875 | <ClassMeth od> | |
1876 | 1 | |
1877 | </ClassMet hod> | |
1878 | <FormalSpe c> | |
1879 | namespace: %String | |
1880 | </FormalSp ec> | |
1881 | <ReturnTyp e> | |
1882 | %String | |
1883 | </ReturnTy pe> | |
1884 | <Implement ation> | |
1885 | <![CDATA[ | |
1886 | Se t pattern = "%:"_nam espace | |
1887 | Se t rs = ##c lass(%SQL. Statement) .%ExecDire ct(,"SELEC T ID,Name From HS_Ga teway.Conf ig WHERE N ame LIKE ? ",pattern) | |
1888 | If rs.%Next( ) Quit rs. ID | |
1889 | $$ $ThrowStat us($$$ERRO R(5001,"Ga teway not found: "_n amespace)) | |
1890 | ]]> | |
1891 | </Implemen tation> | |
1892 | </Method> | |
1893 | ||
1894 | <Method | |
1895 | name="getS erviceID" | |
1896 | > | |
1897 | <Descripti on> | |
1898 | convert se rvice indo HS.Regist ry.Service .SOAP ID | |
1899 | </Descript ion> | |
1900 | <ClassMeth od> | |
1901 | 1 | |
1902 | </ClassMet hod> | |
1903 | <FormalSpe c> | |
1904 | serviceNam e | |
1905 | </FormalSp ec> | |
1906 | <ReturnTyp e> | |
1907 | %String | |
1908 | </ReturnTy pe> | |
1909 | <Implement ation> | |
1910 | <![CDATA[ Quit ##class(H S.Registry .Service.S OAP).IDFor NameType(s erviceName ,"SOAP") | |
1911 | ]]> | |
1912 | </Implemen tation> | |
1913 | </Method> | |
1914 | ||
1915 | <Method | |
1916 | name="SetD efaultSett ings" | |
1917 | > | |
1918 | <ClassMeth od> | |
1919 | 1 | |
1920 | </ClassMet hod> | |
1921 | <FormalSpe c> | |
1922 | pLocalPath :%String=" ",pEnviron ment:%Stri ng="DEV",p Version:%S tring="" | |
1923 | </FormalSp ec> | |
1924 | <Implement ation> | |
1925 | <![CDATA[ | |
1926 | // Apply the | |
1927 | Se t tSC = .. GetDefault sByEnv(pEn vironment, .tDefs) | |
1928 | Do ..SetSett ings("HS.L ocal.VA.HS .Access.CD A.Setup||C ommonDefau ltSettings "_pVersion ) | |
1929 | Do ..SetSett ings("HS.L ocal.VA.HS .Access.CD A.Setup||" _pEnvironm ent_"Defau ltSettings "_pVersion ) | |
1930 | ]]> | |
1931 | </Implemen tation> | |
1932 | </Method> | |
1933 | ||
1934 | <Method | |
1935 | name="SetS ettings" | |
1936 | > | |
1937 | <ClassMeth od> | |
1938 | 1 | |
1939 | </ClassMet hod> | |
1940 | <FormalSpe c> | |
1941 | pSettings | |
1942 | </FormalSp ec> | |
1943 | <Implement ation> | |
1944 | <![CDATA[ | |
1945 | Se t compiled Xdata=##cl ass(%Dicti onary.Comp iledXData) .%OpenId(p Settings) | |
1946 | Se t tStream= compiledXd ata.Data | |
1947 | Se t tSC=##cl ass(Ens.Co nfig.Defau ltSettings ).%Import( tStream) | |
1948 | ]]> | |
1949 | </Implemen tation> | |
1950 | </Method> | |
1951 | ||
1952 | <XData | |
1953 | name="Comm onDefaultS ettings" | |
1954 | > | |
1955 | <Data> | |
1956 | <![CDATA[ | |
1957 | <defaultSe ttings> | |
1958 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "" setting ="RequireV alidSAMLTo ken" value ="0"><Depl oyable>fal se</Deploy able></ite m> | |
1959 | ||
1960 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.Hub.HS WS.WebServ ices" sett ing="XDSbR egistryTar get" value ="VA.HS.IH E.XDSb.Reg istry.Oper ations"><D eployable> false</Dep loyable></ item> | |
1961 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.Hub.HS WS.WebServ ices" sett ing="Resou rceRequire d" value=" %HS_WebSer vices"><De ployable>f alse</Depl oyable></i tem> | |
1962 | ||
1963 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.IHE.PD Qv3.Suppli er.Service s" setting ="PDQv3Can celTarget" value="HS .IHE.PDQ.S upplier.Pr ocess"><De ployable>f alse</Depl oyable></i tem> | |
1964 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.IHE.PD Qv3.Suppli er.Service s" setting ="PDQv3Con tinueTarge t" value=" HS.IHE.PDQ .Supplier. Process">< Deployable >false</De ployable>< /item> | |
1965 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.IHE.PD Qv3.Suppli er.Service s" setting ="PDQv3Que ryTarget" value="HS. IHE.PDQ.Su pplier.Pro cess"><Dep loyable>fa lse</Deplo yable></it em> | |
1966 | ||
1967 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.IHE.PI Xv3.Consum er.Service s" setting ="PIXv3Rev iseTarget" value="HS .IHE.PIX.C onsumer.Pr ocess"><De ployable>f alse</Depl oyable></i tem> | |
1968 | ||
1969 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.IHE.PI Xv3.Manage r.Services " setting= "PIXv3AddT arget" val ue="HS.IHE .PIX.Manag er.Process "><Deploya ble>false< /Deployabl e></item> | |
1970 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.IHE.PI Xv3.Manage r.Services " setting= "PIXv3Merg eTarget" v alue="HS.I HE.PIX.Man ager.Proce ss"><Deplo yable>fals e</Deploya ble></item > | |
1971 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.IHE.PI Xv3.Manage r.Services " setting= "PIXv3Quer yTarget" v alue="HS.I HE.PIX.Man ager.Proce ss"><Deplo yable>fals e</Deploya ble></item > | |
1972 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.IHE.PI Xv3.Manage r.Services " setting= "PIXv3Revi seTarget" value="HS. IHE.PIX.Ma nager.Proc ess"><Depl oyable>fal se</Deploy able></ite m> | |
1973 | ||
1974 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.IHE.XD Sb.Registr y.Services " setting= "XDSbQuery Target" va lue="VA.HS .IHE.XDSb. Registry.O perations" ><Deployab le>false</ Deployable ></item> | |
1975 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.IHE.XD Sb.Registr y.Services " setting= "XDSbRegis terTarget" value="VA .HS.IHE.XD Sb.Registr y.Operatio ns"><Deplo yable>fals e</Deploya ble></item > | |
1976 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.IHE.XD Sb.Registr y.Services " setting= "XDSbRegis terOnDeman dTarget" v alue="VA.H S.IHE.XDSb .Registry. Operations "><Deploya ble>false< /Deployabl e></item> | |
1977 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.IHE.XD Sb.Registr y.Services " setting= "XDSbUpdat eDocumentS etTarget" value="VA. HS.IHE.XDS b.Registry .Operation s"><Deploy able>false </Deployab le></item> | |
1978 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.IHE.XD Sb.Registr y.Services " setting= "XDSbDelet eDocumentS etTarget" value="VA. HS.IHE.XDS b.Registry .Operation s"><Deploy able>false </Deployab le></item> | |
1979 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.IHE.XD Sb.Registr y.Services " setting= "PIXv3Mana gerTarget" value="HS .IHE.PIX.M anager.Pro cess"><Dep loyable>fa lse</Deplo yable></it em> | |
1980 | ||
1981 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.HS.IHE .PIXv2.Con sumer.Serv ices" sett ing="Targe tConfigNam es" value= "VA.HS.IHE .PIX.Consu mer.Proces s"><Deploy able>false </Deployab le></item> | |
1982 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.HS.IHE .PIXv2.Con sumer.Serv ices" sett ing="Messa geSchemaCa tegory" va lue="VA.MV I.2.5"><De ployable>f alse</Depl oyable></i tem> | |
1983 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.HS.IHE .PIXv2.Con sumer.Serv ices" sett ing="Local FacilityAp plication" value="@: @"><Deploy able>false </Deployab le></item> | |
1984 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.HS.IHE .PIXv2.Con sumer.Serv ices" sett ing="AckMo de" value= "Immediate "><Deploya ble>false< /Deployabl e></item> | |
1985 | ||
1986 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.IHE.PI X.Consumer .Process" setting="N otifyOther s" value=" HS.IHE.XDS b.Registry .Operation s,HS.IHE.X DSb.Push.M ergeOperat ions"><Dep loyable>fa lse</Deplo yable></it em> | |
1987 | ||
1988 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.IHE.PI X.Manager. Process" s etting="De viceID" va lue="PIXv3 ManagerDev ice"><Depl oyable>fal se</Deploy able></ite m> | |
1989 | ||
1990 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.HS.IHE .PIX.Consu mer.Proces s" setting ="PoolSize " value="1 "><Deploya ble>false< /Deployabl e></item> | |
1991 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.HS.IHE .PIX.Consu mer.Proces s" setting ="PartnerO peration" value="VA. MVI.ACK.Op eration">< Deployable >false</De ployable>< /item> | |
1992 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.HS.IHE .PIX.Consu mer.Proces s" setting ="VAStatio n" value=" 200HSEP">< Deployable >false</De ployable>< /item> | |
1993 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.HS.IHE .PIX.Consu mer.Proces s" setting ="HL7Proce ssingID" v alue="T">< Deployable >false</De ployable>< /item> | |
1994 | ||
1995 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "GATEWAY" setting="S OAPCredent ials" valu e="HS_Serv ices"><Dep loyable>fa lse</Deplo yable></it em> | |
1996 | ||
1997 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.Hub.Ma nagement.O perations" setting=" PoolSize" value="1"> <Deployabl e>false</D eployable> </item> | |
1998 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.Hub.Ma nagement.O perations" setting=" AllowDynam icGatewayR egistratio n" value=" 1"><Deploy able>false </Deployab le></item> | |
1999 | ||
2000 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.Hub.MP I.Manager" setting=" PoolSize" value="1"> <Deployabl e>false</D eployable> </item> | |
2001 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.Hub.MP I.Manager" setting=" MPIOperati ons" value =""><Deplo yable>fals e</Deploya ble></item > | |
2002 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.Hub.MP I.Manager" setting=" MatchMode" value="An y"><Deploy able>false </Deployab le></item> | |
2003 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.Hub.MP I.Manager" setting=" ConsentPro cesor" val ue="HS.Con sent.MPIEn gine"><Dep loyable>fa lse</Deplo yable></it em> | |
2004 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.Hub.MP I.Manager" setting=" DynamicFac ilityRegis tration" v alue="1">< Deployable >false</De ployable>< /item> | |
2005 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.Hub.MP I.Manager" setting=" PIXManager " value="H S.IHE.PIX. Manager.Pr ocess"><De ployable>f alse</Depl oyable></i tem> | |
2006 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.Hub.MP I.Manager" setting=" Identifier Compatibil ityMode" v alue="0">< Deployable >false</De ployable>< /item> | |
2007 | ||
2008 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.Hub.Pu sh.EmailSa mpleOperat ion" setti ng="Creden tials" val ue="SENDER "><Deploya ble>false< /Deployabl e></item> | |
2009 | ||
2010 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.Hub.Pu sh.Evaluat or" settin g="XDSbOnD emandTarge t" value=" VA.HS.IHE. XDSb.OnDem and.Operat ions"><Dep loyable>fa lse</Deplo yable></it em> | |
2011 | ||
2012 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.IHE.PD Qv3.Consum er.Operati ons" setti ng="Device " value="P DQv3Consum erDevice"> <Deployabl e>false</D eployable> </item> | |
2013 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.IHE.PD Qv3.Consum er.Operati ons" setti ng="Servic eName" val ue="PDQv3. Supplier"> <Deployabl e>false</D eployable> </item> | |
2014 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.IHE.PD Qv3.Consum er.Operati ons" setti ng="PoolSi ze" value= "1"><Deplo yable>fals e</Deploya ble></item > | |
2015 | ||
2016 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.IHE.PI Xv3.Consum er.Operati ons" setti ng="Device " value="P IXv3Consum erDevice"> <Deployabl e>false</D eployable> </item> | |
2017 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.IHE.PI Xv3.Consum er.Operati ons" setti ng="Servic eName" val ue="PIXv3. Supplier"> <Deployabl e>false</D eployable> </item> | |
2018 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.IHE.PI Xv3.Consum er.Operati ons" setti ng="PoolSi ze" value= "1"><Deplo yable>fals e</Deploya ble></item > | |
2019 | ||
2020 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.IHE.PI Xv3.Source .Operation s" setting ="Device" value="PIX v3SourceDe vice"><Dep loyable>fa lse</Deplo yable></it em> | |
2021 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.IHE.PI Xv3.Source .Operation s" setting ="ServiceN ame" value ="PIXv3.Ma nager"><De ployable>f alse</Depl oyable></i tem> | |
2022 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.IHE.PI Xv3.Source .Operation s" setting ="PoolSize " value="1 "><Deploya ble>false< /Deployabl e></item> | |
2023 | ||
2024 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.IHE.XD Sb.Consent .Operation s" setting ="DefaultF acility" v alue="Home Community" ><Deployab le>false</ Deployable ></item> | |
2025 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.IHE.XD Sb.Consent .Operation s" setting ="PoolSize " value="1 "><Deploya ble>false< /Deployabl e></item> | |
2026 | ||
2027 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.IHE.XD Sb.Push.Me rgeOperati ons" setti ng="PoolSi ze" value= "1"><Deplo yable>fals e</Deploya ble></item > | |
2028 | ||
2029 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.IHE.XD Sb.Push.Re gisterPost Processor" setting=" PoolSize" value="1"> <Deployabl e>false</D eployable> </item> | |
2030 | ||
2031 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.IHE.XD Sb.Registr y.Operatio ns" settin g="Enabled " value="0 "><Deploya ble>false< /Deployabl e></item> | |
2032 | ||
2033 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.ESR.Op erations" setting="S OAPCredent ials" valu e=""><Depl oyable>fal se</Deploy able></ite m> | |
2034 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.ESR.Op erations" setting="C redentials " value="" ><Deployab le>false</ Deployable ></item> | |
2035 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.ESR.Op erations" setting="S erviceName " value="V A.ESR"><De ployable>f alse</Depl oyable></i tem> | |
2036 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.ESR.Op erations" setting="P oolSize" v alue="1">< Deployable >false</De ployable>< /item> | |
2037 | ||
2038 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.HS.IHE .XDSb.Regi stry.Opera tions" set ting="XDSb QueryConse ntTarget" value="HS. IHE.XDSb.C onsent.Ope rations">< Deployable >false</De ployable>< /item> | |
2039 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.HS.IHE .XDSb.Regi stry.Opera tions" set ting="Regi sterPostPr ocessor" v alue="HS.I HE.XDSb.Pu sh.Registe rPostProce ssor"><Dep loyable>fa lse</Deplo yable></it em> | |
2040 | ||
2041 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.IHE.XD Sb.OnDeman d.Operatio ns" settin g="Registr yTarget" v alue="VA.H S.IHE.XDSb .Registry. Operations "><Deploya ble>false< /Deployabl e></item> | |
2042 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.IHE.XD Sb.OnDeman d.Operatio ns" settin g="IssueOn DemandRepl acements" value="1"> <Deployabl e>false</D eployable> </item> | |
2043 | ||
2044 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.MVI.AC K.Operatio n" setting ="External RegistryID " value="" ><Deployab le>false</ Deployable ></item> | |
2045 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.MVI.AC K.Operatio n" setting ="Separato rs" value= "^~|\& "><Deploya ble>false< /Deployabl e></item> | |
2046 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.MVI.AC K.Operatio n" setting ="PoolSize " value="1 "><Deploya ble>false< /Deployabl e></item> | |
2047 | ||
2048 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.MVI.Op erations" setting="P atientSear ch" value= "VA.MVI.PD Qv3.Consum er.Operati ons"><Depl oyable>fal se</Deploy able></ite m> | |
2049 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.MVI.Op erations" setting="R egisterInt erest" val ue="VA.MVI .PDQv3.Con sumer.Oper ations.DFN "><Deploya ble>false< /Deployabl e></item> | |
2050 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.MVI.Op erations" setting="U seFacility AsDefaultA A" value=" 1"><Deploy able>false </Deployab le></item> | |
2051 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.MVI.Op erations" setting="P ooSize" va lue="1"><D eployable> false</Dep loyable></ item> | |
2052 | ||
2053 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.MVI.PD Qv3.Consum er.Operati ons" setti ng="Device " value="2 00HSEP"><D eployable> false</Dep loyable></ item> | |
2054 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.MVI.PD Qv3.Consum er.Operati ons" setti ng="Servic eName" val ue="MVI.PD Qv3.Consum er"><Deplo yable>fals e</Deploya ble></item > | |
2055 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.MVI.PD Qv3.Consum er.Operati ons" setti ng="Transf ormPatient SearchToPD Q" value=" IHE/PDQ/Ve rsion1/Cus tom/vaPati entSearchT oPRPAIN201 305UV.xsl" ><Deployab le>false</ Deployable ></item> | |
2056 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.MVI.PD Qv3.Consum er.Operati ons" setti ng="Transf ormPDQToPa tientSearc h" value=" IHE/PDQ/Ve rsion1/Cus tom/vaPRPA IN201306UV ToPatientS earchRespo nse.xsl">< Deployable >false</De ployable>< /item> | |
2057 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.MVI.PD Qv3.Consum er.Operati ons" setti ng="PoolSi ze" value= "1"><Deplo yable>fals e</Deploya ble></item > | |
2058 | ||
2059 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.MVI.PD Qv3.Consum er.Operati ons.DFN" s etting="De vice" valu e="200HSEP "><Deploya ble>false< /Deployabl e></item> | |
2060 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.MVI.PD Qv3.Consum er.Operati ons.DFN" s etting="Se rviceName" value="MV I.PDQv3.Co nsumer"><D eployable> false</Dep loyable></ item> | |
2061 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.MVI.PD Qv3.Consum er.Operati ons.DFN" s etting="Po olSize" va lue="1"><D eployable> false</Dep loyable></ item> | |
2062 | </default Settings> | |
2063 | ]]> | |
2064 | </Data> | |
2065 | </XData> | |
2066 | ||
2067 | <XData | |
2068 | name="DEVD efaultSett ings" | |
2069 | > | |
2070 | <Data> | |
2071 | <![CDATA[ | |
2072 | <defaultSe ttings> | |
2073 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.Hub.Pu sh.EmailSa mpleOperat ion" setti ng="SMTPSe rver" valu e="mail.is cinternal. com"><Depl oyable>fal se</Deploy able></ite m> | |
2074 | ||
2075 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.HS.IHE .PIXv2.Con sumer.Serv ices" sett ing="Port" value="70 15"><Deplo yable>fals e</Deploya ble></item > | |
2076 | ||
2077 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.MVI.AC K.Operatio n" setting ="IPAddres s" value=" ecptest-de v. DNS "><Deploya ble>false< /Deployabl e></item> | |
2078 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "VA.MVI.AC K.Operatio n" setting ="Port" va lue="5014" ><Deployab le>false</ Deployable ></item> | |
2079 | ||
2080 | </ defaultSet tings> | |
2081 | ]]> | |
2082 | </Data> | |
2083 | </XData> | |
2084 | ||
2085 | <XData | |
2086 | name="DEVL ocalDefaul tSettings" | |
2087 | > | |
2088 | <Data> | |
2089 | <![CDATA[ | |
2090 | <defaultSe ttings> | |
2091 | <i tem produc tion="HSRE GISTRYPKG. HubProduct ion" class ="*" item= "HS.Hub.Pu sh.EmailSa mpleOperat ion" setti ng="SMTPSe rver" valu e="localho st"><Deplo yable>fals e</Deploya ble></item > | |
2092 | </defaultS ettings> | |
2093 | ]]> | |
2094 | </Data> | |
2095 | </XData> | |
2096 | ||
2097 | <XData | |
2098 | name="SQAD efaultSett ings" | |
2099 | > | |
2100 | <Data> | |
2101 | <![CDATA[ | |
2102 | <defaultSe ttings> | |
2103 | ||
2104 | </ defaultSet tings> | |
2105 | ]]> | |
2106 | </Data> | |
2107 | </XData> | |
2108 | ||
2109 | <XData | |
2110 | name="PreP RODDefault Settings" | |
2111 | > | |
2112 | <Data> | |
2113 | <![CDATA[ | |
2114 | <defaultSe ttings> | |
2115 | ||
2116 | </ defaultSet tings> | |
2117 | ]]> | |
2118 | </Data> | |
2119 | </XData> | |
2120 | ||
2121 | <XData | |
2122 | name="PROD DefaultSet tings" | |
2123 | > | |
2124 | <Data> | |
2125 | <![CDATA[ | |
2126 | <defaultSe ttings> | |
2127 | ||
2128 | </ defaultSet tings> | |
2129 | ]]> | |
2130 | </Data> | |
2131 | </XData> | |
2132 | </Class> | |
2133 | ||
2134 | ||
2135 | </Export> |
Araxis Merge (but not the data content of this report) is Copyright © 1993-2016 Araxis Ltd (www.araxis.com). All rights reserved.