can anyone explain why this error has occured (there was an error in the process model properties at the process start form : neither rules nor variables found:validations)

 this is the code related to start form 

a!localVariables(
local!groups,
a!formLayout(
label: if(ri!readOnly,"Meeting Information","Request New Meeting"),
contents: {
a!columnsLayout(
columns: {
a!columnLayout(
contents: {
if(ri!readOnly,
a!textField(
label: "Meeting Subject ",
labelPosition:"ADJACENT",
value: ri!MMS_Meetinginfo.subject,
saveInto: ri!MMS_Meetinginfo.subject,
readOnly:true
),
a!textField(
label: "Meeting Subject ",
labelPosition:"ABOVE",
value: ri!MMS_Meetinginfo.subject,
saveInto: ri!MMS_Meetinginfo.subject,
required: true,
validations: if(
len(
ri!MMS_Meetinginfo.subject
) > 50,
"Value may not be longer than 50 characters. You have entered " & len(
ri!MMS_Meetinginfo.subject
) & " characters.",
null
)
)
),
if(
ri!readOnly,
a!paragraphField(
label: "Meeting Body",
labelPosition: "ADJACENT",
value: ri!MMS_Meetinginfo.body,
saveInto: ri!MMS_Meetinginfo.body,
refreshAfter: "UNFOCUS",
height: "MEDIUM",
readOnly: true
),
a!paragraphField(
label: "Meeting Body",
labelPosition: "ABOVE",
value: ri!MMS_Meetinginfo.body,
saveInto: ri!MMS_Meetinginfo.body,
refreshAfter: "UNFOCUS",
height: "MEDIUM",
required: true
)
),
if(
ri!readOnly,
a!textField(
label: "Location",
labelPosition:"ADJACENT",
value: ri!MMS_Meetinginfo.location,
saveInto: ri!MMS_Meetinginfo.location,
readOnly:true
),
a!textField(
label: "Location",
labelPosition: "ABOVE",
value: ri!MMS_Meetinginfo.location,
saveInto: ri!MMS_Meetinginfo.location,
required: true,
validations: if(
len(
ri!MMS_Meetinginfo.location
) > 50,
"Value may not be longer than 50 characters. You have entered " & len(
ri!MMS_Meetinginfo.location
) & " characters.",
null
)
)

)
}
),
a!columnLayout(
contents: {
if(
ri!readOnly,
a!pickerFieldGroups(
label: "Attendees",
labelPosition: "ADJACENT",
maxSelections: 2,
value:local!groups,
saveInto:local!groups,
readOnly: true

),
a!pickerFieldGroups(
label: "Attendees",
labelPosition: "ABOVE",
maxSelections: 2,
value:local!groups,
saveInto:local!groups,
required: true

)
),
if(
ri!readOnly,
a!dateTimeField(
label: "Start Time",
labelPosition:"ADJACENT",
value: ri!MMS_Meetinginfo.startTime,
saveInto: ri!MMS_Meetinginfo.startTime,
readOnly:true
),
a!dateTimeField(
label: "Start Time",
labelPosition:"ABOVE",
value: ri!MMS_Meetinginfo.startTime,
saveInto: ri!MMS_Meetinginfo.startTime,
required: true,
validations: if(ri!MMS_Meetinginfo.startTime>now(),null,"start date time must not be past date time ")
)
),
if(
ri!readOnly,
a!dateTimeField(
label: "End Time",
labelPosition:"ADJACENT",
value: ri!MMS_Meetinginfo.endTime,
saveInto: ri!MMS_Meetinginfo.endTime,
readOnly:true()
),
a!dateTimeField(
label: "End Time",
labelPosition:"ABOVE",
value: ri!MMS_Meetinginfo.endTime,
saveInto: ri!MMS_Meetinginfo.endTime,
required: true,
validations: validations: if(ri!MMS_Meetinginfo.endTime>now(),null,"end date time must not be past date time ")
)
)
}
)
}
)
},
buttons:{
a!buttonLayout(
primaryButtons: {
a!buttonWidget(
label: "Request New Meeting",
icon: "envelope",
saveInto: {
a!forEach(
local!groups,
a!save(ri!attendees,append(ri!attendees,{groupid:tointeger(fv!item)}))
),
a!save(ri!MMS_Meetinginfo.startTime,gmt(ri!MMS_Meetinginfo.startTime,"IST")),
a!save(ri!MMS_Meetinginfo.endTime,gmt(ri!MMS_Meetinginfo.endTime,"IST")),
a!save(ri!MMS_Meetinginfo.createdBy,loggedInUser()),
a!save(ri!readOnly,true)
},
submit: true,
style: "PRIMARY"
)
},
secondaryButtons: {
a!buttonWidget(
label: "CANCEL MEETING",
icon: "times-circle",
value: true,
saveInto: ri!cancel,
submit: true,
style: "NORMAL",
validate: false
)
},
showWhen: or(
isnull(
ri!readOnly
),
not(
ri!readOnly
)
)
),
a!buttonLayout(
primaryButtons: a!buttonWidget(
label:"CHECKIN",
icon: "user",
saveInto:{
a!save(ri!CheckinAndFeedbackInfo.checkintime,gmt(now(),"IST")),
a!save(ri!CheckinAndFeedbackInfo.user,loggedInUser())
},
style:"PRIMARY"

),
showWhen:ri!readOnly
)
}
)
)

  Discussion posts and replies are publicly visible

Top Replies