Use this event to
Excerpt |
---|
Filter Purchase Orders to be displayed at the mobile device. |
...
With this event you can perform basic record filtering of Orders.
If you have complex conditions, consider OnGetReceiveOrders_OnInclude... instead.
...
[EventSubscriber(ObjectType::Codeunit, Codeunit::"MOB WMS Receive", 'OnGetReceiveOrders_OnSetFilterPurchaseOrder', '', true, true)]
local procedure OnGetReceiveOrders_OnSetFilterPurchaseOrder(_HeaderFilter: Record "MOB NS Request Element"; var _PurchHeader: Record "Purchase Header"; var _PurchLine: Record "Purchase Line"; var _IsHandled: Boolean)
begin
end;
Example 1: Modify standard header filter
[EventSubscriber(ObjectType::Codeunit, Codeunit::"MOB WMS Receive", 'OnGetReceiveOrders_OnSetFilterPurchaseOrder', '', true, true)]
local procedure MyOnGetReceiveOrders_OnSetFilterPurchaseOrder(_HeaderFilter: Record "MOB NS Request Element"; var _PurchHeader: Record "Purchase Header"; var _PurchLine: Record "Purchase Line"; var _IsHandled: Boolean)
var
PurchaseHeader: Record "Purchase Header";
begin
// [Scenario] Validate the standard "Purchase Order" filter,
// [Scenario] by checking the order is Open.
// [Scenario] If not, abort process and force user to change filter with an error message
// [Scenario] Do not handle the filter, so standard filter works are normal
if _HeaderFilter.Name = 'PurchaseOrderNumber' then
if PurchaseHeader.Get(PurchaseHeader."Document Type"::"Order", _HeaderFilter."Value") and (PurchaseHeader.Status <> PurchaseHeader.Status::Released) then
Error('Purchase Order %1 is not released', PurchaseHeader."No.");
end;
Example 2: Add custom filters to Standard headers
...
Example 3: Handle custom header filter
Filter by label (Content by label) showLabels false showSpace false sort title title More examples excerptType simple cql label = "bc" and label = "orders" and label = "example" and label = "onsetfilter"
...