Anonymous | Login
Project:
RSS
  
News | My View | View Issues | Roadmap | Summary

View Revisions: Issue #42051 Back to Issue ]
Summary 0042051: cancel and replace sets messagebar as keepOnAutomaticRefresh even if no message is shown
Revision 2019-10-17 11:41 by gorkaion
Steps To Reproduce 1. Open developer tools and the generated js file.
2. Search for "ClientSideEventHandlersPreSaveUpdate" and put a breakpoint on the line setting the keepOnAutomaticRefresh true.
3. Search for "ClientSideEventHandlersPreDelete" and put a breakpoint on the line setting the keepOnAutomaticRefresh true.
4. Search for "OBMessageBar.addProperties" and then the hide function that it defines and set a breakpoint on "if (force || !this.keepOnAutomaticRefresh) {" line.
5. Now disable the breakpoints to be able to create a sales order header and line in draft status.
6. Leave the order line tab in grid mode.
7. Enable the breakpoints and edit the line changing the quantity.
8. Notice that it executes several times the hide() function and keepOnAutomaticRefresh is undefined until the cancel and replace event handler is executed and sets it to true. Later new executions of hide() function on the sales order line tab the flag is set as true.
9. Open form view and note that the flag is still set to true in the hide() method.


Alternative steps:
1. Create a Process Definition on Sales Order Line tab that can be executed in draft status and that shows the success message in the lines tab using:
        showMessage.put("showMsgInView", msg);
        responseActions.put(showMessage);
        result.put("responseActions", responseActions);
2. Create a Sales Order and Sales Order Line in draft status.
3. Modify the line in the grid mode.
4. Execute the process definition to show the message.
5. Open the line in form view and check the message is not removed.
6. Close the Sales Order window and open it again.
7. Load in grid view the same Sales Order Line.
8. Without editing the line execute the Process Definition to show the message.
9. Open the line in form view and check that the message is removed.
Revision 2019-10-17 11:32 by gorkaion
Steps To Reproduce 1. Open developer tools and the generated js file.
2. Search for "ClientSideEventHandlersPreSaveUpdate" and put a breakpoint on the line setting the keepOnAutomaticRefresh true.
3. Search for "ClientSideEventHandlersPreDelete" and put a breakpoint on the line setting the keepOnAutomaticRefresh true.
4. Search for "OBMessageBar.addProperties" and then the hide function that it defines and set a breakpoint on "if (force || !this.keepOnAutomaticRefresh) {" line.
5. Now disable the breakpoints to be able to create a sales order header and line in draft status.
6. Leave the order line tab in grid mode.
7. Enable the breakpoints and edit the line changing the quantity.
8. Notice that it executes several times the hide() function and keepOnAutomaticRefresh is undefined until the cancel and replace event handler is executed and sets it to true. Later new executions of hide() function on the sales order line tab the flag is set as true.
9. Open form view and note that the flag is still set to true in the hide() method.


Copyright © 2000 - 2009 MantisBT Group
Powered by Mantis Bugtracker