Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Next »

Use this event to

Add filter conditions for Warehouse Shipment that cannot be solved by OnSetFilter-event. 

Description

This event is for filtering Warehouse Shipments in the special lookup page "OnPostShipment". Do not confuse with the the Shipment OrderList page (described in GetShipOrders).

The event is triggered after filters have been applied to the Warehouse Shipment (when the record is read).
The Warehouse Shipment can be excluded from the response by setting the parameter _IncludeInLookup to false.

For performance reasons this event should be used only when it is not possible to use OnLookupOnPostShipment_OnSetFilterWarehouseShipment-event.

Template    

    [EventSubscriber(ObjectType::CodeunitCodeunit::"MOB WMS Lookup", 'OnLookupOnPostShipment_OnIncludeWarehouseShipment''', true, true)]
    local procedure OnLookupOnPostShipment_OnIncludeWarehouseShipment(_WhseShipmentHeader: Record "Warehouse Shipment Header"; var _IncludeInLookup: Boolean)
    begin
    end;

Example

    // [Example]: Do not include in lookup response if Customer is blocked
    [EventSubscriber(ObjectType::CodeunitCodeunit::"MOB WMS Lookup", 'OnLookupOnPostShipment_OnIncludeWarehouseShipment''', true, true)]
    local procedure MyOnLookupOnPostShipment_OnIncludeWarehouseShipment(_WhseShipmentHeader: Record "Warehouse Shipment Header"; var _IncludeInLookup: Boolean)
    var
        WhseShipmentLine: Record "Warehouse Shipment Line";
        SalesHeader: Record "Sales Header";
        Customer: Record Customer;
    begin
        // Loop lines
        WhseShipmentLine.SetFilter("No.", _WhseShipmentHeader."No.");
        if WhseShipmentLine.FindSet() then
            repeat
                if WhseShipmentLine."Source Document" = WhseShipmentLine."Source Document"::"Sales Order" then begin
                    SalesHeader.Get(WhseShipmentLine."Source Subtype", WhseShipmentLine."Source No.");
                    // Exclude the Shipment if Customer is blocked
                    if Customer.Get(SalesHeader."Sell-to Customer No.") and (Customer.Blocked <> Customer.Blocked::" "then
                        _IncludeInLookup := false;
                end;
            until (WhseShipmentLine.Next() 0) or not _IncludeInLookup;
    end;


More examples

There are no items with the selected labels at this time.


Version History

Version

Changes

MOB5.21Introduced
  • No labels