Sequence of Execution for Action Events in Kinetic

Is it a visual bug, or do I not fully understand the Epicor event designer?

When working within the Epicor Application Studio, we can use the event designer to see how Epicor structures its events, allowing us to replicate them when creating our own calls to the database.

However, some events, such as GetNew or Dataset_hasChanges, have a peculiar structure that makes me question whether I understand the sequence and flow of execution of the Epicor action events.

For instance, in the GetNew event on the Quote Entry application, there is a call to the event-row-disable action, but the event-row-enable event is placed after the condition action. This implies that there are circumstances where only the event-row-disable will be executed without subsequently calling the event-row-enable. This doesn’t seem to make sense, right? Ideally, we would want the event-row-enable to always follow the event-row-disable.

This situation leads me to think that I may not fully grasp the execution flow of the action events.

From the Image provided, I assume the execution of this event will look like this:

event-row-disable();
var isSucess = event-next();

if (isSucess) 
{
  row-current-set();
  if (condition) 
  {
    event-next();
    event-next();
    event-row-enable();
  
  }

}

If someone knowledgeable with Epicor could help me, I would greatly appreciate it.

Thank you!

1 Like

As I mentioned, another example would be Dataset_hasChanges.

Why is there a call to the return-error following the call to the return ?

My ASSUMPTION of the event-row-disable action is that it is freezing any dataview CHANGE events for that dataview.

For example, there could be row-change events on OrderHed which cause other things to happen. But when you’re creating a new order, you don’t want all of those other events to fire.

So, they put in an event-row-disable action (disabling row action events on OrderHed)… do a bunch more stuff to create the new OrderHed row… then call the event-row-enable action (to turn those row change events back on).

Again, this is only my assumption. Haven’t really experimented with this.

1 Like