class %DeepSee.UI.Dialog.FieldList
extends %DeepSee.UI.Dialog.standardDialog
This dialog lets the user add or edit the Field List for a Listing.
An existing list (delimited by comma) may be passed in.
This is a Zen Page class.
parameter APPLYBUTTON = 0;
If true, then this dialog displays an Apply button.
method %OnAfterCreatePage()
as %Status
Be sure to do ##super() when overriding.
method %OnGetSubtitle()
as %String
Get the (localized) subtitle string for the dialog.
This should be implemented in a subclass.
method %OnGetTitle()
as %String
Get the (localized) title string for the dialog.
This should be implemented in a subclass.
classmethod %ParseSQLFieldList(pFieldString="", pDomain="", Output pFieldArray)
as %Status
Split a single fieldList string into the individual fields. This is more
sophisticated than a simple comma-delimited split.
classmethod GetDataSourceInfo(pRoot As %String, Output pTree, ByRef pParms)
as %Status
Provide contents of the data source tree.
classmethod GetDependsOnInfo(pRoot As %String, Output pTree, ByRef pParms)
as %Status
classmethod GetPropName(sourceClass, property, Output propNames)
as %String
classmethod GetSQLNames(sourceClass As %String, fullName As %String, WHAT As %String)
as %ZEN.proxyObject
[ ZenMethod ]
Get SQL Names from property name. Similar logic as in IsDate of Architect.
method combineSqlFieldToJSON(useDomain, parsedFieldArray)
[ Language = javascript ]
Produce a JSON string for the complete parsed field entry by combining the Field and Header information into something of the form
Field AS "$$$TEXT["Header","DOMAIN"]"
If there is no Domain defined for the cube, the $$$TEXT[] will be omitted. Delimited identifiers are always assumed and the
double quotes are always added to the Header portion.
method combineSqlFieldToString(useDomain, parsedFieldArray)
[ Language = javascript ]
Produce a display string for the complete field entry by combining the Field and Header information into something of the form
Field AS "$$$TEXT["Header","DOMAIN"]"
If there is no Domain defined for the cube, the $$$TEXT[] will be omitted. Delimited identifiers are always assumed and the
double quotes are always added to the Header portion.
method doEdit(editObj)
[ Language = javascript ]
User edited a field. Change background color and enable Update button.
method doRemove()
[ Language = javascript ]
User clicked the Remove image. Remove the field from Field List box.
method doUpdate()
[ Language = javascript ]
User clicked the Update button. Update the selected row with new value.
method getDialogValue()
[ Language = javascript ]
Get the value that will be applied when the user presses the OK button.
This is implemented by subclasses.
method moveItem(dir)
[ Language = javascript ]
User clicked the Move Up/Down image. Move the field up or down one level in the Field List box. dir = "up" or "dn".
method parseSqlField(value)
[ Language = javascript ]
Parse a JSON string entry in the field list. Return an array with the field identifier and the header.
method selectProperty(sourceObj)
[ Language = javascript ]
User selected a property from the tree. Get the SQLName for the selected value and put it into the Field List box.
method selectedRow(fieldObj)
[ Language = javascript ]
User clicked a row from the list box. Parse selected value and place it into the
Field and Header boxes for editing.