Table 8068 "Sales Subscription Line"
Subscription Billing · Microsoft.SubscriptionBilling
Across versions
- BC23-28not present
- BC29-30present
Neighbourhood 14 connected objects and pages
Subscription Billing · Microsoft.SubscriptionBilling · BC29-30 · source at ea08af5e · facts from BC29
Learn documents this table through its pages: Page 8015 “Sales Service Commitments List” (2 Learn pages).
Properties
| Property | Value |
|---|---|
| Caption | Sales Subscription Line |
| DataClassification | CustomerContent |
| LookupPageId | Sales Service Commitments |
| DrillDownPageId | Sales Service Commitments |
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 | Document Type | Enum “Sales Document Type” | Specifies the value of the Document Type field. via Page 8015 “Sales Service Commitments List” | enum Enum 36 “Sales Document Type” |
| 2 | Document No. | Code[20] | Specifies the value of the Document No. field. via Page 8015 “Sales Service Commitments List” | TableRelation Table 36 “Sales Header” (“Sales Header”.“No.” where(“Document Type” = field(“Document Type”))) |
| 3 | Document Line No. | Integer | Specifies the value of the Document Line No. field. via Page 8015 “Sales Service Commitments List” | |
| 4 | Line No. | Integer | Specifies the value of the Line No. field. via Page 8015 “Sales Service Commitments List” | AutoIncrement |
| 10 | Item No. | Code[20] | Specifies the number of an item. via Page 8015 “Sales Service Commitments List” | TableRelation Table 27 “Item”; not editable |
| 11 | Item Description | Text[100] | Specifies a description of the product to be sold. via Page 8015 “Sales Service Commitments List” | FlowField: lookup(“Sales Line”.Description where(“Document Type” = field(“Document Type”), “Document No.” = field(“Document No.”), “Line No.” = field(“Document Line No.”))); not editable |
| 12 | Partner | Enum “Service Partner” | Specifies whether a Subscription Line should be invoiced to a vendor (purchase invoice) or to a customer (sales invoice). via Page 8015 “Sales Service Commitments List” | enum Enum 8053 “Service Partner”; not editable |
| 13 | Description | Text[100] | Specifies a description of the package line. via Page 8015 “Sales Service Commitments List” | |
| 14 | Calculation Base Type | Enum “Calculation Base Type” | Specifies how the price for Subscription Line is calculated. “Item Price” uses the list price defined on the Item. “Document Price” uses the price from the sales document. “Document Price And Discount” uses the price and the discount from the sales document. via Page 8015 “Sales Service Commitments List” | enum Enum 8052 “Calculation Base Type”; not editable |
| 15 | Calculation Base Amount | Decimal | Specifies the base amount from which the price will be calculated. via Page 8015 “Sales Service Commitments List” | |
| 16 | Calculation Base % | Decimal | Specifies the percent at which the price of the Subscription Line will be calculated. 100% means that the price corresponds to the Base Price. via Page 8015 “Sales Service Commitments List” | |
| 17 | Price | Decimal | Specifies the price of the Subscription Line with quantity of 1 in the billing period. The price is calculated from Base Price and Base Price %. via Page 8015 “Sales Service Commitments List” | not editable |
| 18 | Discount % | Decimal | Specifies the percent of the discount for the Subscription Line. via Page 8015 “Sales Service Commitments List” | |
| 19 | Discount Amount | Decimal | Specifies the amount of the discount for the Subscription Line. via Page 8015 “Sales Service Commitments List” | |
| 20 | Amount | Decimal | Specifies the amount for the Subscription Line including discount. via Page 8015 “Sales Service Commitments List” | |
| 21 | Sub. Line Start Formula | DateFormula | Specifies the value of the Subscription Line Start Formula field. via Page 8015 “Sales Service Commitments List” | |
| 22 | Agreed Sub. Line Start Date | Date | Specifies the individually agreed start of the Subscription Line. Enter a date here to overwrite the determination of the start of Subscription Line with the start of Subscription Line formula upon delivery. If the field remains empty, the start of the Subscription Line is determined upon delivery. via Page 8015 “Sales Service Commitments List” | |
| 23 | Initial Term | DateFormula | Specifies a date formula for calculating the minimum term of the Subscription Line. If the minimum term is filled and no extension term is entered, the end of Subscription Line is automatically set to the end of the initial term. via Page 8015 “Sales Service Commitments List” | |
| 24 | Notice Period | DateFormula | Specifies a date formula for the lead time that a notice must have before the Subscription Line ends. The rhythm of the update of “Notice possible to” and “Term Until” is determined using the extension term. For example, with an extension period of 1M, the notice period is repeatedly postponed by on… via Page 8015 “Sales Service Commitments List” | |
| 25 | Extension Term | DateFormula | Specifies a date formula for automatic renewal after initial term and the rhythm of the update of “Notice possible to” and “Term Until”. via Page 8015 “Sales Service Commitments List” | |
| 26 | Billing Base Period | DateFormula | Specifies for which period the Amount is valid. If you enter 1M here, a period of one month, or 12M, a period of 1 year, to which Amount refers to. via Page 8015 “Sales Service Commitments List” | not editable |
| 27 | Billing Rhythm | DateFormula | Specifies the Dateformula for rhythm in which the Subscription Line is invoiced. Using a Dateformula rhythm can be, for example, a monthly, a quarterly or a yearly invoicing. via Page 8015 “Sales Service Commitments List” | not editable |
| 28 | Invoicing via | Enum “Invoicing Via” | Specifies whether the Subscription Line is invoiced via a contract. Subscription Lines with invoicing via sales are not charged. Only the items are billed. via Page 8015 “Sales Service Commitments List” | enum Enum 8051 “Invoicing Via”; not editable |
| 30 | Template | Code[20] | Specifies a code to identify this Subscription Package Line Template. via Page 8015 “Sales Service Commitments List” | TableRelation Table 8054 “Sub. Package Line Template” (Sub. Package Line Template); not editable |
| 31 | Subscription Package Code | Code[20] | Specifies a code to identify this Subscription Package. via Page 8015 “Sales Service Commitments List” | TableRelation Table 8055 “Subscription Package” (Subscription Package); not editable |
| 32 | Customer Price Group | Code[10] | Specifies the value of the Customer Price Group field. via Page 8015 “Sales Service Commitments List” | TableRelation Table 6 “Customer Price Group” (Customer Price Group); not editable |
| 33 | Discount | Boolean | Specifies whether the Subscription Line is used as a basis for periodic invoicing or discounts. via Page 8015 “Sales Service Commitments List” | not editable |
| 40 | Create Contract Deferrals | Enum “Create Contract Deferrals” | Specifies whether deferrals are created for new Subscription lines. via Page 8015 “Sales Service Commitments List” | enum Enum 8020 “Create Contract Deferrals” |
| 50 | Subscription Header No. | Code[20] | Specifies the value of the Subscription No. field. via Page 8015 “Sales Service Commitments List” | TableRelation Table 8057 “Subscription Header” (Subscription Header); not editable |
| 51 | Subscription Line Entry No. | Integer | Specifies the value of the Subscription Line Entry No. field. via Page 8015 “Sales Service Commitments List” | TableRelation Table 8059 “Subscription Line” (“Subscription Line”.“Entry No.”); not editable |
| 54 | Price Binding Period | DateFormula | Specifies the period the price will not be changed after the price update. It sets a new “Next Price Update” in the contract line after the price update has been performed. via Page 8082 “Sales Service Commitments” | |
| 59 | Period Calculation | enum “Period Calculation” | Specifies the Period Calculation, which controls how a period is determined for billing. The calculation of a month from 28.02. can extend to 27.03. (Align to Start of Month) or 30.03. (Align to End of Month). via Page 8015 “Sales Service Commitments List” | enum Enum 8005 “Period Calculation” |
| 60 | Linked to No. | Code[20] | Specifies the associated Contract the Subscription Line will be assigned to. If the sales line was created by a Contract Renewal, the Contract No. cannot be edited. via Page 8082 “Sales Service Commitments” | not editable |
| 61 | Linked to Line No. | Integer | Specifies the associated Contract line the Subscription Line will renew. via Page 8082 “Sales Service Commitments” | not editable |
| 62 | Process | Enum Process | Specifies the type of operation and state of the process. via Page 8082 “Sales Service Commitments” | enum Enum 8017 “Process”; not editable |
| 100 | Unit Cost | Decimal | — | not editable |
| 101 | Unit Cost (LCY) | Decimal | Specifies the unit cost of the item. via Page 8082 “Sales Service Commitments” | |
| 102 | Currency Code | Code[10] | — | FlowField: lookup(“Sales Header”.“Currency Code” where(“Document Type” = field(“Document Type”), “No.” = field(“Document No.”))); not editable |
| 8000 | Usage Based Billing | Boolean | Specifies whether usage data is used as the basis for billing via contracts. via Page 8082 “Sales Service Commitments” | |
| 8001 | Usage Based Pricing | Enum “Usage Based Pricing” | Specifies the method for customer based pricing. via Page 8082 “Sales Service Commitments” | enum Enum 8007 “Usage Based Pricing” |
| 8002 | Pricing Unit Cost Surcharge % | Decimal | Specifies the surcharge in percent for the debit-side price calculation, if a unit cost surcharge is to be used. via Page 8082 “Sales Service Commitments” |
Keys
- PK: Line No. (clustered)
- SK1: Document Type, Document No., Document Line No., Subscription Package Code
Events published
OnCalculateBaseTypeElseCaseOnCalculateCalculationBaseAmountCustomer(SalesSubscriptionLine: Record "Sales Subscription Line"; SalesLine: Record "Sales Line"; var CalculatedBaseAmount: Decimal; var IsHandled: Boolean)(integration)OnCalculateBaseTypeElseCaseOnCalculateCalculationBaseAmountVendor(SalesSubscriptionLine: Record "Sales Subscription Line"; SalesLine: Record "Sales Line"; var CalculatedBaseAmount: Decimal; var IsHandled: Boolean)(integration)OnBeforeCreateVATAmountLineForSalesSubscriptionLine(SalesSubscriptionLine: Record "Sales Subscription Line"; var IsHandled: Boolean)(integration)OnAfterGetSalesLine(var SalesSubscriptionLine: Record "Sales Subscription Line"; var SalesLine: Record "Sales Line")(integration)OnBeforeCalculateCalculationBaseAmount(var SalesLine: Record "Sales Line"; var SalesSubscriptionLine: Record "Sales Subscription Line"; var IsHandled: Boolean)(integration)OnAfterCalculateCalculationBaseAmount(var SalesLine: Record "Sales Line"; var SalesSubscriptionLine: Record "Sales Subscription Line")(integration)
Procedures
FilterOnSalesLine(SourceSalesLine: Record "Sales Line")FilterOnDocument(SalesDocumentType: Enum "Sales Document Type"; DocumentNo: Code[20])(internal)InitRecord(SourceSalesLine: Record "Sales Line")(internal)SetDocumentFields(DocType: Enum "Sales Document Type"; DocNo: Code[20]; DocLineNo: Integer)(internal)CalculateCalculationBaseAmount()CalcVATAmountLines(var SalesHeader: Record "Sales Header"; var TempSalesServiceCommitmentBuff: Record "Sales Service Commitment Buff." temporary; var UniqueRhythmDictionary: Dictionary of [Code[20], Text])(internal)IsOnlyRemainingLineForContractRenewalInDocument(): Boolean(internal)CalculateUnitCost()(internal)SetSalesLine(var NewSalesLine: Record "Sales Line")
Plus 12 local procedures.
Triggers
OnModify, OnDelete
Relations
- drill-down page Page 8082 “Sales Service Commitments”
- lookup page Page 8082 “Sales Service Commitments”
- Item No.: TableRelation Table 27 “Item”
- Currency Code: CalcFormula Table 36 “Sales Header”
- Document No.: TableRelation Table 36 “Sales Header”
- Item Description: CalcFormula Table 37 “Sales Line”
- Customer Price Group: TableRelation Table 6 “Customer Price Group”
- Template: TableRelation Table 8054 “Sub. Package Line Template”
- Subscription Package Code: TableRelation Table 8055 “Subscription Package”
- Subscription Header No.: TableRelation Table 8057 “Subscription Header”
- Subscription Line Entry No.: TableRelation Table 8059 “Subscription Line”
Referenced by
1 fields in 1 objects relate to this table (TableRelation or CalcFormula).
- Table extension 8054 “Sales Line”: Subscription Lines
Pages and codeunits on this table
- Page 8015 “Sales Service Commitments List” (source table)
- Page 8019 “Sales Service Commitments API” (source table)
- Page 8082 “Sales Service Commitments” (source table)
Recent changes
- 2026-09-28 #11824 [29.x][Subscription Billing] Sales-Explode BOM fails for foreign-currency customers (releases/29.x, BC29, fix)
- 2026-09-24 #11747 [master][Subscription Billing] Sales-Explode BOM fails for foreign-currency customers (main, BC30, fix)
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: "Sales Subscription Line"), then bcatlas_get_procedure_body or bcatlas_get_neighbors on the returned id.