---
id: object/page/5401
type: object
title: Page 5401 "Item Variants"
summary: Page 5401 "Item Variants" in Base Application (Microsoft.Inventory.Item). 1 public procedures, 1 events. Present since at least BC23, still in BC30, changed in BC25, BC28.
tier: official
language: en
tags:
  - page
  - 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: 1f5037eff3f01200cec12fa7dc40d472c8d3a089a165087c5753471ed7679c1d
evidence:
  - kind: code
    url: https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Layers/W1/BaseApp/Inventory/Item/ItemVariants.Page.al
    title: src/Layers/W1/BaseApp/Inventory/Item/ItemVariants.Page.al (releases/29.x)
    date: null
    commit: ea08af5ef2d6a9b5c5af4a029288abbe2c883220
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/inventory-how-categorize-items
    title: Organize items in categories
    date: null
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/inventory-item-variants
    title: Manage product variants
    date: null
    commit: null
    t: null
    quote: null
links:
  learn:
    - https://learn.microsoft.com/dynamics365/business-central/inventory-how-categorize-items
    - https://learn.microsoft.com/dynamics365/business-central/inventory-item-variants
  objects: []
  features: []
  topics:
    - topic/business-central/business-functionality/inventory
    - topic/business-central/business-functionality/set-up-business-central/set-up-inventory
  localizations: []
  videos: []
  posts: []
  guidelines: []
  changes:
    - change/bcapps/9810
object_type: page
object_id: 5401
name: Item Variants
namespace: Microsoft.Inventory.Item
app: Base Application
extends: null
first_version: "23"
last_version: "30"
present_in:
  - "23"
  - "24"
  - "25"
  - "26"
  - "27"
  - "28"
  - "29"
  - "30"
changed_in:
  - "25"
  - "28"
source_major: "29"
obsolete: null
countries: []
ms_search_form_ids:
  - docs/learn-smb-docs/business-central/inventory-how-categorize-items.md
  - docs/learn-smb-docs/business-central/inventory-item-variants.md
counts:
  fields: 0
  procedures: 2
  events: 1
  subscribers: 0
  controls: 10
  actions: 3
relations:
  out: 2
  referenced_by: 0
  pages: 1
  extended_by: 2
  event_subscribers: 1
  calls: 1
  called_by: 1
  implements: 0
---

# Page 5401 "Item Variants"

> Page 5401 "Item Variants" in Base Application (Microsoft.Inventory.Item). 1 public procedures, 1 events. Present since at least BC23, still in BC30, changed in BC25, BC28.

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

## Properties

| Property | Value |
|---|---|
| Caption | Item Variants |
| SourceTable | Item Variant |
| PageType | List |

## Fields on this page

Layout controls in source order, grouped by the container they sit in. Shows: the table field a control is bound to (or its expression as written); ToolTip: the control's own, else the bound field's (marked).

| Group | Control | Shows | ToolTip |
|---|---|---|---|
| Control1 | Item No. | [Item No.](../table/5401.md#fields) | Specifies the number of the item card from which you opened the Item Variant Translations window. <small>from the table field</small> |
|  | Code | [Code](../table/5401.md#fields) | Specifies a code to identify the variant. <small>from the table field</small> |
|  | Description | [Description](../table/5401.md#fields) | Specifies text that describes the item variant. <small>from the table field</small> |
|  | Description 2 | [Description 2](../table/5401.md#fields) | Specifies the item variant in more detail than the Description field. <small>from the table field</small> |
|  | Blocked | [Blocked](../table/5401.md#fields) | Specifies that the related record is blocked from being posted in transactions, for example an item variant that is placed in quarantine. <small>from the table field</small> |
|  | Sales Blocked | [Sales Blocked](../table/5401.md#fields) | Specifies that the item variant cannot be entered on sales documents, except return orders and credit memos, and journals. <small>from the table field</small> |
|  | Service Blocked | [Service Blocked](../table/5401.md#fields) | Specifies that the item variant cannot be entered on service items, service contracts and service documents, except credit memos. <small>from the table field</small> |
|  | Purchasing Blocked | [Purchasing Blocked](../table/5401.md#fields) | Specifies that the item variant cannot be entered on purchase documents, except return orders and credit memos, and journals. <small>from the table field</small> |
| FactBoxes | Picture | part [Page 409 "Item Variant Picture"](../page/409.md) | — |
|  | ItemAttributesFactbox | part [Page 9110 "Item Attributes Factbox"](../page/9110.md) | — |

## Actions

| Group | Action | ToolTip | Runs |
|---|---|---|---|
| Variant | Translations | View or edit translated item descriptions. Translated item descriptions are automatically inserted on documents according to the language code. | [Page 35 "Item Translations"](../page/35.md) |
|  | Item References | Set up a customer's or vendor's own identification of the selected item variant. | [Page 5737 "Item Reference Entries"](../page/5737.md) |
|  | Attributes | View or edit the item's variant attributes, such as color, size, or other characteristics that help to describe the item variant. |  |

## Events published

- `OnBeforeFindRecord(var Rec: Record "Item Variant"; Which: Text; var CrossColumnSearchFilter: Text; var Found: Boolean; var IsHandled: Boolean)` (integration)
  - subscribers: [Codeunit 4593 "SOA Variant Search"](../codeunit/4593.md) FindRecordItemVariants

## Procedures

- `GetSelectionFilter(): Text`

## Triggers

OnAfterGetCurrRecord, OnFindRecord

## Relations

- card page [Page 5405 "Item Variant Card"](../page/5405.md)
- source table [Table 5401 "Item Variant"](../table/5401.md)

## Pages and codeunits on this table

- [Table 5401 "Item Variant"](../table/5401.md) (lookup page)

## Extended by

- [Page extension 20432 "Qlty. Item Variants"](../pageextension/20432.md)
- [Page extension 99000796 "Mfg. Item Variants"](../pageextension/99000796.md)

## 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 46 "SelectionFilterManagement"](../codeunit/46.md) (1 call: `GetSelectionFilter → GetSelectionFilterForItemVariant`)

## Called by

- [Codeunit 7041 "Price Asset - Item"](../codeunit/7041.md) (1 call: `IsLookupVariantOK → (object)`)

## Recent changes

- 2026-07-31 [#9810 [master]-Edit in Excel fails with false duplicate error when creating new Item Variants](../../changes/bcapps/9810.md) (main, BC30, fix)

## Across versions

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

## Documented on Microsoft Learn

- [Organize items in categories](https://learn.microsoft.com/dynamics365/business-central/inventory-how-categorize-items)
- [Manage product variants](https://learn.microsoft.com/dynamics365/business-central/inventory-item-variants)

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: "page", object_name: "Item Variants")`, then `bcatlas_get_procedure_body` or `bcatlas_get_neighbors` on the returned id.
