Custom data types
With custom data types is possible to create new data types and they are 100% customizable depending on what we need to do.
To use them It’s necessary to extends the class CustomDataType, implement the following methods and register it.
class MyCustomDataType extends CustomDataType
    # ... methods implementations
CustomDataType.register(MyCustomDataType)
Methods to implement
- getCustomDataOptionsInDatamodelInfo(customSettings PlainObject) :String ArrayList- The strings in this array will be the labels that will be shown below the ‘Check’ button in the datamodel.
 
- getCustomDataTypeName() : String- Unique name to identify the data type.
 
- renderEditorInput(data PlainObject) :HTMLElement/CUI.DOMElement- It is the content that will be shown in the editor.
 
- renderDetailOutput(data PlainObject) :HTMLElement/CUI.DOMElement- It is the content that will be shown in the detail.
 
- getSaveData(data PlainObject, saveDataPlainObject) :PlainObject
Optional methods available to override
- getCustomDataTypeNameLocalized() : String- It is the name that will be shown in the data types list.
 
- getCustomSchemaSettingNameLocalized() : String
- getCustomMaskSettingNameLocalized() : String
- getCustomSchemaSettings() : PlainObject
- getCustomMaskSettings() : PlainObject
- isVisible(mode String, optionsPlainObject) :Boolean- It returns a boolean that indicates whether the field has to be shown or not.
 
- renderFieldAsGroup() : Boolean- It returns a boolean that indicates whether the field has to be rendered as a group or not.
 
- renderCustomDataOptionsInDatamodel(customSettings PlainObject) :HTMLElement/CUI.DOMElement
- hasUserData(data PlainObject) :Boolean