if (forEach != null) {
int index = forEach.getCurrentIndex();
//case of indexed by rolemapping
if (multiValue[0] instanceof RoleMapping) {
RoleMapping roleMapping = (RoleMapping)multiValue[0];
if(roleMapping.size() <= index)
index = roleMapping.size()-1;
roleMapping.setCursor(index);
multiValue = new Object[]{roleMapping.getCurrentRoleMapping()};
} else if (multiValue[0] instanceof ProcessVariableValue) {
ProcessVariableValue processVariableValue = (ProcessVariableValue)multiValue[0];
if(processVariableValue.size() <= index)
index = processVariableValue.size()-1;