Namespace: widget

bcdui. widget

A namespace for the BCD-UI widgets.

Classes

DetachedEvent
MouseTracker
validationToolTip
XMLDataUpdateListener

Namespaces

detailView
dimensionChooser
effects
formulaEditor
inputField
menu
multiSelect
notifications
periodChooser
singleSelect
visualizeXml

Members

staticbcdui.widget.DetachedEvent

staticbcdui.widget.events

well known html dom events, which are fired by widgets at given circumstances, these events are fired by widgets using jQuery.trigger() and can be consumed by jQuery.on()

staticbcdui.widget.modalBoxTypes

Enumeration with modalbox types

Methods

staticbcdui.widget.createBlindUpDownArea(args)

widget/widgetPackage.js, line 1321
Creates a BlindUpDown Area.
Name Type Description
args Object The parameter map contains the following properties.
Name Type Default Description
targetHtml targetHtmlRef An existing HTML element this widget should be attached to, provide a dom element, a jQuery element or selector, or an element id.
id string optional ID of the Executable object which renders this widget this must be UNIQUE and MUST NOT have same names as any global JavaScript variable. If not given, an auto-id is generated.
caption string optional Caption shown in the blindUpDown Header.
defaultState string closed optional 'closed' or empty String for opened, default is closed.
duration number 0.2 optional The duration of the blind effect, valid values are from 0 to 1.0 as decimal.
targetModelXPath writableModelXPath $guiStatus/guiStatus:Status/guiStatus:ClientSettings/BlindUpDown optional The xPath pointing to the root-node this input widget will place entered selected items into. with attribute status=open/closed
noEffect boolean false optional True for a simple show/hide without blind effect (blind can influence charts gradients on IE

staticbcdui.widget.createContextMenu(args)

widget/widgetPackage.js, line 1740
Create an instance of dynamic context menu. Consider setting args.refreshMenuModel to true. If 'tableMode' is set to 'true' the renderer is expected to render an HTML table with the appropriate 'bcdRowIdent/bcdColIdent' attributes of tr rows header columns.
Name Type Description
args Object The parameter map contains the following properties.
Name Type Default Description
inputModel bcdui.core.DataProvider A model with context menu definition according to namespace http://www.businesscode.de/schema/bcdui/contextMenu-1.0.0
targetRendererId string optional The renderer the tooltip is attached to. The HTML listeners are placed on the targetHtml of this renderer.
id string optional ID of the Executable object which renders this widget this must be UNIQUE and MUST NOT have same names as any global JavaScript variable. If not given, an auto-id is generated.
refreshMenuModel boolean false optional This flag can be set to 'true' if the menu model needs to be executed always. Needs to be true, if the menu depends on the position in a table, i.e. technically on bcdColIdent and bcdRowIdent.
url string optional This parameter can be set when you only want to apply one single XSLT style sheet. It contains the URL pointing to it. If this parameter is set no nested 'chain' tag must be provided; provided XSLT must produce HTML.
identsWithin string optional Id of an element. If given bcdColIdent and bcdRowIdent are set to the innermost values given between the event source and the element given here. bcdRow/ColIdent do not need to be set at the same element.
tableMode boolean false optional This flag can be set to 'true' if the 'bcdRowIdent' and 'bcdColIdent' parameters should be extracted from the HTML and added as parameters on the tooltipRenderer. They are derived from 'bcdRowIdent' and 'bcdColIdent' attributes of tr rows and header columns (td or th).
targetHtml targetHtmlRef optional The HTML listeners are placed on this Element instead of the targetHtml of the given targetRendererId.

staticbcdui.widget.createCredentialsMenu(args)

widget/widgetPackage.js, line 985
Creates credential menu
Name Type Description
args Object The parameter map contains the following properties.
Name Type Description
targetHtml targetHtmlRef An existing HTML element this widget should be attached to, provide a dom element, a jQuery element or selector, or an element id.
modelId string optional id of model holding custom model definition. If not provided, a standard one with just logout is created.
userName string optional string to use as the username, by default it takes bcdui.config.userName

staticbcdui.widget.createDimensionChooser(args)

widget/widgetPackage.js, line 202
This function creates an dimension chooser in the given target HTML element.
Name Type Description
args Object The parameter map contains the following properties.
Name Type Default Description
targetModelXPath writableModelXPath The targetModelXPath for the dimensionChooser acts slightly different than for other widgets. The path points a node which will hold the value for the selected level. The widget builds up filter expressions automatically, so your targetXPath doesn't need any f:Expression statements, e.g. /guiStatus:Status/guiStatus:Dimension[@id='dimensionChooser']/@value.
targetHtml targetHtmlRef An existing HTML element this widget should be attached to, provide a dom element, a jQuery element or selector, or an element id.
dimension string Unique name to select a dimension from the dimension model (located at '/bcdui/conf/dimensions.xml'.
id string optional ID of the Executable object which renders this widget this must be UNIQUE and MUST NOT have same names as any global JavaScript variable. If not given, an auto-id is generated.
url string optional The URL the model is loaded from. This URL can be extended with a compressed request document if a requestDocument parameter is provided. If omitted the WrsServlet is taken.
multiSelect string false optional Make a multi selected dimension chooser. Can be 'true'|'false'|'check', 'false' is default.
allowMixedSelect boolean false optional Allow heterogene selection in multi select chooser.
checkBoxCaption string MultiSelect optional Caption of checkbox to turn on and of the multiselect.
clearOption string false optional If != 'false', an additional option to clear the level selection is shown in the drop-down box. If 'true' bcd_autoCompletionBox_clearOption is used for the text, otherwise this is the i18n key.
clearOptionLevel string false optional See clearOption. This value is for the level selector input box only. If not specified, clearOption is used.
emptyValue string false optional If != 'false', a text is displayed if no level is selected. If 'true' bcd_autoCompletionBox_emptyValue is used for the text, otherwise this is the i18n key.
emptyValueLevel string false optional See emptyValue. This value is for the level selector input box only. If not specified, emptyValue is used.
mandatory boolean false optional An empty value is invalid if this parameters sets to true. Default is false.
useCaptions boolean false optional If true, the chooser will receive captions and codes. By convention the bref of the captions column is 'bRef'_caption. By default no captions are created.
widgetCaption string optional A caption which is used as prefix for navPath generation for this widget.
configurationModelId string optional ModelId of chooser configuration xml file. This model can hold a per-level configuration which allows additional filtering.
limitLevels string optional Space separated list of levelIds. The available levels from the dimensions model get limited to this subset.
enableNavPath boolean optional Set to true if widget should not be added to navpath handling.
label string optional If provided, renders label element to this input
Examples

Configuration Model

The Level element can have one child element called FilterCondition. It is a textnode which specifies an additional xpath statement
which is added as an AND condition in the request document filter element. You should use brackets around it.
There are several Level element attributes (see bcdui.core.AutoModel for details) which allows loading of additional bRefs or
filtering: bRef, filterBRefs, mandatoryfilterBRefsSubset, additionalFilterXPath.
You can also modify the handling of the Level input fields (see bcdui.widget.InputField): optionsModelIsSuggestionOnly, wildcard.
A server sided options model filter can be set via serverSideOptionsModelFilter attribute.
If there is a need to hide a level for direct selection (but the level is needed as dependency for a different level selection)
you can use the visible attriute.
<Configuration xmlns="http://www.businesscode.de/schema/bcdui/renderer-1.0.0">
  <Level id="customerGroup" bRefs="ecom">
    <FilterCondition>( ../wrs:C[2]='1')</FilterCondition>
  </Level>
</Configuration>

When using 'customerGroup' level (which is bound to one bRef (wrs:C[1])) another bRef 'ecom' is used and checked against value '1' via the given filter condition.
  
<Configuration xmlns="http://www.businesscode.de/schema/bcdui/renderer-1.0.0">
  <Level id="station" bRefs="facility_type s_isselectable">
    <FilterCondition>( ../wrs:C[4]='1' and (not($guiStatus///f:Filter/f:Or[@id='facility_type']/f:Expression[@bRef='facility_type']/@value) or ../wrs:C[3] = $guiStatus//f:Filter/f:Or[@id='facility_type']/f:Expression[@bRef='facility_type']/@value) )</FilterCondition>
  </Level>
</Configuration>

When using 'station' level (which is bound to two bRef (wrs:C[1] and wrs:C[2])) two more bRefs 'facility_type' and 's_isselectable' are used.
s_isselectable (which will be wrs:C[4] is checked against the value '1' and facility_type is checked against a guiStatus filter (if available)).
So you can easily filter available level data with other possibly set client or server filters.
<Configuration xmlns="http://www.businesscode.de/schema/bcdui/renderer-1.0.0">
  <Level id="group" wildcard="startswith" serverSideOptionsModelFilter="true" hideWildcardChar="true"/>
</Configuration>
  
Group level information is generated while typing.
<Configuration xmlns="http://www.businesscode.de/schema/bcdui/renderer-1.0.0">
  <Level id="group" visible="false"/>
</Configuration>

Group level does not appear in Level drop down but can be used as a dependency level for a different level selection.

staticbcdui.widget.createFilterTableHeader(args)

widget/widgetPackage.js, line 2721
Create filter table header
Name Type Description
args Object The parameter map contains the following properties.
Name Type Default Description
renderer string | bcdui.core.Renderer Id of the registered renderer to work on or the render itself
isSync boolean false optional Decide whether the action is to be called synchronous or not
alwaysShowHeader boolean true optional If filtering leads to no rows to be displayed, this flag will show the table header to allow removal of filters
getCaptionForColumnValue function optional Function (colIdx, colValue) which returns the rendered caption for the cell. By default standard wrs @caption, wrs:references and unit/scale handling is supported already
getFilteredValues function optional Function (colIdx) which needs to return a wrs:C array which holds the valid values for the current column. Use this to e.g. only show prefiltered values

staticbcdui.widget.createFixedTableHeader(args)

widget/widgetPackage.js, line 2809
Create fixed table header by adding a fixed copy of the original Its size is derived from the "original" header, still in place for the table
Name Type Description
args Object The parameter map contains the following properties.
Name Type Default Description
rendererId string Id of the renderer to work on
storeSize boolean true optional Decide whether the action is to be called synchronous or not
enableColumnFilters boolean false optional Set to true if you wnat to enable column filters, too
getCaptionForColumnValue function optional if you enabled column filters, you can set its getCaptionForColumnValue here

staticbcdui.widget.createFormulaEditor(args)

widget/widgetPackage.js, line 473
Displays a field where the user can enter a formula
Name Type Description
args Object The parameter map contains the following properties.
Name Type Default Description
targetModelXPath writableModelXPath The xPath pointing to the root-node this widget will place entered selected items into. The underlying XML format of data written is implemented by individual widget. If pointing into a Wrs, it switches to Wrs mode, i.e. the wrs:R will be marked as modified, target node will not be deleted. If you specify a targetmodelxpath, the box automatically acts as target.
targetHtml targetHtmlRef An existing HTML element this widget should be attached to, provide a dom element, a jQuery element or selector, or an element id.
id string optional ID of the Executable object which renders this widget this must be UNIQUE and MUST NOT have same names as any global JavaScript variable. If not given, an auto-id is generated.
caption string '' optional Default '', it will be used as i18n key to translate the caption.
mandatory boolean false optional An empty value is invalid if this parameters sets to true. Default is false.
optionsModelXPath modelXPath optional xPath pointing to an absolute xpath (starts with $model/..) providing a node-set of available options to display; especially this one supports cross references between models, i.e. $options / * / Value[@id = $guiStatus / * / MasterValue]
optionsModelRelativeValueXPath string optional xPath expression relative to 'optionsModelXPath' providing values for options to display, if this is defined, values referenced by optionsModelXPath are treated as captions. Wins over @caption and @ignoreCaption param.
validate boolean true optional Turn on-off the validation of the formula.
validateVariableNamesCheckbox boolean false optional Show or hide checkbox for validate variables option.
skipValidationCaption string Skip check of values optional Caption to be shown for skipping validation. Default is 'Skip check of values'.
skipServerSidedFunctions boolean false optional Set to true to disable usage of server sided functions like CntDist. Default is false.
widgetCaption string optional A caption which is used as prefix for navPath generation for this widget.
enableNavPath boolean optional Set to true if widget should not be added to navpath handling.

staticbcdui.widget.createInputField(args)

widget/widgetPackage.js, line 75
Creates a field where the user can enter a value or select it from a list of pre-defined values. These values are copied to a target model under a specified target XPath. When there is a list of allowed values the inputField can also apply a caption-value translation so that the displayed values can differ from the data that is actually placed in XML.This function creates an input field in the given target HTML element. This input field can be a text box or a combo box, dependent on the parameters.
Name Type Description
args Object The parameter map contains the following properties.
Name Type Default Description
targetModelXPath writableModelXPath The xPath pointing to the root-node this widget will place entered selected items into. The underlying XML format of data written is implemented by individual widget. If pointing into a Wrs, it switches to Wrs mode, i.e. the wrs:R will be marked as modified, target node will not be deleted. If you specify a targetmodelxpath, the box automatically acts as target.
targetHtml targetHtmlRef An existing HTML element this widget should be attached to, provide a dom element, a jQuery element or selector, or an element id.
id string optional ID of the Executable object which renders this widget this must be UNIQUE and MUST NOT have same names as any global JavaScript variable. If not given, an auto-id is generated.
optionsModelXPath modelXPath optional xPath pointing to an absolute xpath (starts with $model/..) providing a node-set of available options to display; especially this one supports cross references between models, i.e. $options / * / Value[@id = $guiStatus / * / MasterValue]
optionsModelRelativeValueXPath xPath optional xPath expression relative to 'optionsModelXPath' providing values for options to display, if this is defined, values referenced by optionsModelXPath are treated as captions. Wins over @caption and @ignoreCaption param.
optionsModelIsSuggestionOnly boolean optional If true, values different from the options model can are allowed. Default is that, if an optionsModel is given, only values from that model are allowed.
additionalFilterXPath writableModelXPath optional An additional XPath created, kept up-to-date during writing, not only when a final value us choosen, not listened on. Usually used to control a server-side filtered options model.
keepEmptyValueExpression boolean false optional A flag that can be set to 'true' if the target node should not be removed as soon as the value is empty.
clearOption string false optional If != 'false', an additional option to clear the selection is shown in the drop-down box. If 'true' bcd_autoCompletionBox_clearOption is used for the text, otherwise this is the i18n key.
emptyValue string false optional If != 'false', a text is displayed if nothing is selected / entered. If 'true' bcd_autoCompletionBox_emptyValue is used for the text, otherwise this is the i18n key.
mandatory boolean false optional An empty value is invalid if this parameters sets to true. Default is false.
wildcard string optional For a f:Filter with @op='like', this controls the prefilling with wildcards ('*') when the value is yet empty and the field gets the focus. Can be 'contains', 'startswith' or 'endswith'. The user can overwrite this by adding/removing wildcards when editing the field. The wildcards apply to filtering within the top down list and for server side filters, both plain and for retrieving drop-down values dynamically from the server.
bcdAutofit boolean false optional If true, drop down resizes depending on available options.
isSortOptions boolean false optional A flag that can be set to 'true' if the options shown in popup should be sorted alphabetically.
maxlength integer optional Maximum number of characters for the input field.
onEnterKey string optional Handler function NAME triggered on ENTER key.
onEscKey string optional Handler function NAME triggered on ESC key.
onTabKey string optional Handler function NAME triggered on TAB key.
onBlur string optional Handler function NAME triggered on blur event.
onFocus string optional Handler function NAME triggered on focus event.
setCursorPositionAtEnd boolean false optional If true, the cursor is automatically positioned at the end of the input box.
setFocus boolean false optional If true, let this input field get focus after creation.
tabIndex string optional Tab index of html element.
widgetCaption string optional A caption which is used as prefix for navPath generation for this widget.
enableNavPath boolean optional Set to true if widget should not be added to navpath handling.
isPassword boolean optional If true, input element type will be 'password'.
label string optional If provided, renders label element to this input
hideWildcardChar boolean optional If true, no asterisk characters are shown

staticbcdui.widget.createMenu(args)

widget/widgetPackage.js, line 912
Creates menu with default renderer an default menu js handler.
Name Type Description
args Object The parameter map contains the following properties.
Name Type Description
targetHtml targetHtmlRef An existing HTML element this widget should be attached to, provide a dom element, a jQuery element or selector, or an element id.
id string optional ID of the Executable object which renders this widget this must be UNIQUE and MUST NOT have same names as any global JavaScript variable. If not given, an auto-id is generated.
menuHandlerClassName string optional Javascript menu handler class name, could extend bcdui.widget.menu.Menu.
menuRootElementId boolean optional Root menu HTML element (UL) id
modelId string optional xml model id, can be used for menues defined in folder '/WEB-INF/bcdui/menu/'.
modelUrl string optional Optional: URL where model get data from, allows reading a random xml file from the server.
parameters string optional Own action handler.
rendererUrl string | chainDef optional URL to XSLT stylesheet that renders the model or chain definition; default is "/bcdui/js/widget/menu/menu.xslt"
menuId string optional Optional menuId to use one specific menu out of the available ones. If not available, the default one is used.

staticbcdui.widget.createMultiSelect(args)

widget/widgetPackage.js, line 318
Creates a multi selection box where multiple values can be selected and stored to the target model.
Name Type Description
args Object The parameter map contains the following properties.
Name Type Default Description
targetModelXPath writableModelXPath The xPath pointing to the root-node this input widget will place entered selected items into. The underlying XML format of data written is implemented by individual widget. If pointing into a Wrs, it switches to Wrs mode, i.e. the wrs:R will be marked as modified, target node will not be deleted. If you specify a targetmodelxpath, the box automatically acts as target. Keep in mind when specifying a targetModelXPath for the multiSelect, you should use a f:Or in your expression. For example: /guiStatus:Status/f:Filter/f:Or/f:Expression[@bRef='country' and @op='=']/@value.
targetHtml targetHtmlRef An existing HTML element this widget should be attached to, provide a dom element, a jQuery element or selector, or an element id.
optionsModelXPath modelXPath xPath pointing to an absolute xpath (starts with $model/..) providing a node-set of available options to display; especially this one supports cross references between models, i.e. $options / * / Value[@id = $guiStatus / * / MasterValue]
id string optional ID of the Executable object which renders this widget this must be UNIQUE and MUST NOT have same names as any global JavaScript variable. If not given, an auto-id is generated.
optionsModelRelativeValueXPath string optional xPath expression relative to 'optionsModelXPath' providing values for options to display, if this is defined, values referenced by optionsModelXPath are treated as captions. Wins over @caption and @ignoreCaption param.
delimiter string optional If defined, will switch to delimiter-based storing, i.e. multiple values will be written into one DOM node and separated by given delimiter.
visibleSize integer optional Number of visible elements in list.
isCheckBox boolean false optional Use checkbox html element instead of multiselect.
keepEmptyValueExpression boolean false optional A flag that can be set to 'true' if the target node should not be removed as soon as the value is empty.
widgetCaption string optional A caption which is used as prefix for navPath generation for this widget.
enableNavPath boolean optional Set to true if widget should not be added to navpath handling.
doSortOptions boolean false optional Set to true if widget should sort options.
label string optional If provided, renders label element to this input, unless args.isCheckBox = true

staticbcdui.widget.createNavPath(args)

widget/widgetPackage.js, line 3116
Writes navpath widget information to the given target and updates this information changes
Name Type Description
args Object optional The parameter map contains the following properties.
Name Type Default Description
targetHtml targetHtmlRef bcdNavPath optional An existing HTML element this widget should be attached to, provide a dom element, a jQuery element or selector, or an element id.
title string Report optional A title string which is used during filename generation for exports
values string optional A space separated string which lists the ordered targetIds of the widgets which should be queried
separator string optional A string used for delimiter between single widget navpath values, default is ' ' (space)

staticbcdui.widget.createPeriodChooser(args)

widget/widgetPackage.js, line 398
Creates a period chooser. The period chooser supports a number of options and formats, see parameters. You can control what kind of periods a user may select and in which format it is written. Note that the bRef written are always yr, qr, mo, cwyr, cw or dy with an optional postfix of there are different types of dates.
The period chooser outputs to args.targetModelXPath, which may point to any model but needs to end with f:And[@id='myPeriod'], where @id is the period chooser's id.
Name Type Description
args Object The parameter map contains the following properties.
Name Type Default Description
targetModelXPath writableModelXPath Unless you don't use the useSimpleXPath option, this targetModelXPath acts slightly different than for other widgets. You only define a root node like '/guiStatus:Status/f:Filter/f:And[@id='period']' here. The period chooser places its f:Expression elements below this given rootnode automatically. The number of expressions and how they are added depends on periodChooser settings (e.g. a range or writing mo/yr instead of yyyy-mm-dd etc.)
targetHtml targetHtmlRef An existing HTML element this widget should be attached to, provide a dom element, a jQuery element or selector, or an element id.
id string optional ID of the Executable object which renders this widget this must be UNIQUE and MUST NOT have same names as any global JavaScript variable. If not given, an auto-id is generated.
caption string optional Default 'Date', it will be used as i18n key to translate the caption if isFreeRangeSelectable set to true, then caption may contain two terms for 'From' and 'To' captions. Divider: ';' Example: caption = 'i18.md.From;i18.md.To'
firstSelectableDay string optional The first day that can be selected. A week or month can only be selected if all days are selectable.
lastSelectableDay boolean optional The last day that can be selected. A week or month can only be selected if all days are selectable.
isFreeRangeSelectable boolean false optional Allows date free range selection.
isSecondSelectable boolean false optional Allows second selection.
isMinuteSelectable boolean false optional Allows minute selection.
isHourSelectable boolean false optional Allows hour selection.
isDaySelectable boolean true optional Allows day selstion.
isWeekSelectable boolean false optional Allows week selection.
isMonthSelectable boolean true optional Allows month selection.
isQuarterSelectable boolean true optional Allows quarter selection
isYearSelectable boolean true optional Allows year selection.
mandatory boolean false optional An empty value is invalid if this parameters sets to true. Default is false.
outputPeriodType boolean false optional Produces selected dates as one of known date periods. For example if this contains mo and the user selects a data range, which fits a month, mo with be written. This is usefull if you allow free range but you also have a month aggregation for performance optimization. On the other hand, if this is not set and the user selects a month in the widget, then the month is written in terms of dy.
showPrevNextButtons boolean false optional If this is set to 'true' the buttons Previous Period and Next Period are showed. The default value is 'false'.
suppressCaptions boolean false optional Set this to true if the buttons should not have any caption text. Default is false.
textInput boolean false optional Add the free range feature.
validate boolean true optional Turn on-off the validation of the keyboard entered date values.
optionsModelXPath modelXPath optional Allows to use a single period chooser widget for different logical types of dates (see args.postfix), which then can be selected from a drop-down. The node set found at this xPath lists the postfixes.
optionsModelRelativeValueXPath string optional xPath expression relative to 'optionsModelXPath' providing values for options to display, if this is defined, values referenced by optionsModelXPath are treated as captions. Wins over @caption and @ignoreCaption param.
postfix string optional An optional postfix which is added to the filter bRefs (dy/mo.., see above). Use this if you deal with different types of dates. If optionsModel is given, this value should be one of the available ones.
widgetCaption string optional A caption which is used as prefix for navPath generation for this widget.
useSimpleXPath string false optional Set this to true if you want a minimal periodchooser setup (only day selectable via popcalendar) which only writes an ISO date to an XPath which you provide (not a complex one in normal mode).
autoPopup string false optional Set this to true if the popup calendar should appear after creation.
suppressButtons string false optional Set this to true if from and to buttons should be hidden. Default is false.
enableNavPath boolean optional Set to true if widget should not be added to navpath handling.
showClearButton boolean optional Set this to true if you need one clear button which removes the currently set date.
label string optional If provided, renders label element to this periodchooser.

staticbcdui.widget.createSingleSelect(args)

widget/widgetPackage.js, line 264
Creates a single selection radio button group where a value can be selected and stored to the target model.
Name Type Description
args Object The parameter map contains the following properties.
Name Type Default Description
targetModelXPath writableModelXPath The xPath pointing to the root-node this widget will place entered selected items into. The underlying XML format of data written is implemented by individual widget. If pointing into a Wrs, it switches to Wrs mode, i.e. the wrs:R will be marked as modified, target node will not be deleted. If you specify a targetmodelxpath, the box automatically acts as target.
targetHtml targetHtmlRef An existing HTML element this widget should be attached to, provide a dom element, a jQuery element or selector, or an element id.
optionsModelXPath modelXPath xPath pointing to an absolute xpath (starts with $model/..) providing a node-set of available options to display; especially this one supports cross references between models, i.e. $options / * / Value[@id = $guiStatus / * / MasterValue]
id string optional ID of the Executable object which renders this widget this must be UNIQUE and MUST NOT have same names as any global JavaScript variable. If not given, an auto-id is generated.
optionsModelRelativeValueXPath string optional xPath expression relative to 'optionsModelXPath' providing values for options to display, if this is defined, values referenced by optionsModelXPath are treated as captions. Wins over @caption and @ignoreCaption param.
keepEmptyValueExpression boolean false optional A flag that can be set to 'true' if the target node should not be removed as soon as the value is empty.
widgetCaption string optional A caption which is used as prefix for navPath generation for this widget.
enableNavPath boolean optional Set to true if widget should not be added to navpath handling.
label string optional If provided, renders label element to this widget

staticbcdui.widget.createTableHeadFilter(args)

widget/widgetPackage.js, line 2171
injectFilter in table
Name Type Description
args Object The parameter map contains the following properties.
Name Type Default Description
tableElement HtmlElement The HTML Table Element which you want to use for injection
targetModelXPath writableModelXPath The xPath pointing to the root-node this widget will place entered selected items into
inputModel bcdui.core.DataProvider WRS datamodel representing the table columns
statusModel bcdui.core.DataProvider bcdui.wkModels.guiStatus optional StatusModel where the widget will write its content to.
useCustomHeaderRenderer boolean false optional Set to true when your code adds bcdFilterButton classes on its own (e.g. grid)
callback function optional Function which will be executed after a change of the filters have been performed
getCaptionForColumnValue function optional Function (colIdx, colValue) which returns the rendered caption for the cell. By default standard wrs @caption, wrs:references and unit/scale handling is supported already. Deprecated (prefer valueCaptionProvider parameter).
getFilteredValues function optional Function (colIdx) which needs to return a wrs:C array which holds the valid values for the current column. Use this to e.g. only show prefiltered values . Deprecated (prefer valueCaptionProvider parameter).
valueCaptionProvider function optional Function (inputModel, colIdx) which needs to return a Promise which resolves with an array of objects {value, caption, isFiltered}
columnFiltersCustomFilter Object optional CustomColumnFilter functions passed to column filter. columnFiltersCustomFilter is an array holding an object per bRef/column and an operations array which defines id, caption, valueCaptionProvider, filterFunction and gridFilterRowFunction

staticbcdui.widget.createTabMenu(args)

widget/widgetPackage.js, line 1288
Creates tab menu widget.
Name Type Description
args Object The parameter map contains the following properties.
Name Type Default Description
targetHtml targetHtmlRef An existing HTML element this widget should be attached to, provide a dom element, a jQuery element or selector, or an element id.
defElementId string Html element id where tabs are defined.
args.id string optional ID of the Executable object which renders this widget this must be UNIQUE and MUST NOT have same names as any global JavaScript variable. If not given, an auto-id is generated.
handlerJsClassName string optional Own JS class name to handler click action on tab.
rendererUrl string optional URL to own renderer.
isPersistent boolean false optional Set this to true to make the tab selection persistent.

staticbcdui.widget.createTooltip(args)

widget/widgetPackage.js, line 1809
Generates a tooltip for another renderer.
Name Type Description
args Object The parameter map contains the following properties.
Name Type Default Description
targetRendererId string optional The renderer the tooltip is attached to. The HTML listeners are placed on the targetHtml of this renderer. If 'tableMode' is set to 'true' the renderer is expected to render an HTML table with the appropriate 'bcdRowIdent/bcdColIdent' attributes of tr rows header columns.
id string optional ID of the Executable object which renders this widget this must be UNIQUE and MUST NOT have same names as any global JavaScript variable. If not given, an auto-id is generated.
delay integer optional The delay in Miliseconds that the tooltip should wait before it appears.
filter string optional An optional filter on the tag name where the tooltip should appear. In 'tableMode' it is recommended to set it on 'td' or 'th|td'.
identsWithin string optional Id of an element. If given bcdColIdent and bcdRowIdent are set to the innermost values given between the event source and the element given here. bcdRow/ColIdent do not need to be set at the same element.
stylesheetUrl string optional This parameter can be set when you only want to apply one single XSLT style sheet. It contains the URL pointing to it. If this parameter is set no nested 'chain' tag must be provided
tableMode boolean false optional This flag can be set to 'true' if the 'bcdRowIdent' and 'bcdColIdent' parameters should be extracted from the HTML and added as parameters on the tooltipRenderer. They are derived from 'bcdRowIdent' and 'bcdColIdent' attributes of tr rows and header columns (td or th).
targetHtml targetHtmlRef optional The HTML listeners are placed on this Element instead of the targetHtml of the given targetRendererId.
tooltipTargetHtmlId string optional Existing HTML Element Id which is used for the tooltip. By default this is 'bcdTooltipDiv'.

staticbcdui.widget.getCurrentNavPath(values, separator)

widget/widgetPackage.js, line 3239
Get current navpath widget information for the given widget targets.
Name Type Default Description
values string optional A space separated string which lists the ordered targetIds of the widgets which should be queried (or empty for all)
separator string " " optional A string used for delimiter between single widget navpath values
Returns:
string containing the current navPath for your selected values

staticbcdui.widget.getLiveNavPath(callback, values, separator)

widget/widgetPackage.js, line 3147
Get current live navpath widget information via callback for the given widget targets. This function regets the current caption information from the widgets themselves and does not use the navPath model which represents the captions when entering the page
Name Type Default Description
callback function A callback function which gets the final navpath string and an object holding the single ids/captions
values string optional A space separated string which lists the ordered targetIds of the widgets which should be queried (or empty for all)
separator string " " optional A string used for delimiter between single widget navpath values

staticbcdui.widget.getWidgetCaption(elOrId)

widget/widgetPackage.js, line 3095
Get widgetCaption information from the given target
Name Type Description
elOrId element | string An existing HTML element or its id representing a widget targetHtml
Returns:
string of found widgetCaption or empty string

staticbcdui.widget.hideModalBox()

widget/widgetPackage.js, line 893
Hide opened modalbox

staticbcdui.widget.i18nAlert(msgKey, defaultValue)

widget/widgetPackage.js, line 3077
shows a js alert box with the given message
Name Type Description
msgKey string
defaultValue string

staticbcdui.widget.i18nConfirm(msgKey, defaultValue)

widget/widgetPackage.js, line 3086
shows a js confirm box with the given message
Name Type Description
msgKey string
defaultValue string

staticbcdui.widget.openDialog(args){Promise}

widget/widgetPackage.js, line 3449
opens a modal dialog ready for renderer and delegates to callbacks from arguments; you can trigger 'dialog-close' event within body to close the dialog programmatically, any argument to this event will be provided to the resolving promise as well as to the 'close' callback. In addition to those parameters described in this documentation you can provide any other valid parameter according to jQueryUI Dialog Widget API. This dialog returns a Promise resolving with value provided to 'dialog-close' event, allowing you to easily build on cascading dialogs utilizing promise chain.
Name Type Description
args object arguments
Name Type Default Description
open function function to execute when dialog is opened, it gets args object with properties: targetHtml
close function optional function to execute after dialog is closed
beforeClose function optional function to execute before dialog is closed - it gets args object with properties: targetHtml; if this function returns false, the dialog is not closed.
title string optional dialog title
width number 640 optional dialog width; > 1 means absolute size <= 1 means percentage of the current view-port size, i.e. .75 = 75% of view-port size
width number 320 optional dialog height; > 1 means absolute size <= 1 means percentage of the current view-port size, i.e. .75 = 75% of view-port size
Returns:
Type Description
Promise resolving with value provided from 'dialog-close' event, when dialog is closed.
Example
bcdui.widget.openDialog({
  open : (args) => {
    new bcdui.core.Renderer({
      targetHtml : args.targetHtml, chain : "confirm.buy.dott"
    });
  },
  title : bcdui.i18n.TAG + "confirm.buy"
});

staticbcdui.widget.showModalBox(args)

widget/widgetPackage.js, line 808
Open and show modalbox
Name Type Description
args Object The parameter map contains the following properties.
Name Type Default Description
title string optional Modal box title. You can also use titleTranslate.
titleTranslate string optional It will be used as i18n key to translate the title.
message string optional Modal box message. You can also use messageTranslate.
messageTranslate string optional It will be used as i18n key to translate the message.
modalBoxType integer 0 optional One of three types modalBoxTypes.ok, modalBoxTypes.warning, modalBoxTypes.error. By default = modalBoxTypes.ok
width integer 300 optional Width of modal box. 300 by default
height integer optional Height of modal box. auto by default
onclick string optional Optional js function which is called after closing the modal box
position string optional jQuery position parameter bag. Default is center top
htmlElementId string optional Id of a html segment which is taken as messagebox instead. ModalBoxType is ignored in this case.

staticbcdui.widget.stickyTable(args)

widget/widgetPackage.js, line 3531
make parts of the given table sticky
Name Type Description
args Object
Name Type Default Description
targetHtml HtmlElement targetHtml containing/being table
width string optional the width of the table (e.g. 10, 20px or 30em)
height string optional the height of the table (e.g. 10, 20px or 30em)
header boolean false optional make header sticky
footer boolean false optional make footer sticky
nFirstCols integer optional make the first n columns sticky
nFirstRows integer optional make the first n rows sticky
nLastCols integer optional make the last n columns sticky
nLastRows integer optional make the last n rows sticky
bcdDimension boolean false optional make all dimension cells (cube) sticky (higher prio than other options)