About cookies on this site Our websites require some cookies to function properly (required). In addition, other cookies may be used with your consent to analyze site usage, improve the user experience and for advertising. For more information, please review your options. By visiting our website, you agree to our processing of information as described in IBM’sprivacy statement. To provide a smooth navigation, your cookie preferences will be shared across the IBM web domains listed here.
Technical Blog Post
Abstract
ICM Data Validation When Adding New Cases
Body
In a previous blog entry I showed how to use ICM 5.2's new coordination mechanism to hook in custom logic when saving and closing any of the transient pages such as step complete.
In this entry, I have modified the example to show how to do the same thing on the Add Case page.
- Add a Script Adapter to your Add Case page and hide it
-
Wire the incoming event for the Script Adapter from the Page Container's Send New Case Information event
var coord = payload.coordination; var caseEdit = payload.caseEditable; var solution = this.solution; var prefix = solution.getPrefix(); require(["icm/base/Constants", "icm/model/properties/controller/ControllerManager"], function(Constants, ControllerManager){ if(coord){ /*Participate in the VALIDATE coordination step*/ coord.participate(Constants.CoordTopic.VALIDATE, function(context, complete, abort){ if(context[Constants.CoordContext.CASE]){ /*Check work item property attribute's value*/ var propId = prefix + '_Description'; /*Retrieve prop value(s) using property controller API*/ var theController = ControllerManager.bind(caseEdit); var propController = theController.getPropertyController(propId); var value = propController.get("value"); /*Unbind is necessary to prevent mem leak.*/ ControllerManager.unbind(caseEdit); if(value === null || value === undefined || value === ""){ /*Abort the page completion with passing a message to user*/ abort({"message":"Please enter a description before adding the case."}); }else{ complete(); } }else{ complete(); } }); } });
For more information on the coordination mechanism, search for coordination in the ICM Javascript API InfoCenter chapters.
[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSCTJ4","label":"IBM Case Manager"},"Component":"","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]
UID
ibm11281292