You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 146 Next »

When creating a widget, define its form, fields, and its behavior by using the template elements to specify the way it displays with HTML and Widget Attributes. Apply HTML tags to add and control elements such as buttons and various types of fields. 

Some SimpleTags implement portal widgets and are described in a dedicated article: Portal Simple Tags

When a widget is implementing, all tag attribute values are transmitted as a string regardless of the  attribute type; and during the processing phase, the attribute  value is applied in line with the type specified.

<attachment>


Adds the attachment widget for uploading files into a record.

Use this tag:

  • on the form page to attach files to a new record created via form
  • with recordId, tableName attributes to attach a file to an existing record. In this case, the attributes are mandatory.

The following attributes are applicable:

AttributeTypeMandatoryDescription
recordIdStringNSpecify ID of the record to which this tag implementing attachment widget will be bound.
tableNameStringNSpecify a name of the table for the record to which this tag will be bound.
attachment
<attachment tableName={data.table_name} recordId={data.record_id}></attachment>

<button>


Use this attribute to add a button to your widget form. This element behavior is similar as React does.

The following attributes are applicable:

AttributeTypeMandatoryDescription
buttonTypeStringN

This attribute allows specifying button displaying style for forms and lists. Available attribute values are the same as database values for UI Action Form Style or List Style:

  • unstyled
  • primary
  • approve
  • destructive
  • secondary


Button
<button buttonType="approve" event-click="window.s_widget_custom.approve();">
  {data.approveBtnTitle}
</button>

<button buttonType="destructive" event-click="window.s_widget_custom.reject();">
  {data.rejectBtnTitle}
</button>

<checkbox>


This element allows adding and configuring the checkbox field.

The following attributes are applicable:

AttributeTypeMandatoryDescription
classStringNThis attribute allows defining CSS styles classes description and specifying.
isMandatoryBooleanNThis attribute allows to set a mandatory status to field. For this, set it equal to 'true'.
isVisibleBooleanNIf this attribute is equal to 'true' (by default), then the widget is displayed; otherwise, it is not displayed.
labelStringNA field label with text information generally describing the field content.
modelStringYThis attribute points to the client controller data object. When the model data changes, it is automatically transferred to data of the client script.
readOnlyBooleanNThis attribute allows to set a read-only status to field. For this, set it equal to 'true'.
styleStringN

This attribute specifies the display settings (size, font, color, and etc.) of the widget elements using the CSS syntax.

valueStringNSpecifies the default value of the field.
checkbox
<modal model="data.modal" title="{data.modalTitle}" isShow="{data.isShow}"
  doClose="window.s_widget_custom.closeModal();">

  <checkbox model="data.ignoreAutoCAB" label="{data.questionText}"></checkbox>

  <div simple-if="{data.showInput}" class="select-area">
    <multiselect label="{data.cabParticipantsTitle}" title="{data.cabParticipantsTitle}" model="data.CABparticipants"
      values="" options="{data.optionsValues}" event-change="s_widget_custom.optionsSelected();">
    </multiselect>
  </div>
</modal>

<codemirror>


The element adds a text field with the code formatting.

The following attributes are applicable:

AttributeTypeMandatoryDescription
classStringNThis attribute allows defining CSS styles classes description and specifying.
isMandatoryBooleanNThis attribute allows to set a mandatory status to field. For this, set it equal to 'true'.
isVisibleBooleanNIf this attribute is equal to 'true' (by default), then the widget is displayed; otherwise, it is not displayed.
labelStringNA field label with text information generally describing the field content.
modelStringYThis attribute points to the client controller data object. When the model data changes, it is automatically transferred to data of the client script.

readOnly

BooleanN

This attribute allows to set a read-only status to field. For this, set it equal to 'true'.

styleStringN

This attribute specifies the display settings (size, font, color, and etc.) of the widget elements using the CSS syntax.

value

StringN

Specifies the default value for field.

Codemirror
<codemirror model="data.mirror" label="Code Editor" isMandatory="true"></codemirror>

<conditions>


Adds the condition builder widget.

The following attributes are applicable:

AttributeTypeMandatoryDescription
classStringNThis attribute allows defining CSS styles classes description and specifying.
modelStringYThis attribute points to the client controller data object. When the model data changes, it is automatically transferred to data of the client script.
isMandatoryBooleanNThis attribute allows to set a mandatory status to field. For this, set it equal to 'true'.
isVisibleBooleanNIf this attribute is equal to 'true' (by default), then the widget is displayed; otherwise, it is not displayed.
labelStringNA field label with text information generally describing the field content.

readOnly

BooleanN

This attribute allows to set a read-only status to field. For this, set it equal to 'true'.

styleStringN

This attribute specifies the display settings (size, font, color, and etc.) of the widget elements using the CSS syntax.

tableIdBig IntegerNConnection with a table by the ID.
tableNameStringYConnection with a table by its name.

value

StringN

Specifies the default value for field.


Conditions
<conditions model="data.condition" tableName="itsm_incident" tableId="155964310500000569"></conditions>

<datetime>


The element provides a data input of the datetime format. 

The following attributes are applicable:

AttributeTypeMandatoryDescription
beginDateStringNSpecify a date in this field defining a period beginning.
classStringNThis attribute allows defining CSS styles classes description and specifying.
endDateStringNSpecify a date in this field defining a period ending.
isMandatoryBooleanNThis attribute is responsible for specifying whether this input field is mandatory or not.
isVisibleBooleanNIf this attribute is equal to 'true' (by default), then the widget is displayed; otherwise, it is not displayed.
labelStringNA field label with text information generally describing the field content.
modelStringYThis attribute points to the client controller data object. When the model data changes, it is automatically transferred to data of the client script.
placeholderStringNSpecifies a placeholder for text field.

readOnly

BooleanN

This attribute allows to set a read-only status to field. For this, set it equal to 'true'.

styleStringN

This attribute specifies the display settings (size, font, color, and etc.) of the widget elements using the CSS syntax.

value

StringN

Specifies the default value for field.

beginDate
<datetime model="data.dueDate" label="data.dueDateTitle" isMandatory="true" beginDate="{data.beginDate}" endDate="{data.endDate}"></datetime>
Server Script
const nowDate = new SimpleDateTime();
data.beginDate = nowDate.getDate();
nowDate.addDays(3);
data.endDate = nowDate.getDate();

<daysofweek>


The element adds a field that allows selecting days of week.

The following attributes are applicable:

AttributeTypeMandatoryDescription
classStringNThis attribute allows defining CSS styles classes description and specifying.
isMandatoryBooleanNThis attribute allows to set a mandatory status to field. For this, set it equal to 'true'.
isVisibleBooleanNIf this attribute is equal to 'true' (by default), then the widget is displayed; otherwise, it is not displayed.
labelStringNA field label with text information generally describing the field content.
modelStringYThis attribute points to the client controller data object. When the model data changes, it is automatically transferred to data of the client script.

readOnly

BooleanN

This attribute allows to set a read-only status to field. For this, set it equal to 'true'.

styleStringN

This attribute specifies the display settings (size, font, color, and etc.) of the widget elements using the CSS syntax.

value

StringN

Specifies the default value for field.

daysofweek
<daysofweek model="data.daysofweek" label="Calendar Widget" isMandatory="true" isVisible="true" readOnly="false" value="Mon,Tue,Wed,Thu,Fri,Sat,Sun"></daysofweek>


<duration>


The tag adds a field counting the time duration.

The following attributes are applicable:

AttributeTypeMandatoryDescription
classStringNThis attribute allows defining CSS styles classes description and specifying.
isMandatoryBooleanNThis attribute allows to set a mandatory status to field. For this, set it equal to 'true'.
isVisibleBooleanNIf this attribute is equal to 'true' (by default), then the widget is displayed; otherwise, it is not displayed.
labelStringYA field label with text information generally describing the field content.
modelStringNThis attribute points to the client controller data object. When the model data changes, it is automatically transferred to data of the client script.

readOnly

BooleanN

This attribute allows to set a read-only status to field. For this, set it equal to 'true'.

styleStringN

This attribute specifies the display settings (size, font, color, and etc.) of the widget elements using the CSS syntax.

value

StringN

Specifies the default value for field.

duration
<duration model="data.absence" label="Absence" isMandatory="true" value="3600000"></duration>


<htmlEditor>


This widget adds an HTML input field with text formatting options.

The following attributes are applicable:

AttributeTypeMandatoryDescription
classStringNThis attribute allows defining CSS styles classes description and specifying.
isMandatoryBooleanNThis attribute allows to set a mandatory status to field. For this, set it equal to 'true'.
isVisibleBooleanNIf this attribute is equal to 'true' (by default), then the widget is displayed; otherwise, it is not displayed.
labelStringNA field label with text information generally describing the field content.
modelStringYThis attribute points to the client controller data object. When the model data changes, it is automatically transferred to data of the client script.

readOnly

BooleanN

This attribute allows to set a read-only status to field. For this, set it equal to 'true'.

styleStringN

This attribute specifies the display settings (size, font, color, and etc.) of the widget elements using the CSS syntax.

value

StringN

Specifies the default value for field.

html
<htmlEditor label="Description" model="data.description" isMandatory="true"></htmlEditor>

<list>


This element adds a multiselect reference field to a widget for establishing connections with data tables by a custom reference. Using it, you can specify more than one reference within one field.


The following attributes are applicable:

AttributeTypeMandatoryDescription
classStringNThis attribute allows defining CSS styles classes description and specifying.
conditionStringN

Specify a condition query.

This attribute takes a decoded condition as a value. To decode a query condition, use server methods as recommended.

isFixedBooleanNWhen this attribute is equal to 'true', then the condition value cannot be changed.
isMandatoryBooleanNThis attribute makes a field mandatory. For this, set the attribute value to "true".
isVisibleBooleanNIf this attribute is equal to "true" (by default), then the widget is displayed; otherwise, it is not displayed.
labelStringNA field label with text information generally describing the field content.
modelStringYThis attribute points to the client controller data object. When the model data changes, it is automatically transferred to data of the client script.

readOnly

BooleanN

This attribute allows to set a read-only status to field. For this, set it equal to 'true'.

styleStringN

This attribute specifies the display settings (size, font, color, and etc.) of the widget elements using the CSS syntax.

tableNameStringYConnection with a table by its name.

value

ArrayN

Specify an array containing references to other fields.

List
<list label="Configuration Item" model="data.element" tableName="cmdb" isMandatory="true" condition="{data.condition}" value='[{"database_value":"","display_value":""},{"database_value":"1","display_value":"First"},{"database_value":"2","display_value":"Second"}]'></list>

<modal>


This tag implements a modal window.

The following attributes are applicable:

AttributeTypeMandatoryDescription
classStringNThis attribute allows defining CSS styles classes description and specifying.
doCloseFunctionY

Specify actions to perform after one of the predefined patterns is selected:

  • click
  • context
  • mouseOver
isMandatoryBooleanNThis attribute allows to set a mandatory status to field. For this, set it equal to 'true'.
isShowBooleanNIf this attribute is equal to 'true', then the modal window is displayed.
isVisibleBooleanNIf this attribute is equal to 'true' (by default), then the widget is displayed; otherwise, it is not displayed.
labelStringNA field label with text information generally describing the field content.

readOnly

BooleanN

This attribute allows to set a read-only status to field. For this, set it equal to 'true'.

styleStringN

This attribute specifies the display settings (size, font, color, and etc.) of the widget elements using the CSS syntax.

titleStringYSpecifies the modal window title.

value

StringN

Specifies the default value for field.


modal
<modal
  title="{data.modalTitle}"
  isMandatory="true"
  isShow="{data.isShow}"
  doClose="window.s_widget_custom.countClosing();">
</modal>


<multiselect>


Provides multiple choice selection for widgets.

The following attributes are applicable:

AttributeTypeMandatoryDescription
canExcludeAllBooleanNThis parameter is responsible for items deselecting; if it's equal to TRUE, then bulk item selection cancellation is available.
classStringNThis attribute allows defining CSS styles classes description and specifying.
isMandatoryBooleanNThis attribute allows to set a mandatory status to field. For this, set it equal to 'true'.
isVisibleBooleanNIf this attribute is equal to 'true' (by default), then the widget is displayed; otherwise, it is not displayed.
labelStringNA field label with text information generally describing the field content.
modelStringYThis attribute points to the client controller data object. When the model data changes, it is automatically transferred to data of the client script.
optionsStringN

This field type matches database values with what will be displayed. Specify options available for selecting using the CodeMirror JSON formatting to set the options you need.

You can put as much options into drop-down menu as you need, but after the sixth one is placed, a vertical scroll appears.

readOnly

BooleanN

This attribute allows to set a read-only status to field. For this, set it equal to 'true'.

styleStringN

This attribute specifies the display settings (size, font, color, and etc.) of the widget elements using the CSS syntax.

valuesStringNSpecify values for the selection.


multiselect
<multiselect model="data.values" canExcludeAll="true" values='["1", "2"]' options='[{"database_value":"","display_value":""},{"database_value":"1","display_value":"First"},{"database_value":"2","display_value":"Second"}]'></multiselect>

<reference>


This element adds a reference field to a widget for establishing connections with data tables by a custom reference.

The following attributes are applicable:

AttributeTypeMandatoryDescription
classStringNThis attribute allows defining CSS styles classes description and specifying.
conditionStringN

Specify a condition query.

This attribute takes a decoded condition as a value. To decode a query condition, use server methods as recommended.

isFixedBooleanNWhen this attribute is equal to 'true', then the condition value cannot be changed.
isMandatoryBooleanNThis attribute allows to set a mandatory status to field. For this, set it equal to 'true'.
isVisibleBooleanNIf this attribute is equal to 'true' (by default), then the widget is displayed; otherwise, it is not displayed.
labelStringNA field label with text information generally describing the field content.
modelStringYThis attribute points to the client controller data object. When the model data changes, it is automatically transferred to data of the client script.

readOnly

BooleanN

This attribute allows to set a read-only status to field. For this, set it equal to 'true'.

styleStringN

This attribute specifies the display settings (size, font, color, and etc.) of the widget elements using the CSS syntax.

tableNameStringYConnection with a table by its name.

value

StringN

Specifies the default value for field.


reference
<reference label="Configuration Item" model="data.element" tableName="cmdb" isMandatory="true" condition="{data.condition}"></reference>

<rem>


This widget is used to add model attributes to a form. The use case is when administrator needs to extend a record form in the agent interface. The tag must be specified in the Template field of the widget.

The following attributes are applicable:

AttributeTypeMandatoryDescription
isUserScriptsBooleanNThis attribute allows to enable client scripts execution. The default value is 'true'.
isPortalBooleanNThis attribute allows declaring that this widget should be displayed on the portal.
modelIdStringNThis attribute allows to specify RE model ID.
recordIdStringNThis attribute allows to specify an ID of existing record to extend.
styleStringN

This attribute specifies the display settings (size, font, color, and etc.) of the widget elements using the CSS syntax.

tableNameStringYThis attribute allows to specify a table containing the extending record.
rem
<rem modelId="{data.model_id}" tableName="{data.table_name}" recordId ="{data.record_id}" />
( () => {
    window.s_widget_custom = window.s_widget_custom || {};
    const modelId = new URLSearchParams(window.location.search).get('model_id'); // Getting model id from URL
    //Setting model from model_id URL parameter so new record knows from which model to add attributes
    s_widget.setFieldValue('model_id', modelId);
    // Setting table name and record ID of existing record in order to find a model
    s_widget.setFieldValue('table_name', window.s_form.getTableName());
    s_widget.setFieldValue('record_id', window.s_form.getUniqueValue());
})();

<remform>


This tag allows adding to portal a form consisting of model attributes.

The following attributes are applicable:

AttributeTypeMandatoryDescription
isPortalBooleanNThis attribute allows declaring that this widget should be displayed on the portal. In the case of the <remform> SimpleTag, it is recommended to set the value of this attribute to 'true'.
isUserScriptsBooleanNThis attribute allows to enable client scripts execution. The default value is 'true'.
recordIdStringNThis attribute allows to specify an ID of existing record to extend.
saveButtonCaptionStringNSpecify text displayed on the Save button.
styleStringN

This attribute specifies the display settings (size, font, color, and etc.) of the widget elements using the CSS syntax.

tableNameStringYThis attribute allows to specify a table containing the extending record.
remform
<remform modelId="{data.model_id}" isPortal="true" tableName="rem_table" saveButtonCaption="Save" />
remform widget code
(() => {
    window.s_widget_custom = window.s_widget_custom || {};
    const modelId = new URLSearchParams(window.location.search).get('model_id');
    s_widget.setFieldValue('model_id', modelId); // Provide form of new record with model id
})();

<report>


Add this element to display a particular report.

The following attributes are applicable:

AttributeTypeMandatoryDescription
classStringNThis attribute allows defining CSS styles classes description and specifying.
conditionStringN

Specify a condition to build a report.

This attribute takes a decoded condition as a value. To decode a query condition, use server methods as recommended.

isMandatoryBooleanNThis attribute allows to set a mandatory status to field. For this, set it equal to 'true'.
isVisibleBooleanNIf this attribute is equal to 'true' (by default), then the widget is displayed; otherwise, it is not displayed.
labelStringNA field label with text information generally describing the field content.
modelStringYThis attribute points to the client controller data object. When the model data changes, it is automatically transferred to data of the client script.

readOnly

BooleanN

This attribute allows to set a read-only status to field. For this, set it equal to 'true'.

styleStringN

This attribute specifies the display settings (size, font, color, and etc.) of the widget elements using the CSS syntax.

reportIdStringYSpecify the report with the appropriate ID to display.

value

StringN

Specifies the default value for field.

When placing two or more conditions into the condition string, merge them with the carat symbol ( ^ ). The condition syntax will look like this:

Condition wordNotationExample
AND^emailLIKE-group^state=active
OR^ORimpact=high^ORurgency=high

To know more about possible condition operators, please refer to the Condition Operators article.

report
<report reportid="{data.monthBarReportId}" condition="(group.nameLIKEdesk^ORstate=active)"/>

<select>


A field that allows selecting items.

The following attribute is applicable:

AttributeTypeMandatoryDescription
classStringNThis attribute allows defining CSS styles classes description and specifying.
isMandatoryBooleanNThis attribute allows to set a mandatory status to field. For this, set it equal to 'true'.
isVisibleBooleanNIf this attribute is equal to 'true' (by default), then the widget is displayed; otherwise, it is not displayed.
labelStringNA field label with text information generally describing the field content.
modelStringYThis attribute points to the client controller data object. When the model data changes, it is automatically transferred to data of the client script.

readOnly

BooleanN

This attribute allows to set a read-only status to field. For this, set it equal to 'true'.

optionsStringNThis field type matches database values with what will be displayed. Specify options available for selecting using the CodeMirror JSON formatting to set the options you need.
placeholderStringNSpecifies a placeholder for text field.
styleStringN

This attribute specifies the display settings (size, font, color, and etc.) of the widget elements using the CSS syntax.

value

StringN

Specifies the default value for field.


select
<select label="Class" isMandatory="true" model="data.class" options='[{"database_value":"","display_value":""},{"database_value":"155964310500000004","display_value":"Server"},{"database_value":"155964310500000006","display_value":"Database"}]'></select>

<string>


In a widget, use this attribute to designate an input field for text information. The element is similar to the React component.

The following attributes are applicable:

AttributeTypeMandatoryDescription
classStringNThis attribute allows defining CSS styles classes description and specifying.
isMandatoryBooleanNThis attribute allows to set a mandatory status to field. For this, set it equal to 'true'.
isVisibleBooleanNIf this attribute is equal to 'true' (by default), then the widget is displayed; otherwise, it is not displayed.
labelStringNA field label with text information generally describing the field content.
modelStringYThis attribute points to the client controller data object. When the model data changes, it is automatically transferred to data of the client script.
placeholderStringNSpecifies a placeholder for text field.

readOnly

BooleanN

This attribute allows to set a read-only status to field. For this, set it equal to 'true'.

styleStringN

This attribute specifies the display settings (size, font, color, and etc.) of the widget elements using the CSS syntax.

value

StringN

Specifies the default value for field.

string
<h1>{data.fullname}</h1>
<string model="data.firstname" event-change="s_widget_custom.updateFullname();"></string>
<string model="data.lastname" event-change="s_widget_custom.updateFullname();"></string>
Client Script
;
(() => {
  window.s_widget_custom.updateFullname = async function () {
    const firstname = s_widget.getFieldValue('firstname') || '';
    const lastname = s_widget.getFieldValue('lastname') || '';
    s_widget.setFieldValue('fullname', lastname + ' ' + firstname);
  } 
})();

<template>


This element is used to create form templates with a particular set of fields.

The following attributes are applicable:

AttributeTypeMandatoryDescription
classStringNThis attribute allows defining CSS styles classes description and specifying.
modelStringYThis attribute points to the client controller data object. When the model data changes, it is automatically transferred to data of the client script.
isMandatoryBooleanNThis attribute allows setting a mandatory status to field. For this, set it equal to 'true'.
isVisibleBooleanNIf this attribute is equal to 'true' (by default), then the widget of the type from the list below is displayed; otherwise, it is not displayed.
labelStringNA field label with text information generally describing the field content.

readOnly

BooleanN

This attribute allows setting a read-only status to field. For this, set it equal to 'true'.

styleStringN

This attribute specifies the display settings (size, font, color, and etc.) of the widget elements using the CSS syntax.

tableIdBig IntegerNConnection with a table by the ID.
tableNameStringYConnection with a table by its name.

value

StringN

Specifies the default value for field.


<textarea>


This element adds a multi-line text field.

The following attributes are applicable:

AttributeTypeMandatoryDescription
classStringNThis attribute allows defining CSS styles classes description and specifying.
isMandatoryBooleanNThis attribute allows to set a mandatory status to field. For this, set it equal to 'true'.
isVisibleBooleanNIf this attribute is equal to 'true' (by default), then the widget is displayed; otherwise, it is not displayed.
labelStringNA field label with text information generally describing the field content.
modelStringYThis attribute points to the client controller data object. When the model data changes, it is automatically transferred to data of the client script.
placeholderStringNSpecifies a placeholder for text field.

readOnly

BooleanN

This attribute allows to set a read-only status to field. For this, set it equal to 'true'.

styleStringN

This attribute specifies the display settings (size, font, color, and etc.) of the widget elements using the CSS syntax.

value

StringN

Specifies the default value for field.


textarea
  <textarea model="data.name" label="Name" placeholder="Your search request" value=""></textarea>
  <textarea model="data.description" label="Description" value="" placeholder="Your search request"></textarea>

  • No labels