import org.joget.apps.form.model.FormRow;
import org.joget.apps.form.model.FormRowSet;
import org.joget.apps.app.service.AppUtil;
import org.joget.plugin.base.PluginManager;
import org.joget.apps.form.model.FormLoadBinder;
import org.joget.workflow.model.service.WorkflowManager;
String formDefId = "ExpensesClaimEntry";
String foreignKey = "claim";
PluginManager pluginManager = (PluginManager) AppUtil.getApplicationContext().getBean("pluginManager");
WorkflowManager workflowManager = (WorkflowManager) AppUtil.getApplicationContext().getBean("workflowManager");
FormLoadBinder binder = (FormLoadBinder) pluginManager.getPlugin("org.joget.plugin.enterprise.MultirowFormBinder");
binder.setProperty("formDefId", formDefId);
binder.setProperty("foreignKey", foreignKey);
FormRowSet rows;
rows = binder.load(null, "#assignment.processId#", null);
for (FormRow row : rows) {
try {
Map variableMap = new HashMap();
variableMap.put("status", row.getProperty("purpose"));
workflowManager.processStart("expenseclaim:latest:process1", null, variableMap, null, row.getProperty("id"), false);
} catch (Exception e) {}
}