go to post Suman Samanta · Jun 19, 2020 You can use EnsLib.ITK.HL7.FormatXMLv2 . It was primarily designed for HL7 ITK version. You can extend this class and modify as you need.Then simply convert that into stream that you need and transfer wherever you want. Alternatively you can download the xsd from HL7 site then map from HL7 to XML schema. It would be pretty lengthy method .
go to post Suman Samanta · Mar 2, 2020 Override OnResponse method in bps . You can handle reponses in OnResponse() method.
go to post Suman Samanta · Feb 25, 2020 First of all your source message is missing one segment , i corrected it. below code should work for you . set target = ##class(EnsLib.HL7.Message).%New() set target.DocType = source.DocType write $System.Status.GetErrorText(source.BuildMap(1)) set tSC = $$$OK try { set segCount = source.SegCount for segNo=1:1:segCount { set oSegment = source.GetSegmentAt(segNo) set segPath = source.GetSegmentPath(segNo) set fieldCount = oSegment.GetValueAt("*") for fieldNo=1:1:fieldCount { set fieldValue = oSegment.GetValueAt(fieldNo) set compCount = oSegment.GetValueAt(fieldNo_".*") for compNo=1:1:compCount { // considering there is no repeat - if repeat then one more loop is required set subCompCount = oSegment.GetValueAt(fieldNo_"."_compNo_".*") for subCompNo=1:1:subCompCount { set path = segPath_":"_fieldNo_"."_compNo_"."_subCompNo set subCompValue = source.GetValueAt(path) if (subCompValue '= "") && (subCompValue '= ($C(34)_$C(34))) { //if (oSegment.Name = "PID")&&(fieldNo=2) break if path="PIDgrp.PID:13.4.1" break write path_"--->"_subCompValue,! do target.SetValueAt(subCompValue,path) } } } //set componentCount = oSegment.GetValueAt(fieldNo } } do target.OutputToFile("C:\Work\Report\target.hl7",1) } catch oEx { }
go to post Suman Samanta · Feb 25, 2020 Wont it create issue with big segments or in case of OBX as OBX:5 may contain different type of values ?
go to post Suman Samanta · Jan 28, 2020 You can do like this as well in case you want to use DTL only .. <transform sourceClass='EnsLib.HL7.Message' targetClass='EnsLib.HL7.Message' sourceDocType='2.3.1:ADT_A01' targetDocType='2.3.1:ADT_A01' create='copy' language='objectscript' ><assign value='$extract(source.{MSH:Receivingfacility},1)' property='target.{MSH:Receivingfacility}' action='set' /></transform>} I am using MSH:6 but you can use anything here. In case you need to use any use written function you can create a class extending "Ens.Util.FunctionSet." Any class method we write in the class will be added in your DTL method option .
go to post Suman Samanta · Jan 2, 2020 Hi David, I am not sure of any handy solution but I would like to suggest one "frugal innovation" here. It might not fit the exact requirement but it can be of some help if changing the table structure is permitted. if possible change the date field to integer/float and convert the whole date time to seconds . while storing the data first convert the date to horolog , it would come like 65380,73921.1234 Then convert the date to seconds by (65380 * 24 * 3600) + 73921.1234 index on this column is going to perform better. Let me know if its possible in your case.
go to post Suman Samanta · Jan 2, 2020 Run %GSIZE if you see any orphan globals please kill ,or take necessary action. Then go to 1. Management portal 2. System Operation 3. Databases 4. Top left Corner - "Freespace " 5. You will see a list of dbs 6. every row extreme right you will see 2 links "compact" and "truncate" 7. First do a compact 8. check background job if successful Got to #9 else repeat #7 9. truncate the db
go to post Suman Samanta · Jan 2, 2020 Thank you , i added the jars in tomcat lib directory and its fixed my issue.
go to post Suman Samanta · Oct 1, 2019 Yes we are 2 different jobs for UI and back-end deployment. Our cache back-end gets deployed first if back-end is successful we do go ahead with UI deployment. For cache Unit testing you need to handle it from cache code. We have one shell script which does call the cache object script deployment code and internally our cache deployment script runs the unit test(and code coverage). For angular its easy using maven , Jenkins has in built functionlity for Angular with Maven
go to post Suman Samanta · Sep 27, 2019 i guess you are setting the stream incorrectly . Could you please post your specific code.
go to post Suman Samanta · Sep 10, 2019 Try doing %BuildIndices() on the table then try doing %OpenId().
go to post Suman Samanta · Sep 5, 2019 I do not think you need to upgrade to 2017/18 before upgrading to 2019. Yo can directly upgrade to 2019 , but you need to change few classes manually.Whats the format of your backup , is it dat files? I guess its safe to take the data backup(not code)The code backup cannot be restored directly into 2019 as there are few library change. One of the main change that needs to be done manually is JSON library changes.Does this answer your question.
go to post Suman Samanta · Jul 9, 2019 I just added one line in my eclipse.ini file and worked for me.-Dorg.eclipse.ecf.provider.filetransfer.excludeContributors=org.eclipse.ecf.provider.filetransfer.httpclient4
go to post Suman Samanta · Jul 8, 2019 As per my knowledge directly its not possible.1. If you are calling from zen page and from client method you can call cache method.2. Create one REST service in cache side and call the REST(http) from JS.
go to post Suman Samanta · Jun 26, 2019 Yes child process in getting created but its not passing the object to the next job
go to post Suman Samanta · Jun 26, 2019 Ok i found something here. I am calling like belowjob ##class(TestFramework.API.E2E.Service).RunCases(oResults,pRunSessionId)Here oResults is a listofobjects , and this is not getting passed to the object. New job is getting created but as the list of objects is not not getting passed hence the failure.
go to post Suman Samanta · Jun 24, 2019 Do you want server side explorer?If so please have a look at this/// Demonstration of launching a file selector window. ClientMethod showFileSelectionWindow() [ Language = javascript ]{zenLaunchPopupWindow('%ZEN.Dialog.fileSelect.cls','FileSelection','status,scrollbars,resizable,width=500,height=700');}/// This client event, if present, is fired when the a popup page/// launched from this page fires an action.ClientMethod onPopupAction(popupName, action, value) [ Language = javascript ]{switch(popupName) {case 'FileSelection':if (action=='ok');{alert('My File is:'+ value);///Do something...}break;}}