How do I send request on production start?

Here's what I got so far in my production class:

ClassMethod OnStart(pTimeStarted As %String) As %Status
{
    job ..InitialTraining()
    quit 1
}

lassMethod InitialTraining() As %Status
{
    hang 5
    set sc = ##class(EnsLib.Testing.Service).SendTestRequest(...)
    quit sc
}

Is there a better way without hang, etc?

0 1
0 387
Question
· Jul 20, 2018
Oracle Transaction

Hi,

I have a question related with EnsLib.SQL.OutboundAdapter adapter.

Is there a way to open an oracle transaction and do either commit or rollback depending on the query result?

Is posible to keep open an oracle transaction to execute a lot of queries on different methods on the same business operation and do a commit when the business process finished?

Thanks and Best Regards

0 4
0 371

Hello,

First of all; thanks for your time reading this post, and thanks for your answers and help. I am really grateful.

We have the following need: Send a DICOM Find Document to get the complete list of a patient's studies from an Outbound System, which we simulate with the tool called "dcm4che" specifically with these two commands:

1º.Initialize a DICOM database in simulator. We will use this database to run queries using DICOM C-FIND commands:

0 14
0 365

I have a business process.

if it has an error it dies, or if a have a catch all/fault handler the execution flow goes there.

However, I want another behavior.

If any error occurs I want the process to "Pause" (and alert me), so I can figure out what went wrong and resume from the last request.

Here's an example of how it could work:

  1. If an error is caught, call BO
  2. BO defers response
  3. BO sends alert
  4. Fix BP
  5. Manually resolve deferred response

I'm not set on the exact pause/resume mechanic but I hope it makes the general idea of what I want clear enough. Ideas?

0 4
0 363
Question
· Feb 6, 2020
Opening Files Within A BPL

I have two files that I ultimately need to combine. The first file contains data from a PO. The second file contains tracking information. What I thought about doing was create a BS that grabs the first file, loads it into a record map and transfers it to a BPL. Then, the BPL would open the second file where I would write code to load the file into a second record map and then insert the tracking information to the correct places in the first file based on PO line items.

0 3
1 354

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 353

Greetings,

I am trying to test an hl7 message inside studio and when I click on the test button I get this error:

"<FUNCTION>GetProp+2^%CDCalBk" at 9:51 am. $I=/dev/null:50333010 ($X=0 $Y=54) $J=50333010 $ZA=0 $ZB="" $ZS=65536 ($S=66023400)

I have never seen this before! Any suggestions?

Here a simple test message:

0 2
0 352

I am calling a business rule from one of my business processes and I noticed that when the business rule reports an error that the business process calling that rule just stops without any errors. Resultingly it fails to trigger the scope - catch-all construction that is surrounding the business rule. I know that it is possible to view the errors in business rules in the business rules log, but I really like to push an error message to Ens.Alert or something similar when my business rules report an error. How do I achieve that?

0 2
0 346

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

I am using the EnsLib.File.PassthroughService class in the business service, this business service will accept a text file from a location and pass it through to the BPL as a stream. I have been trying to work with the BPL in the GUI and I have been reading the documentation and trying to get it to work but I can not I continue to get errors and I am not sure why.

I will attach the Photos of what I have been trying, I think there is a problem with my call action because when I try and trace the message the context of the file does not even make it to the business operation.

0 2
0 340

I have a Business Service that reads a file from a folder and sends it as a string to a Business Process. In the business process, I need to add a string to the end of the file string that is coming into the Business Process. I am trying to do this in object script in studio and I am struggling to figure out how to add the string to the end of the other string. I am still new to studio and object script I have been reading up on the documentation and I am not sure what is the best way to accomplish this.

0 6
0 339

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 336
Question
· Nov 7, 2022
Ens.Alert

Hi Community,

I am working on sending Gmail with error details when any errors occurs in the ensemble production.

I am facing the below issues while doing it

1.I have Ens.Alert (Business process) using the class Ens.Alerting.AlertManager and Emailoperation (Business operation) using the class EnsLib.EMail.AlertOperation. here my business process is not sending the Alarm request to business operation eventhough i am using rule to connect the business operation

2.What are SMTP server details needs to given for Gmail?

0 2
0 331

Hi, I am glad to announce another submission to OpenExchange and the current contest, the FHIR Pseudonymization Proxy. The FHIR Pseudonymization Proxy adds a transparent pseudonymization layer to any existing FHIR server, enabling clients to perform queries on the FHIR server – which may contain personal identifying information – and receive an on-the-fly pseudonymized version of the data.

1 0
2 330
Article
· Sep 28, 2015 1m read
BPL TechFAQ

The Business Processing Language - for orchestration and long-running business processes.

Ensemble can orchestrate calls to external systems. Very often this is done to implement or automate a long-running business process - that is, real business processes where people interact with a series of different systems to complete complex tasks. BPL (the Business Processing Language) provides a graphical way to create these orchestrations.

0 0
0 328

Hello, we have a couple of BPL processes. This works with a limited amount of messages but we run into issues when we process thousands of messages in a session. One BPL calls a Validation BPL process with async='False' and there is a response defined. The timeout is two seconds and that seems to be plenty of time for the validation process. I expected the calling process to wait for a response but that is not happening.

0 1
0 323

In a Business Process (BPL) I noticed that if I 'm using a "scope" to handle errors then inside the "scope" when a "call" is used, the "request" and "response" action (i.e set for callrequest.prop = request.prop & response.prop = callrespones.prop does NOT work !
The result is that the values of those properties in the callrequest are nulls (I do see the properties names in the content of the callrequest message)

0 1
0 319

Hi Interoperability experts!

Recently noticed an interesting conceptual discussion in our Interoperability Discord channel to which I want to give more exposure.

All we know that typical InterSystems Interoperability production consists of the following chain:

Inbound adapter->Business Service->Business Process->Business Operation->Outbound adapter.

And Business Process (BO) here is always considered as a passive "listener" either on port/folder/rest API for an incoming data.

2 4
0 315

Hi everyone

I am new to the bpl diagram. I would like to add an if statement that checks whatever an object is null or not.

I guess that: condition='response.Content != null' would not be ok...

<if name='CheckObj' condition='response.Content != null' xpos='200' ypos='1700' xend='277' yend='2197' >

I tried to search for this information in the documentation but I didn't find any help.

Do you have any suggestions?

Thanks and best regards

Milena

0 1
0 312

Hi all, My first post. I hope I have created it correctly.

Our team is looking to increase the number of characters in our Ensemble 'Categories' for Services, Processes and operations.

We are doing this to better identify things like Vendor, Message type and integrated application names...

One of our team members thought his might increase processing overhead and a discussion ensued that was not resolved.

my thoughts...

0 2
0 309