---
id: object/table/8058
type: object
title: Table 8058 "Item Subscription Package"
summary: Table 8058 "Item Subscription Package" in Subscription Billing (Microsoft.SubscriptionBilling). 5 fields, 9 public procedures. Introduced in BC29, still in BC30.
tier: official
language: en
tags:
  - table
  - subscription billing
versions:
  introduced: "29"
  last_changed: null
  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: cf31d428d2d2720ad0a343e88e08eeedf0d8769f7ed0866355f72e9da6218030
evidence:
  - kind: code
    url: https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Apps/W1/Subscription%20Billing/app/Service%20Commitments/Tables/ItemSubscriptionPackage.Table.al
    title: src/Apps/W1/Subscription Billing/app/Service Commitments/Tables/ItemSubscriptionPackage.Table.al (releases/29.x)
    date: null
    commit: ea08af5ef2d6a9b5c5af4a029288abbe2c883220
    t: null
    quote: null
links:
  learn:
    - https://learn.microsoft.com/dynamics365/business-central/SRB/masterdata/items
  objects: []
  features: []
  topics:
    - topic/business-central/business-functionality/set-up-business-central/set-up-sales/set-up-subscription-billing
  localizations: []
  videos: []
  posts: []
  guidelines: []
object_type: table
object_id: 8058
name: Item Subscription Package
namespace: Microsoft.SubscriptionBilling
app: Subscription Billing
extends: null
first_version: "29"
last_version: "30"
present_in:
  - "29"
  - "30"
changed_in: []
source_major: "29"
obsolete: null
countries: []
ms_search_form_ids: []
counts:
  fields: 5
  procedures: 11
  events: 0
  subscribers: 0
relations:
  out: 6
  referenced_by: 0
  pages: 3
  extended_by: 0
  event_subscribers: 0
  calls: 0
  called_by: 0
  implements: 0
---

# Table 8058 "Item Subscription Package"

> Table 8058 "Item Subscription Package" in Subscription Billing (Microsoft.SubscriptionBilling). 5 fields, 9 public procedures. Introduced in BC29, still in BC30.

Subscription Billing · Microsoft.SubscriptionBilling · BC29-30 · [source at ea08af5e](https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Apps/W1/Subscription%20Billing/app/Service%20Commitments/Tables/ItemSubscriptionPackage.Table.al) · facts from BC29

Learn documents this table through its pages: [Page 8061 "Item Serv. Commitment Packages"](../page/8061.md) (1 Learn page).

## Properties

| Property | Value |
|---|---|
| Caption | Item Subscription Package |
| DataClassification | CustomerContent |
| LookupPageId | Item Serv. Commitment Packages |
| DrillDownPageId | Item Serv. Commitment Packages |

## 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 | Item No. | Code[20] | Specifies the number of the item. <small>via [Page 8063 "Assigned Items"](../page/8063.md)</small> | TableRelation [Table 27 "Item"](../table/27.md); NotBlank |
| 2 | Code | Code[20] | Specifies a code to identify this Subscription Package. <small>via [Page 8061 "Item Serv. Commitment Packages"](../page/8061.md)</small> | TableRelation [Table 8055 "Subscription Package"](../table/8055.md) (Subscription Package); NotBlank |
| 3 | Description | Text[100] | Specifies a description of the Subscription Package. <small>via [Page 8061 "Item Serv. Commitment Packages"](../page/8061.md)</small> | FlowField: lookup("Subscription Package".Description where(Code = field(Code))); not editable |
| 4 | Standard | Boolean | Specifies whether the package Subscription Lines should be automatically added to the sales process when the item is sold. If the checkbox is not set, the package Subscription Lines can be added manually in the sales process. <small>via [Page 8061 "Item Serv. Commitment Packages"](../page/8061.md)</small> |  |
| 5 | Price Group | Code[10] | Specifies the customer price group that will be used for the invoicing of Subscription Lines. <small>via [Page 8061 "Item Serv. Commitment Packages"](../page/8061.md)</small> | TableRelation [Table 6 "Customer Price Group"](../table/6.md) (Customer Price Group); not editable |

## Keys

- PK: Item No., Code (clustered)

## Procedures

- `ErrorIfInvoicingItemIsNotServiceCommitmentItemForDiscount(ServiceCommitmentPackageCode: Code[20])` (internal)
- `GetPackageFilterForItem(ItemNo: Code[20]): Text`
- `GetPackageFilterForItem(ItemNo: Code[20]; ServiceObjectNo: Code[20]): Text` (internal)
- `GetPackageFilterForItem(ItemNo: Code[20]; ServiceObjectNo: Code[20]; OnlyNonStandardPackage: Boolean): Text` (internal)
- `GetPackageFilterForItem(SalesLine: Record "Sales Line"; RemoveExistingPackageFromFilter: Boolean): Text` (internal)
- `IsPackageAssignedToSalesLine(SalesLine: Record "Sales Line"; ItemServCommitmentPackageCode: Code[20]): Boolean` (internal)
- `GetAllStandardPackageFilterForItem(ItemNo: Code[20]; CustomerPriceGroup: Code[10]): Text` (internal)
- `FilterAllStandardPackageFilterForItem(ItemNo: Code[20]; CustomerPriceGroup: Code[10])` (internal)
- `ErrorIfPackageLineInvoicedViaContractWithoutInvoicingItemExist()` (internal)

Plus 2 local procedures.

## Triggers

OnInsert

## Relations

- drill-down page [Page 8061 "Item Serv. Commitment Packages"](../page/8061.md)
- lookup page [Page 8061 "Item Serv. Commitment Packages"](../page/8061.md)
- Item No.: TableRelation [Table 27 "Item"](../table/27.md)
- Price Group: TableRelation [Table 6 "Customer Price Group"](../table/6.md)
- Description: CalcFormula [Table 8055 "Subscription Package"](../table/8055.md)
- Code: TableRelation [Table 8055 "Subscription Package"](../table/8055.md)

## Pages and codeunits on this table

- [Page 8061 "Item Serv. Commitment Packages"](../page/8061.md) (source table)
- [Page 8062 "Item Serv. Commitments Factbox"](../page/8062.md) (source table)
- [Page 8063 "Assigned Items"](../page/8063.md) (source table)

## Across versions

- Present in: BC29-30
- Changed (declaration) in: none

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