---
id: object/table/6550
type: object
title: Table 6550 "Whse. Item Tracking Line"
summary: Table 6550 "Whse. Item Tracking Line" in Base Application (Microsoft.Warehouse.Tracking). 34 fields, 35 public procedures, 31 events. Present since at least BC23, still in BC30, changed in BC24, BC26, BC28.
tier: official
language: en
tags:
  - table
  - base application
versions:
  introduced: null
  last_changed: "28"
  deprecated: null
review:
  state: derived
  by: null
  at: null
  flags: []
generated:
  at: "2026-10-11T00:31:51.816Z"
  pipeline: 0.2.0
  prompts: {}
  input_hash: de55db98686e0da58e8440a1218aefb70bbe72d120b3e5d7fdb223932f9ecfaa
evidence:
  - kind: code
    url: https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Layers/W1/BaseApp/Warehouse/Tracking/WhseItemTrackingLine.Table.al
    title: src/Layers/W1/BaseApp/Warehouse/Tracking/WhseItemTrackingLine.Table.al (releases/29.x)
    date: null
    commit: ea08af5ef2d6a9b5c5af4a029288abbe2c883220
    t: null
    quote: null
links:
  learn: []
  objects: []
  features: []
  topics: []
  localizations: []
  videos: []
  posts: []
  guidelines: []
object_type: table
object_id: 6550
name: Whse. Item Tracking Line
namespace: Microsoft.Warehouse.Tracking
app: Base Application
extends: null
first_version: "23"
last_version: "30"
present_in:
  - "23"
  - "24"
  - "25"
  - "26"
  - "27"
  - "28"
  - "29"
  - "30"
changed_in:
  - "24"
  - "26"
  - "28"
source_major: "29"
obsolete: null
countries: []
ms_search_form_ids: []
counts:
  fields: 34
  procedures: 68
  events: 31
  subscribers: 0
relations:
  out: 5
  referenced_by: 0
  pages: 1
  extended_by: 0
  event_subscribers: 24
  calls: 5
  called_by: 0
  implements: 0
---

# Table 6550 "Whse. Item Tracking Line"

> Table 6550 "Whse. Item Tracking Line" in Base Application (Microsoft.Warehouse.Tracking). 34 fields, 35 public procedures, 31 events. Present since at least BC23, still in BC30, changed in BC24, BC26, BC28.

Base Application · Microsoft.Warehouse.Tracking · BC23-30 · [source at ea08af5e](https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Layers/W1/BaseApp/Warehouse/Tracking/WhseItemTrackingLine.Table.al) · facts from BC29

## Properties

| Property | Value |
|---|---|
| Caption | Whse. Item Tracking Line |
| DataClassification | CustomerContent |

## Fields

Explanation: the field's ToolTip in the code; without one, the ToolTip of a page control bound to the field (marked via the page); without that, its Caption (marked caption) when that differs from the name.

| No. | Name | Type | Explanation | Notes |
|---|---|---|---|---|
| 1 | Entry No. | Integer | — |  |
| 2 | Item No. | Code[20] | Specifies the same as the field in the Item Tracking Lines window. | TableRelation [Table 27 "Item"](../table/27.md) |
| 3 | Location Code | Code[10] | Specifies the same as the field in the Item Tracking Lines window. | TableRelation [Table 14 "Location"](../table/14.md) |
| 4 | Quantity (Base) | Decimal | Specifies the same as the field in the Item Tracking Lines window. <small>via [Page 6550 "Whse. Item Tracking Lines"](../page/6550.md)</small> |  |
| 7 | Description | Text[100] | Specifies the same as the field with the same name in the Item Tracking Lines window. |  |
| 10 | Source Type | Integer | — |  |
| 11 | Source Subtype | Option | — | OptionCaption: 0,1,2,3,4,5,6,7,8,9,10 |
| 12 | Source ID | Code[20] | — |  |
| 13 | Source Batch Name | Code[10] | — |  |
| 14 | Source Prod. Order Line | Integer | — |  |
| 15 | Source Ref. No. | Integer | — |  |
| 24 | Serial No. | Code[50] | Specifies the same as the field in the Item Tracking Lines window. |  |
| 29 | Qty. per Unit of Measure | Decimal | — | not editable |
| 40 | Warranty Date | Date | Specifies the same as the field in the Item Tracking Lines window. |  |
| 41 | Expiration Date | Date | Specifies the same as the field in the Item Tracking Lines window. |  |
| 50 | Qty. to Handle (Base) | Decimal | Specifies the same as the field in the Item Tracking Lines window. <small>via [Page 6550 "Whse. Item Tracking Lines"](../page/6550.md)</small> |  |
| 51 | Qty. to Invoice (Base) | Decimal | — |  |
| 52 | Quantity Handled (Base) | Decimal | Specifies the same as the field in the Item Tracking Lines window. <small>via [Page 6550 "Whse. Item Tracking Lines"](../page/6550.md)</small> | not editable |
| 53 | Quantity Invoiced (Base) | Decimal | — | not editable |
| 60 | Qty. to Handle | Decimal | — |  |
| 70 | Buffer Status | Option | — | OptionCaption: ,MODIFY; not editable |
| 71 | Buffer Status2 | Option | — | OptionCaption: ,ExpDate blocked; not editable |
| 80 | New Serial No. | Code[50] | Specifies a new serial number that replaces the number in the Serial No. field, when you post the warehouse item reclassification journal. |  |
| 81 | New Lot No. | Code[50] | Specifies a new lot number that replaces the number in the Lot No. field, when you post the warehouse item reclassification journal. |  |
| 90 | Source Type Filter | Option | — | FlowFilter; OptionCaption: ,Receipt,Shipment,Internal Put-away,Internal Pick,Production,Movement Worksheet,Assembly,Project |
| 91 | Qty. Registered (Base) | Decimal | — |  |
| 92 | Put-away Qty. (Base) | Decimal | — | FlowField: sum("Warehouse Activity Line"."Qty. Outstanding (Base)" where("Activity Type" = filter("Put-away"), #pragma warning disable AL0603 "Whse. Document Type" = field("Source Type Filter"), #pragma warning restore AL0603 "Whse. Document No." = field("Source ID"), "Whse. Document Line No." = field("Source ... |
| 93 | Pick Qty. (Base) | Decimal | — | FlowField: sum("Warehouse Activity Line"."Qty. Outstanding (Base)" where("Activity Type" = filter(Pick \| Movement), #pragma warning disable AL0603 "Whse. Document Type" = field("Source Type Filter"), #pragma warning restore AL0603 "Whse. Document No." = field("Source ID"), "Whse. Document Line No." = field("So... |
| 94 | Created by Whse. Activity Line | Boolean | — |  |
| 5400 | Lot No. | Code[50] | Specifies the same as the field in the Item Tracking Lines window. |  |
| 5401 | Variant Code | Code[10] | Specifies the variant of the item on the line. | TableRelation [Table 5401 "Item Variant"](../table/5401.md) ("Item Variant".Code where("Item No." = field("Item No."))) |
| 6505 | New Expiration Date | Date | Specifies the same as the field in the Item Tracking Lines window. |  |
| 6515 | Package No. | Code[50] | Specifies a new package number that replaces the package number, when you post the warehouse item reclassification journal. |  |
| 6516 | New Package No. | Code[50] | Specifies a new package number that replaces the number in the Package No. field, when you post the warehouse item reclassification journal. |  |

## Keys

- Key1: Entry No. (clustered)
- Key2: Source ID, Source Type, Source Subtype, Source Batch Name, Source Prod. Order Line, Source Ref. No., Location Code
- Key3: Serial No., Lot No., Package No.
- Key4: Item No., Variant Code, Location Code

## Events published

- `OnAfterCheckTrackingIfRequired(WhseItemTrackingLine: Record "Whse. Item Tracking Line"; WhseItemTrackingSetup: Record "Item Tracking Setup")` (integration)
  - subscribers: [Codeunit 6516 "Package Management"](../codeunit/6516.md) WhseItemTrackingLineInitFromTrackingSpec
- `OnAfterClearTrackingFilter(var WhseItemTrackingLine: Record "Whse. Item Tracking Line")` (integration)
  - subscribers: [Codeunit 6516 "Package Management"](../codeunit/6516.md) WhseItemTrackingLineClearTrackingFilter
- `OnAfterCopyTrackingFromEntrySummary(var WhseItemTrackingLine: Record "Whse. Item Tracking Line"; EntrySummary: Record "Entry Summary")` (integration)
  - subscribers: [Codeunit 6516 "Package Management"](../codeunit/6516.md) WhseItemTrackingLineCopyTrackingFromEntrySummary
- `OnAfterCopyTrackingFromItemLedgEntry(var WhseItemTrackingLine: Record "Whse. Item Tracking Line"; ItemLedgerEntry: Record "Item Ledger Entry")` (integration)
  - subscribers: [Codeunit 6516 "Package Management"](../codeunit/6516.md) WhseItemTrackingLineCopyTrackingFromItemLedgEntry
- `OnAfterCopyTrackingFromPostedWhseReceiptine(var WhseItemTrackingLine: Record "Whse. Item Tracking Line"; PostedWhseReceiptLine: Record "Posted Whse. Receipt Line")` (integration)
  - subscribers: [Codeunit 6516 "Package Management"](../codeunit/6516.md) WhseItemTrackingLineCopyTrackingFromPostedWhseReceiptLine
- `OnAfterCopyTrackingFromRelation(var WhseItemTrackingLine: Record "Whse. Item Tracking Line"; WhseItemEntryRelation: Record "Whse. Item Entry Relation")` (integration)
  - subscribers: [Codeunit 6516 "Package Management"](../codeunit/6516.md) WhseItemTrackingLineCopyTrackingFromRelation
- `OnAfterCopyTrackingFromReservEntry(var WhseItemTrackingLine: Record "Whse. Item Tracking Line"; ReservationEntry: Record "Reservation Entry")` (integration)
  - subscribers: [Codeunit 6516 "Package Management"](../codeunit/6516.md) WhseItemTrackingLineCopyTrackingFromReservEntry
- `OnAfterCopyTrackingFromPostedWhseRcptLine(var WhseItemTrackingLine: Record "Whse. Item Tracking Line"; PostedWhseRcptLine: Record "Posted Whse. Receipt Line")` (integration)
  - subscribers: [Codeunit 6516 "Package Management"](../codeunit/6516.md) WhseItemTrackingLineCopyTrackingFromPostedWhseRcptLine
- `OnAfterCopyTrackingFromWhseActivityLine(var WhseItemTrackingLine: Record "Whse. Item Tracking Line"; WhseActivityLine: Record "Warehouse Activity Line")` (integration)
  - subscribers: [Codeunit 6516 "Package Management"](../codeunit/6516.md) WhseItemTrackingLineCopyTrackingFromWhseActivityLine
- `OnAfterCopyTrackingFromWhseEntry(var WhseItemTrackingLine: Record "Whse. Item Tracking Line"; WhseEntry: Record "Warehouse Entry")` (integration)
  - subscribers: [Codeunit 6516 "Package Management"](../codeunit/6516.md) WhseItemTrackingLineCopyTrackingFromWhseEntry
- `OnAfterCopyTrackingFromWhseItemTrackingLine(var WhseItemTrackingLine: Record "Whse. Item Tracking Line"; FromWhseItemTrackingLine: Record "Whse. Item Tracking Line")` (integration)
  - subscribers: [Codeunit 6516 "Package Management"](../codeunit/6516.md) WhseItemTrackingLineCopyTrackingFromWhseItemTrackingLine
- `OnAfterHasSameTracking(WhseItemTrackingLine: Record "Whse. Item Tracking Line"; WhseItemTrackingLine2: Record "Whse. Item Tracking Line"; var IsSameTracking: Boolean)` (integration)
- `OnAfterHasSameNewTracking(WhseItemTrackingLine: Record "Whse. Item Tracking Line"; var IsSameTracking: Boolean)` (integration)
  - subscribers: [Codeunit 6516 "Package Management"](../codeunit/6516.md) WhseItemTrackingLineHasSameNewTracking
- `OnAfterHasSameTrackingWithItemEntryRelation(WhseItemTrackingLine: Record "Whse. Item Tracking Line"; WhseItemEntryRelation: Record "Whse. Item Entry Relation"; var IsSameTracking: Boolean)` (integration)
  - subscribers: [Codeunit 6516 "Package Management"](../codeunit/6516.md) WhseItemTrackingLineHasSameTrackingWithItemEntryRelation
- `OnAfterInitQtyToHandle(var WhseItemTrackingLine: Record "Whse. Item Tracking Line"; xWhseItemTrackingLine: Record "Whse. Item Tracking Line"; CallingFieldNo: Integer)` (integration)
- `OnAfterLookUpTrackingSummary(var WhseItemTrackingLine: Record "Whse. Item Tracking Line"; TrackingType: Enum "Item Tracking Type"; var TempTrackingSpecification: Record "Tracking Specification" temporary)` (integration)
- `OnAfterSetTrackingFilterFromBinContent(var WhseItemTrackingLine: Record "Whse. Item Tracking Line"; var BinContent: Record "Bin Content")` (integration)
  - subscribers: [Codeunit 6516 "Package Management"](../codeunit/6516.md) WhseItemTrackingLineSetTrackingFilterFromBinContent
- `OnAfterSetTrackingFilterFromItemLedgerEntry(var WhseItemTrackingLine: Record "Whse. Item Tracking Line"; var ItemLedgerEntry: Record "Item Ledger Entry")` (integration)
  - subscribers: [Codeunit 6516 "Package Management"](../codeunit/6516.md) WhseItemTrackingLineSetTrackingFilterFromItemLedgerEntry
- `OnAfterSetTrackingFilterFromItemTrackingSetupIfNotBlank(var WhseItemTrackingLine: Record "Whse. Item Tracking Line"; ItemTrackingSetup: Record "Item Tracking Setup")` (integration)
  - subscribers: [Codeunit 6516 "Package Management"](../codeunit/6516.md) WhseItemTrackingLineOnAfterSetTrackingFilterFromItemTrackingSetupIfNotBlank
- `OnAfterSetTrackingFilterFromPostedWhseReceiptLine(var WhseItemTrackingLine: Record "Whse. Item Tracking Line"; PostedWhseReceiptLine: Record "Posted Whse. Receipt Line")` (integration)
  - subscribers: [Codeunit 6516 "Package Management"](../codeunit/6516.md) WhseItemTrackingLineSetTrackingFilterFromPostedWhseReceiptLine
- `OnAfterSetTrackingFilterFromRelation(var WhseItemTrackingLine: Record "Whse. Item Tracking Line"; WhseItemEntryRelation: Record "Whse. Item Entry Relation")` (integration)
  - subscribers: [Codeunit 6516 "Package Management"](../codeunit/6516.md) WhseItemTrackingLineSetTrackingFilterFromRelation
- `OnAfterSetTrackingFilterFromReservEntry(var WhseItemTrackingLine: Record "Whse. Item Tracking Line"; ReservationEntry: Record "Reservation Entry")` (integration)
  - subscribers: [Codeunit 6516 "Package Management"](../codeunit/6516.md) WhseItemTrackingLineSetTrackingFilterFromReservEntry
- `OnAfterSetTrackingFilterFromSpec(var WhseItemTrackingLine: Record "Whse. Item Tracking Line"; FromWhseItemTrackingLine: Record "Whse. Item Tracking Line")` (integration)
  - subscribers: [Codeunit 6516 "Package Management"](../codeunit/6516.md) WhseItemTrackingLineSetTrackingFilterFromSpec
- `OnAfterSetTrackingFilterFromWhseActivityLine(var WhseItemTrackingLine: Record "Whse. Item Tracking Line"; WhseActivityLine: Record "Warehouse Activity Line")` (integration)
  - subscribers: [Codeunit 6516 "Package Management"](../codeunit/6516.md) WhseItemTrackingLineSetTrackingFilterFromWhseActivityLine
- `OnAfterSetTrackingFilterFromWhseItemTrackingLine(var WhseItemTrackingLine: Record "Whse. Item Tracking Line"; FromWhseItemTrackingLine: Record "Whse. Item Tracking Line")` (integration)
  - subscribers: [Codeunit 6516 "Package Management"](../codeunit/6516.md) WhseItemTrackingLineSetTrackingFilterFromWhseItemTrackingLine
- `OnAfterTrackingExists(var WhseItemTrackingLine: Record "Whse. Item Tracking Line"; var IsTrackingExist: Boolean)` (integration)
  - subscribers: [Codeunit 6516 "Package Management"](../codeunit/6516.md) WhseItemTrackingLineTrackingExists
- `OnBeforeCheckSerialNoQty(var WhseItemTrackingLine: Record "Whse. Item Tracking Line"; var IsHandled: Boolean)` (integration)
- `OnBeforeLookUpTrackingSummary(var WhseItemTrackingLine: Record "Whse. Item Tracking Line"; TrackingType: Enum "Item Tracking Type"; MaxQuantity: Decimal; SignFactor: Integer; SearchForSupply: Boolean; var IsHandled: Boolean)` (integration)
- `OnBeforeInitExpirationDate(var WhseItemTrackingLine: Record "Whse. Item Tracking Line"; xWhseItemTrackingLine: Record "Whse. Item Tracking Line"; var IsHandled: Boolean)` (integration)
- `OnBeforeSetTrackingKey(var WhseItemTrackingLine: Record "Whse. Item Tracking Line"; var IsHandled: Boolean)` (integration)
- `OnAfterSetSourceFilter(var WhseItemTrackingLine: Record "Whse. Item Tracking Line"; SourceType: Integer; SourceSubtype: Integer; SourceID: Code[20]; SourceRefNo: Integer; SourceKey: Boolean)` (integration)

## Trigger event subscribers

- OnAfterLookupTrackingSummary: [Codeunit 6516 "Package Management"](../codeunit/6516.md) WhseItemTrackingLineLookupTrackingSummary

## Procedures

- `GetNextEntryNo(): Integer`: Gets the next entry number for the Whse. Item Tracking Line table using sequence number management.
- `GetLastEntryNo(): Integer`
- `InitQtyToHandle()`
- `InitExpirationDate()`
- `IsReclass(SourceType: Integer; SourceBatchName: Code[10]): Boolean`
- `LookUpTrackingSummary(var WhseItemTrackingLine: Record "Whse. Item Tracking Line"; TrackingType: Enum "Item Tracking Type"; MaxQuantity: Decimal; SignFactor: Integer; SearchForSupply: Boolean)`
- `CheckTrackingIfRequired(WhseItemTrackingSetup: Record "Item Tracking Setup")`
- `SetTrackingFilterFromItemTrackingSetupIfNotBlank(ItemTrackingSetup: Record "Item Tracking Setup")`
- `ClearTrackingFilter()`
- `CopyTrackingFromEntrySummary(EntrySummary: Record "Entry Summary")`
- `CopyTrackingFromItemLedgEntry(ItemLedgerEntry: Record "Item Ledger Entry")`
- `CopyTrackingFromPostedWhseReceiptLine(PostedWhseReceiptLine: Record "Posted Whse. Receipt Line")`
- `CopyTrackingFromReservEntry(ReservationEntry: Record "Reservation Entry")`
- `CopyTrackingFromPostedWhseRcptLine(PostedWhseReceiptLine: Record "Posted Whse. Receipt Line")`
- `CopyTrackingFromWhseActivityLine(WarehouseActivityLine: Record "Warehouse Activity Line")`
- `CopyTrackingFromWhseEntry(WarehouseEntry: Record "Warehouse Entry")`
- `CopyTrackingFromWhseItemTrackingLine(WhseItemTrackingLine: Record "Whse. Item Tracking Line")`
- `CopyTrackingFromRelation(WhseItemEntryRelation: Record "Whse. Item Entry Relation")`
- `SetSource(SourceType: Integer; SourceSubtype: Integer; SourceID: Code[20]; SourceRefNo: Integer; SourceBatchName: Code[10]; SourceProdOrderLine: Integer)`
- `SetSourceFilter(SourceType: Integer; SourceSubtype: Integer; SourceID: Code[20]; SourceRefNo: Integer; SourceKey: Boolean)`
- `SetSourceFilter(SourceBatchName: Code[10]; SourceProdOrderLine: Integer)`
- `SetTrackingFilterFromBinContent(var BinContent: Record "Bin Content")`
- `SetTrackingFilterFromItemLedgerEntry(var ItemLedgerEntry: Record "Item Ledger Entry")`
- `SetTrackingFilterFromPostedWhseReceiptLine(PostedWhseReceiptLine: Record "Posted Whse. Receipt Line")`
- `SetTrackingFilterFromRelation(WhseItemEntryRelation: Record "Whse. Item Entry Relation")`
- `SetTrackingFilterFromReservEntry(ReservationEntry: Record "Reservation Entry")`
- `SetTrackingFilterFromSpec(WhseItemTrackingLine: Record "Whse. Item Tracking Line")`
- `SetTrackingFilterFromWhseActivityLine(WarehouseActivityLine: Record "Warehouse Activity Line")`
- `SetTrackingFilterFromWhseItemTrackingLine(WhseItemTrackingLine: Record "Whse. Item Tracking Line")`
- `SetTrackingKey()`
- `HasSameTracking(WhseItemTrackingLine: Record "Whse. Item Tracking Line"): Boolean`
- `HasSameNewTracking(): Boolean`
- `HasSameTrackingWithItemEntryRelation(WhseItemEntryRelation: Record "Whse. Item Entry Relation"): Boolean`
- `HasSameTrackingWithItemLedgerEntry(ItemLedgerEntry: Record "Item Ledger Entry"): Boolean`
- `TrackingExists(): Boolean`

Plus 2 local procedures.

## Triggers

OnDelete

## Relations

- Location Code: TableRelation [Table 14 "Location"](../table/14.md)
- Item No.: TableRelation [Table 27 "Item"](../table/27.md)
- Variant Code: TableRelation [Table 5401 "Item Variant"](../table/5401.md)
- Pick Qty. (Base): CalcFormula [Table 5767 "Warehouse Activity Line"](../table/5767.md)
- Put-away Qty. (Base): CalcFormula [Table 5767 "Warehouse Activity Line"](../table/5767.md)

## Pages and codeunits on this table

- [Page 6550 "Whse. Item Tracking Lines"](../page/6550.md) (source table)

## Calls

From the extracted call graph of BC29 (graphify-al on the snapshot checkout): calls whose target is known from a declared type or an `Object::"Name"` argument. Interface dispatch and calls through events are not counted, so the list is not complete.

- [Codeunit 6500 "Item Tracking Management"](../codeunit/6500.md) (2 calls: `InitExpirationDate → GetWhseExpirationDate`, `InitExpirationDate → GetWhseWarrantyDate`)
- [Codeunit 5402 "Unit of Measure Management"](../codeunit/5402.md) (1 call: `CalcQty → QtyRndPrecision`)
- [Codeunit 6501 "Item Tracking Data Collection"](../codeunit/6501.md) (1 call: `LookUpTrackingSummary → AssistEditTrackingNo`)
- [Codeunit 703 "Find Record Management"](../codeunit/703.md) (1 call: `GetLastEntryNo → GetLastEntryIntFieldValue`)
- [Codeunit 9500 "Sequence No. Mgt."](../codeunit/9500.md) (1 call: `GetNextEntryNo → GetNextSeqNo`)

## Across versions

- Present in: BC23-30
- Changed (declaration) in: BC24, BC26, BC28

Source: AL metadata extracted from the code (names, ids, signatures, properties); no code bodies (D10).

## Ask your agent

Procedure bodies are not stored here (D10). The call sections above are our own, per object, from the BC29 call graph. For a procedure body or the calls of one procedure, ask bc-code-atlas (external, by Stefan Maron, MIT; default corpus w1-28), which the bc-observatory plugin connects: `bcatlas_resolve_node(object_type: "table", object_name: "Whse. Item Tracking Line")`, then `bcatlas_get_procedure_body` or `bcatlas_get_neighbors` on the returned id.
