SPI object extending generic ExtensionManager and providing more detailed capability which can be used for implemeting BOP extensions.
- Version:
- 17.1.1
- Source:
- See:
Extends
- extension.dt/js/spi/ExtensionManager
Methods
getCustomParameters() → {Promise.<Array.<extensions.dt/js/api/CustomParameter>>}
stable API
Gets an array of CustomParameters.
Should be used if the related BOP needs some parameter values for its initialization. All parameters defined here will show up in the first step of the Wizard opened when ABCS Business User is registering instance of BOP. That allows client to pass proper values before the BOP is initialized.
By default empty array is returned which signs that no CustomParameters are needed for initialization.
- Version:
- 17.1.1
- Source:
- See:
-
- CustomParameter
- CustomParameter.createSimple(..) to create simple key-value parameter
- CustomParameter.createEnum(..) to create parameter with multiple predefined enumeration values
Returns:
- Type
- Promise.<Array.<extensions.dt/js/api/CustomParameter>>
Example
define([
'extensions.dt/js/api/CustomParameter'
], function (
CustomParameter
) {
var CustomBOPExtension = function () {
};
CustomBOPExtension.prototype.getCustomParameters = function () {
return [
CustomParameter.createSimple('SourceURL', 'String value poiting to the source URL of this BOP'),
CustomParameter.createEnum({
key: 'environment',
displayName: 'Choose type of the environment you want to work with',
values: [
'Development',
'Testing',
'Production'
]
})
];
};
return new CustomBOPExtension();
});
Type Definitions
BOPExtensionDependencyFormat
stable API
Defines the format of the dependency to an ABCS BOP extension. This dependency should be added to the array of ExtensionManager.Dependency objects that is passed to the ExtensionManager.initialise and ExtensionManager.destroy methods.
Properties:
Name | Type | Description |
---|---|---|
businessObjects |
string | Contains an array of dependencies descriptions of the BOP extension. |
- Version:
- 17.1.1
- Source:
Example
{
"businessObjects": [
{
"my.BO": ["id","name","address"], // selected properties from BO entity, "my.BO" is the BO's id
"my.other.BO": "*" // all properties
}
]
}
or
{
"businessObjects": "*" // all business objects and properties
}
or ommit the dependency definition completely
{
// all business objects and properties
}