I have a case where I need to look up the NPI provider against an External MS SQL database to retrieve our Provider Identifier to send to a downstream system. In the past I would use a Business Process (BPL) to connect to the outside MS SQL via JDBC and get that information for me. But I was thinking instead of creating a BPL process to do this, would it be better just to link to the outside MS SQL database table to retrieve the information in a SQL statement within a DTL?

0 3
0 343
Question
· Mar 29, 2017
Count Number of Pages?

Hello,

We are working on creating a metadata file to accompany PDF documents produced by one of our third party systems for ingestion into our DMS. One of the pieces of data that the metadata file must contain is the number of pages of the PDF document.

In Cache ObjectScript does anybody know if there is currently a way of counting the number of pages within a file (specifically a PDF) without invoking a non-Caché ObjectScript program/function from within Caché ObjectScript?

0 3
0 2.3K
Question
· Nov 26, 2018
BPL - Foreach IF statement

As part of a BPL I am building I need to foreach over a some repeating elements and look for a certain value, if said value is present I need to forward the message to another operation.

I can't seem to get the if statement inside the foreach loop to work and I think I am doing something wrong?

The error message I am getting:

ERROR <Ens>ErrException: <UNDEFINED>zS2+2^GWH.Messages.Eobs.AKISegmentCheck.Thread1.1 *k1 -- logged as '-' number - @' Set k1=request.GetNextIndex("PIDgrpgrp("_(1)_").ORCgrp()",k1,.tSCTrans)'

Can anyone explain that error to me?

0 3
0 892

Hello,

We are developing a BP where we would need to call at the same time to get appointments in two external systems. So then, we would need two threads, one for primary care appointments, and other for specialist appointments . We need to paralelize both calls because of both of them require some time and we would need to shorten it as much as possible.

We are currently using a flow:

0 3
0 338

Folks

1) What's the correct way to check for an existence of a segment? So far I have been doing this by checking to see if a required field is non-null, and this seems to work but is a bit clumsy. In this case, it’s an X12 message being checked in an IF action in BPL:

request.GetValueAt("NTE(1):Description")'=""

Or in a DTL, to see if a Z segment exists:

source.{ZEF:Counter}=1

0 3
0 1.6K

To transfer data between production components I actively use messages of type Ens.StreamContainer class and its descendants. In many cases the content of the message content is not visualised (the 'Body' tab contains a table with a list of selected message properties but the 'Contents' tab is empty). Response messages are never visualised, and request messages are visualised with a fifty-fifty probability. What do I need to do to ensure that messages are always visualised?

0 3
0 110

What are the pros and cons of developing a custom database driven routing engine vs. using the Ensemble standard routing engine. What I'm trying to accomplish with the custom routing engine is less manual intervention every time a new route is added. The con I can see with the custom engine is performance may lag behind the standard engine. My development vs. Intersystems essentially.

I appreciate feedback. Thanks!

0 3
0 459

Hi there,

I'm working on a project where I retrieve RawHL7 message(ORU R01 2.3.1) content from a database in a BPL. I've created a context object of type Enslib.HL7.Message, and I need to populate it with the contents from the RawHL7 message so that I can use this context object as source for my DTL transformation.

Does anyone have suggestions on the best approach to achieve this? I'm looking for guidance on how to efficiently transfer the data from the RawHL7 message to the context object.

Thanks in advance for your help!

0 3
0 529

Hello,

We have defined four BPL Business Processes. One gets occasionally errors when pool size is two. No errors happen with pool size one. The error happens on calling %Save() on a large objects with many references to other objects.

Error #5803: Failed to acquire exclusive lock on instance of 'classname'.

Error #5002: Cache error: <ROLLFAIL> %TRollBack+10^%occTransaction

The error happens on a particular large object.

Our FileService gets the same Errors #5803 and #5002 with class 'EnsLib.EDI.X12.Document'

0 3
0 575

Hi,

we get HL7 MDM messages with embedded PDF documents that are Base64 encoded. When the embedded PDF document exceeds the size of 3.6 MB the following error occurs:

FEHLER <Ens>ErrBPTerminated: BP Main HL7 MDM # wird wegen folgenden Fehlers beendet: FEHLER #5002: Caché-Fehler: <MAXSTRING>zgetAtFromArray+46^EnsLib.HL7.Segment.1
> FEHLER #5002: Caché-Fehler: <MAXSTRING>zgetAtFromArray+46^EnsLib.HL7.Segment.1

0 3
0 356

Is it possible to dynamically adjust the RetryInterval andFailureTimeout settings in a BPL?

I've got a business process that calls a web service operation to get a session ID from an external system. There is a string property returned in the body of the response that indicate an exception occurred in the external system. I have code in the BPL that examines the property and sets the status property to an error status when that occurs.

0 3
0 786

Hello All,

I am exploring Ens.Alert to generate alerts for Server exceptions.

I noticed that in the business operation, if you have your code inside try/catch and if your catch doesn't explicitly invoke $$$systemerror then Ens.Alert is not invoked.

Similarly, in the Business process if you have <catchall> then Ens.Alert is not invoked on error. How can I invoke Ens.Alert from <catchall> ?

0 3
0 298

I have a production that takes in an HL7 message thru a business service. The business service passes the incoming HL7 message to a business process that calls a transform to transform the HL7 message to a message class. After the transform is finished, the business process uses a code block to pass the object created by the transform to a method class that processes the data in the object. What would be the correct syntax for passing in the object to the class method?

0 2
0 308