Why do you need this change?
📌 Why This Is Required
In our scenario:
Users manually select lots via a custom selection page.
Only selected lots should generate Warehouse Activity Lines.
Non-selected lots must be skipped completely.
Standard bin, reservation, expiration, and quantity logic must remain unchanged.
Currently:
There is no event that allows skipping line creation per tracking specification.
Existing events do not allow setting IsHandled to prevent line creation cleanly.
We require:
Per-tracking-line control.
Ability to set IsHandled := true for non-selected lots.
Clean and upgrade-safe extensibility.
We request a new IntegrationEvent in:
Codeunit 7322
Method: CreatePickOrMoveLine
Location: Inside the TempTrackingSpecification loop
With IsHandled support
This is required to support selective lot-based warehouse activity line creation in a safe and extensible manner.
Describe the request
//In CreatePickOrMoveLine method of Codeunit 7322
if TempTrackingSpecification.Find('-') then
repeat
// Tracking line logic
OnCreatePickOrMoveLineFromHandlingSpec(...);
if isHandled then
exit;
// Standard warehouse activity line creation logic
until (TempTrackingSpecification.Next() = 0) or (RemQtyToPickBase <= 0);
[IntegrationEvent(false, false)]
local procedure OnBeforeCreatePickOrMoveLinePerTrackingSpec(
var NewWarehouseActivityLine: Record "Warehouse Activity Line";
var TempTrackingSpecification: Record "Tracking Specification" temporary;
var RemQtyToPickBase: Decimal;
OutstandingQtyBase: Decimal;
ReservationExists: Boolean;
var IsHandled: Boolean)
begin
end;
Why do you need this change?
📌 Why This Is Required
In our scenario:
Users manually select lots via a custom selection page.
Only selected lots should generate Warehouse Activity Lines.
Non-selected lots must be skipped completely.
Standard bin, reservation, expiration, and quantity logic must remain unchanged.
Currently:
There is no event that allows skipping line creation per tracking specification.
Existing events do not allow setting IsHandled to prevent line creation cleanly.
We require:
Per-tracking-line control.
Ability to set IsHandled := true for non-selected lots.
Clean and upgrade-safe extensibility.
We request a new IntegrationEvent in:
Codeunit 7322
Method: CreatePickOrMoveLine
Location: Inside the TempTrackingSpecification loop
With IsHandled support
This is required to support selective lot-based warehouse activity line creation in a safe and extensible manner.
Describe the request
//In CreatePickOrMoveLine method of Codeunit 7322
if TempTrackingSpecification.Find('-') then
repeat
// Tracking line logic
OnCreatePickOrMoveLineFromHandlingSpec(...);
if isHandled then
exit;
// Standard warehouse activity line creation logic
[IntegrationEvent(false, false)]
local procedure OnBeforeCreatePickOrMoveLinePerTrackingSpec(
var NewWarehouseActivityLine: Record "Warehouse Activity Line";
var TempTrackingSpecification: Record "Tracking Specification" temporary;
var RemQtyToPickBase: Decimal;
OutstandingQtyBase: Decimal;
ReservationExists: Boolean;
var IsHandled: Boolean)
begin
end;