---
id: object/table/5950
type: object
title: Table 5950 "Service Order Allocation"
summary: Table 5950 "Service Order Allocation" in Base Application (Microsoft.Service.Document). 19 fields, 3 public procedures, 4 events. Present since at least BC23, still in BC30, changed in BC24, 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: 1a88af473fdba8ed7d80c900ab0beaa738166165d2dfcc6c800ff5af294fe9b3
evidence:
  - kind: code
    url: https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Layers/W1/BaseApp/Service/Document/ServiceOrderAllocation.Table.al
    title: src/Layers/W1/BaseApp/Service/Document/ServiceOrderAllocation.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: 5950
name: Service Order Allocation
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"
  - "28"
source_major: "29"
obsolete: null
countries: []
ms_search_form_ids: []
counts:
  fields: 19
  procedures: 10
  events: 4
  subscribers: 0
relations:
  out: 9
  referenced_by: 17
  pages: 5
  extended_by: 0
  event_subscribers: 1
  calls: 1
  called_by: 0
  implements: 0
---

# Table 5950 "Service Order Allocation"

> Table 5950 "Service Order Allocation" in Base Application (Microsoft.Service.Document). 19 fields, 3 public procedures, 4 events. Present since at least BC23, still in BC30, changed in BC24, BC28.

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

## Properties

| Property | Value |
|---|---|
| Caption | Service Order Allocation |
| 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 | Specifies the number of the entry, as assigned from the specified number series when the entry was created. |  |
| 2 | Status | Option | Specifies the status of the entry, such as active, non-active, or cancelled. | OptionCaption: Nonactive,Active,Finished,Canceled,Reallocation Needed; not editable |
| 3 | Document No. | Code[20] | Specifies the number of the service order associated with this entry. | not editable |
| 4 | Allocation Date | Date | Specifies the date when the resource allocation should start. |  |
| 5 | Resource No. | Code[20] | Specifies the number of the resource allocated to the service task in this entry. | TableRelation [Table 156 "Resource"](../table/156.md) |
| 6 | Resource Group No. | Code[20] | Specifies the number of the resource group allocated to the service task in this entry. | TableRelation [Table 152 "Resource Group"](../table/152.md) (Resource Group) |
| 7 | Service Item Line No. | Integer | Specifies the number of the service item line linked to this entry. | TableRelation [Table 5901 "Service Item Line"](../table/5901.md) ("Service Item Line"."Line No." where("Document Type" = field("Document Type"), "Document No." = field("Document No."))) |
| 8 | Allocated Hours | Decimal | Specifies the hours allocated to the resource or resource group for the service task in this entry. |  |
| 9 | Starting Time | Time | Specifies the time when you want the allocation to start. |  |
| 10 | Finishing Time | Time | Specifies the time when you want the allocation to finish. |  |
| 11 | Description | Text[100] | Specifies a description for the service order allocation. |  |
| 12 | Reason Code | Code[10] | Specifies the reason code, a supplementary source code that enables you to trace the entry. | TableRelation [Table 231 "Reason Code"](../table/231.md) (Reason Code) |
| 13 | Service Item No. | Code[20] | Specifies the number of the service item. | TableRelation [Table 5940 "Service Item"](../table/5940.md) (if ("Document Type" = filter(<> "Credit Memo")) "Service Item"."No." where(Blocked = filter(<> All)) else if ("Document Type" = filter("Credit Memo")) "Service Item"."No.") |
| 14 | Posted | Boolean | — |  |
| 15 | Service Item Description | Text[100] | Specifies a description of the service item in this entry. | FlowField: lookup("Service Item Line".Description where("Document Type" = field("Document Type"), "Document No." = field("Document No."), "Line No." = field("Service Item Line No."))); not editable |
| 16 | Service Item Serial No. | Code[50] | Specifies the serial number of the service item in this entry. |  |
| 17 | Repair Status | Code[20] | — | FlowField: lookup("Service Item Line"."Repair Status Code" where("Document Type" = field("Document Type"), "Document No." = field("Document No."), "Line No." = field("Service Item Line No."))); not editable |
| 18 | Service Started | Boolean | — |  |
| 19 | Document Type | Enum "Service Document Type" | Specifies the type of the document (Order or Quote) from which the allocation entry was created. | enum [Enum 5900 "Service Document Type"](../enum/5900.md); not editable |

## Keys

- Key1: Entry No. (clustered)
- Key2: Status, Document Type, Document No., Service Item Line No., Allocation Date, Starting Time, Posted
- Key3: Document Type, Document No., Status, Resource Group No., Allocation Date, Starting Time, Posted
- Key4: Status, Document Type, Document No., Service Item Line No., Resource No., Allocation Date, Starting Time, Posted
- Key5: Document Type, Document No., Service Item Line No., Allocation Date, Starting Time, Posted
- Key6: Resource No., Document Type, Allocation Date, Status, Posted

## Events published

- `OnBeforeCheckAllocationEntry(var ServiceOrderAllocation: Record "Service Order Allocation"; var IsHandled: Boolean)` (integration)
- `OnBeforeCreateReallocationEntry(var ServiceOrderAllocation: Record "Service Order Allocation"; var IsHandled: Boolean)` (integration)
- `OnBeforeValidateStartEndTime(var ServiceOrderAllocation: Record "Service Order Allocation"; var IsHandled: Boolean)` (integration)
- `OnCreateReallocationEntryOnBeforeResetRepairStatus(var ServiceOrderAllocation: Record "Service Order Allocation")` (integration)

## Trigger event subscribers

- OnBeforeInsertEvent: [Codeunit 5999 "Service Experience Tier"](../codeunit/5999.md) BlockInsertServiceOrderAllocation

## Procedures

- `GetHideDialog(): Boolean`
- `SetHideDialog(HideDialog1: Boolean)`
- `SetFilters(ServiceItemLine: Record "Service Item Line")`

Plus 3 local procedures.

## Triggers

OnDelete, OnInsert, OnModify

## Relations

- drill-down page [Page 6001 "Service Order Allocations"](../page/6001.md)
- lookup page [Page 6001 "Service Order Allocations"](../page/6001.md)
- Resource Group No.: TableRelation [Table 152 "Resource Group"](../table/152.md)
- Resource No.: TableRelation [Table 156 "Resource"](../table/156.md)
- Reason Code: TableRelation [Table 231 "Reason Code"](../table/231.md)
- Repair Status: CalcFormula [Table 5901 "Service Item Line"](../table/5901.md)
- Service Item Description: CalcFormula [Table 5901 "Service Item Line"](../table/5901.md)
- Service Item Line No.: TableRelation [Table 5901 "Service Item Line"](../table/5901.md)
- Service Item No.: TableRelation [Table 5940 "Service Item"](../table/5940.md) (conditional)

## Referenced by

17 fields in 8 objects relate to this table (TableRelation or CalcFormula).

- [Table 5900 "Service Header"](../table/5900.md): Allocated Hours, No. of Allocations, Reallocation Needed
- [Table 5990 "Service Shipment Header"](../table/5990.md): Allocated Hours, No. of Allocations, Reallocation Needed
- [Table 5992 "Service Invoice Header"](../table/5992.md): Allocated Hours, No. of Allocations, Reallocation Needed
- [Table 5994 "Service Cr.Memo Header"](../table/5994.md): Allocated Hours, No. of Allocations, Reallocation Needed
- [Table 5901 "Service Item Line"](../table/5901.md): No. of Active/Finished Allocs, No. of Allocations
- [Table 5989 "Service Shipment Item Line"](../table/5989.md): No. of Active/Finished Allocs
- [Table extension 6456 "Serv. Resource"](../tableextension/6456.md): Qty. on Service Order
- [Table extension 6457 "Serv. Resource Group"](../tableextension/6457.md): Qty. on Service Order

## Pages and codeunits on this table

- [Page 6001 "Service Order Allocations"](../page/6001.md) (source table)
- [Page 6002 "Cancelled Allocation Reasons"](../page/6002.md) (source table)
- [Page 6003 "Cancelled Allocation Entries"](../page/6003.md) (source table)
- [Page 6005 "Resource Allocations"](../page/6005.md) (source table)
- [Page 6022 "Reallocation Entry Reasons"](../page/6022.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 5930 "ServAllocationManagement"](../codeunit/5930.md) (3 calls: `OnDelete → CheckServiceItemLineFinished`, `OnInsert → CheckServiceItemLineFinished`, `OnModify → CheckServiceItemLineFinished`)

## Across versions

- Present in: BC23-30
- Changed (declaration) in: BC24, 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: "Service Order Allocation")`, then `bcatlas_get_procedure_body` or `bcatlas_get_neighbors` on the returned id.
