Table 20401 "Qlty. Test"
Quality Management · Microsoft.QualityManagement.Configuration.Template.Test
Across versions
- BC23-28not present
- BC29-30present
Neighbourhood 14 connected objects and pages
Quality Management · Microsoft.QualityManagement.Configuration.Template.Test · captioned “Quality Test” · BC29-30 · source at ea08af5e · facts from BC29
Properties
| Property | Value |
|---|---|
| Caption | Quality Test |
| DataClassification | CustomerContent |
| LookupPageId | Qlty. Test Lookup |
| DrillDownPageId | Qlty. Tests |
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 | Code | Code[20] | Specifies the short code to identify the test. You can enter a maximum of 20 characters, both numbers and letters. | NotBlank |
| 2 | Description | Text[100] | Specifies the friendly description for the test. You can enter a maximum of 100 characters, both numbers and letters. | |
| 3 | Test Value Type | Enum “Qlty. Test Value Type” | Specifies the type of data that can be entered for this test. Options include: Decimal or Integer for numeric measurements, Date or Date and Time for date-based entries, Boolean for yes/no questions, Option for predefined options, Table Lookup to select from existing records,Text for free-form entri… | enum Enum 20415 “Qlty. Test Value Type” |
| 5 | Allowable Values | Text[500] | Specifies an expression for the range of values you can enter or select for the Test. Depending on the Test Value Type, the expression format varies. For example if you want a measurement such as a percentage that collects between 0 and 100 you would enter 0..100. This is not the pass or acceptable … | |
| 6 | Lookup Table No. | Integer | Specifies which table you are looking up when using a table lookup as a data type. For example, if you want to show a list of available reason codes from the reason code table, then you would use table 231 “Reason Code” here. | TableRelation AllObjWithCaption.“Object ID” where(“Object Type” = const(Table)) |
| 7 | Lookup Table Caption | Text[250] | Specifies the name of the lookup table. When using a table lookup as a data type then this is the name of the table that you are looking up. For example, if you want to show a list of available reason codes from the reason code table then you would use table 231 “Reason Code” here. | FlowField: lookup(AllObjWithCaption.“Object Caption” where(“Object Type” = const(Table), “Object ID” = field(“Lookup Table No.”))); not editable |
| 8 | Lookup Field No. | Integer | Specifies the field within the Lookup Table to use for the lookup. For example if you had table 231 “Reason Code” as your lookup table, then you could use from the “Reason Code” table field “1” which represents the field “Code” on that table. When someone is recording an inspection, and choosing the… | TableRelation Field.“No.” where(TableNo = field(“Lookup Table No.”)) |
| 9 | Lookup Field Caption | Text[250] | Specifies the name of the field within the Lookup Table to use for the lookup. For example if you had table 231 “Reason Code” as your lookup table, and also were using field “1” as the Lookup Field (which represents the field “Code” on that table) then this would show “Code” | FlowField: lookup(Field.“Field Caption” where(TableNo = field(“Lookup Table No.”), “No.” = field(“Lookup Field No.”))); not editable |
| 10 | Lookup Table Filter | Text[400] | Specifies which data are available from the Lookup Table by using a standard Business Central filter expression. For example, if you were using table 231 “Reason Code” as your lookup table and wanted to restrict the options to codes that started with “R”, then you could enter: where(“Code”=filter(R*… | |
| 16 | Default Value | Text[250] | Specifies a default value to set on the inspection. | |
| 17 | Case Sensitive | Enum “Qlty. Case Sensitivity” | Specifies if case sensitivity will be enabled for text-based tests. | enum Enum 20440 “Qlty. Case Sensitivity” |
| 18 | Expression Formula | Text[500] | Specifies the formula for the expression content when using expression field types. | |
| 22 | Unit of Measure Code | Code[10] | Specifies the unit of measure for the measurement. | TableRelation Table 204 “Unit of Measure” (“Unit of Measure”.Code) |
Keys
- Key1: Code (clustered)
Events published
OnBeforeIsNumericFieldType(var QltyTest: Record "Qlty. Test"; var IsNumeric: Boolean; var IsHandled: Boolean)(integration): Provides an opportunity to allow determining if the field is intended to be numeric or not. Use this if you are extending the data type enumeration and adding your own numeric field.OnBeforeAssistAllowableValues(var QltyTest: Record "Qlty. Test"; QltyInspectionTemplateEdit: Page "Qlty. Inspection Template Edit"; var IsHandled: Boolean)(integration): Provides an opportunity to extend or replace editing allowable values.OnBeforeAssistEditDefaultValue(var QltyTest: Record "Qlty. Test"; var IsHandled: Boolean)(integration): Provides an ability to extend or replace assist editing the default value.
Procedures
SetResultCondition(Result: Text; Condition: Text; AllowError: Boolean): Boolean: Set a specific result for the test. If AllowError is set to true it will error when a problem occurs. If AllowError is set to false it will just return false when a problem occurs.AssistEditDefaultValue(): Starts the appropriate ‘assist edit’ dialog for the given data type and conditions.AssistEditFreeText()(internal): Opens the large-text editor and stores the accepted default value.AssistEditLookupTable(): Looks up and validates the table used by a table lookup test.AssistEditLookupField(): Looks up and validates the field used by a table lookup test.AssistEditLookupTableFilter(): Edits the lookup table filter and refreshes the display summary of allowed values.UpdateAllowedValuesFromTableLookup(): This is basically to make a summary for the human to see more easily when configuring templates and tests. This data isn’t actually used during execution.CheckDeleteConstraints(AskQuestion: Boolean): Prevents deletion of tests used by inspections and confirms deletion of template lines that use the test.SuggestUnusedTestCodeFromDescription(InputDescription: Text; var SuggestionCode: Code[20])(internal): Generates an unused test code from a description.SuggestUnusedTestCodeFromDescriptionAndList(InputDescription: Text; IgnoredListOptionalAdditionalUsed: List of [Text]; var SuggestionCode: Code[20])(internal): Generates a test code unused by both stored tests and a supplied list.GenerateShortTestCodeFromLongerText(Input: Text; var SuggestionCode: Code[20])(internal): Removes punctuation and, when needed, vowels to form a test code within the target length.ValidateAllowableValuesOnDefault(): Validates that the default value is allowable.ValidateAllowableValuesFormat(): Validates that the allowable values expression is a valid filter for the test value type.CollectAllowableValues(var TempBufferQltyTestLookupValue: Record "Qlty. Test Lookup Value" temporary; OptionalSetToValue: Text): Code = the unique code Description = raw description. Custom 1 = original value Custom 2 = lowercase value Custom 3 = uppercase value.CollectAllowableValues(var OptionalContextQltyInspectionHeader: Record "Qlty. Inspection Header"; var OptionalContextQltyInspectionLine: Record "Qlty. Inspection Line"; var TempBufferQltyTestLookupValue: Record "Qlty. Test Lookup Value" temporary; OptionalSetToValue: Text): Collects table lookup or option values with optional inspection context and positions the buffer near a requested value.AssistEditExpressionFormula(): Edits and persists the expression formula for a text-expression test.AssistEditAllowableValues(): Edits custom lookup values or the allowable-values expression according to the test type.IsNumericFieldType(): Boolean: Returns true if the field type is numeric in nature.
Plus 6 local procedures.
Triggers
OnModify, OnInsert, OnDelete
Relations
- drill-down page Page 20401 “Qlty. Tests”
- lookup page Page 20445 “Qlty. Test Lookup”
- Unit of Measure Code: TableRelation Table 204 “Unit of Measure”
Referenced by
8 fields in 3 objects relate to this table (TableRelation or CalcFormula).
- Table 20403 “Qlty. Inspection Template Line”: Allowable Values, Default Value, Test Value Type, Test Code
- Table 20406 “Qlty. Inspection Line”: Test Value Type, Test Code
- Table 20412 “Qlty. I. Result Condit. Conf.”: Target Code, Test Code
Pages and codeunits on this table
- Page 20401 “Qlty. Tests” (source table)
- Page 20445 “Qlty. Test Lookup” (source table)
- Page 20479 “Qlty. Test Card” (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 20403 “Qlty. Filter Helpers” (2 calls:
AssistEditLookupField → RunModalLookupAnyField,AssistEditLookupTableFilter → BuildFilter) - Codeunit 20409 “Qlty. Result Condition Mgmt.” (2 calls:
HandleOnValidateTestValueType → CopyResultConditionsFromDefaultToTest,SetResultCondition → CopyResultConditionsFromDefaultToTest) - Codeunit 20410 “Qlty. Result Evaluation” (2 calls:
ValidateAllowableValuesFormat → ValidateAllowableValuesFormat,ValidateAllowableValuesOnDefault → ValidateAllowableValuesOnTest) - Codeunit 20599 “Qlty. Misc Helpers” (1 call:
UpdateAllowedValuesFromTableLookup → GetCSVOfValuesFromRecord) - Codeunit 8617 “Config. Validate Management” (1 call:
AssistEditLookupTable → LookupTable) - Page 20409 “Qlty. Test Lookup Values” (1 call:
AssistEditAllowableValues → (object)) - Page 20436 “Qlty. Lookup Field Choose” (1 call:
AssistEditChooseFromTableLookup → (object))
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: "Qlty. Test"), then bcatlas_get_procedure_body or bcatlas_get_neighbors on the returned id.