Purpose
Demonstration of Form Datasource Field Event or Data Event “onValidating”.Validating field values in form level.
Sample Code
- Create a new class.
- Copy “onValidating” event from Form Datasource field & paste the same into the class.
[code language = “cpp”]
[FormDataFieldEventHandler(formDataFieldStr(SalesTable, SalesLine, SalesPrice), FormDataFieldEventType::Validating)]
public static void SalesPrice_OnValidating(FormDataObject sender, FormDataFieldEventArgs e)
{
var args = e as FormDataFieldCancelEventArgs;
FormRun formRun = sender.datasource().formRun();
boolean ret;
SalesTable salesTable = formRun.dataSource(formdatasourcestr(SalesTable, SalesTable)).cursor();
SalesLine salesLine = formRun.dataSource(formdatasourcestr(SalesTable, SalesLine)).cursor();
formRun = sender.datasource().formRun();
if (CustTable::find(salesTable.CustAccount).AcxOverrideSalesPrice == NoYes::Yes && salesLine.SalesQty > 0)
{
ret = checkFailed(‘Override Sales Price Is True On Customer Card.’);
args.cancel(true);
}
}
[/code]
cheers 🙂
piyush adhikari
Great this helped me 🙂