Hi,
I have a form in D365 F&O with a field 'Object' in table 'EntAssetRequestTable'.
I want to update 'CIMDTAssetDepartmentCode' based on the selected Object from 'EntAssetObjectTable' whenever the Object field is modified.
Here is my code:
[FormDataFieldEventHandler(formDataFieldStr(EntAssetRequestTable, RequestTable, Object), FormDataFieldEventType::Modified)]
public static void Object_OnModified(FormDataObject sender, FormDataFieldEventArgs e)
{
EntAssetRequestTable requestTable = sender.datasource().cursor();
if (requestTable.Object)
{
EntAssetObjectTable assetObject = EntAssetObjectTable::findRecId(requestTable.Object);
if (assetObject && assetObject.CIMDTAssetDepartmentCode)
{
requestTable.CIMDTAssetDepartmentCode = assetObject.CIMDTAssetDepartmentCode;
}
}
}
Problem: The modified event is not updating the 'CIMDTAssetDepartmentCode' field on the form.
It seems the event is not firing or the form is not refreshing.
I want to know:
1. Am I using FormDataFieldEventHandler correctly?
2. How can I ensure the field value is updated on the form when Object is changed?
Thanks!