Responsive Grids


BMOBILE:ICONCOL

An icon column in a responsive grid.

Properties

Basic
iconurl

URL of image that is displayed inside the control. Any image type (.gif, .jpg, ...) that your browser does understand is valid.

Use the following options to specify the URL:

(A) Define the URL relative to your page. Your page is generated directly into your project's folder. Specifiying "images/xyz.gif" will point into a directory parallel to your page. Specifying "../HTMLBasedGUI/images/new.gif" will point to an image of a neighbour project.

(B) Define a complete URL, like "http://www.softwareag.com/images/logo.gif".

Optional  
iconurlprop

Name of adapter parameter that provides as value the URL of the image that is shown inside the control.

Optional  
method

Name of the event that is sent to the adapter when clicking on the control.

Optional  
comment

Comment without any effect on rendering and behaviour. The comment is shown in the layout editor's tree view.

Optional  
visibleprop

Name of the adapter parameter that provides the information if this control is displayed or not. As consequence you can control the visibility of the control dynamically.

Optional  
invisiblemode

This property has three possible values:

(1) "invisible": the control is not visible without occupying any space.

(2) "disabled": the control is deactivated: it is "grayed" and does not show any roll over effects any more.

(3)"cleared": the control is not visible but it still occupies space.

Optional

invisible

disabled

title

Text that is shown as tooltip for the control.

Either specify the text "hard" by using this TITLE property - or use the TITLETEXTID in order to define a language dependent literal.

Optional  
titleprop

Name of the adapter parameter that dynamically defines the title of the control. The title is displayed as tool tip when ther user moves the mouse onto the control.

Optional  
titlestraighttext

If the text of the control contains HTML tags then these are by default interpreted by the browser. Specifiying STRAIGHTTEXT as "true" means that the browser will directly render the characters without HTML interpretation.

Example: if you want to output the source of an HTML text then STRAIGHTTEXT should be set to "true".

Optional

true

false

styleclasses

CSS style classes separated by a blank.

Optional

icon-svg-primary

ml-*

mr-*

style

CSS style definition that is directly passed into this control.

With the style you can individually influence the rendering of the control. You can specify any style sheet expressions. Examples are:

border: 1px solid #FF0000

background-color: #808080

You can combine expressions by appending and separating them with a semicolon.

Sometimes it is useful to have a look into the generated HTML code in order to know where direct style definitions are applied. Press right mouse-button in your browser and select the "View source" or "View frame's source" function.

Optional  
Natural
njx:natname

If a Natural variable with a name not valid for Application Designer (for instance #FIELD1) shall be bound to the control, a different name (for instance HFIELD1) can be bound instead. If the original name (in this case #FIELD1) is then specified in this attribute, the original name is generated into the parameter data area of the Natural adapter and a mapping between the two names is generated into the PROCESS PAGE statement of the Natural adapter. This mapping must not break a once defined group structure. If for instance a grid control that is bound to a name of GRID1 contains fields that are bound to FIELD1 and FIELD2 respectively, the corresponding njx:natname values may be #GRID1.#FIELD1 and #GRID1.#FIELD2, but not #GRID1.#FIELD1 and #MYGRID1.#FIELD2.

Optional  
njx:natstringtype

If the control shall be bound to a Natural system variable of string format with the attribute njx:natsysvar, this attribute indicates the format of the string, A (code page) or U (Unicode). The default is A.

Optional  
njx:natcomment

The value of this attribute is generated as comment line into the parameter data area of the Natural adapter, before the field name. The Map Converter, for instance, uses this attributes to indicate for a generated statusprop variable to which field the statusprop belongs.

Optional  

BMOBILE:SIMPLECOL

A column in a responsive grid.

Properties

Basic
name

Text that is displayed inside the control. Please do not specify the name when using the multi language management - but specify a "textid" instead.

Optional  
comment

Comment without any effect on rendering and behaviour. The comment is shown in the layout editor's tree view.

Optional  
visible

If set to FALSE the column is not visible in the browser but the corresponding data is still accessable from within the Natural application. Example usage is an "id column".

Optional

true

false

displayonly

If set to true, the FIELD will not be accessible for input. It is just used as an output field.

Optional

true

false

colprop

Name of the adapter parameter that dynamically defines the grid column value.

Obligatory  
flush

Flushing behaviour of the input control.

By default an input into the control is registered within the browser client - and communicated to the server adapter object when a user e.g. presses a button. By using the FLUSH property you can change this behaviour.

Setting FLUSH to "server" means that directly after changing the input a synchronization with the server adapter is triggered. As consequence you directly can react inside your adapter logic onto the change of the corresponding value. - Please be aware of that during the synchronization always all changed properties - also the ones that were changed before - are transferred to the adapter object, not only the one that triggered the synchonization.

Setting FLUSH to "screen" means that the changed value is populated inside the page. You use this option if you have redundant usage of the same property inside one page and if you want to pass one changed value to all its representation directly after changing the value.

Optional

screen

server

flushmethod

When the data synchronization of the control is set to FLUSH="server" then you can specify an explicit event to be sent when the user updates the content of the control. By doing so you can distinguish on the server side from which control the flush of data was triggered.

Optional  
datatype

By default, the control is managing its content as string. By explicitly setting a datatype you can define that the control will format the data coming from the server: if the field has datatype "date" and the user inputs "010304" then the input will be translated into "01.03.2004" (or other representation, dependent on date format settings).

Please note: the datatype "float" is named a bit misleading - it represents any decimal format number. The server side representation may be a float value, but also can be a double or a BigDecimal property.

Optional

date

float

int

long

time

timestamp

color

xs:decimal

xs:double

xs:date

xs:dateTime

xs:time

------------------------

N n.n

P n.n

string n

L

xs:boolean

xs:byte

xs:short

Natural
njx:natname

If a Natural variable with a name not valid for Application Designer (for instance #FIELD1) shall be bound to the control, a different name (for instance HFIELD1) can be bound instead. If the original name (in this case #FIELD1) is then specified in this attribute, the original name is generated into the parameter data area of the Natural adapter and a mapping between the two names is generated into the PROCESS PAGE statement of the Natural adapter. This mapping must not break a once defined group structure. If for instance a grid control that is bound to a name of GRID1 contains fields that are bound to FIELD1 and FIELD2 respectively, the corresponding njx:natname values may be #GRID1.#FIELD1 and #GRID1.#FIELD2, but not #GRID1.#FIELD1 and #MYGRID1.#FIELD2.

Optional  
njx:natcomment

The value of this attribute is generated as comment line into the parameter data area of the Natural adapter, before the field name. The Map Converter, for instance, uses this attributes to indicate for a generated statusprop variable to which field the statusprop belongs.

Optional  

BMOBILE:SIMPLEGRID

A responsive grid.

If the grid has been configured for server-side scrolling and sorting, a data structure is generated that contains fields controlling server-side scrolling and sorting. In addition, specific server-side scrolling events are triggered. The data structure is identical to the corresponding data structure in non-responsive grids.

For more information see section on controls that support Server-Side Scrolling and Sorting.

For details see the corresponding samples in the NaturalAjaxDemos.

Adapter Interface (Server-Side Scrolling and Sorting)

For a grid

<bmobile:simplegrid gridprop="lines" serverside="true" ...>

the following data structure is generated.

1 LINESINFO 
2 ROWCOUNT (I4)
2 SIZE (I4)
2 SORTPROPS (1:*)
3 ASCENDING (L)
3 PROPNAME (U) DYNAMIC
2 TOPINDEX (I4)

Built-in Events (Server-Side Scrolling and Sorting)

Scrolling Events (Natural Server-Side Scrolling and Sorting only)

value-of-gridprop.onTopindexChanged

Properties

Basic
gridprop

Name of the adapter parameter that represents the control in the adapter.

Optional  
width

Width of the control.

There are three possibilities to define the width:

(A) You do not define a width at all. In this case the width of the control will either be a default width or - in case of container controls - it will follow the width that is occupied by its content.

(B) Pixel sizing: just input a number value (e.g. "100").

(C) Percentage sizing: input a percantage value (e.g. "50%"). Pay attention: percentage sizing will only bring up correct results if the parent element of the control properly defines a width this control can reference. If you specify this control to have a width of 50% then the parent element (e.g. an ITR-row) may itself define a width of "100%". If the parent element does not specify a width then the rendering result may not represent what you expect.

Optional

100

120

140

160

180

200

50%

100%

comment

Comment without any effect on rendering and behaviour. The comment is shown in the layout editor's tree view.

Optional  
source

The kind of data source like string, file, url.

Optional

prop

file

url

sourcelocation

The source location. Depends on the kind of source. Examples: ./autocomplete/myfile, http://myremotedatasource...

Optional  
sourcelocationprop

Name of the adapter parameter that specifies the sourcelocation dynamically at runtime.

Optional  
changeindexprop

Name of the adapter parameter providing a value which indicates whether the control should be refreshed with new data on the client or not. A different value than the previous triggers the refresh. It does not need to be a higher value.

Optional  
selectprop

Name of the adapter parameter representing the selected item

Optional  
selectonclick

When clicking an item in a row, the row is marked as selected and rendered in a different color. If the property selectprop has been set, the corresponding Natural data fields are filled with the values of the selected row. If you don't want this, set this property to FALSE.

Optional

true

false

features

Customize the rendering of the grid. Example: "autoWidth:false

Optional

lengthChange:false

ordering:false

paging:false

searching:false

info:false

triggersearchprop

The name of the adapter parameter which dynamically defines the search value at runtime. Set this property if you want to set the search value and trigger the search automatically from your Natural program.

Optional  
Appearance
style

CSS style definition that is directly passed into this control.

With the style you can individually influence the rendering of the control. You can specify any style sheet expressions. Examples are:

border: 1px solid #FF0000

background-color: #808080

You can combine expressions by appending and separating them with a semicolon.

Sometimes it is useful to have a look into the generated HTML code in order to know where direct style definitions are applied. Press right mouse-button in your browser and select the "View source" or "View frame's source" function.

Optional  
styleclasses

CSS style classes separated by a blank.

Optional

table-striped

table-bordered

table-borderless

table-dark

table-sm

w-100

vw-100

withkeyboardfocus

Set this property to TRUE to enable keyboard navigation for columns, rows and pages.

Optional

true

false

frozencolumnsleft

Number of columns, which should be horizontally frozen to the left.

Optional

1

2

3

int-value

frozencolumnsright

Number of columns, which should be horizontally frozen to the right.

Optional

1

2

3

int-value

Scrolling and Sorting
serverside

When set to true Server-Side Scrolling and Sorting is done. Per default Web Server-Side Scrolling is used. To switch on Natural Server-Side Scrolling: Apply a size value at runtime in the corresponding generated grid info data structure.

Optional

true

false

sortcol

Index of the initial sorted column. Index starts with 0.

Optional  
sortorder

Sort order (asc or desc) of the initial sorted column.

Optional  
scroller

When set to TRUE a scrollbar is used instead of a pager. This requires to also set the scrollheight property.

Optional

true

false

scrollheight

If scroller is not set to TRUE, this property is ignored. Use this property to set the scrolling height of the grid.

Optional

100

150

200

250

300

250

400

50%

100%

rowcount

If scroller is set to TRUE this property is ignored. Use this property to set the inital count of rows per page for the pager.

Optional

1

2

3

int-value

rowcountmenu

Use this property to customize the drop-down menu for the row count values per page. Example: 10

Optional  
serverwait

Time in milliseconds the browser client will wait for the requested server items. Allowed values are 200 - 1000. Default is 200. Only used for server-side scrolling and sorting.

Optional

200

300

400

500

600

700

Natural
njx:natname

If a Natural variable with a name not valid for Application Designer (for instance #FIELD1) shall be bound to the control, a different name (for instance HFIELD1) can be bound instead. If the original name (in this case #FIELD1) is then specified in this attribute, the original name is generated into the parameter data area of the Natural adapter and a mapping between the two names is generated into the PROCESS PAGE statement of the Natural adapter. This mapping must not break a once defined group structure. If for instance a grid control that is bound to a name of GRID1 contains fields that are bound to FIELD1 and FIELD2 respectively, the corresponding njx:natname values may be #GRID1.#FIELD1 and #GRID1.#FIELD2, but not #GRID1.#FIELD1 and #MYGRID1.#FIELD2.

Optional  
njx:natstringtype

If the control shall be bound to a Natural system variable of string format with the attribute njx:natsysvar, this attribute indicates the format of the string, A (code page) or U (Unicode). The default is A.

Optional  
njx:natcomment

The value of this attribute is generated as comment line into the parameter data area of the Natural adapter, before the field name. The Map Converter, for instance, uses this attributes to indicate for a generated statusprop variable to which field the statusprop belongs.

Optional  
Miscellaneous
testtoolid

Use this attribute to assign a fixed control identifier that can be later on used within your test tool in order to do the object identification

Optional  

BMOBILE:SIMPLEHEADERCOL

A header column in a responsive grid.

Properties

Basic
name

Text that is displayed inside the control. Please do not specify the name when using the multi language management - but specify a "textid" instead.

Optional  
straighttext

If the text of the control contains HTML tags then these are by default interpreted by the browser. Specifiying STRAIGHTTEXT as "true" means that the browser will directly render the characters without HTML interpretation.

Example: if you want to output the source of an HTML text then STRAIGHTTEXT should be set to "true".

Optional

true

false

textid

Multi language dependent text that is displayed inside the control. The "textid" is translated into a corresponding string at runtime.

Do not specify a "name" inside the control if specifying a "textid".

Optional  
title

Text that is shown as tooltip for the control.

Either specify the text "hard" by using this TITLE property - or use the TITLETEXTID in order to define a language dependent literal.

Optional  
titletextid

Multi language dependent text that is displayed inside the control. The "textid" is translated into a corresponding string at runtime.

Do not specify a "name" inside the control if specifying a "textid".

Optional  
titlestraighttext

If the text of the control contains HTML tags then these are by default interpreted by the browser. Specifiying STRAIGHTTEXT as "true" means that the browser will directly render the characters without HTML interpretation.

Example: if you want to output the source of an HTML text then STRAIGHTTEXT should be set to "true".

Optional

true

false

style

CSS style definition that is directly passed into this control.

With the style you can individually influence the rendering of the control. You can specify any style sheet expressions. Examples are:

border: 1px solid #FF0000

background-color: #808080

You can combine expressions by appending and separating them with a semicolon.

Sometimes it is useful to have a look into the generated HTML code in order to know where direct style definitions are applied. Press right mouse-button in your browser and select the "View source" or "View frame's source" function.

Optional  
styleclasses

CSS style classes separated by a blank.

Optional

d-none d-md-block

d-none d-lg-block

text-uppercase

font-italic

font-weight-bold

font-weight-bolder

font-weight-light

font-weight-lighter

comment

Comment without any effect on rendering and behaviour. The comment is shown in the layout editor's tree view.

Optional  

BMOBILE:SIMPLEHEADERROW

A row container which contains the header columns in a responsive grid.

Properties

Basic
styleclasses

CSS style classes separated by a blank.

Optional  
style

CSS style definition that is directly passed into this control.

With the style you can individually influence the rendering of the control. You can specify any style sheet expressions. Examples are:

border: 1px solid #FF0000

background-color: #808080

You can combine expressions by appending and separating them with a semicolon.

Sometimes it is useful to have a look into the generated HTML code in order to know where direct style definitions are applied. Press right mouse-button in your browser and select the "View source" or "View frame's source" function.

Optional  
comment

Comment without any effect on rendering and behaviour. The comment is shown in the layout editor's tree view.

Optional  

BMOBILE:SIMPLEROW

A row container which contains the columns in a responsive grid.

Properties

Basic
onclickmethod

Name of the event that is sent to the adapter when the user clicks.

Optional  
ondblclickmethod

Name of the event that is sent to the adapter when the user double clicks.

Optional  
comment

Comment without any effect on rendering and behaviour. The comment is shown in the layout editor's tree view.

Optional