This portal is to open public enhancement requests against products and services offered by the IBM Data & AI organization. To view all of your ideas submitted to IBM, create and manage groups of Ideas, or create an idea explicitly set to be either visible by all (public) or visible only to you and IBM (private), use the IBM Unified Ideas Portal (https://ideas.ibm.com).
Shape the future of IBM!
We invite you to shape the future of IBM, including product roadmaps, by submitting ideas that matter to you the most. Here's how it works:
Search existing ideas
Start by searching and reviewing ideas and requests to enhance a product or service. Take a look at ideas others have posted, and add a comment, vote, or subscribe to updates on them if they matter to you. If you can't find what you are looking for,
Post your ideas
Post ideas and requests to enhance a product or service. Take a look at ideas others have posted and upvote them if they matter to you,
Post an idea
Upvote ideas that matter most to you
Get feedback from the IBM team to refine your idea
Specific links you will want to bookmark for future use
Welcome to the IBM Ideas Portal (https://www.ibm.com/ideas) - Use this site to find out additional information and details about the IBM Ideas process and statuses.
IBM Unified Ideas Portal (https://ideas.ibm.com) - Use this site to view all of your ideas, create new ideas for any IBM product, or search for ideas across all of IBM.
ideasibm@us.ibm.com - Use this email to suggest enhancements to the Ideas process or request help from IBM for submitting your Ideas.
IBM Employees should enter Ideas at https://ideas.ibm.com
Agree with you .. in the above case all the validations are currently placed on submit ..
While i am it moving from one step to another step in work flow the exist value is coming as null that's why the validations were not triggered ... moving all the validations on to save is not a wise idea as every time user saves the item these will get trigger .which will impact performance
It seems that the implementation has a Post Processing script attached to the catalog where they have some validations written which throws validation error when item doesn’t fulfill some criteria. When the item is moved from one step to next step through UI (by clicking SUBMIT/DONE button) this Post Processing script is called and those validation errors are shown when it doesn’t fulfill the requirement.
One possible way to achieve your requiremen is to call CollaborationItem.save and then check if there are validation errors or not and accordingly proceed to call ItemCollaborationArea.moveToNextStep. Return type of CollaborationItem.save is ExtendedValidationErrors. So sample snippet would be:
CollaborationAreaManager mgr = PIMContextFactory.getCurrentContext().getCollaborationAreaManager();
CollaborationArea colab = mgr.getCollaborationArea("mobile ca");
PIMCollection<CollaborationObject> colObjs = colab.getStep("step1").getContents();
inArgs.getOutput().println("Processing");
for(CollaborationObject col : colObjs){
CollaborationItem item = (CollaborationItem)col;
inArgs.getOutput().println(item.getPrimaryKey());
ExtendedValidationErrors errors = item.save();
if(errors != null){
List<ValidationError> err = errors.getErrors();
inArgs.getOutput().println("Error Check: " + err.isEmpty());
for(ValidationError ers : err){
inArgs.getOutput().println("Error: " + ers.getMessage());
//Handle call to ItemCollaborationArea.moveToNextStep
}
}
break; //Assuming we have only one item in the collaboration area
}