---
id: object/page/5905
type: object
title: Page 5905 "Service Lines"
summary: Page 5905 "Service Lines" in Base Application (Microsoft.Service.Document). 7 public procedures, 4 events. Present since at least BC23, still in BC30, changed in BC24-25.
tier: official
language: en
tags:
  - page
  - base application
versions:
  introduced: null
  last_changed: "25"
  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: 1399974a46e9e11b8dfedd709aa0ae8852616816c012d9708ae48779ecbb0751
evidence:
  - kind: code
    url: https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Layers/W1/BaseApp/Service/Document/ServiceLines.Page.al
    title: src/Layers/W1/BaseApp/Service/Document/ServiceLines.Page.al (releases/29.x)
    date: null
    commit: ea08af5ef2d6a9b5c5af4a029288abbe2c883220
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/value-chain-howto-service
    title: Sustainability value chain in Service Management
    date: null
    commit: null
    t: null
    quote: null
links:
  learn:
    - https://learn.microsoft.com/dynamics365/business-central/value-chain-howto-service
  objects: []
  features: []
  topics:
    - topic/business-central/business-functionality/sustainability-management/sustainability-value-chain
  localizations: []
  videos: []
  posts: []
  guidelines: []
object_type: page
object_id: 5905
name: Service Lines
namespace: Microsoft.Service.Document
app: Base Application
extends: null
first_version: "23"
last_version: "30"
present_in:
  - "23"
  - "24"
  - "25"
  - "26"
  - "27"
  - "28"
  - "29"
  - "30"
changed_in:
  - "24"
  - "25"
source_major: "29"
obsolete: null
countries: []
ms_search_form_ids:
  - docs/learn-smb-docs/business-central/value-chain-howto-service.md
counts:
  fields: 0
  procedures: 17
  events: 4
  subscribers: 0
  controls: 76
  actions: 38
relations:
  out: 1
  referenced_by: 0
  pages: 0
  extended_by: 3
  event_subscribers: 0
  calls: 5
  called_by: 0
  implements: 0
---

# Page 5905 "Service Lines"

> Page 5905 "Service Lines" in Base Application (Microsoft.Service.Document). 7 public procedures, 4 events. Present since at least BC23, still in BC30, changed in BC24-25.

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

## Properties

| Property | Value |
|---|---|
| Caption | Service Lines |
| SourceTable | Service Line |
| PageType | Worksheet |

## 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 |
|---|---|---|---|
| Content | Service Lines Filter | `SelectionFilter` | Specifies a service line filter. |
| Control1 | Service Item Line No. | [Service Item Line No.](../table/5902.md#fields) | Specifies the service item line number linked to this service line. <small>from the table field</small> |
|  | Service Item No. | [Service Item No.](../table/5902.md#fields) | Specifies the service item number linked to this service line. <small>from the table field</small> |
|  | Service Item Serial No. | [Service Item Serial No.](../table/5902.md#fields) | Specifies the service item serial number linked to this line. <small>from the table field</small> |
|  | Service Item Line Description | [Service Item Line Description](../table/5902.md#fields) | Specifies the description of the service item line in the service order. <small>from the table field</small> |
|  | Type | [Type](../table/5902.md#fields) | Specifies the type of the service line. <small>from the table field</small> |
|  | No. | [No.](../table/5902.md#fields) | Specifies the number of the involved entry or record, according to the specified number series. <small>from the table field</small> |
|  | Item Reference No. | [Item Reference No.](../table/5902.md#fields) | Specifies the referenced item number. If you enter a cross reference between yours and your vendor's or customer's item number, then this number will override the standard item number when you enter the reference number on a service document. <small>from the table field</small> |
|  | Variant Code | [Variant Code](../table/5902.md#fields) | Specifies the variant of the item on the line. <small>from the table field</small> |
|  | Nonstock | [Nonstock](../table/5902.md#fields) | Specifies that the item is a catalog item. <small>from the table field</small> |
|  | Substitution Available | [Substitution Available](../table/5902.md#fields) | Specifies whether a substitute is available for the item. <small>from the table field</small> |
|  | Description | [Description](../table/5902.md#fields) | Specifies the description of an item, resource, cost, or a standard text on the line. <small>from the table field</small> |
|  | Description 2 | [Description 2](../table/5902.md#fields) | Specifies an additional description of the item, resource, or cost. |
|  | Location Code | [Location Code](../table/5902.md#fields) | Specifies the inventory location from where the items on the line should be taken and where they should be registered. <small>from the table field</small> |
|  | Bin Code | [Bin Code](../table/5902.md#fields) | Specifies the bin where the items are picked or put away. <small>from the table field</small> |
|  | Control134 | [Reserve](../table/5902.md#fields) | Specifies whether a reservation can be made for items on this line. <small>from the table field</small> |
|  | Quantity | [Quantity](../table/5902.md#fields) | Specifies the number of item units, resource hours, cost on the service line. <small>from the table field</small> |
|  | Reserved Quantity | [Reserved Quantity](../table/5902.md#fields) | Specifies how many item units on this line have been reserved. <small>from the table field</small> |
|  | Unit of Measure Code | [Unit of Measure Code](../table/5902.md#fields) | Specifies how each unit of the item or resource is measured, such as in pieces or hours. By default, the value in the Base Unit of Measure field on the item or resource card is inserted. <small>from the table field</small> |
|  | Unit Cost (LCY) | [Unit Cost (LCY)](../table/5902.md#fields) | Specifies the cost, in LCY, of one unit of the item or resource on the line. |
|  | Unit Price | [Unit Price](../table/5902.md#fields) | Specifies the price of one unit of the item or resource. You can enter a price manually or have it entered according to the Price/Profit Calculation field on the related card. <small>from the table field</small> |
|  | Line Amount | [Line Amount](../table/5902.md#fields) | Specifies the net amount, excluding any invoice discount amount, that must be paid for products on the line. <small>from the table field</small> |
|  | Tax Liable | [Tax Liable](../table/5902.md#fields) | Specifies that items, resources, or costs on the current service line are liable for sales tax. |
|  | Tax Area Code | [Tax Area Code](../table/5902.md#fields) | Specifies the tax area that is used to calculate and post sales tax. <small>from the table field</small> |
|  | Tax Group Code | [Tax Group Code](../table/5902.md#fields) | Specifies the tax group that is used to calculate and post sales tax. <small>from the table field</small> |
|  | Line Discount % | [Line Discount %](../table/5902.md#fields) | Specifies the discount percentage that is granted for the item on the line. <small>from the table field</small> |
|  | Line Discount Amount | [Line Discount Amount](../table/5902.md#fields) | Specifies the discount amount that is granted for the item on the line. <small>from the table field</small> |
|  | Line Discount Type | [Line Discount Type](../table/5902.md#fields) | Specifies the type of the line discount assigned to this line. <small>from the table field</small> |
|  | Qty. to Ship | [Qty. to Ship](../table/5902.md#fields) | Specifies the quantity of items that remain to be shipped. <small>from the table field</small> |
|  | Quantity Shipped | [Quantity Shipped](../table/5902.md#fields) | Specifies how many units of the item on the line have been posted as shipped. <small>from the table field</small> |
|  | Qty. to Invoice | [Qty. to Invoice](../table/5902.md#fields) | Specifies the quantity of the items, resources, costs, or general ledger account payments, which should be invoiced. <small>from the table field</small> |
|  | Quantity Invoiced | [Quantity Invoiced](../table/5902.md#fields) | Specifies how many units of the item on the line have been posted as invoiced. <small>from the table field</small> |
|  | Qty. to Consume | [Qty. to Consume](../table/5902.md#fields) | Specifies the quantity of items, resource hours, costs, or G/L account payments that should be consumed. <small>from the table field</small> |
|  | Quantity Consumed | [Quantity Consumed](../table/5902.md#fields) | Specifies the quantity of items, resource hours, costs, or general ledger account payments on this line, which have been posted as consumed. <small>from the table field</small> |
|  | Job Remaining Qty. | [Job Remaining Qty.](../table/5902.md#fields) | Specifies the quantity that remains to complete a project. <small>from the table field</small> |
|  | Job Remaining Total Cost | [Job Remaining Total Cost](../table/5902.md#fields) | Specifies the remaining total cost, as the sum of costs from project planning lines associated with the order. <small>from the table field</small> |
|  | Job Remaining Total Cost (LCY) | [Job Remaining Total Cost (LCY)](../table/5902.md#fields) | Specifies the remaining total cost for the project planning line associated with the service order. |
|  | Job Remaining Line Amount | [Job Remaining Line Amount](../table/5902.md#fields) | Specifies the net amount of the project planning line. <small>from the table field</small> |
|  | Work Type Code | [Work Type Code](../table/5902.md#fields) | Specifies a code for the type of work performed by the resource registered on this line. <small>from the table field</small> |
|  | Fault Reason Code | [Fault Reason Code](../table/5902.md#fields) | Specifies the code of the fault reason for this service line. <small>from the table field</small> |
|  | Fault Area Code | [Fault Area Code](../table/5902.md#fields) | Specifies the code of the fault area associated with this line. <small>from the table field</small> |
|  | Symptom Code | [Symptom Code](../table/5902.md#fields) | Specifies the code of the symptom associated with this line. <small>from the table field</small> |
|  | Fault Code | [Fault Code](../table/5902.md#fields) | Specifies the code of the fault associated with this line. <small>from the table field</small> |
|  | Resolution Code | [Resolution Code](../table/5902.md#fields) | Specifies the code of the resolution associated with this line. <small>from the table field</small> |
|  | Serv. Price Adjmt. Gr. Code | [Serv. Price Adjmt. Gr. Code](../table/5902.md#fields) | Specifies the service price adjustment group code that applies to this line. <small>from the table field</small> |
|  | Allow Invoice Disc. | [Allow Invoice Disc.](../table/5902.md#fields) | Specifies if the invoice line is included when the invoice discount is calculated. <small>from the table field</small> |
|  | Inv. Discount Amount | [Inv. Discount Amount](../table/5902.md#fields) | Specifies the total calculated invoice discount amount for the line. <small>from the table field</small> |
|  | Exclude Warranty | [Exclude Warranty](../table/5902.md#fields) | Specifies that the warranty discount is excluded on this line. <small>from the table field</small> |
|  | Exclude Contract Discount | [Exclude Contract Discount](../table/5902.md#fields) | Specifies that the contract discount is excluded for the item, resource, or cost on this line. <small>from the table field</small> |
|  | Warranty | [Warranty](../table/5902.md#fields) | Specifies that a warranty discount is available on this line of type Item or Resource. <small>from the table field</small> |
|  | Warranty Disc. % | [Warranty Disc. %](../table/5902.md#fields) | Specifies the percentage of the warranty discount that is valid for the items or resources on this line. <small>from the table field</small> |
|  | Contract No. | [Contract No.](../table/5902.md#fields) | Specifies the number of the contract, if the service order originated from a service contract. <small>from the table field</small> |
|  | Contract Disc. % | [Contract Disc. %](../table/5902.md#fields) | Specifies the contract discount percentage that is valid for the items, resources, and costs on this line. <small>from the table field</small> |
|  | VAT % | [VAT %](../table/5902.md#fields) | Specifies the VAT percentage used to calculate Amount Including VAT on this line. <small>from the table field</small> |
|  | VAT Base Amount | [VAT Base Amount](../table/5902.md#fields) | Specifies the amount that serves as a base for calculating the Amount Including VAT field. <small>from the table field</small> |
|  | Amount Including VAT | [Amount Including VAT](../table/5902.md#fields) | Specifies the net amount, including VAT, for this line. <small>from the table field</small> |
|  | Gen. Bus. Posting Group | [Gen. Bus. Posting Group](../table/5902.md#fields) | Specifies the vendor's or customer's trade type to link transactions made for this business partner with the appropriate general ledger account according to the general posting setup. <small>from the table field</small> |
|  | Gen. Prod. Posting Group | [Gen. Prod. Posting Group](../table/5902.md#fields) | Specifies the item's product type to link transactions made for this item with the appropriate general ledger account according to the general posting setup. <small>from the table field</small> |
|  | Posting Group | [Posting Group](../table/5902.md#fields) | Specifies the inventory posting group assigned to the item. <small>from the table field</small> |
|  | Planned Delivery Date | [Planned Delivery Date](../table/5902.md#fields) | Specifies the planned date that the shipment will be delivered at the customer's address. If the customer requests a delivery date, the program calculates whether the items will be available for delivery on this date. If the items are available, the planned delivery date will be the same as the requ... <small>from the table field</small> |
|  | Needed by Date | [Needed by Date](../table/5902.md#fields) | Specifies the date when you require the item to be available for a service order. <small>from the table field</small> |
|  | Posting Date | [Posting Date](../table/5902.md#fields) | Specifies the date when the service line should be posted. <small>from the table field</small> |
|  | Job No. | [Job No.](../table/5902.md#fields) | Specifies the number of the related project. <small>from the table field</small> |
|  | Job Task No. | [Job Task No.](../table/5902.md#fields) | Specifies the number of the related project task. <small>from the table field</small> |
|  | Job Planning Line No. | [Job Planning Line No.](../table/5902.md#fields) | Specifies the project planning line number associated with this line. This establishes a link that can be used to calculate actual usage. <small>from the table field</small> |
|  | Job Line Type | [Job Line Type](../table/5902.md#fields) | Specifies the type of journal line that is created in the Project Planning Line table from this line. <small>from the table field</small> |
|  | Shortcut Dimension 1 Code | [Shortcut Dimension 1 Code](../table/5902.md#fields) | Specifies the code for Shortcut Dimension 1, which is one of two global dimension codes that you set up in the General Ledger Setup window. <small>from the table field</small> |
|  | Shortcut Dimension 2 Code | [Shortcut Dimension 2 Code](../table/5902.md#fields) | Specifies the code for Shortcut Dimension 2, which is one of two global dimension codes that you set up in the General Ledger Setup window. <small>from the table field</small> |
|  | ShortcutDimCode[3] | `ShortcutDimCode[3]` | — |
|  | ShortcutDimCode[4] | `ShortcutDimCode[4]` | — |
|  | ShortcutDimCode[5] | `ShortcutDimCode[5]` | — |
|  | ShortcutDimCode[6] | `ShortcutDimCode[6]` | — |
|  | ShortcutDimCode[7] | `ShortcutDimCode[7]` | — |
|  | ShortcutDimCode[8] | `ShortcutDimCode[8]` | — |
| FactBoxes | Documents | part [Page 1178 "Doc. Attachment List Factbox"](../page/1178.md) | — |
|  | Control1904739907 | part [Page 9124 "Service Line FactBox"](../page/9124.md) | — |

## Actions

| Group | Action | ToolTip | Runs |
|---|---|---|---|
| Order | Service Ledger Entries | View all the ledger entries for the service item or service order that result from posting transactions in service documents. | [Page 5912 "Service Ledger Entries"](../page/5912.md) |
|  | Warranty Ledger Entries | View all the ledger entries for the service item or service order that result from posting transactions in service documents that contain warranty agreements. | [Page 5913 "Warranty Ledger Entries"](../page/5913.md) |
|  | Project Ledger Entries | View all the project ledger entries that result from posting transactions in the service document that involve a project. | [Page 92 "Job Ledger Entries"](../page/92.md) |
|  | Customer Card | View detailed information about the customer. | [Page 21 "Customer Card"](../page/21.md) |
|  | Comments | View or add comments for the record. | [Page 5911 "Service Comment Sheet"](../page/5911.md) |
|  | Shipments | View related posted service shipments. |  |
|  | Invoices | View a list of ongoing sales invoices for the order. |  |
|  | Warehouse Shipment Lines | View ongoing warehouse shipments for the document, in advanced warehouse configurations. | [Page 7341 "Whse. Shipment Lines"](../page/7341.md) |
| Line | Dimensions | View or edit dimensions, such as area, project, or department, that you can assign to sales and purchase documents to distribute costs and analyze transaction history. |  |
| Item Availability by | Event | View how the actual and the projected available balance of an item will develop over time according to supply and demand events. |  |
|  | Period | View the projected quantity of the item over time according to time periods, such as day, week, or month. |  |
|  | Variant | View or edit the item's variants. Instead of setting up each color of an item as a separate item, you can set up the various colors as variants of the item. |  |
|  | Location | View the actual and projected quantity of the item per location. |  |
|  | Lot | View the current and projected quantity of the item in each lot. | [Page 520 "Item Availability by Lot No."](../page/520.md) |
|  | BOM Level | View availability figures for items on bills of materials that show how many units of a parent item you can make based on the availability of child items. |  |
| Line | Reservation Entries | View the entries for every reservation that is made, either manually or automatically. |  |
|  | Item Tracking Lines | View or edit serial, lot and package numbers that are assigned to the item on the document or journal line. |  |
|  | Select Item Substitution | Select another item that has been set up to be traded instead of the original item if it is unavailable. |  |
|  | Fault/Resol. Codes Relationships | View or edit the relationships between fault codes, including the fault, fault area, and symptom codes, as well as resolution codes and service item groups. It displays the existing combinations of these codes for the service item group of the service item from which you accessed the window and the ... |  |
|  | Order Promising | Calculate the shipment and delivery dates based on the item's known and expected availability dates, and then promise the dates to the customer. |  |
|  | Attachments | Add a file as an attachment. You can attach images as well as documents. |  |
| Functions | Insert Ext. Texts | Insert the extended item description that is set up for the item that is being processed on the line. |  |
|  | Insert Starting Fee | Add a general starting fee for the service order. |  |
|  | Insert Travel Fee | Add a general travel fee for the service order. |  |
|  | Select items | Add two or more items from the full list of available items. |  |
|  | Split Resource Line | Distribute a resource's work on multiple service item lines. If the same resource works on all the service items in the service order, you can register the total resource hours for one service item only and then split the resource line to divide the resource hours onto the resource lines for the oth... |  |
|  | Reserve | Reserve the quantity that is required on the document line that you opened this window for. |  |
|  | Order Tracking | Tracks the connection of a supply to its corresponding demand. This can help you find the original demand that created a specific production order or purchase order. |  |
|  | Catalog Items | View the list of items that you do not carry in inventory. |  |
|  | Create Lines from Time Sheets | Insert service lines according to an existing time sheet. |  |
| Price/Discount | Get Price | Insert the lowest possible price in the Unit Price field according to any special price that you have set up. |  |
|  | Adjust Service Price | Adjust existing service prices according to changed costs, spare parts, and resource hours. Note that prices are not adjusted for service items that belong to service contracts, service items with a warranty, items service on lines that are partially or fully invoiced. When you run the service price... |  |
|  | Undo Price Adjustment | Cancel the latest price change and reset the previous price. |  |
|  | Get Line Discount | Insert the best possible discount in the Line Discount field according to any special discounts that you have set up. |  |
|  | Get Line Discount | Insert the best possible discount in the Line Discount field according to any special discounts that you have set up. |  |
|  | Calculate Invoice Discount | Calculate the invoice discount that applies to the service order. |  |
| Posting | Post | Finalize the document or journal by posting the amounts and quantities to the related accounts in your company books. |  |
|  | Preview Posting | Review the different types of entries that will be created when you post the document or journal. |  |

## Events published

- `OnBeforeInsertExtendedText(var ServiceLine: Record "Service Line")` (integration)
- `OnBeforeSetSelectionFilter(var SelectionFilter: Option "All Service Lines","Lines per Selected Service Item","Lines Not Item Related"; var ServiceLine: Record "Service Line")` (integration)
- `OnOpenPageOnBeforeSetSelectionFilter(var SelectionFilter: Option)` (integration)
- `OnPostOnBeforeInsertTempServiceLine(var ServiceLine: Record "Service Line"; var TempServiceLine: Record "Service Line" temporary)` (integration)

## Procedures

- `CalcInvDisc(var ServLine: Record "Service Line")`
- `Initialize(NewServItemLine: Integer)`
- `SetSelectionFilter()`
- `InsertExtendedText(Unconditionally: Boolean)`
- `LocationCodeOnAfterValidate()`
- `QuantityOnAfterValidate()`
- `PostingDateOnAfterValidate()`

Plus 6 local procedures.

## Triggers

OnAfterGetRecord, OnDeleteRecord, OnInsertRecord, OnNewRecord, OnOpenPage

## Relations

- source table [Table 5902 "Service Line"](../table/5902.md)

## Extended by

- [Page extension 5049 "SD Service Lines"](../pageextension/5049.md)
- [Page extension 6308 "Sust. Service Lines"](../pageextension/6308.md)
- [Page extension 6628 "FS Service Lines"](../pageextension/6628.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 6003 "Service Transfer Ext. Text"](../codeunit/6003.md) (3 calls: `InsertExtendedText → InsertServExtText`, `InsertExtendedText → MakeUpdate`, `InsertExtendedText → ServCheckIfAnyExtText`)
- [Codeunit 5900 "ServOrderManagement"](../codeunit/5900.md) (2 calls: `InsertStartFee → InsertServCost`, `InsertTravelFee → InsertServCost`)
- [Codeunit 99000842 "Service Line-Reserve"](../codeunit/99000842.md) (2 calls: `OnDeleteRecord → DeleteLine`, `OnDeleteRecord → DeleteLineConfirm`)
- [Codeunit 5950 "Service-Calc. Discount"](../codeunit/5950.md) (1 call: `CalcInvDisc → (object)`)
- [Codeunit 7001 "Price Calculation Mgt."](../codeunit/7001.md) (1 call: `OnOpenPage → IsExtendedPriceCalculationEnabled`)

## Across versions

- Present in: BC23-30
- Changed (declaration) in: BC24-25

## Documented on Microsoft Learn

- [Sustainability value chain in Service Management](https://learn.microsoft.com/dynamics365/business-central/value-chain-howto-service)

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