Hello

We are in the process of upgrading to 2023.1 for InterSystems Health Connect, and the Business Rule Engine editor is very difficult to use compared to 2022.1. It's difficult to scan over the rules as it all looks the same style with barely any distinction between rules, constraints, conditions, whens etc. There's also tonnes of whitespace, and searching on the page is hit and miss (using Ctrl + F) . I can see the previous editor is still available when you modify the URL, but I'm wondering if we can set it to be the default editor, and if this is something supported.

2 7
1 368

When testing a new routing rule, one frequently encountered problem is that messages that seem like they should be getting routed to a target component are not getting routed. This article aims to describe how to determine why the message didn't get routed.

1. Check the Event Log for the router to make sure there wasn't an error evaluating the rule or running any transformations referenced by the rule. If there was, debug that error first.

2 2
0 966

In this article I will demonstrate the following :

  • Update ReferencesRange(OBX:7) against ObservationIdentifier(OBX:3.1)[TestCode] from database by using custom utility function
  • Update Abnormal Flag(OBX:8) against ObservationIdentifier(OBX:3.1)[TestCode] and ObservationValue(OBX:5)[Result] from database utility function
  • Route Message based on Abnormal Flag(OBX:8)

Below is the primary and transformed HL7 2.5 ORU_R01 message:

1 6
0 736

Hi all,

I'm wondering if is possible to call to a BO from a HL7 Route according to a parameter of the HL7 Message

I mean,

According to the identify of the laboratory, I want to call to other TCP process to retrieve information about blood tests.

We are creating the BO using this partern.

LAB.BO.TCP. + name of the laboratory.

The name of the laboratory is stoted in the lookup table T_LABORATORIOS

I've tried to assign the name into a variable and put it in the "send" instruction, but it doesn't work.

1 3
0 166

Hello ALL!

I am having trouble fining a way to derive (a list, an array, a file doesnt matter yet how it returns) ALL of the targets of a routing rule.

For example lets say I have:

  • a router of class: EnsLib.MsgRouter.RoutingEngine
  • Business Rule: HappyRRN
  • 1 rule set having 5 rules that each send to 1 DTL and 1 Operation (5 targets total)

My intent is to use some utlities we have created to disable all of the target operations of this router if the router errors out.

To do that I need the list of target operations.

1 2
0 163

Hello,

I want to access the HL7 Router settings from within the HL7 rule. Goal is to create a New class by extending "EnsLib.HL7.MsgRouter.RoutingEngine".

Then create a PARAMETER ProcessMessage which can be set to an integer value for the HL7 Router.

Create a Rule class and based on the value of this setting ProcessMessage
process/not process the messages.

1 15
0 399

Hi all,

I have a rule to throw a message when there is an error. I want to prevent send the email if the origin of the error is the API to send the email

This is my rule

Now, If there is any error in any process, it works, but if there is an error in MyProduct.BO.SendEmail it is trying to send the error again, and it is a infinite loop.

Is there any way to check what is the origin and don't process if the origin is MyProduct.BO.SendEmail?

1 2
0 275
Question
· Oct 29, 2021
Use Rule to call WS 1 to n

Hi all.

I'm trying to create a route rule that can call to a web service according to a parameter of a message.

My first attempt is the following:

I have a common class with all information, BuscarHuecoRequest, and check what is the value of property "CodigoProveedor".

1 1
0 201

Hi,

I need to route a message synchronously to multiple targets using a routing rule.

In IRIS I built a general routing rule set, made up of a couple of rules. For one Rule in particular, and based on a common condition, I want to send the incoming message to 2 different targets. (no transformation is used)

I can select, in the single SEND action, multiple target names, or, I can create consecutive SEND actions, one after the other, each sending to their specific target.

1 1
0 389
Question
· Oct 24, 2016
Multiple Rulesets

Hi,

In my routing rules I'd like to work with multiple rulesets. When running the proces, it only seems to execute the first ruleset.

Is it possible to have multiple rulesets active in the same business rule, or is there another way to not have to jam all rules in the same ruleset?

Thanks in advance,

Joost Houwen

1 4
0 451
Question
· Jun 21, 2016
Business rule doubt

Hello guys,

I've built a simple rule , as follows:

Thing is, in rule 2, the operation succeeds, the message reachs BO HL7, but in rule 1 it does not go through. In rule 1, I have two different conditions, but they are linked by an OR and one of the conditions is simply IF 1=1.

Do you guys have any clue on why rule 1 does not reach BO HL7?

Thanks

1 17
0 843
Question
· Mar 3, 2016
Filtering incoming records?

We have a situation where we want to detect and ignore documents/records at the earliest possible point based on certain criteria. We have an existing "CDA Preprocessor" in the workflow which is an XSL transform. This is what our contractors are planning to utilize to "filter" these documents. This doesn't really make sense to me. I see XSLT as a way to manipulate the contents of a document and filter certain peices of data. In my brain, I would use an Ensemble business rule to detect the criteria and route the document as necessary.

1 4
0 385

Hi Community,

Is there a way to call HL7 Data transformation directly from Business service without using Rule functionality in the production

In this scenario i need to call a data transformation in directly in business service and give the transformed message to Business operation

Please share if you have any ideas to implement this.

Thanks,
Smythee

0 6
0 101

Hi Community,

We are trying to filter message created using custom xml class in a business rule.

HL7 ORU Result messages are converted to custom xml messages with a list properties .Result ORU converted to OrderResultMsg , which contains property Orders as list of Order which contains ResultStatus . Please see below the class extract. We are trying to access the ResultStatus property to filter non-final results via business rule.

0 5
0 189

Is there a difference in outcome between the two screengrabs below?

In both cases, when certain conditions are met, a transformation is called and the output sent on to two targets. In the first case we surmise the transformation is called twice, and the output of the first run sent to the first target, the output of the second run to the second target. In the second case we surmise the transformation is called once, and the output duplicated and sent to the two targets.

0 1
0 131
Question
· Jul 27, 2023
Rule logic

In an HL7 Business rule I am trying to block ONLY ORM messages that have a PV1:3.4 of 105 or 205 and a OBR:4 value of EP22 or CATH01.

I created the logic below but it appears to be evaluating the two fields independently instead of combined?

Here is what I had.

0 1
0 125

Had an issue on Friday where a vendor added an additional field in the middle of a row of one of our record maps. This threw the mapping off when I take the record and try to map it into HL7 and caused massive amounts of errors in our EMR because the data was wrong.

Is there a way that I can add validation on the Business Service to say if the fields are off to fail, stop, and alert on the Business Service?

0 2
0 156

I know there is the ability to enable Rule Sets within a Business Rule by dates, but what about Sub-Rules or just Rules in general? We have an upcoming go-live that is at Midnight and I was wondering if there was a way I could script out enabling rules/sub-rules within a Business Rule to save my team some time and headaches. Or is the best practice is just to create another rule for the go-live, then move it over once we are live...

0 1
0 198

Hey Developers,

Meet the new video on InterSystems Developers YouTube channel:

Creating Complex Decision Logic with InterSystems IRIS

https://www.youtube.com/embed/SZBRm4rtue8
[This is an embedded link, but you cannot view embedded content directly on the site because you have declined the cookies necessary to access it. To view embedded content, you would need to accept all cookies in your Cookies Settings]

0 1
0 149