---
id: object/table/99000830
type: object
title: Table 99000830 "Planning Routing Line"
summary: Table 99000830 "Planning Routing Line" in Base Application (Microsoft.Manufacturing.Routing). 52 fields, 11 public procedures, 9 events. Present since at least BC23, still in BC30, changed in BC24-25, 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: aca70d3f1ebf94df8f3c326b9259ea19ab1e7471c2648cd15e34f7df71ac2b01
evidence:
  - kind: code
    url: https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Layers/W1/BaseApp/Manufacturing/Routing/PlanningRoutingLine.Table.al
    title: src/Layers/W1/BaseApp/Manufacturing/Routing/PlanningRoutingLine.Table.al (releases/29.x)
    date: null
    commit: ea08af5ef2d6a9b5c5af4a029288abbe2c883220
    t: null
    quote: null
links:
  learn:
    - https://learn.microsoft.com/dynamics365/business-central/production-how-to-replan-refresh-production-orders
  objects: []
  features: []
  topics:
    - topic/business-central/business-functionality/planning
  localizations:
    - localization/it
  videos: []
  posts: []
  guidelines: []
object_type: table
object_id: 99000830
name: Planning Routing Line
namespace: Microsoft.Manufacturing.Routing
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"
  - "28"
source_major: "29"
obsolete: null
countries:
  - it
ms_search_form_ids: []
counts:
  fields: 52
  procedures: 28
  events: 9
  subscribers: 0
relations:
  out: 15
  referenced_by: 1
  pages: 1
  extended_by: 1
  event_subscribers: 1
  calls: 2
  called_by: 0
  implements: 0
---

# Table 99000830 "Planning Routing Line"

> Table 99000830 "Planning Routing Line" in Base Application (Microsoft.Manufacturing.Routing). 52 fields, 11 public procedures, 9 events. Present since at least BC23, still in BC30, changed in BC24-25, BC28.

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

Learn documents this table through its pages: [Page 99000863 "Planning Routing"](../page/99000863.md) (1 Learn page).

## Properties

| Property | Value |
|---|---|
| Caption | Planning Routing Line |
| DataClassification | CustomerContent |
| Permissions | TableData "Prod. Order Capacity Need" = rmd |

## 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 | Worksheet Template Name | Code[10] | — | TableRelation [Table 244 "Req. Wksh. Template"](../table/244.md) (Req. Wksh. Template); not editable |
| 2 | Worksheet Batch Name | Code[10] | — | TableRelation [Table 245 "Requisition Wksh. Name"](../table/245.md) (if ("Worksheet Template Name" = filter(<> '')) "Requisition Wksh. Name".Name where("Worksheet Template Name" = field("Worksheet Template Name"))) |
| 3 | Worksheet Line No. | Integer | — | TableRelation [Table 246 "Requisition Line"](../table/246.md) ("Requisition Line"."Line No." where("Worksheet Template Name" = field("Worksheet Template Name"), "Journal Batch Name" = field("Worksheet Batch Name"))) |
| 4 | Operation No. | Code[10] | Specifies the operation number for this planning routing line. | NotBlank |
| 5 | Next Operation No. | Code[30] | Specifies the next operation number if you use parallel routings. |  |
| 6 | Previous Operation No. | Code[30] | Specifies the previous operation number and shows the operation that is run directly before the operation. |  |
| 7 | Type | Enum "Capacity Type" | Specifies the type of operation. | enum [Enum 5871 "Capacity Type"](../enum/5871.md) |
| 8 | No. | Code[20] | Specifies the number of the involved entry or record, according to the specified number series. | TableRelation [Table 99000754 "Work Center"](../table/99000754.md), [Table 99000758 "Machine Center"](../table/99000758.md) (if (Type = const("Work Center")) "Work Center" else if (Type = const("Machine Center")) "Machine Center") |
| 9 | Work Center No. | Code[20] | — | TableRelation [Table 99000754 "Work Center"](../table/99000754.md) (Work Center); not editable |
| 10 | Work Center Group Code | Code[10] | — | TableRelation [Table 99000756 "Work Center Group"](../table/99000756.md) (Work Center Group); not editable |
| 11 | Description | Text[100] | Specifies a description of the task related to this routing line. |  |
| 12 | Setup Time | Decimal | Specifies the setup time using the unit of measure from the Setup Time Unit of Measure field on the work or machine center card. |  |
| 13 | Run Time | Decimal | Specifies the run time of the operation. |  |
| 14 | Wait Time | Decimal | Specifies the wait time. |  |
| 15 | Move Time | Decimal | Specifies the move time using the unit of measure in the Move Time Unit of Measure field on the machine or work center card. |  |
| 16 | Fixed Scrap Quantity | Decimal | Specifies a fixed scrap quantity for this routing line. |  |
| 17 | Lot Size | Decimal | Specifies the number of items that are included in the same operation at the same time. The run time on routing lines is reduced proportionally to the lot size. For example, if the lot size is two pieces, the run time will be reduced by half. |  |
| 18 | Scrap Factor % | Decimal | Specifies the scrap factor as a percentage. |  |
| 19 | Setup Time Unit of Meas. Code | Code[10] | — | TableRelation [Table 99000780 "Capacity Unit of Measure"](../table/99000780.md) (Capacity Unit of Measure) |
| 20 | Run Time Unit of Meas. Code | Code[10] | — | TableRelation [Table 99000780 "Capacity Unit of Measure"](../table/99000780.md) (Capacity Unit of Measure) |
| 21 | Wait Time Unit of Meas. Code | Code[10] | — | TableRelation [Table 99000780 "Capacity Unit of Measure"](../table/99000780.md) (Capacity Unit of Measure) |
| 22 | Move Time Unit of Meas. Code | Code[10] | — | TableRelation [Table 99000780 "Capacity Unit of Measure"](../table/99000780.md) (Capacity Unit of Measure) |
| 23 | Description 2 | Text[50] | Specifies additional description text. |  |
| 27 | Minimum Process Time | Decimal | — |  |
| 28 | Maximum Process Time | Decimal | — |  |
| 30 | Concurrent Capacities | Decimal | Specifies the quantity of machines or personnel that can perform their expected functions simultaneously. |  |
| 31 | Send-Ahead Quantity | Decimal | Specifies the output of the operation that must be completed before the next operation can be started. |  |
| 34 | Routing Link Code | Code[10] | Specifies the routing link code. <small>via [Page 99000863 "Planning Routing"](../page/99000863.md)</small> | TableRelation [Table 99000777 "Routing Link"](../table/99000777.md) (Routing Link) |
| 35 | Standard Task Code | Code[10] | — | TableRelation [Table 99000778 "Standard Task"](../table/99000778.md) (Standard Task) |
| 40 | Unit Cost per | Decimal | Specifies the unit cost for this operation if it is different than the unit cost on the work center or machine center card. |  |
| 41 | Recalculate | Boolean | — | not editable |
| 50 | Sequence No.(Forward) | Integer | — | not editable |
| 51 | Sequence No.(Backward) | Integer | — | not editable |
| 52 | Fixed Scrap Qty. (Accum.) | Decimal | — | not editable |
| 53 | Scrap Factor % (Accumulated) | Decimal | — | not editable |
| 55 | Sequence No. (Actual) | Integer | — | not editable |
| 56 | Direct Unit Cost | Decimal | — |  |
| 57 | Indirect Cost % | Decimal | — |  |
| 58 | Overhead Rate | Decimal | — |  |
| 61 | Output Quantity | Decimal | — | not editable |
| 70 | Starting Time | Time | Specifies the starting time for the operation for this planning routing line. |  |
| 71 | Starting Date | Date | Specifies the starting date for the operation for this planning routing line. |  |
| 72 | Ending Time | Time | Specifies the ending time of the operation for this planning routing line. |  |
| 73 | Ending Date | Date | Specifies the ending date of the operation for this planning routing line. |  |
| 76 | Unit Cost Calculation | Enum "Unit Cost Calculation Type" | — | enum [Enum 5409 "Unit Cost Calculation Type"](../enum/5409.md) |
| 77 | Input Quantity | Decimal | — | not editable |
| 78 | Critical Path | Boolean | — | not editable |
| 98 | Starting Date-Time | DateTime | Specifies the starting date and the starting time, which are combined in a format called "starting date-time". |  |
| 99 | Ending Date-Time | DateTime | Specifies the ending date and the ending time, which are combined in a format called "ending date-time". |  |
| 99000909 | Expected Operation Cost Amt. | Decimal | — | not editable |
| 99000910 | Expected Capacity Ovhd. Cost | Decimal | — | not editable |
| 99000911 | Expected Capacity Need | Decimal | — | not editable |

## Keys

- Key1: Worksheet Template Name, Worksheet Batch Name, Worksheet Line No., Operation No. (clustered)
- Key2: Worksheet Template Name, Worksheet Batch Name, Worksheet Line No., Sequence No.(Forward)
- Key3: Worksheet Template Name, Worksheet Batch Name, Worksheet Line No., Sequence No.(Backward)
- Key4: Worksheet Template Name, Worksheet Batch Name, Worksheet Line No., Sequence No. (Actual)
- Key5: Worksheet Template Name, Worksheet Batch Name, Type, No., Starting Date
- Key6: Work Center No.
- Key7: Type, No.

## Events published

- `OnAfterWorkCenterTransferFields(var PlanningRoutingLine: Record "Planning Routing Line"; var WorkCenter: Record "Work Center")` (integration)
- `OnAfterMachineCtrTransferFields(var PlanningRoutingLine: Record "Planning Routing Line"; var WorkCenter: Record "Work Center"; var MachineCenter: Record "Machine Center")` (integration)
- `OnAfterTransferFromProdOrderRouting(var PlanningRoutingLine: Record "Planning Routing Line"; var ProdOrderRtngLine: Record "Prod. Order Routing Line")` (integration)
- `OnAfterTransferFromRoutingLine(var PlanningRoutingLine: Record "Planning Routing Line"; var RoutingLine: Record "Routing Line")` (integration)
- `OnAfterTransferFromReqLine(var PlanningRoutingLine: Record "Planning Routing Line"; var RequisitionLine: Record "Requisition Line")` (integration)
- `OnAfterUpdateDatetime(var PlanningRoutingLine: Record "Planning Routing Line"; xPlanningRoutingLine: Record "Planning Routing Line"; FieldNo: Integer)` (integration)
- `OnBeforeCalcStartingEndingDates(var PlanningRoutingLine: Record "Planning Routing Line"; var IsHandled: Boolean)` (integration)
- `OnMachineCtrTransferFieldsOnAfterWorkCenterTransferFields(var PlanningRoutingLine: Record "Planning Routing Line"; xPlanningRoutingLine: Record "Planning Routing Line"; WorkCenter: Record "Work Center"; MachineCenter: Record "Machine Center"; var IsHandled: Boolean)` (integration)
- `OnBeforeWorkCenterTransferFields(var PlanningRoutingLine: Record "Planning Routing Line"; xPlanningRoutingLine: Record "Planning Routing Line"; WorkCenter: Record "Work Center"; var IsHandled: Boolean)` (integration)

## Trigger event subscribers

- OnBeforeInsertEvent: [Codeunit 99000788 "Mfg. Experience Tier"](../codeunit/99000788.md) BlockInsertPlanningRoutingLine

## Procedures

- `Caption(): Text`
- `SetRecalcStatus()`
- `RunTimePer(): Decimal`
- `CalcStartingEndingDates()`
- `TransferFromProdOrderRouting(var ProdOrderRoutingLine: Record "Prod. Order Routing Line")`
- `TransferFromReqLine(ReqLine: Record "Requisition Line")`
- `TransferFromRoutingLine(RoutingLine: Record "Routing Line")`
- `UpdateDatetime()`
- `SetNextOperations()`
- `SetPreviousAndNext()`
- `IsSerial(): Boolean`

Plus 8 local procedures.

## Triggers

OnDelete, OnInsert, OnRename

## Relations

- drill-down page [Page 99000863 "Planning Routing"](../page/99000863.md)
- lookup page [Page 99000863 "Planning Routing"](../page/99000863.md)
- Worksheet Template Name: TableRelation [Table 244 "Req. Wksh. Template"](../table/244.md)
- Worksheet Batch Name: TableRelation [Table 245 "Requisition Wksh. Name"](../table/245.md)
- Worksheet Line No.: TableRelation [Table 246 "Requisition Line"](../table/246.md)
- No.: TableRelation [Table 99000754 "Work Center"](../table/99000754.md) (conditional)
- Work Center No.: TableRelation [Table 99000754 "Work Center"](../table/99000754.md)
- Work Center Group Code: TableRelation [Table 99000756 "Work Center Group"](../table/99000756.md)
- No.: TableRelation [Table 99000758 "Machine Center"](../table/99000758.md) (conditional)
- Routing Link Code: TableRelation [Table 99000777 "Routing Link"](../table/99000777.md)
- Standard Task Code: TableRelation [Table 99000778 "Standard Task"](../table/99000778.md)
- Move Time Unit of Meas. Code: TableRelation [Table 99000780 "Capacity Unit of Measure"](../table/99000780.md)
- Run Time Unit of Meas. Code: TableRelation [Table 99000780 "Capacity Unit of Measure"](../table/99000780.md)
- Setup Time Unit of Meas. Code: TableRelation [Table 99000780 "Capacity Unit of Measure"](../table/99000780.md)
- Wait Time Unit of Meas. Code: TableRelation [Table 99000780 "Capacity Unit of Measure"](../table/99000780.md)

## Referenced by

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

- [Table extension 99000860 "Mfg. Requisition Line"](../tableextension/99000860.md): Expected Operation Cost Amt.

## Pages and codeunits on this table

- [Page 99000863 "Planning Routing"](../page/99000863.md) (source table)

## Extended by

- [Table extension 20530 "Subc. Planning Rtng. Line"](../tableextension/20530.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 99000808 "PlanningRoutingManagement"](../codeunit/99000808.md) (8 calls: `CalcStartingEndingDates → CalcSequenceFromActual`, `CalcStartingEndingDates → CalculateRoutingFromActual`, `CalculateRoutingBack → CalcSequenceFromActual`, …)
- [Codeunit 5402 "Unit of Measure Management"](../codeunit/5402.md) (1 call: `RunTimePer → TimeRndPrecision`)

## Across versions

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

## Countries that replace it

[IT](../../localizations/it.md)

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