KVSKBARequisitionLib#
Procedures#
ResetBlanketOrderData(Record Requisition Line) :#
Summary: This function reset the blanket order datas at the requisition line
procedure ResetBlanketOrderData(var CurrentRequisitionLine: Record "Requisition Line"):
Parameters:
CurrentRequisitionLine: Requisition line, in which the values are to be reset
GetAssignedBlanketOrderQty(Record Requisition Line, Code[20], Integer) : Decimal#
Summary: This function give back the qty. base of already assigend qty. of the blanket order line
procedure GetAssignedBlanketOrderQty(CurrentRequisitionLine: Record "Requisition Line"; SearchBlanketOrderNo: Code[20]; SearchBlanketOrderLineNo: Integer): Decimal
Parameters:
CurrentRequisitionLine: Requisition line from where is searched is not taken into account when determining the ReturnValueSearchBlanketOrderNo: Blanket order number to be searched withSearchBlanketOrderLineNo: Blanket order line number to be searched wit
Returns: ReturnValue as Decimal
AssignBlanketOrdersToReqLines(Record Requisition Line, Option) :#
Summary: Assign to the requisition lines possible blanket order lines If the qty. of the requisition lines is greatet than the blanket order line, it will splitt the requisition lines
procedure AssignBlanketOrdersToReqLines(var RequisitionLine: Record "Requisition Line"; AssignmentMethod: Option):
Parameters:
RequisitionLine: Requisition line, in which the values are to be setAssignmentMethod: how should be assigned: assign,reassign,delete
VerifyQtyToBlanketOrderQty(Record Requisition Line) :#
Summary: this function checks each modification of the quantity, if the actual outstanding qty of the blanket order is enough
procedure VerifyQtyToBlanketOrderQty(var RequisitionLine: Record "Requisition Line"):
Parameters:
RequisitionLine: Requisition line, in which the values are to be check
NextBlanketOrderNo(Record Requisition Line, Boolean) : Boolean#
Summary: This function returns yes, if blanket order no. or blanket order line no. changed on checkReqLine
procedure NextBlanketOrderNo(RequisitionLine: Record "Requisition Line"; SetPreviousValues: Boolean): Boolean
Parameters:
RequisitionLine: Requisition line, in which the values are to be checkSetPreviousValues: Defines the blanket order data to be saved in the codeunit
Returns: Boolean
TransferFromReqLineToPurchLine(Record Purchase Line, Record Requisition Line) :#
Summary: this function handle additional fields to tranfered form requisition Line to purchase line
procedure TransferFromReqLineToPurchLine(var PurchaseLine: Record "Purchase Line"; var RequisitionLine: Record "Requisition Line"):
Parameters:
PurchaseLine: Purchase Line, in which data is to be writtenRequisitionLine: Requisition Line, from which the data is to be taken
SplitReqLine(Record Requisition Line, Decimal) :#
Summary: this function splitts a requisition Line to the new requisition Line about the split quantity
procedure SplitReqLine(var OriginalRequisitionLine: Record "Requisition Line"; SplitQuantityBase: Decimal):
Parameters:
OriginalRequisitionLine: Requisition Line, original line from which a split line is to be createdSplitQuantityBase: Quantity (Base), which is to be split
OnDeleteReqLine(Record Requisition Line) :#
Obsolete
This Element will be removed or changed with a future Version of the App.
Summary: Delete further data records when the requisition line is deleted
[Obsolete('The procedure is be replaced by OnDeleteReqLine with addional parameters DeleteAllLines.', '27.0')]
procedure OnDeleteReqLine(RequisitionLine: Record "Requisition Line"):
Parameters:
RequisitionLine: Requisition Line, which is deleted
OnDeleteReqLine(Record Requisition Line, Boolean) :#
Summary: Delete further data records when the requisition line is deleted
procedure OnDeleteReqLine(RequisitionLine: Record "Requisition Line"; DeleteAllLines: Boolean):
Parameters:
RequisitionLine: Requisition Line, which is deleted (for filtering)DeleteAllLines: Indicates whether all lines of the requisition are being deleted
Remarks: The standard event specifies the DeleteAllLines parameter, which indicates whether a specific requisition line or all requisition lines are to be deleted.
TransferFromReqLineToProdOrder(Record Production Order, Record Requisition Line) :#
Summary: This function transfers additional values from the Requisition Line to a new created Production Order
procedure TransferFromReqLineToProdOrder(var ProductionOrder: Record "Production Order"; RequisitionLine: Record "Requisition Line"):
Parameters:
ProductionOrder: Production Order, in which the values are to be setRequisitionLine: Requisition Line, from which the data is to be take
CalcAvailability(Record Requisition Line) : Decimal#
Summary: Calculates the item availability for the specified requisition line.
procedure CalcAvailability(RequisitionLine: Record "Requisition Line"): Decimal
Parameters:
RequisitionLine: The requisition line record for which to calculate availability.
Returns: The calculated availability amount as a decimal value.
CalcNoOfPurchasePrices(Record Requisition Line) : Integer#
Summary: Calculates the number of purchase prices available for a requisition line.
procedure CalcNoOfPurchasePrices(var RequisitionLine: Record "Requisition Line"): Integer
Parameters:
RequisitionLine: Requisition line to count purchase prices for
Returns: Number of available purchase prices as integer
CalcNoOfRequisitionLineDisc(Record Requisition Line) : Integer#
Summary: Calculates the number of line discounts available for a requisition line.
procedure CalcNoOfRequisitionLineDisc(var RequisitionLine: Record "Requisition Line"): Integer
Parameters:
RequisitionLine: Requisition line to count discounts for
Returns: Number of available line discounts as integer
Events#
OnBeforeAssignBlanketOrdersToReqLines(Record Requisition Line, Option, Boolean) :#
Summary: Integration event that allows customization before assigning blanket orders to requisition lines.
[IntegrationEvent(false, false)]
local procedure OnBeforeAssignBlanketOrdersToReqLines(var RequisitionLine: Record "Requisition Line"; AssignmentMethod: Option; var HandledLoc: Boolean):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBARequisitionLib", 'OnBeforeAssignBlanketOrdersToReqLines', '', false, false)]
local procedure DoSomethingOnBeforeAssignBlanketOrdersToReqLines(var RequisitionLine: Record "Requisition Line"; AssignmentMethod: Option; var HandledLoc: Boolean)
begin
end;
Parameters:
RequisitionLine: Requisition line being processed for blanket order assignmentAssignmentMethod: Assignment method (assign, reassign, delete)HandledLoc: Variable indicating whether a subscriber has handled the assignment
Remarks: Set HandledLoc to true to skip standard blanket order assignment logic
OnAssignBlanketOrdersToReqLinesOnAfterSetCurrentKey(Record Purchase Line, Record Requisition Line, Option) :#
Summary: Integration event that allows customization after setting current key for blanket order assignment.
[IntegrationEvent(false, false)]
local procedure OnAssignBlanketOrdersToReqLinesOnAfterSetCurrentKey(var PurchaseLine: Record "Purchase Line"; RequisitionLine: Record "Requisition Line"; AssignmentMethod: Option):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBARequisitionLib", 'OnAssignBlanketOrdersToReqLinesOnAfterSetCurrentKey', '', false, false)]
local procedure DoSomethingOnAssignBlanketOrdersToReqLinesOnAfterSetCurrentKey(var PurchaseLine: Record "Purchase Line"; RequisitionLine: Record "Requisition Line"; AssignmentMethod: Option)
begin
end;
Parameters:
PurchaseLine: Purchase line record with applied filtersRequisitionLine: Requisition line being processedAssignmentMethod: Assignment method being used
Remarks: Use this event to modify filters or sorting for blanket order purchase lines
OnDrillDownBlanketOrderLinesOnSetFilterBlanketPurchLine(Record Purchase Line, Record Requisition Line) :#
Summary: Integration event that allows customization of filters for blanket order line drill-down.
[IntegrationEvent(false, false)]
local procedure OnDrillDownBlanketOrderLinesOnSetFilterBlanketPurchLine(var PurchaseLine: Record "Purchase Line"; var RequisitionLine: Record "Requisition Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBARequisitionLib", 'OnDrillDownBlanketOrderLinesOnSetFilterBlanketPurchLine', '', false, false)]
local procedure DoSomethingOnDrillDownBlanketOrderLinesOnSetFilterBlanketPurchLine(var PurchaseLine: Record "Purchase Line"; var RequisitionLine: Record "Requisition Line")
begin
end;
Parameters:
PurchaseLine: Purchase line record to apply additional filters toRequisitionLine: Requisition line providing context for filtering
Remarks: Use this event to add custom filters for blanket order line drill-down functionality
OnLookupBlanketOrderLinesOnSetFilterBlanketPurchLine(Record Purchase Line, Record Requisition Line) :#
Summary: Integration event that allows customization of filters for blanket order line lookup.
[IntegrationEvent(false, false)]
local procedure OnLookupBlanketOrderLinesOnSetFilterBlanketPurchLine(var PurchaseLine: Record "Purchase Line"; var RequisitionLine: Record "Requisition Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBARequisitionLib", 'OnLookupBlanketOrderLinesOnSetFilterBlanketPurchLine', '', false, false)]
local procedure DoSomethingOnLookupBlanketOrderLinesOnSetFilterBlanketPurchLine(var PurchaseLine: Record "Purchase Line"; var RequisitionLine: Record "Requisition Line")
begin
end;
Parameters:
PurchaseLine: Purchase line record to apply additional filters toRequisitionLine: Requisition line providing context for filtering
Remarks: Use this event to add custom filters for blanket order line lookup functionality
OnLookupBlanketOrderLinesOnBeforeAssignBlanketOrderValues(Record Purchase Line, Record Requisition Line) :#
Summary: Integration event that allows customization before assigning blanket order values during lookup.
[IntegrationEvent(false, false)]
local procedure OnLookupBlanketOrderLinesOnBeforeAssignBlanketOrderValues(var PurchaseLine: Record "Purchase Line"; var RequisitionLine: Record "Requisition Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBARequisitionLib", 'OnLookupBlanketOrderLinesOnBeforeAssignBlanketOrderValues', '', false, false)]
local procedure DoSomethingOnLookupBlanketOrderLinesOnBeforeAssignBlanketOrderValues(var PurchaseLine: Record "Purchase Line"; var RequisitionLine: Record "Requisition Line")
begin
end;
Parameters:
PurchaseLine: Purchase line record selected in lookupRequisitionLine: Requisition line to assign values to
Remarks: Use this event to modify values before they are assigned from blanket order to requisition line
OnSplitReqLineOnAfterNewSplittReqLineModify(Record Requisition Line, Record Requisition Line, Decimal) :#
Summary: Integration event that allows customization after modifying a new split requisition line.
[IntegrationEvent(false, false)]
local procedure OnSplitReqLineOnAfterNewSplittReqLineModify(var NewRequisitionLine: Record "Requisition Line"; var OrigRequisitionLine: Record "Requisition Line"; SplittQtyBase: Decimal):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBARequisitionLib", 'OnSplitReqLineOnAfterNewSplittReqLineModify', '', false, false)]
local procedure DoSomethingOnSplitReqLineOnAfterNewSplittReqLineModify(var NewRequisitionLine: Record "Requisition Line"; var OrigRequisitionLine: Record "Requisition Line"; SplittQtyBase: Decimal)
begin
end;
Parameters:
NewRequisitionLine: New requisition line created from splittingOrigRequisitionLine: Original requisition line that was splitSplittQtyBase: Quantity (Base) that was split off
Remarks: Use this event to perform additional actions after a new split line has been created and modified
OnSplitReqLineOnBeforeNewSplittReqLineModify(Record Requisition Line, Record Requisition Line, Decimal) :#
Summary: Integration event that allows customization before modifying a new split requisition line.
[IntegrationEvent(false, false)]
local procedure OnSplitReqLineOnBeforeNewSplittReqLineModify(var NewRequisitionLine: Record "Requisition Line"; var OrigRequisitionLine: Record "Requisition Line"; SplittQtyBase: Decimal):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBARequisitionLib", 'OnSplitReqLineOnBeforeNewSplittReqLineModify', '', false, false)]
local procedure DoSomethingOnSplitReqLineOnBeforeNewSplittReqLineModify(var NewRequisitionLine: Record "Requisition Line"; var OrigRequisitionLine: Record "Requisition Line"; SplittQtyBase: Decimal)
begin
end;
Parameters:
NewRequisitionLine: New requisition line being created from splittingOrigRequisitionLine: Original requisition line being splitSplittQtyBase: Quantity (Base) being split off
Remarks: Use this event to set additional values on the new split line before it is modified
OnTransferFromReqLineToPurchLineOnAssignValuestoPurchLine(Record Purchase Line, Record Requisition Line) :#
Summary: Integration event that allows customization when transferring values from requisition line to purchase line.
[IntegrationEvent(false, false)]
local procedure OnTransferFromReqLineToPurchLineOnAssignValuestoPurchLine(var PurchaseLine: Record "Purchase Line"; var RequisitionLine: Record "Requisition Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBARequisitionLib", 'OnTransferFromReqLineToPurchLineOnAssignValuestoPurchLine', '', false, false)]
local procedure DoSomethingOnTransferFromReqLineToPurchLineOnAssignValuestoPurchLine(var PurchaseLine: Record "Purchase Line"; var RequisitionLine: Record "Requisition Line")
begin
end;
Parameters:
PurchaseLine: Purchase line receiving the valuesRequisitionLine: Requisition line providing the values
Remarks: Use this event to transfer additional custom fields from requisition line to purchase line
OnBeforeAssignBlanketPurchLine(Record Purchase Line, Record Requisition Line) :#
Summary: Integration event that allows customization before assigning a blanket purchase line to a requisition line.
[IntegrationEvent(false, false)]
local procedure OnBeforeAssignBlanketPurchLine(var PurchaseLine: Record "Purchase Line"; var RequisitionLine: Record "Requisition Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBARequisitionLib", 'OnBeforeAssignBlanketPurchLine', '', false, false)]
local procedure DoSomethingOnBeforeAssignBlanketPurchLine(var PurchaseLine: Record "Purchase Line"; var RequisitionLine: Record "Requisition Line")
begin
end;
Parameters:
PurchaseLine: Blanket purchase line being assignedRequisitionLine: Requisition line receiving the assignment
Remarks: Use this event to perform validations or modifications before blanket order assignment
OnAfterAssignBlanketPurchLine(Record Purchase Line, Record Requisition Line) :#
Summary: Integration event that allows customization after assigning a blanket purchase line to a requisition line.
[IntegrationEvent(false, false)]
local procedure OnAfterAssignBlanketPurchLine(var PurchaseLine: Record "Purchase Line"; var RequisitionLine: Record "Requisition Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBARequisitionLib", 'OnAfterAssignBlanketPurchLine', '', false, false)]
local procedure DoSomethingOnAfterAssignBlanketPurchLine(var PurchaseLine: Record "Purchase Line"; var RequisitionLine: Record "Requisition Line")
begin
end;
Parameters:
PurchaseLine: Blanket purchase line that was assignedRequisitionLine: Requisition line that received the assignment
Remarks: Use this event to perform additional actions after blanket order assignment is complete
OnBeforeVerifyQtyToBlanketOrderQty(Record Purchase Line, Record Requisition Line) :#
Summary: Integration event that allows customization before verifying quantity against blanket order quantity.
[IntegrationEvent(false, false)]
local procedure OnBeforeVerifyQtyToBlanketOrderQty(var PurchaseLine: Record "Purchase Line"; var RequisitionLine: Record "Requisition Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBARequisitionLib", 'OnBeforeVerifyQtyToBlanketOrderQty', '', false, false)]
local procedure DoSomethingOnBeforeVerifyQtyToBlanketOrderQty(var PurchaseLine: Record "Purchase Line"; var RequisitionLine: Record "Requisition Line")
begin
end;
Parameters:
PurchaseLine: Blanket purchase line being verifiedRequisitionLine: Requisition line being validated
Remarks: Use this event to modify validation logic before quantity verification
OnVerifyQtyToBlanketOrderQtyOnAfterCalculateRemainingBlanketOrderQty(Record Purchase Line, Record Requisition Line, Decimal) :#
Summary: Integration event that allows customization after calculating remaining blanket order quantity.
[IntegrationEvent(false, false)]
local procedure OnVerifyQtyToBlanketOrderQtyOnAfterCalculateRemainingBlanketOrderQty(var PurchaseLine: Record "Purchase Line"; var RequisitionLine: Record "Requisition Line"; var RemainingBlanketOrderQty: Decimal):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBARequisitionLib", 'OnVerifyQtyToBlanketOrderQtyOnAfterCalculateRemainingBlanketOrderQty', '', false, false)]
local procedure DoSomethingOnVerifyQtyToBlanketOrderQtyOnAfterCalculateRemainingBlanketOrderQty(var PurchaseLine: Record "Purchase Line"; var RequisitionLine: Record "Requisition Line"; var RemainingBlanketOrderQty: Decimal)
begin
end;
Parameters:
PurchaseLine: Blanket purchase line being processedRequisitionLine: Requisition line being validatedRemainingBlanketOrderQty: Calculated remaining quantity on blanket order
Remarks: Use this event to modify the remaining quantity calculation or perform additional validations
OnBeforeDrillDownBlanketOrderLines(Record Requisition Line, Boolean, Boolean) :#
Summary: Integration event that allows customization before drilling down to blanket order lines.
[IntegrationEvent(false, false)]
local procedure OnBeforeDrillDownBlanketOrderLines(RequisitionLine: Record "Requisition Line"; FilterwithVendor: Boolean; var IsHandled: Boolean):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBARequisitionLib", 'OnBeforeDrillDownBlanketOrderLines', '', false, false)]
local procedure DoSomethingOnBeforeDrillDownBlanketOrderLines(RequisitionLine: Record "Requisition Line"; FilterwithVendor: Boolean; var IsHandled: Boolean)
begin
end;
Parameters:
RequisitionLine: Requisition line providing context for drill-downFilterwithVendor: Whether to filter by vendorIsHandled: Variable indicating whether a subscriber has handled the drill-down
Remarks: Set IsHandled to true to skip standard drill-down logic and implement custom behavior
OnBeforeGetBlanketOrderData(Record Requisition Line, Boolean, Boolean) :#
Summary: Integration event that allows customization before getting blanket order data.
[IntegrationEvent(false, false)]
local procedure OnBeforeGetBlanketOrderData(var RequisitionLine: Record "Requisition Line"; var Returnvalue: Boolean; var IsHandled: Boolean):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBARequisitionLib", 'OnBeforeGetBlanketOrderData', '', false, false)]
local procedure DoSomethingOnBeforeGetBlanketOrderData(var RequisitionLine: Record "Requisition Line"; var Returnvalue: Boolean; var IsHandled: Boolean)
begin
end;
Parameters:
RequisitionLine: Requisition line to get blanket order data forReturnvalue: Variable indicating success of the operationIsHandled: Variable indicating whether a subscriber has handled the operation
Remarks: Set IsHandled to true to skip standard blanket order data retrieval
OnGetBlanketOrderDataOnAfterAssignValues(Record Purchase Line, Record Requisition Line) :#
Summary: Integration event that allows customization after assigning values from blanket order data.
[IntegrationEvent(false, false)]
local procedure OnGetBlanketOrderDataOnAfterAssignValues(BlanketPurchaseLine: Record "Purchase Line"; var RequisitionLine: Record "Requisition Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBARequisitionLib", 'OnGetBlanketOrderDataOnAfterAssignValues', '', false, false)]
local procedure DoSomethingOnGetBlanketOrderDataOnAfterAssignValues(BlanketPurchaseLine: Record "Purchase Line"; var RequisitionLine: Record "Requisition Line")
begin
end;
Parameters:
BlanketPurchaseLine: Blanket purchase line providing the dataRequisitionLine: Requisition line receiving the values
Remarks: Use this event to assign additional custom values from blanket order to requisition line
OnBeforeResetBlanketOrderData(Record Requisition Line, Boolean) :#
Summary: Integration event that allows customization before resetting blanket order data.
[IntegrationEvent(false, false)]
local procedure OnBeforeResetBlanketOrderData(var RequisitionLine: Record "Requisition Line"; var IsHandled: Boolean):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBARequisitionLib", 'OnBeforeResetBlanketOrderData', '', false, false)]
local procedure DoSomethingOnBeforeResetBlanketOrderData(var RequisitionLine: Record "Requisition Line"; var IsHandled: Boolean)
begin
end;
Parameters:
RequisitionLine: Requisition line to reset blanket order data forIsHandled: Variable indicating whether a subscriber has handled the reset
Remarks: Set IsHandled to true to skip standard blanket order data reset
OnAfterResetBlanketOrderData(Record Requisition Line) :#
Summary: Integration event that allows customization after resetting blanket order data.
[IntegrationEvent(false, false)]
local procedure OnAfterResetBlanketOrderData(var RequisitionLine: Record "Requisition Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBARequisitionLib", 'OnAfterResetBlanketOrderData', '', false, false)]
local procedure DoSomethingOnAfterResetBlanketOrderData(var RequisitionLine: Record "Requisition Line")
begin
end;
Parameters:
RequisitionLine: Requisition line that had blanket order data reset
Remarks: Use this event to perform additional actions after blanket order data has been reset
OnBeforeGetAssignedBlanketOrderQty(Record Requisition Line, Code[20], Integer, Decimal, Boolean) :#
Summary: Integration event that allows customization before getting assigned blanket order quantity.
[IntegrationEvent(false, false)]
local procedure OnBeforeGetAssignedBlanketOrderQty(RequisitionLine: Record "Requisition Line"; SearchBlanketOrderNo: Code[20]; SearchBlanketOrderLineNo: Integer; var ReturnValue: Decimal; var IsHandled: Boolean):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBARequisitionLib", 'OnBeforeGetAssignedBlanketOrderQty', '', false, false)]
local procedure DoSomethingOnBeforeGetAssignedBlanketOrderQty(RequisitionLine: Record "Requisition Line"; SearchBlanketOrderNo: Code[20]; SearchBlanketOrderLineNo: Integer; var ReturnValue: Decimal; var IsHandled: Boolean)
begin
end;
Parameters:
RequisitionLine: Current requisition line (excluded from calculation)SearchBlanketOrderNo: Blanket order number to search forSearchBlanketOrderLineNo: Blanket order line number to search forReturnValue: Variable to store the calculated assigned quantityIsHandled: Variable indicating whether a subscriber has handled the calculation
Remarks: Set IsHandled to true to provide custom logic for calculating assigned blanket order quantities
OnGetAssignedBlanketOrderQtyOnAfterSetFilterRequisitionLine(Record Requisition Line, Record Requisition Line, Code[20], Integer) :#
Summary: Integration event that allows customization of filters when getting assigned blanket order quantity.
[IntegrationEvent(false, false)]
local procedure OnGetAssignedBlanketOrderQtyOnAfterSetFilterRequisitionLine(var RequisitionLine: Record "Requisition Line"; CurrentRequisitionLine: Record "Requisition Line"; SearchBlanketOrderNo: Code[20]; SearchBlanketOrderLineNo: Integer):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBARequisitionLib", 'OnGetAssignedBlanketOrderQtyOnAfterSetFilterRequisitionLine', '', false, false)]
local procedure DoSomethingOnGetAssignedBlanketOrderQtyOnAfterSetFilterRequisitionLine(var RequisitionLine: Record "Requisition Line"; CurrentRequisitionLine: Record "Requisition Line"; SearchBlanketOrderNo: Code[20]; SearchBlanketOrderLineNo: Integer)
begin
end;
Parameters:
RequisitionLine: Requisition line record with applied filtersCurrentRequisitionLine: Current requisition line being processedSearchBlanketOrderNo: Blanket order number being searchedSearchBlanketOrderLineNo: Blanket order line number being searched
Remarks: Use this event to add additional filters when calculating assigned blanket order quantities
OnBeforeLookupBlanketOrderLines(Record Requisition Line, Boolean, Boolean) :#
Summary: Integration event that allows customization before looking up blanket order lines.
[IntegrationEvent(false, false)]
local procedure OnBeforeLookupBlanketOrderLines(var RequisitionLine: Record "Requisition Line"; var ReturnValue: Boolean; var IsHandled: Boolean):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBARequisitionLib", 'OnBeforeLookupBlanketOrderLines', '', false, false)]
local procedure DoSomethingOnBeforeLookupBlanketOrderLines(var RequisitionLine: Record "Requisition Line"; var ReturnValue: Boolean; var IsHandled: Boolean)
begin
end;
Parameters:
RequisitionLine: Requisition line context for the lookupReturnValue: Variable indicating success of the lookupIsHandled: Variable indicating whether a subscriber has handled the lookup
Remarks: Set IsHandled to true to skip standard blanket order line lookup
OnAfterOnDeleteReqLine(Record Requisition Line, Boolean) :#
Summary: Integration event: Allows subscribers to perform custom actions after a requisition line (or all lines) has been deleted.
[IntegrationEvent(false, false)]
local procedure OnAfterOnDeleteReqLine(RequisitionLine: Record "Requisition Line"; DeleteAllLines: Boolean):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBARequisitionLib", 'OnAfterOnDeleteReqLine', '', false, false)]
local procedure DoSomethingOnAfterOnDeleteReqLine(RequisitionLine: Record "Requisition Line"; DeleteAllLines: Boolean)
begin
end;
Parameters:
RequisitionLine: The requisition line record that was deleted (used for filtering).DeleteAllLines: Indicates whether all lines of the requisition were deleted (true) or only a specific line (false).
Remarks: This event is triggered after the deletion of a requisition line or all lines in a requisition. Subscribers can use this event to clean up related data, trigger notifications, or implement additional business logic that should occur after the deletion process. The DeleteAllLines parameter allows differentiation between single line and batch deletions, enabling more granular handling of post-delete scenarios.
OnAfterSetFilterBlanketOrderPurchaseLine(Record Purchase Line, Record Requisition Line, Boolean) :#
Summary: Integration event that allows customization after setting filters for blanket order purchase lines.
[IntegrationEvent(false, false)]
local procedure OnAfterSetFilterBlanketOrderPurchaseLine(var BlanketOrderPurchaseLine: Record "Purchase Line"; var AssigntoRequisitionLine: Record "Requisition Line"; FilterEmptyLocationCode: Boolean):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBARequisitionLib", 'OnAfterSetFilterBlanketOrderPurchaseLine', '', false, false)]
local procedure DoSomethingOnAfterSetFilterBlanketOrderPurchaseLine(var BlanketOrderPurchaseLine: Record "Purchase Line"; var AssigntoRequisitionLine: Record "Requisition Line"; FilterEmptyLocationCode: Boolean)
begin
end;
Parameters:
BlanketOrderPurchaseLine: Purchase line record with applied filtersAssigntoRequisitionLine: Requisition line being processed for assignmentFilterEmptyLocationCode: Whether filtering by empty location code
Remarks: Use this event to add additional filters for blanket order purchase line selection
OnBeforeCalcAvailability(Record Item, Record Requisition Line, Decimal, Boolean) :#
Summary: Integration event that is triggered before calculating availability for an item in a requisition line.
[IntegrationEvent(false, false)]
local procedure OnBeforeCalcAvailability(var Item: Record "Item"; RequisitionLine: Record "Requisition Line"; var AvailableQuantity: Decimal; var IsHandled: Boolean):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBARequisitionLib", 'OnBeforeCalcAvailability', '', false, false)]
local procedure DoSomethingOnBeforeCalcAvailability(var Item: Record "Item"; RequisitionLine: Record "Requisition Line"; var AvailableQuantity: Decimal; var IsHandled: Boolean)
begin
end;
Parameters:
Item: The item record for which availability is being calculated.RequisitionLine: The requisition line for which availability is being calculated.AvailableQuantity: The quantity that is available for the item.IsHandled: Boolean indicating whether the calculation has been handled by a subscriber. If set to true, the standard calculation will be skipped.
Remarks: This event allows you to modify the available quantity or completely override the standard availability calculation logic. Subscribe to this event if you need to customize how item availability is determined for requisition lines.
OnCalculateOrderAmountOnAfterSetRequisitionLineFilters(Record Requisition Line, Record Requisition Line) :#
Summary: Integration event that allows customization of requisition line filters when calculating order amounts.
[IntegrationEvent(false, false)]
local procedure OnCalculateOrderAmountOnAfterSetRequisitionLineFilters(var RequisitionLineFind: Record "Requisition Line"; var RequisitionLine: Record "Requisition Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBARequisitionLib", 'OnCalculateOrderAmountOnAfterSetRequisitionLineFilters', '', false, false)]
local procedure DoSomethingOnCalculateOrderAmountOnAfterSetRequisitionLineFilters(var RequisitionLineFind: Record "Requisition Line"; var RequisitionLine: Record "Requisition Line")
begin
end;
Parameters:
RequisitionLineFind: Requisition line record with applied filters for calculationRequisitionLine: Original requisition line providing context
Remarks: Use this event to add additional filters when calculating order amounts across requisition lines
OnAssignBlanketOrdersOnAfterSetFilterToAssignToRequisitionLine(Record Requisition Line) :#
Summary: Integration event that is triggered after setting the filter for assigning blanket orders to requisition lines
[IntegrationEvent(false, false)]
local procedure OnAssignBlanketOrdersOnAfterSetFilterToAssignToRequisitionLine(var RequisitionLine: Record "Requisition Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBARequisitionLib", 'OnAssignBlanketOrdersOnAfterSetFilterToAssignToRequisitionLine', '', false, false)]
local procedure DoSomethingOnAssignBlanketOrdersOnAfterSetFilterToAssignToRequisitionLine(var RequisitionLine: Record "Requisition Line")
begin
end;
Parameters:
RequisitionLine: The requisition line record to which the blanket order line is being assigned
Remarks: This event allows subscribers to perform additional logic or modifications after setting the filter for assigning blanket orders to requisition lines.
OnAssignBlanketPurchLineOnAfterCalculateRemainingBlanketOrderQty(Record Purchase Line, Record Requisition Line, Decimal) :#
Summary: Integration event that is triggered after calculating the remaining blanket order quantity
[IntegrationEvent(false, false)]
local procedure OnAssignBlanketPurchLineOnAfterCalculateRemainingBlanketOrderQty(var PurchaseLine: Record "Purchase Line"; var RequisitionLine: Record "Requisition Line"; var RemainingBlanketOrderQty: Decimal):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBARequisitionLib", 'OnAssignBlanketPurchLineOnAfterCalculateRemainingBlanketOrderQty', '', false, false)]
local procedure DoSomethingOnAssignBlanketPurchLineOnAfterCalculateRemainingBlanketOrderQty(var PurchaseLine: Record "Purchase Line"; var RequisitionLine: Record "Requisition Line"; var RemainingBlanketOrderQty: Decimal)
begin
end;
Parameters:
PurchaseLine: The purchase line record representing the blanket order line.RequisitionLine: The requisition line record to which the blanket order line is being assigned.RemainingBlanketOrderQty: The remaining quantity available on the blanket order line after assignment.
Remarks: This event allows subscribers to perform additional logic or modifications after the remaining blanket order quantity has been calculated.
OnAssignBlanketPurchLineOnBeforeModifyAssignToRequisitionLine(Record Requisition Line, Record Purchase Line) :#
Summary: Integration event that is triggered before modifying and assigning values to a requisition line from a blanket purchase line.
[IntegrationEvent(false, false)]
local procedure OnAssignBlanketPurchLineOnBeforeModifyAssignToRequisitionLine(var RequisitionLine: Record "Requisition Line"; PurchaseLine: Record "Purchase Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBARequisitionLib", 'OnAssignBlanketPurchLineOnBeforeModifyAssignToRequisitionLine', '', false, false)]
local procedure DoSomethingOnAssignBlanketPurchLineOnBeforeModifyAssignToRequisitionLine(var RequisitionLine: Record "Requisition Line"; PurchaseLine: Record "Purchase Line")
begin
end;
Parameters:
RequisitionLine: The requisition line record to be modified and assigned values.PurchaseLine: The purchase line record representing the blanket order line.
Remarks: This event allows subscribers to perform custom logic or validations before the requisition line is updated with values from the blanket purchase line.