Share via


Table "Item Journal Line"

ID 83
Namespace: Microsoft.Inventory.Journal

Properties

Name Value
Caption Item Journal Line
DrillDownPageID Page Microsoft.Inventory.Journal."Item Journal Lines"
LookupPageID Page Microsoft.Inventory.Journal."Item Journal Lines"
DataClassification CustomerContent

Fields

Name Type Description
"Journal Template Name" Code[10]
"Line No." Integer
"Item No." Code[20]
"Posting Date" Date
"Entry Type" Enum Microsoft.Inventory.Ledger."Item Ledger Entry Type"
"Source No." Code[20]
"Document No." Code[20]
Description Text[100]
"Location Code" Code[10]
"Inventory Posting Group" Code[20]
"Source Posting Group" Code[20]
Quantity Decimal
"Invoiced Quantity" Decimal
"Unit Amount" Decimal
"Unit Cost" Decimal
Amount Decimal
"Discount Amount" Decimal
"Salespers./Purch. Code" Code[20]
"Source Code" Code[10]
"Applies-to Entry" Integer
"Item Shpt. Entry No." Integer
"Shortcut Dimension 1 Code" Code[20]
"Shortcut Dimension 2 Code" Code[20]
"Indirect Cost %" Decimal
"Source Type" Enum Microsoft.Foundation.Enums."Analysis Source Type"
"Shpt. Method Code" Code[10]
"Journal Batch Name" Code[10]
"Reason Code" Code[10]
"Recurring Method" Option
"Expiration Date" Date
"Recurring Frequency" DateFormula
"Drop Shipment" Boolean
"Transaction Type" Code[10]
"Transport Method" Code[10]
"Country/Region Code" Code[10]
"New Location Code" Code[10]
"New Shortcut Dimension 1 Code" Code[20]
"New Shortcut Dimension 2 Code" Code[20]
"Qty. (Calculated)" Decimal
"Qty. (Phys. Inventory)" Decimal
"Last Item Ledger Entry No." Integer
"Phys. Inventory" Boolean
"Gen. Bus. Posting Group" Code[20]
"Gen. Prod. Posting Group" Code[20]
"Entry/Exit Point" Code[10]
"Document Date" Date
"External Document No." Code[35]
"Area" Code[10]
"Transaction Specification" Code[10]
"Posting No. Series" Code[20]
"Reserved Quantity" Decimal
"Unit Cost (ACY)" Decimal
"Source Currency Code" Code[10]
"Document Type" Enum Microsoft.Inventory.Ledger."Item Ledger Document Type"
"Document Line No." Integer
"VAT Reporting Date" Date
"Order Type" Enum Microsoft.Foundation.Enums."Inventory Order Type"
"Order No." Code[20]
"Order Line No." Integer
"Applies-to Rem. Quantity" Decimal
"Dimension Set ID" Integer
"New Dimension Set ID" Integer
"Assemble to Order" Boolean
"Job No." Code[20]
"Job Task No." Code[20]
"Job Purchase" Boolean
"Job Contract Entry No." Integer
"Variant Code" Code[10]
"Bin Code" Code[20]
"Qty. per Unit of Measure" Decimal
"New Bin Code" Code[20]
"Unit of Measure Code" Code[10]
"Derived from Blanket Order" Boolean
"Qty. Rounding Precision" Decimal
"Qty. Rounding Precision (Base)" Decimal
"Quantity (Base)" Decimal
"Invoiced Qty. (Base)" Decimal
"Reserved Qty. (Base)" Decimal
Level Integer
"Flushing Method" Enum Microsoft.Manufacturing.Setup."Flushing Method"
"Changed by User" Boolean
"Originally Ordered No." Code[20]
"Originally Ordered Var. Code" Code[10]
"Out-of-Stock Substitution" Boolean
"Item Category Code" Code[20]
Nonstock Boolean
"Purchasing Code" Code[10]
"Item Reference No." Code[50]
"Item Reference Unit of Measure" Code[10]
"Item Reference Type" Enum Microsoft.Inventory.Item.Catalog."Item Reference Type"
"Item Reference Type No." Code[30]
"Planned Delivery Date" Date
"Order Date" Date
"Value Entry Type" Enum Microsoft.Inventory.Costing."Cost Entry Type"
"Item Charge No." Code[20]
"Inventory Value (Calculated)" Decimal
"Inventory Value (Revalued)" Decimal
"Variance Type" Enum Microsoft.Inventory.Costing."Cost Variance Type"
"Inventory Value Per" Option
"Partial Revaluation" Boolean
"Applies-from Entry" Integer
"Invoice No." Code[20]
"Unit Cost (Calculated)" Decimal
"Unit Cost (Revalued)" Decimal
"Applied Amount" Decimal
"Update Standard Cost" Boolean
"Amount (ACY)" Decimal
Correction Boolean
Adjustment Boolean
"Applies-to Value Entry" Integer
"Invoice-to Source No." Code[20]
Type Enum Microsoft.Manufacturing.Capacity."Capacity Type Journal"
"No." Code[20]
"Cap. Unit of Measure Code" Code[10]
"Qty. per Cap. Unit of Measure" Decimal
"Unit Cost Calculation" Enum Microsoft.Foundation.Enums."Unit Cost Calculation Type"
Subcontracting Boolean
"Serial No." Code[50]
"Lot No." Code[50]
"Warranty Date" Date
"New Serial No." Code[50]
"New Lot No." Code[50]
"New Item Expiration Date" Date
"Item Expiration Date" Date
"Package No." Code[50]
"New Package No." Code[50]
"Return Reason Code" Code[10]
"Price Calculation Method" Enum Microsoft.Pricing.Calculation."Price Calculation Method"
"Warehouse Adjustment" Boolean
"Direct Transfer" Boolean
"Phys Invt Counting Period Code" Code[10]
"Phys Invt Counting Period Type" Option
"Overhead Rate" Decimal
"Single-Level Material Cost" Decimal
"Single-Level Capacity Cost" Decimal
"Single-Level Subcontrd. Cost" Decimal
"Single-Level Cap. Ovhd Cost" Decimal
"Single-Level Mfg. Ovhd Cost" Decimal
"Rolled-up Material Cost" Decimal
"Rolled-up Capacity Cost" Decimal
"Rolled-up Subcontracted Cost" Decimal
"Rolled-up Mfg. Ovhd Cost" Decimal
"Rolled-up Cap. Overhead Cost" Decimal
"Single-Lvl Mat. Non-Invt. Cost" Decimal
"Rolled-up Mat. Non-Invt. Cost" Decimal
SystemId Guid
SystemCreatedAt DateTime
SystemCreatedBy Guid
SystemModifiedAt DateTime
SystemModifiedBy Guid
SystemRowVersion BigInteger

Methods

EmptyLine

Determines if the current item journal line is considered empty based on its quantity, time, item number, and value entry type.

procedure EmptyLine(): Boolean

Returns

Type Description
Boolean

True if the item journal line is considered empty, otherwise false.

IsValueEntryForDeletedItem

Determines if the current item journal line is for a deleted item based on its entry type, value entry type, item number, item charge number, and invoiced quantity.

procedure IsValueEntryForDeletedItem(): Boolean

Returns

Type Description
Boolean

True if the item journal line is for a deleted item, otherwise false.

UpdateAmount

Updates the amount of the current item journal line to reflect changes in quantity and unit amount.

procedure UpdateAmount()

CheckItemAvailable

Checks if the item is available based on the current item journal line.

procedure CheckItemAvailable(CalledByFieldNo: Integer)

Parameters

Name Type Description
CalledByFieldNo Integer

Field number that called the item availability check.

Remarks

An error or a notification is raised if the item is out of stock.

GetItem

procedure GetItem()

SetUpNewLine

Initializes a new item journal line based on the previous item journal line record.

procedure SetUpNewLine(LastItemJnlLine: Record "Item Journal Line")

Parameters

Name Type Description
LastItemJnlLine Table Microsoft.Inventory.Journal."Item Journal Line"

Previous item journal line record.

SetDocNos

Sets the document-related fields of an item journal line.

procedure SetDocNos(DocType: Enum "Item Ledger Document Type", DocNo: Code[20], ExtDocNo: Text[35], PostingNos: Code[20])

Parameters

Name Type Description
DocType Enum Microsoft.Inventory.Ledger."Item Ledger Document Type"

Document type to set.

DocNo Code[20]

Document no. to set.

ExtDocNo Text[35]

External document no. to set.

PostingNos Code[20]

Posting no. series to set.

GetUnitAmount

Updates the unit amount of the current item journal line.

procedure GetUnitAmount(CalledByFieldNo: Integer)

Parameters

Name Type Description
CalledByFieldNo Integer

Field number that called the unit amount update.

ApplyPrice

Updates the price of the item journal line.

procedure ApplyPrice(PriceType: Enum "Price Type", CalledByFieldNo: Integer)

Parameters

Name Type Description
PriceType Enum Microsoft.Pricing.PriceList."Price Type"

The price type for which the price or discount will be calculated.

CalledByFieldNo Integer

Field number that called the price update.

GetLineWithPrice

Gets the default or overridden line with price interface implementation.

procedure GetLineWithPrice(var LineWithPrice: Interface "Line With Price")

Parameters

Name Type Description
LineWithPrice Interface Microsoft.Pricing.PriceList."Line With Price"

Return value: line with price implementation.

Signed

Adjusts the sign of the provided value based on the document type of the item journal line.

procedure Signed(Value: Decimal): Decimal

Parameters

Name Type Description
Value Decimal

The value to adjust the sign of.

Returns

Type Description
Decimal

Signed value.

IsInbound

Determines if the item journal line is inbound based on the quantities.

procedure IsInbound(): Boolean

Returns

Type Description
Boolean

True if item journal line is inbound, otherwise false.

OpenItemTrackingLines

Opens a page for editing item tracking lines for the item journal line.

procedure OpenItemTrackingLines(IsReclass: Boolean)

Parameters

Name Type Description
IsReclass Boolean

CreateDim

Creates dimensions for the item journal line based on the provided default dimension sources.

procedure CreateDim(DefaultDimSource: List of [Dictionary of [Integer, Code[20]]])

Parameters

Name Type Description
DefaultDimSource List of [Dictionary of [Integer, Code[20]]]

The list of default dimension sources.

CreateDim

Creates dimensions for the item journal line based on the provided default dimension sources, an inherited dimension set ID and an inherited table number.

procedure CreateDim(DefaultDimSource: List of [Dictionary of [Integer, Code[20]]], InheritFromDimSetID: Integer, InheritFromTableNo: Integer)

Parameters

Name Type Description
DefaultDimSource List of [Dictionary of [Integer, Code[20]]]

The list of default dimension sources.

InheritFromDimSetID Integer

Dimension set ID to inherit.

InheritFromTableNo Integer

Table number to inherit from. This parameter is used to specify the table number for the new temporary dimension buffer that are created based on the dimension set entries associated with InheritFromDimSetID. These temporary records are used later in the procedure to determine the default dimension set ID.

Remarks

Also updates the shortcut dimension codes and sets the new dimension set ID and new shortcut dimension codes if the entry type is transfer.

CopyDim

Sets dimensions to the item journal line from the provided dimension set.

procedure CopyDim(DimesionSetID: Integer)

Parameters

Name Type Description
DimesionSetID Integer

Dimension set ID to copy from.

ValidateShortcutDimCode

Verifies whether the provided shortcut dimension code and value are valid.

procedure ValidateShortcutDimCode(FieldNumber: Integer, var ShortcutDimCode: Code[20])

Parameters

Name Type Description
FieldNumber Integer

Number of the shortcut dimension.

ShortcutDimCode Code[20]

Value of the shortcut dimension.

LookupShortcutDimCode

Opens a page for selecting a dimension code, then assigns the selected value to the provided number of the shortcut dimension.

procedure LookupShortcutDimCode(FieldNumber: Integer, var ShortcutDimCode: Code[20])

Parameters

Name Type Description
FieldNumber Integer

Number of the shortcut dimension.

ShortcutDimCode Code[20]

Return value: Value of the selected shortcut dimension.

ShowShortcutDimCode

Gets an array of shortcut dimension values from the dimensions of the item journal line.

procedure ShowShortcutDimCode(var ShortcutDimCode: array[8] of Code[20])

Parameters

Name Type Description
ShortcutDimCode array[8] of Code[20]

Return value: The array of shortcut dimension values.

ValidateNewShortcutDimCode

Verifies whether the provided new shortcut dimension code and value are valid.

procedure ValidateNewShortcutDimCode(FieldNumber: Integer, var NewShortcutDimCode: Code[20])

Parameters

Name Type Description
FieldNumber Integer

Number of the shortcut dimension.

NewShortcutDimCode Code[20]

Value of the new shortcut dimension.

LookupNewShortcutDimCode

Opens a page for selecting a dimension code, then assigns the selected value to the presented number of the new shortcut dimension.

procedure LookupNewShortcutDimCode(FieldNumber: Integer, var NewShortcutDimCode: Code[20])

Parameters

Name Type Description
FieldNumber Integer

Number of the shortcut dimension.

NewShortcutDimCode Code[20]

Return value: Value of the selected new shortcut dimension.

ShowNewShortcutDimCode

Gets an array of new shortcut dimension values from the dimensions of the item journal line.

procedure ShowNewShortcutDimCode(var NewShortcutDimCode: array[8] of Code[20])

Parameters

Name Type Description
NewShortcutDimCode array[8] of Code[20]

Return value: The array of new shortcut dimension values.

CopyDocumentFields

Copies provided document-related fields to the current item journal line record.

procedure CopyDocumentFields(DocType: Enum "Item Ledger Document Type", DocNo: Code[20], ExtDocNo: Text[35], SourceCode: Code[10], NoSeriesCode: Code[20])

Parameters

Name Type Description
DocType Enum Microsoft.Inventory.Ledger."Item Ledger Document Type"

Document type to set.

DocNo Code[20]

Document no. to set.

ExtDocNo Text[35]

External document no. to set.

SourceCode Code[10]

Source code to set.

NoSeriesCode Code[20]

Posting no. series code to set.

CopyFromSalesHeader

Copies fields from the provided sales header record to the current item journal line.

procedure CopyFromSalesHeader(SalesHeader: Record "Sales Header")

Parameters

Name Type Description
SalesHeader Table Microsoft.Sales.Document."Sales Header"

Sales header to copy from.

CopyFromSalesLine

Copies fields from the provided sales line record to the current item journal line.

procedure CopyFromSalesLine(SalesLine: Record "Sales Line")

Parameters

Name Type Description
SalesLine Table Microsoft.Sales.Document."Sales Line"

Sales line to copy from.

CopyFromPurchHeader

Copies fields from the provided purchase header record to the current item journal line.

procedure CopyFromPurchHeader(PurchHeader: Record "Purchase Header")

Parameters

Name Type Description
PurchHeader Table Microsoft.Purchases.Document."Purchase Header"

Purchase header to copy from.

CopyFromPurchLine

Copies fields from the provided purchase line record to the current item journal line.

procedure CopyFromPurchLine(PurchLine: Record "Purchase Line")

Parameters

Name Type Description
PurchLine Table Microsoft.Purchases.Document."Purchase Line"

Purchase line to copy from.

CopyFromServHeader

Obsolete

This element will become obsolete from version 25.0. Moved to table Service Header

[Obsolete(Moved to table Service Header,25.0)]
procedure CopyFromServHeader(ServiceHeader: Record "Service Header")

Parameters

Name Type Description
ServiceHeader Table Microsoft.Service.Document."Service Header"

CopyFromServLine

Obsolete

This element will become obsolete from version 25.0. Moved to table Service Line

[Obsolete(Moved to table Service Line,25.0)]
procedure CopyFromServLine(ServiceLine: Record "Service Line")

Parameters

Name Type Description
ServiceLine Table Microsoft.Service.Document."Service Line"

CopyFromServShptHeader

Obsolete

This element will become obsolete from version 25.0. Moved to table Service Shipment Header

[Obsolete(Moved to table Service Shipment Header,25.0)]
procedure CopyFromServShptHeader(ServShptHeader: Record "Service Shipment Header")

Parameters

Name Type Description
ServShptHeader Table Microsoft.Service.History."Service Shipment Header"

CopyFromServShptLine

Obsolete

This element will become obsolete from version 25.0. Moved to table Service Shipment Line

[Obsolete(Moved to table Service Shipment Line,25.0)]
procedure CopyFromServShptLine(ServShptLine: Record "Service Shipment Line")

Parameters

Name Type Description
ServShptLine Table Microsoft.Service.History."Service Shipment Line"

CopyFromServShptLineUndo

Obsolete

This element will become obsolete from version 25.0. Moved to table Service Shipment Line

[Obsolete(Moved to table Service Shipment Line,25.0)]
procedure CopyFromServShptLineUndo(ServShptLine: Record "Service Shipment Line")

Parameters

Name Type Description
ServShptLine Table Microsoft.Service.History."Service Shipment Line"

CopyFromJobJnlLine

Copies fields from the provided job journal line record to the current item journal line.

procedure CopyFromJobJnlLine(JobJnlLine: Record "Job Journal Line")

Parameters

Name Type Description
JobJnlLine Table Microsoft.Projects.Project.Journal."Job Journal Line"

Job journal line to copy from.

TimeIsEmpty

Determines if time related fields of the current item journal line record are empty.

procedure TimeIsEmpty(): Boolean

Returns

Type Description
Boolean

True if time related fields are empty, otherwise false.

Remarks

Time related fields consists of setup time, run time, and stop time fields.

OnlyStopTime

Determines if only the stop time field of the current item journal line record is set.

procedure OnlyStopTime(): Boolean

Returns

Type Description
Boolean

True if only the stop time is set, otherwise false.

Remarks

In order to return true, setup time and run time fields must not be set.

RowID1

Generates a unique identifier text for a item journal line record which is used for item tracking.

procedure RowID1(): Text[250]

Returns

Type Description
Text[250]

Generated text.

GetSourceCaption

Returns a formatted text that represents the source of an item journal line record.

procedure GetSourceCaption(): Text

Returns

Type Description
Text

Formatted text of the journal template name, journal batch name and item number separated by space.

Remarks

The resulting text consists of the journal template name, journal batch name and item number separated by space.

SetReservationEntry

Initializes the reservation entries from the item journal line.

procedure SetReservationEntry(var ReservEntry: Record "Reservation Entry")

Parameters

Name Type Description
ReservEntry Table Microsoft.Inventory.Tracking."Reservation Entry"

Return value: Initialized reservation entry.

SetReservationFilters

Filters reservation entry from the item journal line.

procedure SetReservationFilters(var ReservEntry: Record "Reservation Entry")

Parameters

Name Type Description
ReservEntry Table Microsoft.Inventory.Tracking."Reservation Entry"

Return value: Filtered reservation entry.

SetReservEntrySourceFilters

procedure SetReservEntrySourceFilters(var ReservEntry: Record "Reservation Entry", SourceKey: Boolean)

Parameters

Name Type Description
ReservEntry Table Microsoft.Inventory.Tracking."Reservation Entry"
SourceKey Boolean

ReservEntryExist

Checks if reservation entry exists for the item journal line.

procedure ReservEntryExist(): Boolean

Returns

Type Description
Boolean

True if reservation entry exists, otherwise false.

LookupItemNo

Performs a lookup for the item of an item journal line based on its entry type.

procedure LookupItemNo()

RecalculateUnitAmount

Updates the unit amount for an item journal line record based on various factors such as the item's indirect cost percentage, overhead rate, quantity per unit of measure, and entry type.

procedure RecalculateUnitAmount()

IsReclass

Determines whether an item journal line represents a reclassification.

procedure IsReclass(ItemJnlLine: Record "Item Journal Line"): Boolean

Parameters

Name Type Description
ItemJnlLine Table Microsoft.Inventory.Journal."Item Journal Line"

Item journal line to check.

Returns

Type Description
Boolean

True if item journal line represents a reclassification, otherwise false.

ShowDimensions

Opens a page for editing dimensions for the item journal line.

procedure ShowDimensions()

ShowReclasDimensions

Opens a page for editing the dimension set associated with a reclassification in the current item journal line.

procedure ShowReclasDimensions()

SwitchLinesWithErrorsFilter

Toggles the visibility of item journal lines based on whether they have associated error messages.

procedure SwitchLinesWithErrorsFilter(var ShowAllLinesEnabled: Boolean)

Parameters

Name Type Description
ShowAllLinesEnabled Boolean

Return value: Flag to enable or disable item journal lines with errors.

Remarks

When the ShowAllLinesEnabled flag is true, all item journal lines are shown. When the flag is false, only item journal lines with associated error messages are shown.

ClearTracking

Clears the tracking information (serial, lot and package number) of an item journal line.

procedure ClearTracking()

ClearDates

Clears the expiration and warranty dates of the item journal line.

procedure ClearDates()

CopyTrackingFromReservEntry

Copies tracking information (serial, lot and package number) from a reservation entry to an item journal line.

procedure CopyTrackingFromReservEntry(ReservationEntry: Record "Reservation Entry")

Parameters

Name Type Description
ReservationEntry Table Microsoft.Inventory.Tracking."Reservation Entry"

Reservation entry to copy tracking information from.

CopyTrackingFromItemLedgEntry

Copies tracking information (serial, lot and package number) from a item ledger entry to an item journal line.

procedure CopyTrackingFromItemLedgEntry(ItemLedgEntry: Record "Item Ledger Entry")

Parameters

Name Type Description
ItemLedgEntry Table Microsoft.Inventory.Ledger."Item Ledger Entry"

Item ledger entry to copy tracking information from.

CopyTrackingFromSpec

Copies tracking information (serial, lot and package number) from a tracking specification to an item journal line.

procedure CopyTrackingFromSpec(TrackingSpecification: Record "Tracking Specification")

Parameters

Name Type Description
TrackingSpecification Table Microsoft.Inventory.Tracking."Tracking Specification"

Tracking specification to copy tracking information from.

CopyNewTrackingFromNewSpec

Copies new tracking information (new serial number and new lot number) from a tracking specification to an item journal line.

procedure CopyNewTrackingFromNewSpec(TrackingSpecification: Record "Tracking Specification")

Parameters

Name Type Description
TrackingSpecification Table Microsoft.Inventory.Tracking."Tracking Specification"

Tracking specification to copy tracking information from.

CopyNewTrackingFromOldItemLedgerEntry

Copies tracking information (serial, lot and package number) from a item ledger entry to an item journal line.

procedure CopyNewTrackingFromOldItemLedgerEntry(ItemLedgEntry: Record "Item Ledger Entry")

Parameters

Name Type Description
ItemLedgEntry Table Microsoft.Inventory.Ledger."Item Ledger Entry"

Item ledger entry to copy tracking information from.

SetTrackingFilterFromItemLedgerEntry

Set tracking information (serial, lot and package number) filter from a item ledger entry to an item journal line.

procedure SetTrackingFilterFromItemLedgerEntry(ItemledgerEntry: Record "Item Ledger Entry")

Parameters

Name Type Description
ItemledgerEntry Table Microsoft.Inventory.Ledger."Item Ledger Entry"

Item ledger entry to copy tracking information from.

TrackingExists

Determines whether tracking information exists for an item journal line.

procedure TrackingExists(): Boolean

Returns

Type Description
Boolean

True if the tracking exists, otherwise false.

HasSameTracking

Determines whether the current item journal line has the same tracking information as the provided item journal line.

procedure HasSameTracking(ItemJournalLine: Record "Item Journal Line"): Boolean

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

Item journal line to check the tracking information from.

Returns

Type Description
Boolean

True if the tracking information is the same, otherwise false.

HasSameNewTracking

Determines whether the current item journal line has the same serial, lot and package numbers as the new serial, lot and package numbers.

procedure HasSameNewTracking(): Boolean

Returns

Type Description
Boolean

True if the tracking information is the same, otherwise false.

TestItemFields

Tests if the item number, variant code and location code in an item journal line are the same as the provided values.

procedure TestItemFields(ItemNo: Code[20], VariantCode: Code[10], LocationCode: Code[10])

Parameters

Name Type Description
ItemNo Code[20]

Item number to check.

VariantCode Code[10]

Variant code to check.

LocationCode Code[10]

Location code to check.

DisplayErrorIfItemIsBlocked

Checks if the provided item is blocked and raises an error message if it is.

procedure DisplayErrorIfItemIsBlocked(Item: Record Item)

Parameters

Name Type Description
Item Table Microsoft.Inventory.Item.Item

Item to check.

DisplayErrorIfItemVariantIsBlocked

Checks if the provided item variant is blocked and raises an error message if it is.

procedure DisplayErrorIfItemVariantIsBlocked(ItemVariant: Record "Item Variant")

Parameters

Name Type Description
ItemVariant Table Microsoft.Inventory.Item."Item Variant"

Item variant to check.

IsPurchaseReturn

Determines whether an item journal line represents a purchase return.

procedure IsPurchaseReturn(): Boolean

Returns

Type Description
Boolean

True if an item journal line represents a purchase return, otherwise false.

IsOpenedFromBatch

Determines whether the current item journal line record was opened from a batch.

procedure IsOpenedFromBatch(): Boolean

Returns

Type Description
Boolean

True if the current item journal line record was opened from a batch, otherwise false.

Remarks

It checks the filters applied to the journal batch name and journal template name fields.

CheckItemJournalLineRestriction

Triggers the OnCheckItemJournalLinePostRestrictions event to check any additional restrictions before posting item journal line.

procedure CheckItemJournalLineRestriction()

CheckTrackingIsEmpty

Tests if the tracking information (serial, lot and package number) in the item journal line is empty.

procedure CheckTrackingIsEmpty()

CheckNewTrackingIsEmpty

Tests if the new tracking information (new serial number and new lot number) in the item journal line is empty.

procedure CheckNewTrackingIsEmpty()

CheckTrackingEqualItemLedgEntry

Tests if the tracking information (serial, lot and package number) in the item journal line is equal to the tracking information in the provided item ledger entry.

procedure CheckTrackingEqualItemLedgEntry(ItemLedgerEntry: Record "Item Ledger Entry")

Parameters

Name Type Description
ItemLedgerEntry Table Microsoft.Inventory.Ledger."Item Ledger Entry"

Item ledger entry to test the tracking information from.

CheckTrackingEqualTrackingSpecification

Tests if the tracking information (serial, lot and package number) in the item journal line is equal to the tracking information in the provided tracking specifiation.

procedure CheckTrackingEqualTrackingSpecification(TrackingSpecification: Record "Tracking Specification")

Parameters

Name Type Description
TrackingSpecification Table Microsoft.Inventory.Tracking."Tracking Specification"

Tracking specification to test the tracking information from.

CheckTrackingIfRequired

Tests if the tracking information (serial, lot and package number) of the item journal line are filled if required by the item tracking setup.

procedure CheckTrackingIfRequired(ItemTrackingSetup: Record "Item Tracking Setup" temporary)

Parameters

Name Type Description
ItemTrackingSetup Table Microsoft.Inventory.Tracking."Item Tracking Setup"

Item tracking setup to use.

CheckNewTrackingIfRequired

Tests if the new tracking information (new serial number and new lot number) of the item journal line are filled if required by the item tracking setup.

procedure CheckNewTrackingIfRequired(ItemTrackingSetup: Record "Item Tracking Setup" temporary)

Parameters

Name Type Description
ItemTrackingSetup Table Microsoft.Inventory.Tracking."Item Tracking Setup"

Item tracking setup to use.

CheckTrackingIfRequiredNotBlank

Tests if the new tracking information (new serial number and new lot number) of the item journal line is required and not empty. If the tracking information is required and empty, an error message is raised.

procedure CheckTrackingIfRequiredNotBlank(ItemTrackingSetup: Record "Item Tracking Setup" temporary)

Parameters

Name Type Description
ItemTrackingSetup Table Microsoft.Inventory.Tracking."Item Tracking Setup"

Item tracking setup to use.

ValidateTypeWithItemNo

Tests the type of the item journal line based on the type of the associated item.

procedure ValidateTypeWithItemNo()

Remarks

It ensures that service items and non-inventoriable items are used correctly in item journal lines.

IsEntryTypeOutput

procedure IsEntryTypeOutput(): Boolean

Returns

Type Description
Boolean

IsNotInternalWhseMovement

Determines if the item journal line does not represent an internal warehouse movement.

procedure IsNotInternalWhseMovement(): Boolean

Returns

Type Description
Boolean

True if the item journal line does not represent an internal warehouse movement, otherwise false.

PrintInventoryMovement

Runs the inventory movement report for the item journal lines that have the same journal template name and journal batch name as the current item journal line.

procedure PrintInventoryMovement()

CalcBaseQty

procedure CalcBaseQty(Qty: Decimal, FromFieldName: Text, ToFieldName: Text): Decimal

Parameters

Name Type Description
Qty Decimal
FromFieldName Text
ToFieldName Text

Returns

Type Description
Decimal

CreateDimFromDefaultDim

Initializes the dimensions for the item journal line if default dimensions are defined for the related entry.

procedure CreateDimFromDefaultDim(FieldNo: Integer)

Parameters

Name Type Description
FieldNo Integer

The field number for which to initialize the dimensions.

RenumberDocumentNo

Renumbers the document number of the current item journal line based on the number series specified in the associated item journal batch.

procedure RenumberDocumentNo()

Remarks

An error will be raised if there is an active filter on the document number field. A commit is used during renumbering.

LookUpTrackingSummary

Opens the item tracking summary page to update the tracking information for an item journal line based on the specified tracking type.

procedure LookUpTrackingSummary(TrackingType: Enum "Item Tracking Type")

Parameters

Name Type Description
TrackingType Enum Microsoft.Inventory.Tracking."Item Tracking Type"

Item tracking type on which tracking information should be assigned.

GetDateForCalculations

Gets the date required for item journal line calculations.

procedure GetDateForCalculations(): Date

Returns

Type Description
Date

The date for calculations.

Events

OnAfterInitDefaultDimensionSources

Event triggered after initializing default dimension sources for the Item Journal Line record. Subscribing to this event allows developers to extend the standard behavior of initializing default dimesions for the item journal record.

[IntegrationEvent(False,False)]
local procedure OnAfterInitDefaultDimensionSources(var ItemJournalLine: Record "Item Journal Line", var DefaultDimSource: List of [Dictionary of [Integer, Code[20]]], FieldNo: Integer)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The Item Journal Line record.

DefaultDimSource List of [Dictionary of [Integer, Code[20]]]

The list of default dimension sources.

FieldNo Integer

The field number that triggered the validation.

OnBeforeCreateDim

Event triggerd before creating a dimension for an item journal line. Subscribing to this event allows developers to implement custom logic or override asigning default source dimensions to the item journal line.

[IntegrationEvent(False,False)]
local procedure OnBeforeCreateDim(var ItemJournalLine: Record "Item Journal Line", var IsHandled: Boolean, CurrFieldNo: Integer, var DefaultDimSource: List of [Dictionary of [Integer, Code[20]]], InheritFromDimSetID: Integer, InheritFromTableNo: Integer)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record to which dimensions are being assigned.

IsHandled Boolean

A boolean parameter that, if set to true, indicates that the default validation logic should be skipped.

CurrFieldNo Integer

The current field number being processed.

DefaultDimSource List of [Dictionary of [Integer, Code[20]]]

A list of dictionaries containing default dimension sources, with each dictionary mapping an integer (dimension type) to a dimension code.

InheritFromDimSetID Integer

The dimension set ID from which dimensions will be inherited, if applicable.

InheritFromTableNo Integer

The table number from which dimensions will be inherited, if applicable.

OnAfterSetupNewLine

Event triggered after the new item journal line has been set up. This event allows developers to add custom logic or make adjustments to the record after the new line has been configured.

[IntegrationEvent(False,False)]
local procedure OnAfterSetupNewLine(var ItemJournalLine: Record "Item Journal Line", var LastItemJournalLine: Record "Item Journal Line", ItemJournalTemplate: Record "Item Journal Template", ItemJnlBatch: Record "Item Journal Batch")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record that was set up.

LastItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

Provided item journal line record used as a source.

ItemJournalTemplate Table Microsoft.Inventory.Journal."Item Journal Template"

Item journal template record defining the template settings for tue current item journal record.

ItemJnlBatch Table Microsoft.Inventory.Journal."Item Journal Batch"

Item journal batch record containing batch-specific settings for tue current item journal record.

OnAfterSigned

Event triggered after calculating the signed value. This event allows developers to adjust or log the signed value after the main procedure logic has executed.

[IntegrationEvent(False,False)]
local procedure OnAfterSigned(ItemJournalLine: Record "Item Journal Line", Value: Decimal, var Result: Decimal)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record for which the signed value was calculated.

Value Decimal

The original value provided to the procedure.

Result Decimal

The resulting signed value calculated by the procedure. Developers can modify this value if needed within the event logic.

OnAfterCalcBaseQty

[IntegrationEvent(False,False)]
local procedure OnAfterCalcBaseQty(var ItemJournalLine: Record "Item Journal Line", xItemJournalLine: Record "Item Journal Line", FromFieldName: Text, var Result: Decimal)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
xItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
FromFieldName Text
Result Decimal

OnAfterCheckTrackingisEmpty

[IntegrationEvent(False,False)]
local procedure OnAfterCheckTrackingisEmpty(ItemJournalLine: Record "Item Journal Line")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

OnAfterCheckNewTrackingisEmpty

[IntegrationEvent(False,False)]
local procedure OnAfterCheckNewTrackingisEmpty(ItemJournalLine: Record "Item Journal Line")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

OnAfterCheckTrackingEqualItemLedgEntry

[IntegrationEvent(False,False)]
local procedure OnAfterCheckTrackingEqualItemLedgEntry(ItemJournalLine: Record "Item Journal Line", ItemLedgerEntry: Record "Item Ledger Entry")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
ItemLedgerEntry Table Microsoft.Inventory.Ledger."Item Ledger Entry"

OnAfterCheckTrackingEqualTrackingSpecification

[IntegrationEvent(False,False)]
local procedure OnAfterCheckTrackingEqualTrackingSpecification(ItemJournalLine: Record "Item Journal Line", TrackingSpecification: Record "Tracking Specification")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
TrackingSpecification Table Microsoft.Inventory.Tracking."Tracking Specification"

OnAfterClearTracking

[IntegrationEvent(False,False)]
local procedure OnAfterClearTracking(var ItemJournalLine: Record "Item Journal Line")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

OnAfterCopyItemJnlLineFromSalesHeader

Event triggered after copying data from the "Sales Header" to the current record. This event allows developers to implement custom logic or make adjustments to the current record after data has been copied from the "Sales Header."

[IntegrationEvent(False,False)]
local procedure OnAfterCopyItemJnlLineFromSalesHeader(var ItemJnlLine: Record "Item Journal Line", SalesHeader: Record "Sales Header")

Parameters

Name Type Description
ItemJnlLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record to which the data from the "Sales Header" has been copied.

SalesHeader Table Microsoft.Sales.Document."Sales Header"

Provided "Sales Header" record from which data was copied.

OnAfterCopyItemJnlLineFromSalesLine

Event triggered after copying data from the "Sales Line" to the current record. This event allows developers to implement custom logic or make adjustments to the current record after data has been copied from the "Sales Line."

[IntegrationEvent(False,False)]
local procedure OnAfterCopyItemJnlLineFromSalesLine(var ItemJnlLine: Record "Item Journal Line", SalesLine: Record "Sales Line")

Parameters

Name Type Description
ItemJnlLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current record to which the data from the "Sales Line" has been copied.

SalesLine Table Microsoft.Sales.Document."Sales Line"

Provided "Sales Line" record from which data was copied.

OnAfterCopyItemJnlLineFromPurchHeader

Event triggered after copying data from the "Purchase Header" to the current record. This event allows developers to implement custom logic or make adjustments to the current record after data has been copied from the "Purchase Header."

[IntegrationEvent(False,False)]
local procedure OnAfterCopyItemJnlLineFromPurchHeader(var ItemJnlLine: Record "Item Journal Line", PurchHeader: Record "Purchase Header")

Parameters

Name Type Description
ItemJnlLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current Item journal line record to which the data from the "Purchase Header" has been copied.

PurchHeader Table Microsoft.Purchases.Document."Purchase Header"

Provided "Purchase Header" record from which data was copied.

OnAfterCopyItemJnlLineFromPurchLine

Event triggered after copying data from the "Purchase Line" to the current record. This event allows developers to implement custom logic or make adjustments to the current record after data has been copied from the "Purchase Line."

[IntegrationEvent(False,False)]
local procedure OnAfterCopyItemJnlLineFromPurchLine(var ItemJnlLine: Record "Item Journal Line", PurchLine: Record "Purchase Line")

Parameters

Name Type Description
ItemJnlLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current record to which the data from the "Purchase Line" has been copied.

PurchLine Table Microsoft.Purchases.Document."Purchase Line"

Provided "Purchase Line" record from which data was copied.

OnAfterCopyItemJnlLineFromServHeader

Obsolete

This element will become obsolete from version 25.0. Replaced by event OnAfterCopyToItemJnlLine in table Service Header

[Obsolete(Replaced by event OnAfterCopyToItemJnlLine in table Service Header,25.0)]
[IntegrationEvent(False,False)]
local procedure OnAfterCopyItemJnlLineFromServHeader(var ItemJnlLine: Record "Item Journal Line", ServHeader: Record "Service Header")

Parameters

Name Type Description
ItemJnlLine Table Microsoft.Inventory.Journal."Item Journal Line"
ServHeader Table Microsoft.Service.Document."Service Header"

OnAfterCopyItemJnlLineFromServLine

Obsolete

This element will become obsolete from version 25.0. Replaced by event OnAfterCopyToItemJnlLine in table Service Line

[Obsolete(Replaced by event OnAfterCopyToItemJnlLine in table Service Line,25.0)]
[IntegrationEvent(False,False)]
local procedure OnAfterCopyItemJnlLineFromServLine(var ItemJnlLine: Record "Item Journal Line", ServLine: Record "Service Line")

Parameters

Name Type Description
ItemJnlLine Table Microsoft.Inventory.Journal."Item Journal Line"
ServLine Table Microsoft.Service.Document."Service Line"

OnAfterCopyItemJnlLineFromServShptHeader

Obsolete

This element will become obsolete from version 25.0. Replaced by event OnAfterCopyToItemJnlLine in table Service Shipment Header

[Obsolete(Replaced by event OnAfterCopyToItemJnlLine in table Service Shipment Header,25.0)]
[IntegrationEvent(False,False)]
local procedure OnAfterCopyItemJnlLineFromServShptHeader(var ItemJnlLine: Record "Item Journal Line", ServShptHeader: Record "Service Shipment Header")

Parameters

Name Type Description
ItemJnlLine Table Microsoft.Inventory.Journal."Item Journal Line"
ServShptHeader Table Microsoft.Service.History."Service Shipment Header"

OnAfterCopyItemJnlLineFromServShptLine

Obsolete

This element will become obsolete from version 25.0. Replaced by event OnAfterCopyToItemJnlLine in table Service Shipment Line

[Obsolete(Replaced by event OnAfterCopyToItemJnlLine in table Service Shipment Line,25.0)]
[IntegrationEvent(False,False)]
local procedure OnAfterCopyItemJnlLineFromServShptLine(var ItemJnlLine: Record "Item Journal Line", ServShptLine: Record "Service Shipment Line")

Parameters

Name Type Description
ItemJnlLine Table Microsoft.Inventory.Journal."Item Journal Line"
ServShptLine Table Microsoft.Service.History."Service Shipment Line"

OnAfterCopyItemJnlLineFromServShptLineUndo

Obsolete

This element will become obsolete from version 25.0. Replaced by event OnAfterCopyToItemJnlLineUndo in table Service Shipment Line

[Obsolete(Replaced by event OnAfterCopyToItemJnlLineUndo in table Service Shipment Line,25.0)]
[IntegrationEvent(False,False)]
local procedure OnAfterCopyItemJnlLineFromServShptLineUndo(var ItemJnlLine: Record "Item Journal Line", ServShptLine: Record "Service Shipment Line")

Parameters

Name Type Description
ItemJnlLine Table Microsoft.Inventory.Journal."Item Journal Line"
ServShptLine Table Microsoft.Service.History."Service Shipment Line"

OnAfterCopyItemJnlLineFromJobJnlLine

Event triggered after copying data from the "Job Journal Line" to the current record. This event allows developers to implement custom logic or make adjustments to the current record after data has been copied from the "Job Journal Line."

[IntegrationEvent(False,False)]
local procedure OnAfterCopyItemJnlLineFromJobJnlLine(var ItemJournalLine: Record "Item Journal Line", JobJournalLine: Record "Job Journal Line")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current record to which the data from the "Job Journal Line" has been copied.

JobJournalLine Table Microsoft.Projects.Project.Journal."Job Journal Line"

The current record to which the data from the "Job Journal Line" has been copied.

OnAfterCopyTrackingFromReservEntry

[IntegrationEvent(False,False)]
local procedure OnAfterCopyTrackingFromReservEntry(var ItemJournalLine: Record "Item Journal Line", ReservEntry: Record "Reservation Entry")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
ReservEntry Table Microsoft.Inventory.Tracking."Reservation Entry"

OnAfterCopyTrackingFromItemLedgEntry

[IntegrationEvent(False,False)]
local procedure OnAfterCopyTrackingFromItemLedgEntry(var ItemJournalLine: Record "Item Journal Line", ItemLedgEntry: Record "Item Ledger Entry")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
ItemLedgEntry Table Microsoft.Inventory.Ledger."Item Ledger Entry"

OnAfterCopyTrackingFromSpec

[IntegrationEvent(False,False)]
local procedure OnAfterCopyTrackingFromSpec(var ItemJournalLine: Record "Item Journal Line", TrackingSpecification: Record "Tracking Specification")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
TrackingSpecification Table Microsoft.Inventory.Tracking."Tracking Specification"

OnAfterCopyNewTrackingFromNewSpec

[IntegrationEvent(False,False)]
local procedure OnAfterCopyNewTrackingFromNewSpec(var ItemJournalLine: Record "Item Journal Line", TrackingSpecification: Record "Tracking Specification")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
TrackingSpecification Table Microsoft.Inventory.Tracking."Tracking Specification"

OnAfterCopyNewTrackingFromOldItemLedgerEntry

[IntegrationEvent(False,False)]
local procedure OnAfterCopyNewTrackingFromOldItemLedgerEntry(var ItemJournalLine: Record "Item Journal Line", ItemLedgerEntry: Record "Item Ledger Entry")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
ItemLedgerEntry Table Microsoft.Inventory.Ledger."Item Ledger Entry"

OnAfterDisplayErrorIfItemIsBlocked

[IntegrationEvent(False,False)]
local procedure OnAfterDisplayErrorIfItemIsBlocked(var Item: Record Item, var ItemJournalLine: Record "Item Journal Line")

Parameters

Name Type Description
Item Table Microsoft.Inventory.Item.Item
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

OnAfterDisplayErrorIfItemVariantIsBlocked

[IntegrationEvent(False,False)]
local procedure OnAfterDisplayErrorIfItemVariantIsBlocked(var ItemVariant: Record "Item Variant", var ItemJournalLine: Record "Item Journal Line")

Parameters

Name Type Description
ItemVariant Table Microsoft.Inventory.Item."Item Variant"
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

OnAfterGetItemChange

Event triggered after getting the global "Item" record based on the "Item No." field value. This event allows developers to apply additional logic or handle changes after the global "Item" record has been retrieved.

[IntegrationEvent(False,False)]
local procedure OnAfterGetItemChange(var Item: Record Item, var ItemJournalLine: Record "Item Journal Line")

Parameters

Name Type Description
Item Table Microsoft.Inventory.Item.Item

Global "Item" record that has been retrieved.

ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record whose "Item No." field was used to retrieve the item.

OnAfterGetItemVariantChange

Event triggered after getting the global "Item Variant" record and synchronizing it with the "Variant Code" and "Item No." fields. This event allows developers to apply additional logic or handle changes after the "Item Variant" record has been retrieved.

[IntegrationEvent(False,False)]
local procedure OnAfterGetItemVariantChange(var ItemVariant: Record "Item Variant", var ItemJournalLine: Record "Item Journal Line")

Parameters

Name Type Description
ItemVariant Table Microsoft.Inventory.Item."Item Variant"

Global "Item Variant" record that has been retrieved.

ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record whose "Variant Code" and "Item No." fields were used to retrieve the item variant.

OnAfterGetLineWithPrice

Event triggered after retrieving the line with price. This event allows developers to modify or enhance the behavior of the LineWithPrice interface after it has been set. Custom logic can be applied to tailor the behavior of the assigned interface.

[IntegrationEvent(True,False)]
local procedure OnAfterGetLineWithPrice(var LineWithPrice: Interface "Line With Price")

Parameters

Name Type Description
LineWithPrice Interface Microsoft.Pricing.PriceList."Line With Price"

The "Line With Price" interface that has been set to the "Item Journal Line - Price" codeunit. Developers can use this parameter to extend or modify its behavior.

OnAfterGetUnitAmount

Event triggered after calculating the "Unit Amount" for the current item journal line record. This event allows developers to add custom logic or make adjustments to the calculated "Unit Amount" value after the procedure has completed its logic.

[IntegrationEvent(False,False)]
local procedure OnAfterGetUnitAmount(var ItemJournalLine: Record "Item Journal Line", UnitCost: Decimal)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record for which the unit amount was calculated.

UnitCost Decimal

The calculated unit cost used in determining the unit amount. This value reflects the item's cost adjusted for its unit of measure and any applicable indirect costs.

OnAfterHasSameNewTracking

[IntegrationEvent(False,False)]
local procedure OnAfterHasSameNewTracking(ItemJournalLine: Record "Item Journal Line", var IsSameTracking: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
IsSameTracking Boolean

OnAfterOnValidateItemNoAssignByEntryType

[IntegrationEvent(False,False)]
local procedure OnAfterOnValidateItemNoAssignByEntryType(var ItemJournalLine: Record "Item Journal Line", var Item: Record Item)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
Item Table Microsoft.Inventory.Item.Item

OnAfterReadGLSetup

Event triggered after the "General Ledger Setup" has been read. This event allows developers to implement custom logic or make adjustments after the "General Ledger Setup" has been successfully loaded into memory.

[IntegrationEvent(False,False)]
local procedure OnAfterReadGLSetup(var GeneralLedgerSetup: Record "General Ledger Setup")

Parameters

Name Type Description
GeneralLedgerSetup Table Microsoft.Finance.GeneralLedger.Setup."General Ledger Setup"

OnAfterRecalculateUnitAmount

[IntegrationEvent(False,False)]
local procedure OnAfterRecalculateUnitAmount(var ItemJournalLine: Record "Item Journal Line", xItemJournalLine: Record "Item Journal Line", CurrentFieldNo: Integer)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
xItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
CurrentFieldNo Integer

OnAfterSetReservationEntry

Event triggered after setting the fields of a "Reservation Entry" record in the "SetReservationEntry" procedure. This event allows developers to implement custom logic or modify the "Reservation Entry" record after its fields have been populated using the provided data.

[IntegrationEvent(False,False)]
local procedure OnAfterSetReservationEntry(var ReservEntry: Record "Reservation Entry", ItemJournalLine: Record "Item Journal Line")

Parameters

Name Type Description
ReservEntry Table Microsoft.Inventory.Tracking."Reservation Entry"

The "Reservation Entry" record whose fields have been set.

ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

Current item journal line record used to populate the "Reservation Entry" record.

OnAfterSetReservationFilters

Event triggered after setting filters on a "Reservation Entry" record in the "SetReservationFilters" procedure. This event allows developers to implement custom filters or modify the "Reservation Entry" record after its filters have been set using the current record data.

[IntegrationEvent(False,False)]
local procedure OnAfterSetReservationFilters(var ReservEntry: Record "Reservation Entry", ItemJournalLine: Record "Item Journal Line")

Parameters

Name Type Description
ReservEntry Table Microsoft.Inventory.Tracking."Reservation Entry"

The "Reservation Entry" record with filters applied.

ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

Current item journal line record used to set the filters on the "Reservation Entry" record.

OnAfterTrackingExists

[IntegrationEvent(False,False)]
local procedure OnAfterTrackingExists(var ItemJournalLine: Record "Item Journal Line", var IsTrackingExist: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
IsTrackingExist Boolean

OnAfterUpdateAmount

Event triggered after updating the "Amount" field in the current item journal line record. This event allows developers to add custom logic after the "Amount" field has been updated. For example, additional calculations or validations can be performed at this stage

[IntegrationEvent(False,False)]
local procedure OnAfterUpdateAmount(var ItemJournalLine: Record "Item Journal Line")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The record containing the updated "Amount" field.

OnAfterValidateShortcutDimCode

Event triggered after validating the shortcut dimension code for the current item journal line record. This event allows developers to adjust or log the validated dimension code and its integration with the "Dimension Set ID".

[IntegrationEvent(False,False)]
local procedure OnAfterValidateShortcutDimCode(var ItemJournalLine: Record "Item Journal Line", xItemJournalLine: Record "Item Journal Line", FieldNumber: Integer, var ShortcutDimCode: Code[20])

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current current item journal line record for which the shortcut dimension code was validated.

xItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The previous state of the record before the validation process.

FieldNumber Integer

The field number of the shortcut dimension that was validated.

ShortcutDimCode Code[20]

The validated shortcut dimension code. Developers can use this parameter to review or further process the validated code.

OnBeforeCheckItemAvailable

Event triggered before performing the item availability check. This event allows developers to add custom logic or override the default behavior of the item availability check.

[IntegrationEvent(False,False)]
local procedure OnBeforeCheckItemAvailable(ItemJournalLine: Record "Item Journal Line", CalledByFieldNo: Integer, var IsHandled: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current "Item Journal Line" record being checked for item availability.

CalledByFieldNo Integer

The number of the field that triggered the check.

IsHandled Boolean

A boolean parameter that, if set to true, indicates that the default logic should be skipped.

OnBeforeCheckReservedQtyBase

Event triggered before checking the reserved quantity (base) during the valid.tion of quantity This event allows developers to override or enhance the logic for checking reserved quantities in base units.

[IntegrationEvent(False,False)]
local procedure OnBeforeCheckReservedQtyBase(var ItemJournalLine: Record "Item Journal Line", var Item: Record Item, var IsHandled: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current record being validated for reserved quantities.

Item Table Microsoft.Inventory.Item.Item

Provided global item record.

IsHandled Boolean

A boolean parameter that, if set to true, indicates that the default logic should be skipped.

OnBeforeDisplayErrorIfItemIsBlocked

[IntegrationEvent(False,False)]
local procedure OnBeforeDisplayErrorIfItemIsBlocked(var Item: Record Item, var ItemJournalLine: Record "Item Journal Line", var IsHandled: Boolean)

Parameters

Name Type Description
Item Table Microsoft.Inventory.Item.Item
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
IsHandled Boolean

OnBeforeDisplayErrorIfItemVariantIsBlocked

[IntegrationEvent(False,False)]
local procedure OnBeforeDisplayErrorIfItemVariantIsBlocked(var ItemVariant: Record "Item Variant", var ItemJournalLine: Record "Item Journal Line", var IsHandled: Boolean)

Parameters

Name Type Description
ItemVariant Table Microsoft.Inventory.Item."Item Variant"
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
IsHandled Boolean

OnBeforeFindUnitCost

Event triggered before calculating the unit cost in the "FindUnitCost" procedure. This event allows developers to implement custom logic for calculating the unit cost.

[IntegrationEvent(False,False)]
local procedure OnBeforeFindUnitCost(var ItemJournalLine: Record "Item Journal Line", var UnitCost: Decimal, var IsHandled: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record for which the unit cost is being calculated.

UnitCost Decimal

The calculated unit cost. This can be set by the subscriber to override the default calculation.

IsHandled Boolean

A boolean parameter that, if set to true, indicates that the default validation logic should be skipped.

OnBeforeGetUnitAmount

Event triggered before calculating the "Unit Amount". This event allows developers to add custom logic or override the default unit amount calculation.

[IntegrationEvent(False,False)]
local procedure OnBeforeGetUnitAmount(var ItemJournalLine: Record "Item Journal Line", CalledByFieldNo: Integer, var IsHandled: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current record for which the unit amount is being calculated.

CalledByFieldNo Integer

The field number that initiated the calculation.

IsHandled Boolean

A boolean parameter that, if set to true, indicates that the default calculation logic should be skipped.

OnBeforeLookupItemNo

Event triggered before executing the lookup logic for the "Item No." field in the "LookupItemNo" procedure. This event allows developers to implement custom logic or modify the behavior before the default lookup logic for the "Item No." field is executed.

[IntegrationEvent(False,False)]
local procedure OnBeforeLookupItemNo(var ItemJournalLine: Record "Item Journal Line", var IsHandled: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record for which the "Item No." lookup is being performed.

IsHandled Boolean

A boolean parameter that, if set to true, indicates that the default lookup logic should be skipped.

OnBeforeRetrieveCosts

Event triggered before retrieving and calculating costs. This event allows developers to implement custom logic or override the default cost retrieval process.

[IntegrationEvent(False,False)]
local procedure OnBeforeRetrieveCosts(var ItemJournalLine: Record "Item Journal Line", var UnitCost: Decimal, var IsHandled: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record for which costs are being retrieved.

UnitCost Decimal

The calculated unit cost for the record. Developers can modify this value in the event logic.

IsHandled Boolean

A boolean parameter that, if set to true, indicates that the default calculation logic should be skipped.

OnBeforeRevaluationPerEntryAllowed

[IntegrationEvent(False,False)]
local procedure OnBeforeRevaluationPerEntryAllowed(ItemJournalLine: Record "Item Journal Line", ItemNo: Code[20], var Result: Boolean, var IsHandled: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
ItemNo Code[20]
Result Boolean
IsHandled Boolean

OnBeforeSelectItemEntry

Event triggered before initializing the selection of an "Item Ledger Entry" in the "SelectItemEntry" procedure. This event allows developers to add custom logic or modify the behavior before the selection process begins. For example, additional filters or setup logic can be applied to the record or process.

[IntegrationEvent(False,False)]
local procedure OnBeforeSelectItemEntry(var ItemJournalLine: Record "Item Journal Line", xItemJournalLine: Record "Item Journal Line", CurrentFieldNo: Integer)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current record being processed in the "SelectItemEntry" procedure.

xItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The previous version of the record before modifications.

CurrentFieldNo Integer

The number of the field that has triggered the validation process.

OnBeforeSetNewBinCodeForSameLocationTransfer

Event triggered before setting the "New Bin Code" for same-location transfers. This event allows developers to implement custom logic or override the default behavior for setting the "New Bin Code".

[IntegrationEvent(False,False)]
local procedure OnBeforeSetNewBinCodeForSameLocationTransfer(var ItemJournalLine: Record "Item Journal Line", CurrentFieldNo: Integer, var IsHandled: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record where the "New Bin Code" is set.

CurrentFieldNo Integer

The field number currently being processed.

IsHandled Boolean

A boolean parameter that, if set to true, indicates that the default procedure logic should be skipped.

OnBeforeValidateAppliesToEntry

Event triggered before validating the "Applies-to Entry" field in the current item journal line record. This event allows developers to add custom logic or override the default behavior before the "Applies-to Entry" field has been validated.

[IntegrationEvent(False,False)]
local procedure OnBeforeValidateAppliesToEntry(var ItemJournalLine: Record "Item Journal Line", CurrentFieldNo: Integer, var IsHandled: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record being processed.

CurrentFieldNo Integer

The number of the field that has triggered the validation process.

IsHandled Boolean

A boolean parameter that, if set to true, indicates that the default validation logic should be skipped.

OnBeforeValidateAmount

Event triggered before validating the Amount field. This event allows developers to add custom logic or skip the default processing.

[IntegrationEvent(False,False)]
local procedure OnBeforeValidateAmount(var ItemJournalLine: Record "Item Journal Line", var IsHandled: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record being processed.

IsHandled Boolean

A boolean parameter that, if set to true, indicates that the default validation logic should be skipped.

Remarks

For instance, it can be used to change how 'Unit Amount' will be calculated.

OnBeforeValidateItemDirectCostUnitAmount

Event triggered before validating the direct cost "Unit Amount" for the current item journal line record. This event allows developers to implement custom logic or override the default validation process.

[IntegrationEvent(False,False)]
local procedure OnBeforeValidateItemDirectCostUnitAmount(var ItemJournalLine: Record "Item Journal Line", var IsHandled: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record for which the direct cost "Unit Amount" is being validated.

IsHandled Boolean

A boolean parameter that, if set to true, indicates that the default validation logic should be skipped.

OnBeforeValidateUnitOfMeasureCode

Event triggered before validating the "Unit of Measure Code" field in the current item journal line record. This event allows developers to add custom logic or override the default behavior before the "Unit of Measure Code" field has been validated.

[IntegrationEvent(False,False)]
local procedure OnBeforeValidateUnitOfMeasureCode(var ItemJournalLine: Record "Item Journal Line", var IsHandled: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record being processed.

IsHandled Boolean

A boolean parameter that, if set to true, indicates that the default validation logic should be skipped.

OnBeforeValidateQuantityBase

Event triggered before validating the "Quantity (Base)" field in the current item journal line record. This event allows developers to add custom logic or override the default behavior before the "Quantity (Base)" field has been validated.

[IntegrationEvent(False,False)]
local procedure OnBeforeValidateQuantityBase(var ItemJournalLine: Record "Item Journal Line", xItemJournalLine: Record "Item Journal Line", FieldNo: Integer, var IsHandled: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record being processed.

xItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The previous version of the item journal line record before the change.

FieldNo Integer

The number of the field that has triggered the validation process.

IsHandled Boolean

A boolean parameter that, if set to true, indicates that the default validation logic should be skipped.

OnBeforeVerifyReservedQty

Event triggered before validating the "Output Quantity (Base)" field in the current item journal line record. This event allows developers to add custom logic or override the default behavior before the "Output Quantity (Base)" field has been validated.

[IntegrationEvent(False,False)]
local procedure OnBeforeVerifyReservedQty(var ItemJournalLine: Record "Item Journal Line", xItemJournalLine: Record "Item Journal Line", CalledByFieldNo: Integer)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record being processed.

xItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The previous version of the item journal line record before the change.

CalledByFieldNo Integer

The current item journal line record being processed.

OnCheckItemJournalLinePostRestrictions

[IntegrationEvent(True,False)]
local procedure OnCheckItemJournalLinePostRestrictions()

OnSetUpNewLineOnAfterFindItemJnlLine

Event triggered after finding the first item journal line in the current batch. This event allows developers to add custom logic or modify the current item journal line record after the first line is found.

[IntegrationEvent(False,False)]
local procedure OnSetUpNewLineOnAfterFindItemJnlLine(var ItemJournalLine: Record "Item Journal Line", var FirstItemJournalLine: Record "Item Journal Line", var LastItemJnlLine: Record "Item Journal Line")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record being set up.

FirstItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

Item journal line record representing the first line found in the current batch.

LastItemJnlLine Table Microsoft.Inventory.Journal."Item Journal Line"

Provided item journal line record used as a reference for setup.

OnSelectItemEntryOnBeforeOpenPage

Event triggered before opening the "Item Ledger Entries" page in the "SelectItemEntry" procedure. This event allows developers to customize or apply additional logic to the "Item Ledger Entry" record before it is displayed on the "Item Ledger Entries" page.

[IntegrationEvent(False,False)]
local procedure OnSelectItemEntryOnBeforeOpenPage(var ItemLedgerEntry: Record "Item Ledger Entry", ItemJournalLine: Record "Item Journal Line", CurrentFieldNo: Integer)

Parameters

Name Type Description
ItemLedgerEntry Table Microsoft.Inventory.Ledger."Item Ledger Entry"

The "Item Ledger Entry" record being prepared for display.

ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current record being processed in the "SelectItemEntry" procedure.

CurrentFieldNo Integer

The field number currently being processed, which determines the context of the selection.

OnValidateCapUnitOfMeasureCodeOnCaseOrderTypeElse

[IntegrationEvent(False,False)]
local procedure OnValidateCapUnitOfMeasureCodeOnCaseOrderTypeElse(var ItemJournalLine: Record "Item Journal Line")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

OnValidateCapUnitOfMeasureCodeOnSetQtyPerCapUnitOfMeasure

[IntegrationEvent(False,False)]
local procedure OnValidateCapUnitOfMeasureCodeOnSetQtyPerCapUnitOfMeasure(var ItemJournalLine: Record "Item Journal Line")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

OnLookUpTrackingSummaryOnCaseOrderTypeElse

[IntegrationEvent(False,False)]
local procedure OnLookUpTrackingSummaryOnCaseOrderTypeElse(var ItemJournalLine: Record "Item Journal Line", TempTrackingSpecification: Record "Tracking Specification" temporary, TrackingType: Enum "Item Tracking Type")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
TempTrackingSpecification Table Microsoft.Inventory.Tracking."Tracking Specification"
TrackingType Enum Microsoft.Inventory.Tracking."Item Tracking Type"

OnValidateAppliesfromEntryOnBeforeCheckTrackingExistsError

Event triggered before checking if tracking exists for selected item ledger entry during the validation of the "Applies-from Entry" field. In case tracking exists error will be thrown. This event allows developers to add custom logic or override the default behavior when verifying if tracking exists for the "Applies-from Entry".

[IntegrationEvent(False,False)]
local procedure OnValidateAppliesfromEntryOnBeforeCheckTrackingExistsError(ItemJournalLine: Record "Item Journal Line", ItemLedgEntry: Record "Item Ledger Entry", var IsHandled: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record being processed.

ItemLedgEntry Table Microsoft.Inventory.Ledger."Item Ledger Entry"

The item ledger entry record associated with the "Applies-from Entry" field.

IsHandled Boolean

A boolean parameter that, if set to true, indicates that the default tracking existence check should be skipped.

OnValidateItemNoOnAfterGetItem

Event triggered after retrieving the item during validation of the "Item No." field. This event allows developers to execute custom logic after the item has been retrieved during validation.

[IntegrationEvent(False,False)]
local procedure OnValidateItemNoOnAfterGetItem(var ItemJournalLine: Record "Item Journal Line", Item: Record Item)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record being processed.

Item Table Microsoft.Inventory.Item.Item

The retrived "Item" record.

OnValidateAppliestoEntryOnAfterCalcShouldCheckItemLedgEntryFieldsForOutput

Event triggered after determining whether the system should check source of the item ledger entry. If the item journal line "Entry Type" is "Output", then the system should check if item ledger entry must be created from production order. This event allows developers to execute custom logic after the default process of source item ledger entry checking has been executed.

[IntegrationEvent(False,False)]
local procedure OnValidateAppliestoEntryOnAfterCalcShouldCheckItemLedgEntryFieldsForOutput(var ItemJournalLine: Record "Item Journal Line", var ItemLedgerEntry: Record "Item Ledger Entry", var ShouldCheckItemLedgEntryFieldsForOutput: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record being processed.

ItemLedgerEntry Table Microsoft.Inventory.Ledger."Item Ledger Entry"

The current item journal line record being processed.

ShouldCheckItemLedgEntryFieldsForOutput Boolean

A boolean parameter indicating whether additional checks on the item ledger entry fields should be performed.

OnValidateOrderNoOnAfterProcessOrderTypeAssembly

Obsolete

This element will become obsolete from version 26.0. Replaced by event OnValidateOrderNoOnAfterCopyFromAssemblyHeader in codeunit Asm. Item Journal Mgt.

[Obsolete(Replaced by event OnValidateOrderNoOnAfterCopyFromAssemblyHeader in codeunit Asm. Item Journal Mgt.,26.0)]
[IntegrationEvent(False,False)]
local procedure OnValidateOrderNoOnAfterProcessOrderTypeAssembly(var ItemJournalLine: Record "Item Journal Line", ProductionOrder: Record "Production Order", AssemblyHeader: Record "Assembly Header")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
ProductionOrder Table Microsoft.Manufacturing.Document."Production Order"
AssemblyHeader Table Microsoft.Assembly.Document."Assembly Header"

OnValidateOrderNoOnCaseOrderTypeElse

Event triggered when the "Order Type" is recognized as an unhandled case during the validation of the "Order No." field. This event allows developers to extend the logic for unhandled "Order Type" cases during the validation of the "Order No." field.

[IntegrationEvent(False,False)]
local procedure OnValidateOrderNoOnCaseOrderTypeElse(var ItemJournalLine: Record "Item Journal Line", var xItemJournalLine: Record "Item Journal Line")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record being processed.

xItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record being processed.

OnValidateOrderLineNoOnCaseOrderTypeElse

Event triggered after setting filters on the production order line record during the validation of the "Order Line No." field. This event allows developers to add custom logic or modify the behavior after filters are applied to the production order line record.

[IntegrationEvent(False,False)]
local procedure OnValidateOrderLineNoOnCaseOrderTypeElse(var ItemJournalLine: Record "Item Journal Line", var xItemJournalLine: Record "Item Journal Line")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record being processed.

xItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record being processed.

Remarks

It can be used to reset or add additional filters to the production order line.

OnValidateQuantityOnBeforeGetUnitAmount

Event triggered before calculating unit amount during the validation of the "Quantity" field. This event allows developers to add custom logic or perform additional actions before the unit amount has been calculated.

[IntegrationEvent(False,False)]
local procedure OnValidateQuantityOnBeforeGetUnitAmount(var ItemJournalLine: Record "Item Journal Line", xItemJournalLine: Record "Item Journal Line", CallingFieldNo: Integer)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record that is being processed.

xItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The previous version of the item journal line record before the change.

CallingFieldNo Integer

The current item journal line record that is being processed.

OnValidateAppliesToEntryOnAferCalcShowTrackingExistsError

Event triggered after calculating whether to show an error for existing item tracking on the "Applies-to Entry" field. This event allows developers to modify the logic or state of the "ShowTrackingExistsError" parameter.

[IntegrationEvent(False,False)]
local procedure OnValidateAppliesToEntryOnAferCalcShowTrackingExistsError(var ItemJournalLine: Record "Item Journal Line", xItemJournalLine: Record "Item Journal Line", var ShowTrackingExistsError: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record being processed.

xItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The previous version of the item journal line record before the change.

ShowTrackingExistsError Boolean

A boolean parameter indicating whether an error for existing item tracking should be displayed.

OnBeforeTestItemFields

[IntegrationEvent(False,False)]
local procedure OnBeforeTestItemFields(var ItemJournalLine: Record "Item Journal Line", ItemNo: Code[20], VariantCode: Code[10], LocationCode: Code[10], var IsHandled: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
ItemNo Code[20]
VariantCode Code[10]
LocationCode Code[10]
IsHandled Boolean

OnBeforeValidateShortcutDimCode

Event triggered before validating the shortcut dimension code to the current item journal line record. This event allows developers to implement custom logic or modify the dimension code before the validation logic is executed.

[IntegrationEvent(False,False)]
local procedure OnBeforeValidateShortcutDimCode(var ItemJournalLine: Record "Item Journal Line", xItemJournalLine: Record "Item Journal Line", FieldNumber: Integer, var ShortcutDimCode: Code[20])

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record for which the shortcut dimension code is being validated.

xItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The previous state of the record before the validation process.

FieldNumber Integer

The field number of the shortcut dimension being validated.

ShortcutDimCode Code[20]

The shortcut dimension code to be validated. Developers can modify this parameter within the event logic.

OnValidateUnitOfMeasureCodeOnBeforeCalcUnitCost

Event triggered before calculating the unit cost during the validation of the "Unit of Measure Code" field. This event allows developers to modify or override the default calculation logic for the unit cost.

[IntegrationEvent(False,False)]
local procedure OnValidateUnitOfMeasureCodeOnBeforeCalcUnitCost(var ItemJournalLine: Record "Item Journal Line", var UnitCost: Decimal, var IsHandled: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record being processed.

UnitCost Decimal

The unit cost value to be calculated. Developers can modify this value within the event.

IsHandled Boolean

A boolean parameter that, if set to true, indicates that the default unit cost calculation should be skipped.

OnValidateUnitOfMeasureCodeOnBeforeWhseValidateSourceLine

Event triggered before calling validation of warehouse source line during the validation of the "Unit of Measure Code" field. This event allows developers to implement custom logic or make modifications before warehouse validation has been performed for the source line.

[IntegrationEvent(False,False)]
local procedure OnValidateUnitOfMeasureCodeOnBeforeWhseValidateSourceLine(var ItemJournalLine: Record "Item Journal Line", xItemJournalLine: Record "Item Journal Line")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current record representing the item journal line being processed.

xItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The previous version of the item journal line record before the change.

OnValidateUnitOfMeasureCodeOnBeforeValidateQuantity

[IntegrationEvent(False,False)]
local procedure OnValidateUnitOfMeasureCodeOnBeforeValidateQuantity(var ItemJournalLine: Record "Item Journal Line", var IsHandled: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
IsHandled Boolean

OnBeforeUpdateAmount

Event triggered before updating the "Amount" field incurrent item journal line. This event allows developers to add custom logic or override the standard "Amount" calculation logic.

[IntegrationEvent(False,False)]
local procedure OnBeforeUpdateAmount(var ItemJournalLine: Record "Item Journal Line", var IsHandled: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record being processed.

IsHandled Boolean

A boolean parameter that, if set to true, indicates that the default logic should be skipped.

OnRetrieveCostsOnAfterSetUnitCost

Event triggered after setting the unit cost for the current record. This event allows developers to adjust or log the unit cost after it has been calculated.

[IntegrationEvent(False,False)]
local procedure OnRetrieveCostsOnAfterSetUnitCost(var ItemJournalLine: Record "Item Journal Line", var UnitCost: Decimal, Item: Record Item)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current record for which costs were retrieved.

UnitCost Decimal

The calculated unit cost for the record after the default logic has been executed. Developers can adjust this value further if needed.

Item Table Microsoft.Inventory.Item.Item

The "Item" record associated with the cost calculation.

OnValidateItemNoOnBeforeValidateUnitOfmeasureCode

Event triggered before validating the unit of measure code for the "Item No." field. This event allows developers to execute custom logic before the unit of measure code validation.

[IntegrationEvent(False,False)]
local procedure OnValidateItemNoOnBeforeValidateUnitOfmeasureCode(var ItemJournalLine: Record "Item Journal Line", var Item: Record Item, CurrFieldNo: Integer, xItemJournalLine: Record "Item Journal Line")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record.

Item Table Microsoft.Inventory.Item.Item

The "Item" record being validated.

CurrFieldNo Integer

The number of field that triggered the validation.

xItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The previous state of the item journal line record.

OnValidateItemNoOnBeforeSetDescription

Event triggered before setting the description on item journal line from the retrived item record. This event allows developers to modify the record or item before the description has been set.

[IntegrationEvent(False,False)]
local procedure OnValidateItemNoOnBeforeSetDescription(var ItemJournalLine: Record "Item Journal Line", Item: Record Item)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record.

Item Table Microsoft.Inventory.Item.Item

The related item record retrieved using the "Item No." field.

OnValidateItemNoOnAfterCalcUnitCost

Event triggered after calculating the unit cost during validation of the "Item No." field. This event allows developers to execute custom logic after unit cost calculation has been completed.

[IntegrationEvent(False,False)]
local procedure OnValidateItemNoOnAfterCalcUnitCost(var ItemJournalLine: Record "Item Journal Line", Item: Record Item)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record.

Item Table Microsoft.Inventory.Item.Item

The related item record retrieved using the "Item No." field.

OnValidateItemNoOnAfterCalcUnitAmount

Obsolete

This element will become obsolete from version 26.0. Replaced by event OnValidateItemNoOnSetCostAndPrice

[Obsolete(Replaced by event OnValidateItemNoOnSetCostAndPrice,26.0)]
[IntegrationEvent(False,False)]
local procedure OnValidateItemNoOnAfterCalcUnitAmount(var ItemJournalLine: Record "Item Journal Line", WorkCenter: Record "Work Center", MachineCenter: Record "Machine Center")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
WorkCenter Table Microsoft.Manufacturing.WorkCenter."Work Center"
MachineCenter Table Microsoft.Manufacturing.MachineCenter."Machine Center"

OnValidateItemNoOnSetCostAndPrice

[IntegrationEvent(False,False)]
local procedure OnValidateItemNoOnSetCostAndPrice(var ItemJournalLine: Record "Item Journal Line", UnitCost: Decimal)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
UnitCost Decimal

OnValidateItemNoOnAfterCreateDimInitial

Event triggered after creating default dimensions for the current record if field "Item No." is empty. This event allows developers to add custom dimensions after default ones have been created.

[IntegrationEvent(False,False)]
local procedure OnValidateItemNoOnAfterCreateDimInitial(var ItemJournalLine: Record "Item Journal Line")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record.

OnBeforeCopyDim

[IntegrationEvent(False,False)]
local procedure OnBeforeCopyDim(var ItemJournalLine: Record "Item Journal Line", DimenionSetID: Integer, var IsHandled: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
DimenionSetID Integer
IsHandled Boolean

OnBeforeValidateLocationCode

Event triggered before validating the "Location Code" field in the item journal line. This event allows developers to add custom logic or override the default behavior before the "Location Code" field has been validated.

[IntegrationEvent(False,False)]
local procedure OnBeforeValidateLocationCode(var ItemJournalLine: Record "Item Journal Line", xItemJournalLine: Record "Item Journal Line", var IsHandled: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record being processed.

xItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The previous version of the item journal line record before the change.

IsHandled Boolean

A boolean parameter that, in case true, indicates that the default validation logic should be skipped.

OnAfterIsDefaultBin

[IntegrationEvent(False,False)]
local procedure OnAfterIsDefaultBin(Location: Record Location, var Result: Boolean)

Parameters

Name Type Description
Location Table Microsoft.Inventory.Location.Location
Result Boolean

OnAfterGetLocation

Event triggered after retrieving or clearing a location record in the "GetLocation" procedure. This event allows developers to perform additional actions after the location record has been retrieved based on the provided location code.

[IntegrationEvent(False,False)]
local procedure OnAfterGetLocation(var Location: Record Location, LocationCode: Code[10])

Parameters

Name Type Description
Location Table Microsoft.Inventory.Location.Location

The "Location" record that has been retrieved or cleared.

LocationCode Code[10]

Provided location code used to retrieve the "Location" record.

OnAfterCheckTrackingIfRequired

[IntegrationEvent(False,False)]
local procedure OnAfterCheckTrackingIfRequired(ItemJournalLine: Record "Item Journal Line", ItemTrackingSetup: Record "Item Tracking Setup" temporary)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
ItemTrackingSetup Table Microsoft.Inventory.Tracking."Item Tracking Setup"

OnAfterCheckNewTrackingIfRequired

[IntegrationEvent(False,False)]
local procedure OnAfterCheckNewTrackingIfRequired(ItemJournalLine: Record "Item Journal Line", ItemTrackingSetup: Record "Item Tracking Setup" temporary)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
ItemTrackingSetup Table Microsoft.Inventory.Tracking."Item Tracking Setup"

OnAfterCheckTrackingIfrequiredNotBlank

[IntegrationEvent(False,False)]
local procedure OnAfterCheckTrackingIfrequiredNotBlank(ItemJournalLine: Record "Item Journal Line", ItemTrackingSetup: Record "Item Tracking Setup" temporary)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
ItemTrackingSetup Table Microsoft.Inventory.Tracking."Item Tracking Setup"

OnAfterInitRevalJnlLine

Event triggered after initializing the revaluation journal line. This event allows developers to adjust or log the initialized revaluation journal line after the default logic has been executed.

[IntegrationEvent(False,False)]
local procedure OnAfterInitRevalJnlLine(var ItemJournalLine: Record "Item Journal Line", ItemLedgEntry2: Record "Item Ledger Entry")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record representing the revaluation journal line that was initialized.

ItemLedgEntry2 Table Microsoft.Inventory.Ledger."Item Ledger Entry"

The "Item Ledger Entry" record used as the source for initialization.

OnAfterSetTrackingFilterFromItemLedgerEntry

[IntegrationEvent(False,False)]
local procedure OnAfterSetTrackingFilterFromItemLedgerEntry(var ItemJournalLine: Record "Item Journal Line", ItemLedgerEntry: Record "Item Ledger Entry")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
ItemLedgerEntry Table Microsoft.Inventory.Ledger."Item Ledger Entry"

OnRecalculateUnitAmountOnAfterCalcQtyPerUnitOfMeasure

[IntegrationEvent(False,False)]
local procedure OnRecalculateUnitAmountOnAfterCalcQtyPerUnitOfMeasure(var ItemJournalLine: Record "Item Journal Line", xItemJournalLine: Record "Item Journal Line")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
xItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

OnBinCodeOnCheckProdOrderCompBinCodeCheckNeeded

Event triggered to determine if a bin code check is needed for the production order component during the validation of the "Bin Code" field. This event allows developers to add custom logic or override the default behavior for checking the production order component's bin code.

[IntegrationEvent(False,False)]
local procedure OnBinCodeOnCheckProdOrderCompBinCodeCheckNeeded(var ItemJournalLine: Record "Item Journal Line", var IsHandled: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current record representing the item journal line being processed.

IsHandled Boolean

A boolean parameter that, if set to true, indicates that the default bin code check for the production order component should be skipped.

OnAfterShowDimensions

[IntegrationEvent(False,False)]
local procedure OnAfterShowDimensions(var ItemJournalLine: Record "Item Journal Line", var xItemJournalLine: Record "Item Journal Line")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
xItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

OnValidateItemNoOnBeforeAssignIndirectCostPct

Event triggered before assigning indirect cost percentage and overhead rate during validation of the "Item No." field. This event allows developers to modify these fields or execute additional logic before the values have been assigned.

[IntegrationEvent(False,False)]
local procedure OnValidateItemNoOnBeforeAssignIndirectCostPct(var ItemJournalLine: Record "Item Journal Line", Item: Record Item)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record being processed.

Item Table Microsoft.Inventory.Item.Item

The related item record retrieved using the "Item No." field.

OnSetUpNewLineOnBeforeSetDefaultPriceCalculationMethod

Event triggered before setting the default price calculation method. This event allows developers to override or extend the default behavior for setting the price calculation method in the item journal line.

[IntegrationEvent(False,False)]
local procedure OnSetUpNewLineOnBeforeSetDefaultPriceCalculationMethod(var ItemJournalLine: Record "Item Journal Line", ItemJnlBatch: Record "Item Journal Batch", var DimMgt: Codeunit DimensionManagement)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record being procesed.

ItemJnlBatch Table Microsoft.Inventory.Journal."Item Journal Batch"

The item journal batch record containing batch-specific settings for tue current item journal record.

DimMgt Codeunit Microsoft.Finance.Dimension.DimensionManagement

The dimension management codeunit used for handling dimensions.

OnBeforeSkipRenumberDocumentNo

[IntegrationEvent(True,False)]
local procedure OnBeforeSkipRenumberDocumentNo(ItemJournalLine: Record "Item Journal Line", var Result: Boolean, var IsHandled: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
Result Boolean
IsHandled Boolean

OnBeforeRenumberDocNoOnLines

[IntegrationEvent(False,False)]
local procedure OnBeforeRenumberDocNoOnLines(var DocNo: Code[20], var ItemJnlLine2: Record "Item Journal Line", var IsHandled: Boolean)

Parameters

Name Type Description
DocNo Code[20]
ItemJnlLine2 Table Microsoft.Inventory.Journal."Item Journal Line"
IsHandled Boolean

OnAfterRenumberDocNoOnLines

[IntegrationEvent(False,False)]
local procedure OnAfterRenumberDocNoOnLines(var DocNo: Code[20], var ItemJnlLine2: Record "Item Journal Line")

Parameters

Name Type Description
DocNo Code[20]
ItemJnlLine2 Table Microsoft.Inventory.Journal."Item Journal Line"

OnBinCodeOnBeforeTestBinMandatory

Event triggered before testing the "Bin Mandatory" field on a selected Location of the current item journal line during the validation of the "Bin Code" field. This event allows developers to add custom logic or override the default behavior when testing the "Bin Mandatory" field for the selected Location.

[IntegrationEvent(False,False)]
local procedure OnBinCodeOnBeforeTestBinMandatory(var ItemJournalLine: Record "Item Journal Line", var IsHandled: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record being processed.

IsHandled Boolean

A boolean parameter that, if set to true, indicates that the default testing logic of the "Bin Mandatory" field should be skipped.

OnBeforeCopyItemJnlLineFromServLine

Obsolete

This element will become obsolete from version 25.0. Replaced by event OnBeforeCopyToItemJnlLine in table Service Line

[Obsolete(Replaced by event OnBeforeCopyToItemJnlLine in table Service Line,25.0)]
[IntegrationEvent(False,False)]
local procedure OnBeforeCopyItemJnlLineFromServLine(var ItemJournalLine: Record "Item Journal Line", ServiceLine: Record "Service Line", var IsHandled: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
ServiceLine Table Microsoft.Service.Document."Service Line"
IsHandled Boolean

OnBeforeCheckItemTracking

[IntegrationEvent(False,False)]
local procedure OnBeforeCheckItemTracking(var ItemJournalLine: Record "Item Journal Line", var IsHandled: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
IsHandled Boolean

OnAfterSelectItemEntry

Event triggered after the selection process for an item ledger entry is completed. This event allows developers to add custom logic or postprocessing after an entry has been selected.

[IntegrationEvent(False,False)]
local procedure OnAfterSelectItemEntry(var ItemJournalLine: Record "Item Journal Line")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The updated "Item Journal Line" record after the selection process.

OnBeforeInitRevalJnlLine

Event triggered before initializing the revaluation journal line. This event allows developers to implement custom logic or override the default initialization process.

[IntegrationEvent(False,False)]
local procedure OnBeforeInitRevalJnlLine(var ItemJournalLine: Record "Item Journal Line", ItemLedgEntry2: Record "Item Ledger Entry", var IsHandled: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record representing the revaluation journal line being initialized.

ItemLedgEntry2 Table Microsoft.Inventory.Ledger."Item Ledger Entry"

The "Item Ledger Entry" record used as the source for initialization.

IsHandled Boolean

A boolean parameter that, if set to true, indicates that the default validation logic should be skipped.

OnAfterLookUpTrackingSummary

[IntegrationEvent(False,False)]
local procedure OnAfterLookUpTrackingSummary(var ItemJournalLine: Record "Item Journal Line", TempTrackingSpecification: Record "Tracking Specification" temporary, TrackingType: Enum "Item Tracking Type")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
TempTrackingSpecification Table Microsoft.Inventory.Tracking."Tracking Specification"
TrackingType Enum Microsoft.Inventory.Tracking."Item Tracking Type"

OnAfterInitTableValuePair

[IntegrationEvent(False,False)]
local procedure OnAfterInitTableValuePair(var ItemJournalLine: Record "Item Journal Line", var TableValuePair: Dictionary of [Integer, Code[20]], FieldNo: Integer)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
TableValuePair Dictionary of [Integer, Code[20]]
FieldNo Integer

OnBeforeSigned

Event triggered before calculating the signed value. This event allows developers to implement custom logic for determining the signed value.

[IntegrationEvent(False,False)]
local procedure OnBeforeSigned(ItemJournalLine: Record "Item Journal Line", var Value: Decimal, var Result: Decimal, var IsHandled: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record for which the signed value is being calculated.

Value Decimal

The original value provided to the procedure.

Result Decimal

The resulting signed value. Developers can set this parameter to the desired value within the event logic.

IsHandled Boolean

A boolean parameter that, if set to true, indicates that the default validation logic should be skipped.

OnBeforeValidateTypeWithItemNo

[IntegrationEvent(False,False)]
local procedure OnBeforeValidateTypeWithItemNo(var ItemJournalLine: Record "Item Journal Line", Item: Record Item, var IsHandled: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
Item Table Microsoft.Inventory.Item.Item
IsHandled Boolean

OnCreateDimOnBeforeUpdateGlobalDimFromDimSetID

Event triggered before updating global dimensions from the calculated "Dimension Set ID". This event allows developers to customize the update process for global dimensions after the "Dimension Set ID" is calculated.

[IntegrationEvent(False,False)]
local procedure OnCreateDimOnBeforeUpdateGlobalDimFromDimSetID(var ItemJournalLine: Record "Item Journal Line", xItemJournalLine: Record "Item Journal Line", CurrentFieldNo: Integer, OldDimSetID: Integer, DefaultDimSource: List of [Dictionary of [Integer, Code[20]]], InheritFromDimSetID: Integer, InheritFromTableNo: Integer)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record being updated with dimensions.

xItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The record before the current modifications were made.

CurrentFieldNo Integer

The field number currently being processed, providing context for dimension creation.

OldDimSetID Integer

The previous "Dimension Set ID" value before it was updated.

DefaultDimSource List of [Dictionary of [Integer, Code[20]]]

A list of dictionaries containing default dimension sources, with each dictionary mapping an integer (dimension type) to a dimension code.

InheritFromDimSetID Integer

The dimension set ID from which dimensions were inherited, if applicable.

InheritFromTableNo Integer

The table number from which dimensions were inherited, if applicable.

OnBeforeCheckSerialNoQty

[IntegrationEvent(False,False)]
local procedure OnBeforeCheckSerialNoQty(var ItemJournalLine: Record "Item Journal Line", var IsHandled: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
IsHandled Boolean

OnAfterSetReservEntrySourceFilters

Event triggered after setting source filters on a "Reservation Entry" record in the "SetReservEntrySourceFilters" procedure. This event allows developers to implement custom filters or modify the "Reservation Entry" record after its source filters have been set based on the provided source key and context.

[IntegrationEvent(False,False)]
local procedure OnAfterSetReservEntrySourceFilters(var ReservationEntry: Record "Reservation Entry", SourceKey: Boolean)

Parameters

Name Type Description
ReservationEntry Table Microsoft.Inventory.Tracking."Reservation Entry"

The "Reservation Entry" record with source filters applied.

SourceKey Boolean

A boolean parameter indicating whether the source key is included in the filters.

OnAfterEmptyLine

Event triggered after evaluating whether a current line is considered empty based on values of Quantity, 'Item No.' and 'Value Entry Type'. This event allows developers to add custom logic or modify the result of the empty line evaluation. For example, additional conditions can be checked or the result can be overridden based on specific business requirements.

[IntegrationEvent(False,False)]
local procedure OnAfterEmptyLine(var ItemJournalLine: Record "Item Journal Line", var Result: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The record being evaluated to determine if it qualifies as an empty line.

Result Boolean

A boolean value indicating whether the line is considered empty.

OnBeforeValidateNewLocationCode

Event triggered before validating the "New Location Code" field in the item journal line. This event allows developers to add custom logic or override the default behavior before the "New Location Code" field has been validated.

[IntegrationEvent(False,False)]
local procedure OnBeforeValidateNewLocationCode(var ItemJournalLine: Record "Item Journal Line", xItemJournalLine: Record "Item Journal Line", var IsHandled: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The current item journal line record being processed.

xItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

The previous version of the item journal line record before the change.

IsHandled Boolean

A boolean parameter that, if set to true, indicates that the default validation logic should be skipped.

Remarks

Developer can overide the rule that field 'Entry Type' must be 'Transfer' in order to validate new value.

OnValidateEntryTypeOnUpdateByEntryType

[IntegrationEvent(False,False)]
local procedure OnValidateEntryTypeOnUpdateByEntryType(var ItemJournalLine: Record "Item Journal Line")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

OnValidateUnitAmountOnUpdateByEntryType

[IntegrationEvent(False,False)]
local procedure OnValidateUnitAmountOnUpdateByEntryType(var ItemJournalLine: Record "Item Journal Line", CurrentFieldNo: Integer)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
CurrentFieldNo Integer

OnValidateUnitCostOnUpdateByEntryType

[IntegrationEvent(False,False)]
local procedure OnValidateUnitCostOnUpdateByEntryType(var ItemJournalLine: Record "Item Journal Line", CurrentFieldNo: Integer)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
CurrentFieldNo Integer

OnAfterSetDefaultPriceCalculationMethod

[IntegrationEvent(False,False)]
local procedure OnAfterSetDefaultPriceCalculationMethod(var ItemJournalLine: Record "Item Journal Line")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

OnAfterCheckEntryType

[IntegrationEvent(False,False)]
local procedure OnAfterCheckEntryType(var ItemJournalLine: Record "Item Journal Line")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

OnAfterIsEntryTypeConsumption

[IntegrationEvent(False,False)]
local procedure OnAfterIsEntryTypeConsumption(var ItemJournalLine: Record "Item Journal Line", var Result: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
Result Boolean

OnAfterIsEntryTypeOutput

[IntegrationEvent(False,False)]
local procedure OnAfterIsEntryTypeOutput(var ItemJournalLine: Record "Item Journal Line", var Result: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
Result Boolean

OnAfterIsEntryTypeProduction

[IntegrationEvent(False,False)]
local procedure OnAfterIsEntryTypeProduction(var ItemJournalLine: Record "Item Journal Line", var Result: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
Result Boolean

OnAfterIsOrderTypeAsmOrProd

[IntegrationEvent(False,False)]
local procedure OnAfterIsOrderTypeAsmOrProd(var ItemJournalLine: Record "Item Journal Line", var Result: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
Result Boolean

OnAfterIsDocNoProdOrderNo

[IntegrationEvent(False,False)]
local procedure OnAfterIsDocNoProdOrderNo(var ItemJournalLine: Record "Item Journal Line", var Result: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
Result Boolean

OnValidateItemNoOnAfterValidateUnitofMeasureCode

[IntegrationEvent(False,False)]
local procedure OnValidateItemNoOnAfterValidateUnitofMeasureCode(var ItemJournalLine: Record "Item Journal Line", var xItemJournalLine: Record "Item Journal Line", var Item: Record Item, CurrentFieldNo: Integer)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
xItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
Item Table Microsoft.Inventory.Item.Item
CurrentFieldNo Integer

OnValidateNoOnAfterValidateItemNo

[IntegrationEvent(False,False)]
local procedure OnValidateNoOnAfterValidateItemNo(var ItemJournalLine: Record "Item Journal Line")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

OnValidateNoOnBeforeValidateItemNo

[IntegrationEvent(False,False)]
local procedure OnValidateNoOnBeforeValidateItemNo(var ItemJournalLine: Record "Item Journal Line")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

OnValidateQuantityOnAfterSetCallWhseCheck

[IntegrationEvent(False,False)]
local procedure OnValidateQuantityOnAfterSetCallWhseCheck(var ItemJournalLine: Record "Item Journal Line", var CallWhseCheck: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
CallWhseCheck Boolean

OnValidateBinCodeOnCompBinCheck

[IntegrationEvent(False,False)]
local procedure OnValidateBinCodeOnCompBinCheck(var ItemJournalLine: Record "Item Journal Line")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

OnSelectItemEntryOnSetFilters

[IntegrationEvent(False,False)]
local procedure OnSelectItemEntryOnSetFilters(var ItemJournalLine: Record "Item Journal Line", var ItemLedgerEntry: Record "Item Ledger Entry", CurrentFieldNo: Integer, var IsHandled: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
ItemLedgerEntry Table Microsoft.Inventory.Ledger."Item Ledger Entry"
CurrentFieldNo Integer
IsHandled Boolean

OnAfterValidateNo

[IntegrationEvent(False,False)]
local procedure OnAfterValidateNo(var ItemJournalLine: Record "Item Journal Line")

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"

OnTimeIsEmpty

[IntegrationEvent(False,False)]
local procedure OnTimeIsEmpty(var ItemJournalLine: Record "Item Journal Line", var Result: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
Result Boolean

OnOnlyStopTime

[IntegrationEvent(False,False)]
local procedure OnOnlyStopTime(var ItemJournalLine: Record "Item Journal Line", var Result: Boolean)

Parameters

Name Type Description
ItemJournalLine Table Microsoft.Inventory.Journal."Item Journal Line"
Result Boolean

OnGetOrderTypeProduction

[IntegrationEvent(False,False)]
local procedure OnGetOrderTypeProduction(var OrderType: Enum "Inventory Order Type")

Parameters

Name Type Description
OrderType Enum Microsoft.Foundation.Enums."Inventory Order Type"

OnGetOrderTypeService

[IntegrationEvent(False,False)]
local procedure OnGetOrderTypeService(var OrderType: Enum "Inventory Order Type")

Parameters

Name Type Description
OrderType Enum Microsoft.Foundation.Enums."Inventory Order Type"

OnValidateEntryTypeBeforeValidateLocationCode

[IntegrationEvent(False,False)]
local procedure OnValidateEntryTypeBeforeValidateLocationCode(var ItemJnlLine: Record "Item Journal Line")

Parameters

Name Type Description
ItemJnlLine Table Microsoft.Inventory.Journal."Item Journal Line"

See also