Business Process (BPL)

Syndicate content 14 

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...

Last answer 21 June 2019
0   0 3
0

comments

67

views

0

rating

Hello,

We have a BPL that returns in Response several %Strings, Dates. When we try to add Array of Objects property to the Response we verified just before the BPL terminates the response object has correct values in all properties including the array. We checked the Count().  It appears that even array of String works correctly but we prefer to pass objects rather than strings.

Last answer 13 June 2019 Last comment 13 June 2019
0   0 1
46

views

0

rating

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?

 

Last answer 30 May 2019
0   0 1
0

comments

54

views

0

rating

Is there a way to have a context property be available across 2 or 3 different business processes? For example if I am setting a value in a context property within one business process and want to use the same context property in a second business process, is this possible? Is this something that can be done with the "Context Superclass"?

Last answer 15 May 2019 Last comment 15 May 2019
0   0 4
105

views

0

rating

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)

Last comment 11 April 2019
0   0 2
0

answers

47

views

0

rating

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'

Last answer 30 January 2019 Last comment 27 March 2019
0   0 2
162

views

0

rating

I am having an intermittent issue that when I make a call to MSSQL from a BPL that the response does not come back in the amount of time required. Since the call from the BPL is synchronous I tried changing the timeout to 60 but it has not helped (see below). Is there anyway to guarantee that the call waits long enough for a response before continuing on?

 

Thanks

Last answer 20 March 2019 Last comment 21 March 2019
0   0 3
86

views

0

rating

Version 2016

Created a business process and ticked "Is component".

Later trying to use it as component  from another business process, and when trying to set up target for a call activity, selecting process components does not show anything in the list.

Any idea why?

Last answer 24 January 2019 Last comment 20 March 2019
0   0 2
77

views

0

rating

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?

Last answer 19 February 2019 Last comment 19 February 2019
0   0 3
80

views

0

rating

Hi All,

Actually I am trying to implement a RESt API where in I will get ZIPCODE as request and I need to call external API which will take ZIPCODE as input and give State and City in response.

But the problem is the request is in XML Format and also response is in XML format.

Example :

Last answer 24 January 2019 Last comment 24 January 2019
0   0 2
124

views

0

rating

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.

Last answer 24 January 2019
0   0 2
0

comments

80

views

0

rating

Hi all,

Does anyone knows if there is a limit per second adding messages to an Ensemble queue? I have a Business Service working and sending async requests to a Business Process, but I can't reach no more than 60-70 messages queued per second.

I've done several tests and same behavior seems to happen with all our productions. So I was wondering if there is a parameter anywhere to maximize the number of requests that can be send to a queue per second.

Last comment 14 January 2019
0   0 2
0

answers

154

views

0

rating

I created the Process to extract the required data from ADT message to a Dynamic Object. I wanted to send the JSON stream to EnsLib.File.PassthroughOperation operation and generate a file with the content of JSON stream.

Here are the codes for Process:

Last answer 12 December 2018 Last comment 9 January 2019
+ 1   0 3
237

views

+ 1

rating

Is their a way to queue messages in a business operation to be processed later? I want to process messages over a certain size on a schedule, but let everything else process in real time. Is their a way to do this with one business operation or would I have to queue the large messages in a different business operation?

Last answer 13 December 2018
0   0 1
0

comments

144

views

0

rating

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?

Last answer 26 November 2018 Last comment 26 November 2018
0   0 3
154

views

0

rating

I created a custom class for a process that does some basic manipulation to an HL7 message. I'd like to be able to write some debugging to the process event log. How would I do that?

I've tried ##class(Ens.Util.Trace).WriteTrace("system","HOSP.IHE.PDQProcess","MessageHeaderHandler","Discarding input message")

but I get a runtime error when I try that. I know this is pretty basic stuff, but any help would be appreciated.

Last answer 14 November 2018 Last comment 19 November 2018
0   0 2
147

views

0

rating

I have been building Business Processes in Ensemble for a few months and in a process i'd use a combination of data from the request that started the process and context variables that where filled by earlier calls in the process as input for a data transformation. I do not know how to achieve that.

Last answer 23 August 2017 Last comment 9 October 2018
0   0 3
468

views

0

rating

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

Last answer 8 August 2018
0   0 2
0

comments

79

views

0

rating

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

Last comment 24 July 2018
0   0 2
0

answers

175

views

0

rating

Is there a way to graphically edit BPL processes, or do we still need to use Studio for doing that? 

 

Looking at the documentation, it appear there should be an Atelier BPL editor option available under Open With, but all I have is Atelier Class, HTML, INT, and MAC editors. 

 

There is a BPL editor in the list, but it throws a "Bad editor input" error when trying to open the class file. 

 

Last answer 20 July 2018 Last comment 23 July 2018
0   1 2
652

views

0

rating

Hello  ,

         Ensemble Business Process seems like red color but it still processing message successfully. I have checked log, events, queue everything is clear. there is no log info or error in the history.  If BP is in red color in the sense might have some issues, but is still processing messages successfully.

 Can you guys please advice on this.

Last comment 23 July 2018
0   0 2
0

answers

114

views

0

rating

I am trying to write a generic process that will take any incoming message but would like to know where it came from so in my code I would like to do something like this

If (Document.Source="some serviceorProcess").

Just to be clear in the route you get these features is there a way of accessing them in code

Last answer 5 July 2018
0   0 2
0

comments

152

views

0

rating