Top Method Summary
Options Name Purpose
ApplyResxValue (character, character, character) Applies a single .resx key/value pair to the grid column model
BuildBrowseColumns (character) Builds the ttBrowseColumn records for the given grid
CaptureGridEntity (character) Captures the EntityName / EntityTable / EntityView of the binding source bound to the given grid
CollectClassLevelVariables (INode) Walks the class block and registers the grid and binding source reference variables
CollectModel (character) Drives the ProparseApi based parsing of the file into the internal model
GetBrowseColumns (character, character, table) Parses the given file for the given grid control and returns its columns in the ttBrowseColumn temp-table
Consultingwerk.Framework.Collections.CharacterList GetBrowseNames (character) Parses the given file and returns the names of the grid controls (SmartDataBrowser / SmartUpdatableBrowser) found in the Form
CHARACTER GetFirstArgumentName (INode) Returns the last access token of the first INPUT argument of a method call parameter list
LOGICAL GridHasColumns (character) Returns TRUE when the given grid carries at least one column
LOGICAL IsGridType (character) Returns TRUE for the grid control types handled by this parser
ParseInitializeComponent (INode) Processes the InitializeComponent method body
ProcessArrayElement (character, INode, INode) Handles "arrayvar[i] = columnVar" assignments
ProcessEqualNode (INode) Processes an EQUAL node for the grid model
ProcessLocalColumnProperty (character, character, character, INode) Handles a local grid-column property assignment set inline in the InitializeComponent method (rather than via the .resx)
ProcessMethodCallWidgetRef (INode) Processes a Widget_ref method call for band wiring
ProcessPropertyAssignment (character, character, INode) Handles THIS-OBJECT:target:Property = value assignments relevant to the grid model

Top Property Summary
Options Name Purpose
CHARACTER EntityName
CHARACTER EntityTable
CHARACTER EntityView


Method Detail
Top

ApplyResxValue (character, character, character)

Purpose: Applies a single .resx key/value pair to the grid column model
Notes: Grid column header captions are stored under "<col>.Header.Caption",
widths under "<col>.Width" and visibility under "<col>.Hidden".

Parameters:
pcControl CHARACTER
The control / object name (e.g. ultraGridColumn1)
pcProperty CHARACTER
The property name (e.g. "Header.Caption", "Width", "Hidden")
pcValue CHARACTER
The string representation of the value
Top

BuildBrowseColumns (character)

Purpose: Builds the ttBrowseColumn records for the given grid
Notes: Walks the grid's band(s) in discovery order and, for each band,
the column array elements in index order.

Parameters:
pcGridName CHARACTER
The grid control name
Top

CaptureGridEntity (character)

Purpose: Captures the EntityName / EntityTable / EntityView of the binding
source bound to the given grid
Notes: Uses the grid DataSource link; falls back to the first binding
source that carries an EntityName.

Parameters:
pcGridName CHARACTER
The grid control name
Top

CollectClassLevelVariables (INode)

Purpose: Walks the class block and registers the grid and binding source
reference variables
Notes:

Parameters:
poClassBlock Consultingwerk.Studio.ProparseApi.INode
The class Code_block node
Top

CollectModel (character)

Purpose: Drives the ProparseApi based parsing of the file into the internal model
Notes:

Parameters:
pcFileName CHARACTER
The name of the file to parse
Top

GetBrowseColumns (character, character, table)

Purpose: Parses the given file for the given grid control and returns its
columns in the ttBrowseColumn temp-table
Notes:

Parameters:
pcFileName CHARACTER
The name of the file to parse
pcBrowseName CHARACTER
The name of the grid control to return the columns for
ttBrowseColumn TEMP-TABLE ttBrowseColumn
OUTPUT TABLE The temp-table with the grid column information
Top

Consultingwerk.Framework.Collections.CharacterList GetBrowseNames (character)

Purpose: Parses the given file and returns the names of the grid controls
(SmartDataBrowser / SmartUpdatableBrowser) found in the Form
Notes: A Form can contain multiple grids; one entry per grid control is
returned (by the control reference variable name).

Parameters:
pcFileName CHARACTER
The name of the file to parse
Returns Consultingwerk.Framework.Collections.CharacterList
The CharacterList of grid control names
Top

CHARACTER GetFirstArgumentName (INode)

Purpose: Returns the last access token of the first INPUT argument of a
method call parameter list
Notes: Handles both "arrayvar" (Field_ref) and "THIS-OBJECT:source"
(Widget_ref) arguments.

Parameters:
poParamList Consultingwerk.Studio.ProparseApi.INode
The Method_param_list node
Returns CHARACTER
The argument name, or the empty string
Top

LOGICAL GridHasColumns (character)

Purpose: Returns TRUE when the given grid carries at least one column
Notes:

Parameters:
pcGridName CHARACTER
The grid control name
Returns LOGICAL
Logical value
Top

LOGICAL IsGridType (character)

Purpose: Returns TRUE for the grid control types handled by this parser
Notes:

Parameters:
pcTypeName CHARACTER
The .NET type name
Returns LOGICAL
Logical value
Top

ParseInitializeComponent (INode)

Purpose: Processes the InitializeComponent method body
Notes: Collects column / band NEW expressions, array element assignments,
grid data source / binding source Entity property assignments and
the band-to-array / band-to-grid method calls.

Parameters:
poMethod Consultingwerk.Studio.ProparseApi.INode
The InitializeComponent METHOD node
Top

ProcessArrayElement (character, INode, INode)

Purpose: Handles "arrayvar[i] = columnVar" assignments
Notes:

Parameters:
pcArrayName CHARACTER
The name of the array variable
poSubscript Consultingwerk.Studio.ProparseApi.INode
The Array_subscript node holding the element index
poRight Consultingwerk.Studio.ProparseApi.INode
The right hand side (Field_ref of the column variable)
Top

ProcessEqualNode (INode)

Purpose: Processes an EQUAL node for the grid model
Notes: Handles local NEW assignments (column / band), array element
assignments (arrayvar[i] = column) and THIS-OBJECT:x:Property
assignments (grid DataSource, binding source Entity settings).

Parameters:
poEqual Consultingwerk.Studio.ProparseApi.INode
The EQUAL node
Top

ProcessLocalColumnProperty (character, character, character, INode)

Purpose: Handles a local grid-column property assignment set inline in the
InitializeComponent method (rather than via the .resx)
Notes: Captures the Hidden flag, the column Width and an inline Header
caption. Only acts when the receiver is a known grid column
variable; other local property assignments are ignored.

Parameters:
pcColumnVar CHARACTER
The receiver variable name (e.g. ultraGridColumn4)
pcProperty CHARACTER
The first property segment (e.g. "Hidden", "Width", "Header")
pcSubProperty CHARACTER
The second property segment when present (e.g. "Caption")
poRight Consultingwerk.Studio.ProparseApi.INode
The right hand side node
Top

ProcessMethodCallWidgetRef (INode)

Purpose: Processes a Widget_ref method call for band wiring
Notes: band:Columns:AddRange(arrayvar) links a band to its column array;
grid:DisplayLayout:BandsSerializer:Add(band) DisplayLayout:BandsSerializer:Add(band) links a band to a grid.

Parameters:
poWidgetRef Consultingwerk.Studio.ProparseApi.INode
The Widget_ref node
Top

ProcessPropertyAssignment (character, character, INode)

Purpose: Handles THIS-OBJECT:target:Property = value assignments relevant
to the grid model
Notes: Grid DataSource links the grid to its binding source; the
EntityName / EntityTable / EntityView are captured on the binding
source.

Parameters:
pcTarget CHARACTER
The control name
pcProperty CHARACTER
The property name
poRight Consultingwerk.Studio.ProparseApi.INode
The right hand side node


Property Detail
Top

CHARACTER EntityName


Returns CHARACTER
Top

CHARACTER EntityTable


Returns CHARACTER
Top

CHARACTER EntityView


Returns CHARACTER


Temp-Table Detail

Temp-Table ttBrowseColumn

Defined in:


©2006-2026 Consultingwerk Ltd.         info@consultingwerk.de         http://www.consultingwerk.de       01.06.2026 09:18:17