validateField method in Dynamics AX, d365
public boolean validateField(FieldId _fieldIdToCheck)
{
boolean ret;
ret = super(_fieldIdToCheck);
switch(_fieldIdToCheck)
{
case fieldNum(InventTable, HSNCodeTable_IN) :
if (this.HSNCodeTable_IN)
{
ret = ret && checkFailed("@TaxGST:LabelCheck");
}
break;
}
return ret;
}
Below is an event handler of validate field in D365
/// <summary>
///
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
[DataEventHandler(tableStr(InventTable), DataEventType::ValidatedField)]
public static void InventTable_onValidatedField(Common sender, DataEventArgs e)
{
ValidateFieldEventArgs event = e as ValidateEventArgs;
InventTable InventTable= sender as InventTable;
//do anything
}
Similarly we can have Posthandler for salesline or inventtable as an example.
[PostHandlerFor(tableStr(SalesLine), tableMethodStr(SalesLine, validateField))]
public static void SalesLine_Post_validateField(XppPrePostArgs args)
{
SalesLine salesLine = args.getThis();
FieldId fieldId = args.getArg("_fieldId");
boolean ret = args.getReturnValue();
switch(fieldId)
{
case fieldNum(SalesLine, LinePercent):
if (salesLine.LinePercent > 100)
{
ret = ret && checkFailed("Wrong");
}
break;
}
args.setReturnValue(ret);
}
Thanks,
Vikas Mehta.
No comments:
Post a Comment