The field components have Methods, ShowError and ClearError. We will now add logic which uses this feature.
1. Create a Method routine name Errors. It should have an input Boolean value with the name Clear.
Your code should look like the following:
Mthroutine Name(Errors) Access(*PRIVATE)
Define_Map For(*INPUT) Class(#PRIM_BOLN) Name(#Clear)
Endroutine
The Define_Map statement defines a parameter For() *input, *output or *both.
2. When Clear is True, invoke ClearError for the input fields. Otherwise, invoke ShowError for each input field.
Your code should look like the following:
Mthroutine Name(Errors) Access(*PRIVATE)
Define_Map For(*INPUT) Class(#PRIM_BOLN) Name(#Clear)
If Cond(#clear)
#xDepartmentCode.ClearError
#xDepartmentDescription.ClearError
Else
#xDepartmentCode.ShowError
#xDepartmentDescription.ShowError
Endif
Endroutine
3. Add code to the Save method to invoke the Errors routine.
Your code should look like the following:
Mthroutine Name(Save)
Define_Com Class(#iiixDepartmentsDataServer.Save) Name(#SaveDepartment)
#SaveDepartment.executeasync( #xDepartments #io£sts )
Evtroutine Handling(#SaveDepartment.Completed)
If (#IO£STS = OK)
#xDepartments := *default
#COM_OWNER.Errors( True )
Else
#COM_OWNER.Errors( False )
Endif
Endroutine
Endroutine
4. Compile and test your web page. When you try to Save a record with a blank description, the fields should be highlighted as shown:
5. Add a description and Save again. The fields should be cleared and return to their normal appearance.
You will handle error messages in a later step.