Dustin Knudsen · May 27

Business process pointing to operation, can't discover the reason why


I'm quite new at InterSystems. I have a business process that's pointing two different business operations, but one of them I don't want it to point to.

I went through the FileSystem settings, data transformations, classes, and code to see what it could be, but I don't see why its connecting to this second operation. 

What other inner-system mechanics would I need to consider? What have might I have missed? 

Product version: IRIS 2020.4
1 0 6 57
Log in or sign up to continue

If you're talking about drawn connections:

They are defined in OnGetConnections method, check what does it do:

/// Return an array of connections for drawing lines on the config diagram
ClassMethod OnGetConnections(Output pArray As %String, pItem As Ens.Config.Item)

That said, the drawn connections and this method are just visual docs. Developers are expected to provide this method and keep it relevant but in no way are they beholden to do it.

The only way to know what does any BH do is to go through the code or visual trace.

Hello Dustin,

What kind of business process is it? Can you attach some screenshots of what it is doing?

 Vic Sun

Here's a screenshot, I blacked out company-related info

I just want process.BPL.Momentum to connect to bo.MomentumOperation, not Qure4uSQL

It's disabled at the moment, but even still the drawn line still implies some kind of underlying connection to the qure4u operation doesn't it? 

I'm not exactly sure what you mean when you ask what kind of business process it is. 

I was asking if it was a BPL or a router, mainly. Looks like a BPL. I think it would definitely take some looking at the code to figure out where the connection's coming from. I think if you looked at the class in Studio you could probably try to find in files to see where the reference is, might be easier than looking through the BPL in the portal.

I looked through the .cls file, it's pretty stripped down and I don't offhand see anything indicating a lingering connection to that operaton. 

Maybe this is a silly suggestion, but if you have a test environment you could try removing sections of code until you find the one that, when removed, causes that line to disappear. I'm sure there's a cleaner way to do this, but if you don't see it in the code, that's what comes to mind.