Skip to content

KVSKBAPriceCalcBufferMgtHelper#

Events#

OnBeforeIsInMinItemPriceGroupQty(Record Price List Line, Record Price Calculation Buffer, Boolean, Boolean) :#

Summary: Integration event triggered before checking if the item price group quantity meets the minimum quantity requirement.

[IntegrationEvent(false, false)]
local procedure OnBeforeIsInMinItemPriceGroupQty(PriceListLine: Record "Price List Line"; PriceCalculationBuffer: Record "Price Calculation Buffer"; var Result: Boolean; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBAPriceCalcBufferMgtHelper", 'OnBeforeIsInMinItemPriceGroupQty', '', false, false)]
local procedure DoSomethingOnBeforeIsInMinItemPriceGroupQty(PriceListLine: Record "Price List Line"; PriceCalculationBuffer: Record "Price Calculation Buffer"; var Result: Boolean; var IsHandled: Boolean)
begin
end;

Parameters:

  • PriceListLine: The price list line containing the minimum quantity to check.
  • PriceCalculationBuffer: The price calculation buffer containing the item price group quantity.
  • Result: The result of the minimum quantity check (can be set).
  • IsHandled: Set to true to skip the standard minimum quantity check.

Remarks: Use this event to implement custom logic for minimum quantity checks for item price groups. The standard logic compares minimum quantity against item price group quantity, adjusted by unit of measure. Set IsHandled to true and provide Result to completely replace the standard check.

OnBeforeIsInMinItemDiscountGroupQty(Record Price List Line, Record Price Calculation Buffer, Boolean, Boolean) :#

Summary: Integration event triggered before checking if the item discount group quantity meets the minimum quantity requirement.

[IntegrationEvent(false, false)]
local procedure OnBeforeIsInMinItemDiscountGroupQty(PriceListLine: Record "Price List Line"; PriceCalculationBuffer: Record "Price Calculation Buffer"; var Result: Boolean; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBAPriceCalcBufferMgtHelper", 'OnBeforeIsInMinItemDiscountGroupQty', '', false, false)]
local procedure DoSomethingOnBeforeIsInMinItemDiscountGroupQty(PriceListLine: Record "Price List Line"; PriceCalculationBuffer: Record "Price Calculation Buffer"; var Result: Boolean; var IsHandled: Boolean)
begin
end;

Parameters:

  • PriceListLine: The price list line containing the minimum quantity to check.
  • PriceCalculationBuffer: The price calculation buffer containing the item discount group quantity.
  • Result: The result of the minimum quantity check (can be set).
  • IsHandled: Set to true to skip the standard minimum quantity check.

Remarks: Use this event to implement custom logic for minimum quantity checks for item discount groups. The standard logic compares minimum quantity against item discount group quantity, adjusted by unit of measure. Set IsHandled to true and provide Result to completely replace the standard check.

OnAfterOnAfterSetFilters(Record Price Calculation Buffer, Record Price List Line) :#

Summary: Integration event triggered after setting filters on price list lines.

[IntegrationEvent(false, false)]
local procedure OnAfterOnAfterSetFilters(var PriceCalculationBuffer: Record "Price Calculation Buffer"; var PriceListLine: Record "Price List Line"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBAPriceCalcBufferMgtHelper", 'OnAfterOnAfterSetFilters', '', false, false)]
local procedure DoSomethingOnAfterOnAfterSetFilters(var PriceCalculationBuffer: Record "Price Calculation Buffer"; var PriceListLine: Record "Price List Line")
begin
end;

Parameters:

  • PriceCalculationBuffer: The price calculation buffer containing filter criteria.
  • PriceListLine: The price list line record with filters applied (can be modified).

Remarks: Use this event to add additional filters to price list lines beyond the standard filters. The standard filters include KVSKBAResponsibilityCenter and KVSKBAOrderType. Subscribe to this event to implement custom filtering logic for price calculations.