Top Method Summary
Options Name Purpose
CHARACTER FieldDataType (character) Returns the data type of the given field of the BufferHandle
Consultingwerk.IQueryExpression InExpression (JsonObject, character, character) Builds the IQueryExpression for the "in" operator (field matches one of a list of values)
Consultingwerk.IQueryExpression Parse (JsonObject, character) Parses the given Build.One SWAT filter descriptor into an IQueryExpression tree
Consultingwerk.IQueryExpression ParseFilter (JsonObject, character) Parses a single filter leaf ("field", "operator", "value") into a QueryExpression
Consultingwerk.IQueryExpression ParseGroup (JsonObject, character) Parses a filter group ("logic" plus "filters" array) into a ListQueryExpression
CHARACTER ResolveFieldName (character) Resolves the given filter field name against the BufferHandle
Consultingwerk.IQueryExpression TypedValueExpression (JsonArray, integer, character) Returns the holder expression for an entry of a JSON array, typed according to the given data type
Consultingwerk.IQueryExpression ValueExpression (JsonObject, character) Returns the holder expression for the "value" property of the given filter leaf, typed according to the target field

Top Property Summary
Options Name Purpose
HANDLE BufferHandle


Method Detail
Top

CHARACTER FieldDataType (character)

Purpose: Returns the data type of the given field of the BufferHandle
Notes: Returns CHARACTER when no BufferHandle is set or the field is
not part of the buffer

Parameters:
pcField CHARACTER
The (resolved) field name
Returns CHARACTER
The ABL data type of the field (upper case)
Top

Consultingwerk.IQueryExpression InExpression (JsonObject, character, character)

Purpose: Builds the IQueryExpression for the "in" operator (field
matches one of a list of values)
Notes: For character fields (and when no BufferHandle is available)
an InQueryExpression (LOOKUP) is used. For all other data
types an Or-list of typed equality expressions is built, as
LOOKUP only operates on character values

Parameters:
poFilter Progress.Json.ObjectModel.JsonObject
The JsonObject with the filter leaf
pcField CHARACTER
The resolved field name
pcQualifiedField CHARACTER
The buffer-qualified field name
Returns Consultingwerk.IQueryExpression
The IQueryExpression for the in operator
Top

Consultingwerk.IQueryExpression Parse (JsonObject, character)

Purpose: Parses the given Build.One SWAT filter descriptor into an
IQueryExpression tree
Notes: Returns ? (unknown value) when the descriptor contains no
filter expressions (unfiltered fetch)

Parameters:
poFilters Progress.Json.ObjectModel.JsonObject
The JsonObject with the filter descriptor ("logic" and "filters" properties)
pcBufferName CHARACTER
The name of the buffer used to qualify field names
Returns Consultingwerk.IQueryExpression
The IQueryExpression tree or ? for an empty filter
Top

Consultingwerk.IQueryExpression ParseFilter (JsonObject, character)

Purpose: Parses a single filter leaf ("field", "operator", "value")
into a QueryExpression
Notes: Unknown operators are rejected with a clear error message

Parameters:
poFilter Progress.Json.ObjectModel.JsonObject
The JsonObject with the filter leaf
pcBufferName CHARACTER
The name of the buffer used to qualify the field name
Returns Consultingwerk.IQueryExpression
The IQueryExpression for the filter leaf
Top

Consultingwerk.IQueryExpression ParseGroup (JsonObject, character)

Purpose: Parses a filter group ("logic" plus "filters" array) into a
ListQueryExpression
Notes: A group with a single entry is flattened to that entry, an
empty group yields ? (unknown value)

Parameters:
poGroup Progress.Json.ObjectModel.JsonObject
The JsonObject with the filter group
pcBufferName CHARACTER
The name of the buffer used to qualify field names
Returns Consultingwerk.IQueryExpression
The IQueryExpression for the group or ? for an empty group
Top

CHARACTER ResolveFieldName (character)

Purpose: Resolves the given filter field name against the BufferHandle
Notes: Supports serialize-names and validates that the field exists.
When no BufferHandle is set, the field name is returned as-is

Parameters:
pcField CHARACTER
The field name from the filter descriptor
Returns CHARACTER
The resolved field name
Top

Consultingwerk.IQueryExpression TypedValueExpression (JsonArray, integer, character)

Purpose: Returns the holder expression for an entry of a JSON array,
typed according to the given data type
Notes: Used for the value list of the "in" operator

Parameters:
poArray Progress.Json.ObjectModel.JsonArray
The JsonArray with the values
piIndex INTEGER
The index of the value in the array
pcDataType CHARACTER
The ABL data type of the target field
Returns Consultingwerk.IQueryExpression
The IQueryExpression holder for the value
Top

Consultingwerk.IQueryExpression ValueExpression (JsonObject, character)

Purpose: Returns the holder expression for the "value" property of the
given filter leaf, typed according to the target field
Notes: When no BufferHandle is available the JSON data type of the
value determines the holder type

Parameters:
poFilter Progress.Json.ObjectModel.JsonObject
The JsonObject with the filter leaf
pcField CHARACTER
The resolved field name
Returns Consultingwerk.IQueryExpression
The IQueryExpression holder for the filter value


Property Detail
Top

HANDLE BufferHandle


Returns HANDLE


©2006-2026 Consultingwerk Ltd.         info@consultingwerk.de         http://www.consultingwerk.de       24.08.2026 05:57:51