Joget DX 8 Stable Released
The stable release for Joget DX 8 is now available, with a focus on UX and Governance.
A sample use case presents such where form validation is only required for record update, not for record creation.
This is possible by adding an empty section in a form to store this script below. This script will remove form validation if primary key does not exist (which is in add mode).
import org.joget.apps.app.service.AppUtil; import org.joget.apps.form.service.FormUtil; import org.joget.apps.form.model.Element; import org.joget.apps.form.model.Form; import org.joget.apps.form.model.FormData; import org.joget.apps.form.model.FormRowSet; public FormRowSet load(Element element, String primaryKey, FormData formData) { if (primaryKey == null) { Form form = FormUtil.findRootForm(element); removeValidator(form, formData); } return null; } public void removeValidator(Element e, FormData formData) { e.setValidator(null); Collection children = e.getChildren(formData); if (children != null) { for (Element child : children) { removeValidator(child, formData); } } } //call load method with injected variable return load(element, primaryKey, formData);
Sample app is available in the link below:
APP_removeValidation-1-20180502092022.jwa
Credits to: panda