Updating a Redline BOM Field While Trigger an Event Process Extension (PX), the Following Error Occurs "This Object Has Been Modified, Please Refresh and Try Again."

(Doc ID 1498835.1)

Last updated on AUGUST 21, 2016

Applies to:

Oracle Agile PLM Framework - Version 9.3.1.2 and later
Information in this document applies to any platform.

Symptoms

When attempting to update a redline BOM field and trigger an Event, the following error occurs.

Error in Java Client UI:
 This object has been modified, please refresh and try again.

Error in application server log:
This is a recursive script or only the quantity has been updated so we're stopping
--invoke-- Error occurred when running Handler:HANDLER NAME - Event: EVENT NAME - Subscriber: SUBSCRIBER NAME

 The issue can be reproduced at will with the following steps:
1. Create an 'Update Table' Event for Objecte:Items; Table Name:BOM
2. Create a Script PX(SPX) handler with script similar to the below:

import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import com.agile.agileDSL.ScriptObj.AgileDSLException;
import com.agile.agileDSL.ScriptObj.IBaseScriptObj;
import com.agile.api.IDataObject;
import com.agile.api.IRow;
import com.agile.api.ITable;
import com.agile.api.ItemConstants;
import com.agile.px.EventConstants;
import com.agile.px.IEventInfo;
import com.agile.px.IUpdateTableEventInfo;
import com.agile.agileDSL.ScriptObj.IBaseScriptObj

// add other import statements here
void invokeScript(IBaseScriptObj obj) {

//script body starts here.
obj.logMonitor ("Trigger Event") ;
String eventName=obj.getEventTriggerType();
obj.logMonitor("Event Name=" + eventName);
IEventInfo req = obj.getPXEventInfo();
}


3. Create an Event subscriber to bind the event and SPX handler. Set Trigger type as pre and Execution mode as Synchronous and order as 0 and Error Handling Rule is Continue
4. Create a part and add BOM for the part
5. Create a change against the part and go to affected item tab to do a redline and will get the above errors.


Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms