Use this event to
Excerpt |
---|
Add filter conditions for Warehouse Activity Headers that cannot be solved by OnSetFilter-event. |
Description
This event is triggered after filters have been applied to the Warehouse Activity Shipment Header. The event should be used only when it is not possible to use OnSetFilter-event to solve if the Header should be included in the OrderList response.
The Warehouse Activity Header Shipment Header can be excluded from the OrderList response by setting the parameter _IncludeInOrderList to false.
Learn about Basic vs. Complex filtering
Template
[EventSubscriber(ObjectType::Codeunit, Codeunit::"MOB WMS Put AwayMOB WMS Ship", 'OnGetPutAwayOrdersOnGetShipOrders_OnIncludeWarehouseActivityHeaderOnIncludeWarehouseShipmentHeader', '', true, true)]
local procedure OnGetPutAwayOrders OnGetShipOrders_OnIncludeWarehouseActivityHeaderOnIncludeWarehouseShipmentHeader(_WhseActHeaderWhseShipmentHeader: Record "Warehouse Activity Header"Warehouse Shipment Header"; var _HeaderFilters: Record "MOB NS Request Element"; var _IncludeInOrderList: Boolean)
begin
end;
Example
...
// [Example]: Do not include in order list if Customer is blocked.
[EventSubscriber(ObjectType::Codeunit, Codeunit::"MOB WMS Put AwayMOB WMS Ship", 'OnGetPutAwayOrdersOnGetShipOrders_OnIncludeWarehouseActivityHeaderOnIncludeWarehouseShipmentHeader', '', true, true)]
local procedure MyOnGetPutAwayOrders MyOnGetShipOrders_OnIncludeWarehouseActivityHeaderOnIncludeWarehouseShipmentHeader(_WhseActHeaderWhseShipmentHeader: Record "Warehouse Activity Header"Warehouse Shipment Header"; var _HeaderFilters: Record "MOB NS Request Element"; var _IncludeInOrderList: Boolean)
var
WhseShipmentLine: PurchaseHeaderRecord "Warehouse Shipment Line";
SalesHeader: Record "Purchase HeaderSales Header";
Customer: Record Customer;
begin
if (_WhseActHeader.Type = _WhseActHeader.Type::"Invt. Put-away") and (_WhseActHeader WhseShipmentLine.SetFilter("No.", _WhseShipmentHeader."No.");
if WhseShipmentLine.FindSet() then
repeat
if WhseShipmentLine."Source Document" = _WhseActHeader WhseShipmentLine."Source Document"::"Purchase OrderSales Order") then
if PurchaseHeader begin
SalesHeader.Get(_WhseActHeaderWhseShipmentLine."Source Subtype", _WhseActHeader WhseShipmentLine."Source No.");
// Exclude the Shipment if Customer is blocked
if Customer.Get(SalesHeader."Sell-to Customer No.") and (PurchaseHeaderCustomer.Status < PurchaseHeaderBlocked <> Customer.StatusBlocked::Released" ") then
_IncludeInOrderList := false;
end;
until (WhseShipmentLine.Next() = 0) or not _IncludeInOrderList := false;
end;
Filter by label (Content by label) | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
...