My client wants an approval workflow on Customer and Vendor when a record is created/ updated. Ideally Customer/ Vendor should have the 'Status' field which shows "Open", "Pending Approval" or "Released" as same as the transaction documents do, but I cannot find the field in Customer/ Vendor table.
By NAV standard, is there any field to capture the approval status on Customer/ Vendor table? How could user see the approval status in the Customer/ Vendor List or page?
If it is not supported by NAV standard, could a custom field 'Approval Status" on Customer/ Vendor table be a effective solution?
Please give me advise.
Yes there is no such field in standrad NAV / Business Central.
This is how it works if workflow for Customer and Vendor approval is activated.
After sending Customer / Vendor Record for approval - workflow process add that record in Restricted Record Table which will make sure that Customer / Vendor cannot be used in any transaction as its blocked in Restricted Record.
If you would like to have a field to for better Visiblity then you can create a Flowfield which get updated based on Record exist in Restricted Record table or not for the Customer / Vendor Record.
The NAV-standard restricts the record.
Check table 1550 "Restricted Record".
If you want more transparency for the user, a new field is benefical.
Thanks for your reply. That solution works great.
Actually I validated the NAV behavior and still found a slight gap between the standard behavior and our customer requirement:
By NAV standard, the restrict control by the Restricted Record Table works only at posting documents. My client needs an error immediately when the approving customer is selected in the document. (Same for the Vendor in the purchase documents). I am thinking about adding a custom logic on the 'Sell-to customer' field.
That would be easy enough.
If you are using events (which you should) then subscribe to the event for Sell-to Customer No. OnBeforeValidate and write this line of code -
Customer.get("Sell-to Customer No.");
Where Customer is var of table 18 and RecordRestrictionMgt is var of codeunit 1550.
Thank you! We will try
Business Applications communities