---
id: object/table/1507
type: object
title: Table 1507 "Workflow Step Buffer"
summary: Table 1507 "Workflow Step Buffer" in Base Application (System.Automation). 16 fields, 18 public procedures. Present since at least BC23, still in BC30, changed in BC24.
tier: official
language: en
tags:
  - table
  - base application
versions:
  introduced: null
  last_changed: "24"
  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: 53d249ce4869f728d926a03d22ff535c2088c6c5254a570713debd90babf3d34
evidence:
  - kind: code
    url: https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Layers/W1/BaseApp/System/Workflow/WorkflowStepBuffer.Table.al
    title: src/Layers/W1/BaseApp/System/Workflow/WorkflowStepBuffer.Table.al (releases/29.x)
    date: null
    commit: ea08af5ef2d6a9b5c5af4a029288abbe2c883220
    t: null
    quote: null
links:
  learn:
    - https://learn.microsoft.com/dynamics365/business-central/across-use-workflows
  objects: []
  features: []
  topics:
    - topic/business-central/business-functionality/general-business-functionality/workflows/use-approval-workflows
  localizations: []
  videos: []
  posts: []
  guidelines: []
object_type: table
object_id: 1507
name: Workflow Step Buffer
namespace: System.Automation
app: Base Application
extends: null
first_version: "23"
last_version: "30"
present_in:
  - "23"
  - "24"
  - "25"
  - "26"
  - "27"
  - "28"
  - "29"
  - "30"
changed_in:
  - "24"
source_major: "29"
obsolete: null
countries: []
ms_search_form_ids: []
counts:
  fields: 16
  procedures: 40
  events: 0
  subscribers: 0
relations:
  out: 7
  referenced_by: 0
  pages: 4
  extended_by: 0
  event_subscribers: 0
  calls: 3
  called_by: 0
  implements: 0
---

# Table 1507 "Workflow Step Buffer"

> Table 1507 "Workflow Step Buffer" in Base Application (System.Automation). 16 fields, 18 public procedures. Present since at least BC23, still in BC30, changed in BC24.

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

Learn documents this table through its pages: [Page 1503 "Workflow Steps"](../page/1503.md) (1 Learn page).

## Properties

| Property | Value |
|---|---|
| Caption | Workflow Step Buffer |
| 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 | Order | Integer | — | DataClassification SystemMetadata |
| 2 | Indent | Integer | Specifies the relationship of the workflow step under parent workflow steps. <small>via [Page 1502 "Workflow Subpage"](../page/1502.md)</small> | DataClassification SystemMetadata |
| 3 | Event Description | Text[250] | Specifies the workflow event that triggers the related workflow response. <small>via [Page 1503 "Workflow Steps"](../page/1503.md)</small> | TableRelation [Table 1520 "Workflow Event"](../table/1520.md) ("Workflow Event".Description); DataClassification SystemMetadata |
| 4 | Condition | Text[100] | Specifies the condition that moderates the workflow event that you specified in the Event Description field. When you choose the field, the Event Conditions window opens in which you can specify condition values for predefined lists of relevant fields. <small>via [Page 1502 "Workflow Subpage"](../page/1502.md)</small> | DataClassification SystemMetadata |
| 5 | Response Description | Text[250] | Specifies the workflow response that is that triggered by the related workflow event. <small>via [Page 1503 "Workflow Steps"](../page/1503.md)</small> | TableRelation [Table 1521 "Workflow Response"](../table/1521.md) ("Workflow Response".Description); DataClassification SystemMetadata |
| 7 | Event Step ID | Integer | — | TableRelation [Table 1502 "Workflow Step"](../table/1502.md) ("Workflow Step".ID where("Workflow Code" = field("Workflow Code"), Type = const(Event))); DataClassification SystemMetadata |
| 8 | Response Step ID | Integer | — | TableRelation [Table 1502 "Workflow Step"](../table/1502.md) ("Workflow Step".ID where("Workflow Code" = field("Workflow Code"), Type = const(Response))); DataClassification SystemMetadata |
| 9 | Workflow Code | Code[20] | — | TableRelation Workflow.Code; DataClassification SystemMetadata |
| 10 | Parent Event Step ID | Integer | — | TableRelation [Table 1502 "Workflow Step"](../table/1502.md) ("Workflow Step".ID where("Workflow Code" = field("Workflow Code"), Type = const(Event))); DataClassification SystemMetadata |
| 11 | Previous Workflow Step ID | Integer | — | TableRelation [Table 1502 "Workflow Step"](../table/1502.md) ("Workflow Step".ID where("Workflow Code" = field("Workflow Code"))); DataClassification SystemMetadata |
| 12 | Response Description Style | Text[30] | — | DataClassification SystemMetadata |
| 14 | Entry Point | Boolean | Specifies the workflow step that starts the workflow. The first workflow step is always of type Entry Point. <small>via [Page 1502 "Workflow Subpage"](../page/1502.md)</small> | DataClassification SystemMetadata |
| 15 | Sequence No. | Integer | — | DataClassification SystemMetadata |
| 16 | Next Step Description | Text[250] | Specifies another workflow step than the next one in the sequence that you want to start, for example, because the event on the workflow step failed to meet a condition. <small>via [Page 1515 "Workflow Step Responses"](../page/1515.md)</small> | DataClassification SystemMetadata |
| 17 | Argument | Guid | — | DataClassification SystemMetadata |
| 18 | Template | Boolean | — | FlowField: lookup(Workflow.Template where(Code = field("Workflow Code"))) |

## Keys

- Key1: Order (clustered)

## Procedures

- `OpenEventConditions()`
- `DeleteEventConditions()`
- `OpenEventResponses()`
- `PopulateTable(WorkflowCode: Code[20])`
- `PopulateTableFromEvent(WorkflowCode: Code[20]; WorkflowEventID: Integer)`
- `ClearBuffer()`
- `PopulateLookupTable(WorkflowCode: Code[20])`
- `UpdateResponseDescriptionStyle()`
- `CalculateNewKey(BelowxRec: Boolean)`
- `CreateNewWhenThenLine(WorkflowCode: Code[20]; BelowxRec: Boolean)`
- `SetxRec(TempWorkflowStepBuffer: Record "Workflow Step Buffer" temporary)`
- `MoveLeft()`
- `MoveRight()`
- `UpdateNextStepDescription()`
- `GetWorkflowStep(var WorkflowStep: Record "Workflow Step"): Boolean`
- `NextStepLookup(): Boolean`
- `ResponseDescriptionLookup(ResponseFilter: Text; var WorkflowResponse: Record "Workflow Response"): Boolean`
- `UpdateRecFromWorkflowStep()`

Plus 22 local procedures.

## Triggers

OnDelete, OnInsert, OnModify

## Relations

- Template: CalcFormula [Table 1501 "Workflow"](../table/1501.md)
- Event Step ID: TableRelation [Table 1502 "Workflow Step"](../table/1502.md)
- Parent Event Step ID: TableRelation [Table 1502 "Workflow Step"](../table/1502.md)
- Previous Workflow Step ID: TableRelation [Table 1502 "Workflow Step"](../table/1502.md)
- Response Step ID: TableRelation [Table 1502 "Workflow Step"](../table/1502.md)
- Event Description: TableRelation [Table 1520 "Workflow Event"](../table/1520.md)
- Response Description: TableRelation [Table 1521 "Workflow Response"](../table/1521.md)

## Pages and codeunits on this table

- [Page 1502 "Workflow Subpage"](../page/1502.md) (source table)
- [Page 1503 "Workflow Steps"](../page/1503.md) (source table)
- [Page 1515 "Workflow Step Responses"](../page/1515.md) (source table)
- [Page 1525 "Workflow Response FactBox"](../page/1525.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 1501 "Workflow Management"](../codeunit/1501.md) (1 call: `UpdateCondition → BuildConditionDisplay`)
- [Page 1515 "Workflow Step Responses"](../page/1515.md) (1 call: `OpenEventResponses → (object)`)
- [Page 1521 "Workflow Responses"](../page/1521.md) (1 call: `ResponseDescriptionLookup → (object)`)

## Across versions

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

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