Ensemble

Syndicate content 70 

Is there a way to use a HL7 field value as part of the File Naming in the Business Operation FileOperation class.  I know we can do this in a custom class, but I was wondering if it could be done the default FileOperation class?

Example:

MSH-4 contains the value 12345

We would like to name the file 12345_YYYYMMDDHHMMSS.HL7

MSH.4 value here_%Y%m%d%H%M%S.HL7

It may not be possible, but I just want to see if anyone has any information

Thanks,

Kevin Brown

Last answer 22 June 2017 Last comment 22 June 2017
0   0 4
307

views

0

rating

I have come across several cases where I need to set a Date filter to send only send any admit/scheduled date past a certain point. We have a couple different date comparison functions but none looking at the true date. Most of them are date + 15 or etc. Does anyone have a good date function they have written to say if x > 20170102 ?

 

Thanks

Scott

Last answer 20 June 2017
0   0 2
0

comments

458

views

0

rating

I'm using %SOAP.WebRequest to send SOAP requests:

  1. Populate %SOAP.WebRequest object (by setting Request and HeadersOut properties)
  2. Call SendSOAPBody method to send request

Currently the XML I send looks like this:

<?xml version="1.0" encoding="UTF-8" ?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV='http://schemas.xmlsoap.org/soap/envelope/'>
  <SOAP-ENV:Header>
<SomeCustomHeader/>  </SOAP-ENV:Header>
  <SOAP-ENV:Body><SomeCustomBody/></SOAP-ENV:Body>
</SOAP-ENV:Envelope>

However, I want XML to be generated differently:

  • No new lines
  • No whitespaces between <SomeCustomHeader/> and </SOAP-ENV:Header>

 

How can I tweak XML generation to achieve that?

Last answer 14 June 2017 Last comment 14 June 2017
0   0 5
269

views

0

rating

I have a case where I am creating a PDF file from an Encoded String, and I need to transfer this file over to another server. I was wondering since this is PDF file if I could just invoke the FTP.OutboundAdapter within my Object script that is creating the PDF from the encoded string. Is this possible? Does anyone have an examples of using EnsLib.FTP.OutboundAdpater within their Object Script?

Thanks

Scott Roth

Integration - Interfaces

The Ohio State University Wexner Medical Center

Last answer 9 June 2017 Last comment 12 June 2017
0   0 2
243

views

0

rating

DTL Transformations and GetValueAt/SetValueAt calls on HL7 messages will truncate any fields longer than 32K.  To avoid this, the methods GetFieldStreamRaw and StoreFieldStreamRaw must be used when dealing with fields that might be larger than 32K.  OBX:5 is a frequent example.  These methods have some subtleties and must be used carefully.

This can't be done by simply dragging from left to right in a DTL.  It must be done with a code action.  Also, the StoreFieldStreamRaw call must be the last edit made to the segment because the segment becomes immutable after that.

StoreFieldStreamRaw takes 3 arguments: The stream to put in the field, the VDoc path of the field in which to store the stream, and a pRemainder argument.  If the pRemainder argument isn't specified, then all fields after the field being stored are blown away.  If pRemainder is specified, then all fields after the one being stored are replaced with what's in pRemainder

Last comment 10 June 2017
+ 7   0 8
736

views

+ 7

rating

Dear All,

I’m having trouble creating the following business service.  It’s intention is to pick up an CSV via FTP and pass it to a Business process that transforms it to a HL7 message.

I have created a record map for the CSV file, which I am trying to call in the business service and parse it into a new message class, which can be transformed in the business process.

Please could you advise:

Business Service

Last answer 25 May 2017 Last comment 8 June 2017
0   0 2
252

views

0

rating

Hi,

I've built a custom HL7 searchtable, but wish to remove some of the items.

I've removed the items I no longer wish to index recompiled the custom searchtable, however the previous searchtable values are available when searching messages in the namespace.

Do I need to rebuild the index for this searchtable to purge searching the old values?

I have stop and started the production.

Regards

Stuart

 

Last answer 8 June 2017
0   0 2
0

comments

166

views

0

rating

Hi,

 

Can you please help me to know if there is any performance testing tool for Ensemble production.

Requirement is  : I need to track the time consumed for conversion of message in BP , from the time the service picked the file from "In " folder and gives the response output file in "Out" folder.

 

 

Thanks ,

Shobha

Last answer 5 June 2017 Last comment 8 June 2017
0   0 0
311

views

0

rating

We have a service that sends XML message. During unit test, I tried to resend the message with following scenario:

(1) If I leave the content blank, the original message will be resent in the ContentStream;

(2) If I post a new XML message, the new XML will be sent in the Content, the original message will be resent in the ContentStream;

(3) If I post a new XML message with very big length, it will be converted to 5@%CSP.CharacterStream, and following kind of error will be thrown:

ERROR #6901: XSLT XML Transformer Error: SAXParseException: invalid document structure (Occurred in an unknown entity, at line 1, column 23.)

Last answer 7 June 2017
0   0 0
0

comments

230

views

0

rating

 I ike to create schema independent DTL to add FTS segment  to the end of a message. The problem that I see if do I need to loop each segment  to find the last segment ? Or is there a better way to do this?

ClassMethod Transform(source As %RegisteredObject, target As %RegisteredObject) As %Status
{

     set target=source.%ConstructClone(1)
     set FTSseg= "FTS||End Of File|"

 


ERROR
    quit sc
}
 

Last answer 6 June 2017
0   0 2
0

comments

201

views

0

rating

Hi,

We are trying  to feed in HTTP request & get HTTP Response in ensemble production.

From the below link  we got the code for HTTP Request/Response Example. while executing the code we are getting following error: "ERROR <Ens>ErrFailureTimeout: FailureTimeout of 30 seconds exceeded in Test.HTTP.Operation; status from last attempt was ERROR #5922: Timed out waiting for response​"

URL : https://sites.google.com/site/intersystemsensemble/code-collection/examp...

Could you please help us in this regard. 

Could you please guide us in Creating a new Ensemble Production with HTTP Protocol.

Thanks in Advance.

Sam

Last answer 1 June 2017 Last comment 6 June 2017
0   0 3
364

views

0

rating

Hi,

I am trying to generate a custom error-code using the following code

Class ISG.CommonBilling.Service.Test1 Extends EnsLib.HL7.Operation.TCPOperation
{
    ClassMethod khalid() As %Status
    {
        Set tSC=$$$ERROR("10001","I am here")
        write $$$GETERRORCODE(tSC)_$char(13,10)
        write $SYSTEM.Status.GetErrorText(tSC)
    }
}

And here is the output:

KINDRED>do ##class(ISG.CommonBilling.Service.Test1).khalid()
10001
ERROR #10001: Unknown status code: 10001 (I am here)

QUERY: Is there any way I can remove the part "Unknown status code: 10001 (...)" in the error-text?

Thanks in advance,
Khalid

Last answer 2 June 2017 Last comment 2 June 2017
0   0 5
575

views

0

rating

Hello, I am writing some cache code that will pick up a PDF file, Base64 encode the contents and then send on to a third party system within a Long String (via their API). I have been testing this and discovered that the PDFs do not open within the supplier system (I get an error saying that it hasn't been decoded correctly). I wanted to prove that the issue does not lie with the way that I have Base64 encoded it within Ensemble, and therefore as a test wanted to Encode the PDF stream, then decode the stream and write out to a new file. Unfortunately after my code has created the file locally, when I go to open the file in Adobe, I get the same error message. Therefore I am trying to work out if I have not Encoded it properly, or have not Decoded it properly (or both!). Below is a code snippet of how I am performing this test within a BPL code block; ~~~ //context.streamPDF is a %StreamGlobalBinary containing the PDF stream.

Last answer 2 June 2017 Last comment 2 June 2017
0   0 6
1865

views

0

rating

I'm doing a REST service. A method has as body parameter a JSON corresponding to a class A.

In my production I have class A so that I retrieve the parameters using a dynamic object, such that:

Set body = ##class(%DynamicObject).%FromJSON(%request.Content)
Set myObjectA = ##class(A).%New()
Set myObjectA.Id = body.Id
Set myObjectA.Name = body.Name
Set myObjectA.Date = body.Date
Set myObjectA.Salary = body.Salary

I would like to know if I can avoid doing the manual mapping, doing a casting, since I am sure that FromJSON will return a class A. Something like this:

Set myObjectA = ##class(A).%FromJSON(%request.Content)

 

Any suggestions? Thanks.

Last answer 1 June 2017 Last comment 2 June 2017
0   0 0
402

views

0

rating

Hi, Community!

Please find the Developer Community video of the week: Human Decision as a Part of Workflow.

This video is a session from Global Summit 2016 which describes:

  • The needs of human decision in workflow
  • Human workflow and InterSystems Ensemble
  • Ensemble Workflow API

Enjoy and stay tuned with Developer Community YouTube Channel.

Last comment 1 June 2017
0   0 3
110

views

0

rating

Hi,

I am facing an issue after upgrading from Ensemble version 2015.1 to 2017.1. On 2015.1, I was testing a Rest operation using a https mock-server. But now on 2017.1, the same Rest operation throws me the following exception on testing...

Last answer 31 May 2017 Last comment 31 May 2017
0   0 5
246

views

0

rating

Hi everyone,

i have a problem with the "ExecuteUpdateParmArray()" methode from the "EnsLib.SQL.OutboundAdapter" adaptater when i try to update a sql server 2008 table with JDBC connection.

..Adapter.ExecuteUpdateParmArray(.nRows,sqlUpdate,.param)

return to me the following error:

- "ERROR #5023: Remote Gateway Error: JDBC Gateway execUpdate(0) error -1: no value specified for parameter 1."

the sqlUpdate is like "update table SET column1 = ?,column2 = ?,column3 = ? where id = 1"

i built my param like this :

s param(1) = 'x'
s param(2) = 'y'
s param(3) = 'z'
s param = 3

i have no proleme for usin

Last answer 31 May 2017 Last comment 31 May 2017
0   0 5
202

views

0

rating

I have a case where I have a SIU message that has multiple RGSgrp's. I am writting the first RGSgrp fine, but when it comes to the additional RGSgrp's, I want the ability to look at the Target SIU message and see if the value exists.  If the AIG.3 already exists in the Target message I want to stop the looping and not write out the data.

 

Can anyone suggest a way to do this? Is there a way in a DTL to build a list or temp lookup table to see if something exists?

 

Thanks

Scott Roth

Integration - Interfaces

The Ohio State University Wexner Medical Center

Last answer 30 May 2017
0   0 1
0

comments

172

views

0

rating

InterSystems is pleased to announce the availability of the following maintenance releases:

  • Caché and Ensemble 2017.1.1
  • HealthShare Health Connect v15.021 on core technology 2017.1.1

Caché and Ensemble are available on the same platforms as 2017.1.0, except as noted below

  • The full list of corrections can be found in the release notes.
  • The version number of the kits for these releases is 2017.1.1.111.0
  • Oracle Solaris 10, 11 for SPARC-64 and Oracle Solaris 10, 11 for x86-64 are not yet approved.

HealthShare HealthConnect v15.021 on core technology 2017.1.1.111.

0   0 1
0

comments

252

views

0

rating

Hi,

I have created a Business Service which uses the EnsLib.File.InboundAdapter. This service will call a business service which will create an acknowledgement file in a directory specified in the operation after loading the parsed file into some temporary tables.

In order to create the acknowledgement file, I need the original file name. In the OnProcessInput of the service, it receives a stream of file data, and I can't find a way to get hold of the file name.

Any advice will be appreciated, thank you.

Last answer 24 May 2017 Last comment 24 May 2017
0   0 2
512

views

0

rating