Larry Pinsky · Feb 28, 2020
SQLCODE Error -400

I have a code block in a BPL.  I have the below SQL and code.  All variables have been declared and set.  When I run the SQL, if there are no values returned, I get 100 for the value of SQLCODE when I perform the FETCH, which is correct.  If values are returned, I get a -400 error when I perform the first FETCH.  I've investigated, but cannot find the reason for a -400 error.  Hoping someone out here understands this and knows what's wrong.

0 2
0 908

I'm looking at an issue where I need to grab an ID number from an external SQL table when it doesn't exist in a HL7 message, and then add it to the HL7 message.

I have built the logic within a BPL which checks for the lack of ID, and then pulls the ID from the SQL table (and storing its value using the context functionality within the BPL) however I am at a loss as to how I then take the ID and add it to the HL7 message before passing it to a router.

0 2
0 429

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 259


After cloning "" sample code I imported sample production from /home/project/Samples-Integration-RedLights/data/EndStateProduction.xml file to my local system.

Now I am getting the error "ERROR #5021: Directory '\home\project\shared\Samples-Integration-RedLights\data\SampleFiles\' does not exist." in my service.  

While modifying the Directory path I am getting below error :

0 1
0 207
Jeffrey Semmens · May 5, 2016
Using Snapshots in BPL

I have a scenario where I am calling a business operation which populates  and returns an EnsLib.SQL.Snapshot via dynamic SQL to a Business Process. I then want to iterate over this snapshot and call a RecordMap Operation to write those records to a delimited file.

Is this the correct way to do something like this? If so, does anyone have a sample which illustrates its correct usage?

When the snapshot is returned I save it into a context variable with:

set context.Snapshot=callresponse where the pOutput variable of the operation is set to EnsLib.SQL.Snapshot.

0 1
0 525

Hi all,

For special definition of the company, we need to define a PoolSize according to the environment that the "Ensemble" is working.

So the first try as been add the parameter into "System Default Setting"

However, this parameter is not available in "Setting default values" in Setting tab.

I've opened the code of my production and I've noted that this parameter is a attribute of the XML element of this item

0 1
0 375
Larry Pinsky · Oct 27, 2017
Recordmap within a BPL

I have a text file that is fixed width delimited and am using a BPL to process this file, ultimately performing a transform from the text file to an HL7 message. I created a DTL, mapping from the recordmap to the HL7. In my BPL, I am performing some loops and other logic (that all is working). My issue is what to do when I perform the Transform.

0 1
0 536

There is a major  opportunity in South Africa for a complex WMS solution.

We have a long standing production warehouse management system, we need to partner with an organisation that has track record of such implementation in the past two (2) years.


Are there any partners out there that might be interested in a Joint Venture ?

0 1
0 277
Scott Roth · Jun 14, 2018
Single Row SQL.Snapshot

I have several stored procedures that when I execute them they will only return a single snapshot. In my BP I have been setting this to a Snapshot variable then looping using a WHILE through the snapshot variable just to get that single value.

Since it is only a single row, is there an easier way where I don't have to do a WHILE loop to pull the values out of that row? Can I call First Row or something like that to get me just the row into the Snapshot variable?

0 1
0 357


I need to access the value of a setting I created (ex: name_BO) within the logic of my BP.

Property name_BO As %String(MAXLEN = "");

/// Additional Settings 
Parameter SETTINGS = "name_BO:Basic:selector?context={Ens.ContextSearch/ProductionItems?targets=1&productionName=@productionId}";

But the class is common and the production item names will change.

0 1
0 344

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 218

I have a process that I am trying to duplicate from SQL Integration Services (SSIS) into Ensemble so that the rest of my team can help support any issues that may happen.

This particular job creates multiple dictionary files, but for each one of the dictionary files it creates, it also creates a control file that tells the vendor what to process.

0 1
0 386

Hi all,

We're in the process of creating several courses for creating custom business components for productions. This includes custom business operations, BPL processes, and custom business services. Custom Business Operations and Custom Business Services are both aimed at software developers while BPL processes can be also be created by business analysts. What are some gotchas or best practices you've learned that you wish you knew when first building these components?

We'd love to include what you've learned into these courses so others can learn from them as well!

0 1
0 304


I am trying to figure out if we can extend a business process in IRIS. My Use Case is that I am developing RESTful Interfaces and my each REST Interface needs to go through certain processes before getting to the actual action.  

e.g. I have 2 REST Interfaces, GetPatient and GetEncounter. Both of these need to invoke "GetToken" Business Operation to go to the Authentication server to get an authentication token before they go ahead and hit the Business Operation to Get the data i.e. Patient or Encounter.  

1 1
1 125

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


0 1
0 187

Hi, I think it's a simple question this at the end of something fairly complex

I've a DTL to go to a target class in context 

I get the error CLASS DOES NOT callrequest=##class(context.ConnectDocumentRequest).%New()'

I attempted to add code to initate the context with 

set context.ConnectDocumentRequest =##class(Penn.EDT.Messages.ConnectDocumentRequest).%New()

0 1
0 99

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 185