---
id: object/codeunit/20424
type: object
title: Codeunit 20424 "Qlty. Workflow Response"
summary: Codeunit 20424 "Qlty. Workflow Response" in Quality Management (Microsoft.QualityManagement.Workflow). 36 public procedures, 1 events, 1 event subscribers. Introduced in BC29, still in BC30.
tier: official
language: en
tags:
  - codeunit
  - quality management
versions:
  introduced: "29"
  last_changed: null
  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: bea62d6c5361ad79978e2bed421f2d7058382938886b5359e25b17e262a79e6d
evidence:
  - kind: code
    url: https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Apps/W1/Quality%20Management/app/src/Workflow/QltyWorkflowResponse.Codeunit.al
    title: src/Apps/W1/Quality Management/app/src/Workflow/QltyWorkflowResponse.Codeunit.al (releases/29.x)
    date: null
    commit: ea08af5ef2d6a9b5c5af4a029288abbe2c883220
    t: null
    quote: null
links:
  learn: []
  objects: []
  features: []
  topics: []
  localizations: []
  videos: []
  posts: []
  guidelines: []
  changes:
    - change/bcapps/10270
object_type: codeunit
object_id: 20424
name: Qlty. Workflow Response
namespace: Microsoft.QualityManagement.Workflow
app: Quality Management
extends: null
first_version: "29"
last_version: "30"
present_in:
  - "29"
  - "30"
changed_in: []
source_major: "29"
obsolete: null
countries: []
ms_search_form_ids: []
counts:
  fields: 0
  procedures: 41
  events: 1
  subscribers: 1
relations:
  out: 0
  referenced_by: 0
  pages: 0
  extended_by: 0
  event_subscribers: 0
  calls: 18
  called_by: 1
  implements: 0
---

# Codeunit 20424 "Qlty. Workflow Response"

> Codeunit 20424 "Qlty. Workflow Response" in Quality Management (Microsoft.QualityManagement.Workflow). 36 public procedures, 1 events, 1 event subscribers. Introduced in BC29, still in BC30.

Quality Management · Microsoft.QualityManagement.Workflow · BC29-30 · [source at ea08af5e](https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Apps/W1/Quality%20Management/app/src/Workflow/QltyWorkflowResponse.Codeunit.al) · facts from BC29

## Properties

| Property | Value |
|---|---|
| Permissions | tabledata "Workflow Step Instance" = r, tabledata "Qlty. Workflow Config. Value" = im |

## Events published

- `OnExecuteWorkflowResponseOnAfterFindRelatedRecord(var ResponseExecuted: Boolean; var SourceVariant: Variant; PreviousVariant: Variant; ResponseWorkflowStepInstance: Record "Workflow Step Instance"; var TargetRecordRef: RecordRef; var IsHandled: Boolean)` (integration): OnExecuteWorkflowResponseOnAfterFindRelatedRecord occurs after the system has found the related record for the workflow step.

## Event subscriptions

- HandleOnExecuteWorkflowResponse subscribes to Codeunit "Workflow Response Handling" OnExecuteWorkflowResponse

## Procedures

- `GetStepConfigurationValueAsDecimal(WorkflowStepArgument: Record "Workflow Step Argument"; CurrentKey: Text): Decimal` (internal): Gets the step configuration value as a decimal for the given key.
- `GetStepConfigurationValueAsBoolean(WorkflowStepArgument: Record "Workflow Step Argument"; CurrentKey: Text): Boolean` (internal): Gets the step configuration value as a boolean for the given key.
- `GetStepConfigurationValueAsCode10(WorkflowStepArgument: Record "Workflow Step Argument"; CurrentKey: Text): Code[10]` (internal): Gets the step configuration value as Code[10] for the given key.
- `GetStepConfigurationValueAsCode20(WorkflowStepArgument: Record "Workflow Step Argument"; CurrentKey: Text): Code[20]` (internal): Gets the step configuration value as Code[20] for the given key.
- `GetStepConfigurationValue(WorkflowStepArgument: Record "Workflow Step Argument"; CurrentKey: Text): Text`: Returns the configuration value for a given key.
- `SetStepConfigurationValueAsDecimal(WorkflowStepArgument: Record "Workflow Step Argument"; CurrentKey: Text; Value: Decimal)`: Sets a decimal step argument configuration value.
- `SetStepConfigurationValueAsBoolean(WorkflowStepArgument: Record "Workflow Step Argument"; CurrentKey: Text; Value: Boolean)`: Sets a boolean step argument configuration value.
- `SetStepConfigurationValue(WorkflowStepArgument: Record "Workflow Step Argument"; CurrentKey: Text; Value: Text)`: Sets a step argument configuration value.
- `GetStepConfigurationValueAsDate(WorkflowStepArgument: Record "Workflow Step Argument"; CurrentKey: Text): Date` (internal): Gets the step configuration value as a date.
- `SetStepConfigurationValueAsDate(WorkflowStepArgument: Record "Workflow Step Argument"; CurrentKey: Text; DateValue: Date)` (internal): Sets the step configuration value as a date compatible text value.
- `GetWellKnownKeyLocation(): Text`: Returns the key for a location Typically used for target location/destination location/new location
- `GetWellKnownKeyBin(): Text`: Returns the key for a bin Typically used for target bin/destination bin/new bin.
- `GetWellKnownKeyQuantity(): Text`: Returns the key for a quantity.
- `GetWellKnownPostImmediately(): Text`: Returns the key for posting immediately or not.
- `GetWellKnownMoveAll(): Text`: Returns the key for a flag to move the entire item tracking
- `GetWellKnownSourceLocationFilter(): Text` (internal): Returns the key for a source location filter
- `GetWellKnownSourceBinFilter(): Text` (internal): Returns the key for a source bin filter
- `GetWellKnownCreatePutAway(): Text`: Returns the key for a put-away choice.
- `GetWellKnownKeyField(): Text` (internal): Returns the key for a field
- `GetWellKnownKeyValueExpression(): Text` (internal): Returns the key for a value expression
- `GetWellKnownKeyDatabaseTable(): Text` (internal): Returns the key for a database table
- `GetWellKnownKeyDatabaseTableFilter(): Text` (internal): Returns the key for a database table filter.
- `GetWellKnownAdjPostingBehavior(): Text`: Returns the key value for adjustment posting behavior.
- `GetWellKnownUseMoveSheet(): Text` (internal): Returns the key value for whether or not to use the movement worksheet
- `GetWellKnownNewLotNo(): Text` (internal): Returns the key value for new lot no.
- `GetWellKnownNewSerialNo(): Text` (internal): Returns the key value for new serial no.
- `GetWellKnownNewPackageNo(): Text` (internal): Returns the key value for new package no.
- `GetWellKnownNewExpDate(): Text` (internal): Returns the key value for new expiration date.
- `GetWellKnownReasonCode(): Text`: Returns the key value for reason code.
- `GetWellKnownDirectTransfer(): Text`: Returns the key value for direct transfer.
- `GetWellKnownInTransit(): Text` (internal): Returns the key value for the in-transit code.
- `GetWellKnownExternalDocNo(): Text`: Returns the key value for the external doc. no.
- `GetStepConfigurationValueAsQuantityBehaviorEnum(WorkflowStepArgument: Record "Workflow Step Argument"; CurrentKey: Text): Enum "Qlty. Quantity Behavior"` (internal): Gets the step configuration value as an Qlty. Move Behavior Enum.
- `SetStepConfigurationValueAsQuantityBehaviorEnum(WorkflowStepArgument: Record "Workflow Step Argument"; CurrentKey: Text; QltyQuantityBehavior: Enum "Qlty. Quantity Behavior")`: Stores a quantity behavior as its workflow configuration token.
- `GetStepConfigurationValueAsAdjPostingEnum(WorkflowStepArgument: Record "Workflow Step Argument"; CurrentKey: Text): Enum "Qlty. Item Adj. Post Behavior"` (internal): Gets the step configuration value as an Qlty. Item Adj. Post Behavior Enum.
- `SetStepConfigurationValueAsAdjPostingEnum(WorkflowStepArgument: Record "Workflow Step Argument"; CurrentKey: Text; CurrentEnum: Enum "Qlty. Item Adj. Post Behavior")`: Uses an Qlty. Item Adj. Post Behavior Enum to set a Workflow Step Argument key/value.

Plus 3 local procedures.

## 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 20423 "Qlty. Workflow Setup"](../codeunit/20423.md) (20 calls: `ClearInspectionStatusFilterIfRequired → GetInspectionFinishedEvent`, `ClearInspectionStatusFilterIfRequired → GetInspectionReopenedEvent`, `HandleOnExecuteWorkflowResponse → GetQualityInspectionPrefix`, …)
- [Codeunit 20428 "Qlty. Item Tracking"](../codeunit/20428.md) (3 calls: `HandleOnExecuteWorkflowResponse → SetLotBlockState`, `HandleOnExecuteWorkflowResponse → SetPackageBlockState`, `HandleOnExecuteWorkflowResponse → SetSerialBlockState`)
- [Codeunit 20404 "Qlty. Inspection - Create"](../codeunit/20404.md) (2 calls: `HandleOnExecuteWorkflowResponse → CreateInspection`, `HandleOnExecuteWorkflowResponse → GetCreatedInspection`)
- [Codeunit 20416 "Qlty. Expression Mgmt."](../codeunit/20416.md) (2 calls: `HandleOnExecuteWorkflowResponse → EvaluateTextExpression`, `InitDispositionBufferFromWorkflowStepArgument → EvaluateTextExpression`)
- [Codeunit 20437 "Qlty. Notification Mgmt."](../codeunit/20437.md) (1 call: `HandleOnExecuteWorkflowResponse → NotifyDocumentCreationFailed`)
- [Codeunit 20441 "Qlty. Disp. Purchase Return"](../codeunit/20441.md) (1 call: `HandleOnExecuteWorkflowResponse → PerformDisposition`)
- [Codeunit 20443 "Qlty. Disp. Change Tracking"](../codeunit/20443.md) (1 call: `HandleOnExecuteWorkflowResponse → PerformDisposition`)
- [Codeunit 20444 "Qlty. Disp. Transfer"](../codeunit/20444.md) (1 call: `HandleOnExecuteWorkflowResponse → PerformDisposition`)
- [Codeunit 20445 "Qlty. Inventory Availability"](../codeunit/20445.md) (1 call: `HandleOnExecuteWorkflowResponse → PopulateQuantityBuffer`)
- [Codeunit 20446 "Qlty. Disp. Neg. Adjust Inv."](../codeunit/20446.md) (1 call: `HandleOnExecuteWorkflowResponse → PerformDisposition`)
- [Codeunit 20447 "Qlty. Disp. Internal Put-away"](../codeunit/20447.md) (1 call: `HandleOnExecuteWorkflowResponse → PerformDisposition`)
- [Codeunit 20449 "Qlty. Disp. Move Whse.Reclass."](../codeunit/20449.md) (1 call: `HandleOnExecuteWorkflowResponse → PerformDisposition`)
- [Codeunit 20450 "Qlty. Disp. Internal Move"](../codeunit/20450.md) (1 call: `HandleOnExecuteWorkflowResponse → PerformDisposition`)
- [Codeunit 20451 "Qlty. Disp. Move Worksheet"](../codeunit/20451.md) (1 call: `HandleOnExecuteWorkflowResponse → PerformDisposition`)
- [Codeunit 20452 "Qlty. Disp. Move Item Reclass."](../codeunit/20452.md) (1 call: `HandleOnExecuteWorkflowResponse → PerformDisposition`)
- [Codeunit 20453 "Qlty. Disp. Warehouse Put-away"](../codeunit/20453.md) (1 call: `HandleOnExecuteWorkflowResponse → PerformDisposition`)
- [Codeunit 20599 "Qlty. Misc Helpers"](../codeunit/20599.md) (1 call: `HandleOnExecuteWorkflowResponse → SetTableValue`)
- [Codeunit 701 "Data Type Management"](../codeunit/701.md) (1 call: `HandleOnExecuteWorkflowResponse → GetRecordRef`)

## Called by

- [Page extension 20403 "Qlty. Workflow Resp. Options"](../pageextension/20403.md) (36 calls: `Qlty_SetCommonDatabaseVariables → GetWellKnownKeyDatabaseTable`, `Qlty_SetCommonDatabaseVariables → GetWellKnownKeyDatabaseTableFilter`, `Qlty_SetCommonDatabaseVariables → GetWellKnownKeyField`, …)

## Recent changes

- 2026-08-20 [#10270 [Quality Management] Repair and improve XML documentation of procedures](../../changes/bcapps/10270.md) (main, BC30, refactor)

## Across versions

- Present in: BC29-30
- Changed (declaration) in: none

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: "codeunit", object_name: "Qlty. Workflow Response")`, then `bcatlas_get_procedure_body` or `bcatlas_get_neighbors` on the returned id.
