Limitations
XtendM3 Limitations
Table of contents
General
General XtendM3 limitations.
M3 Program calls
It is not possible to call M3 programs from an extension. Only M3 APIs can be called from extensions.
Database read on user-defined sorting orders
It is not possible to build query on standard tables using user-defined sorting order or index created using CRS021.
Extending
Extension limitations.
Batch/Function
Batch/Function specific limitations.
Creating additional fields in field groups e.g. MWPV6
TBA, this feature has not been released yet.
Interactive
Limitations specific to interactive extensions.
Creating UI related components in interactive panels
- For enhancements such as adding new field in OIS100/E, extension will not be able to add textbox or dropdown field.
- Workaround:
CMS080 (custom fields) or H5 Script can be used to create UI components.
- Workaround:
- XtendM3 does not support creating additional column in subfiles, converting columns to editable fields, addition of selection filters, and adding sorting orders and views.
- Workaround:
Some M3 program views can be configured in CRS020/CRS022. H5 Script can also be used to add columns in subfile panels.
- Workaround:
Accessing custom fields from extensions
- If a field is not a standard field and is defined via CMS080 or by a script, it cannot be accessed from extensions directly as opposed to other standard fields on the screen.
- Workaround:
H5 script can be used to send the custom field information to XtendM3 API instead.
- Workaround:
Accessing chosen list option
- Currently, it is not possible to access list option from extensions.
- Workaround:
In order to perform custom validation on the B panel via extensions, you can send the chosen list option along with the record keys to an XtendM3 API instead.
- Workaround:
Transaction
Trigger Transaction specific limitations.
Adding/Removing input/output parameters for an existing transaction
- It is not possible to add/remove parameters for an existing transaction via XtendM3.
- Workaround:
Wrap transaction by defining a new XtendM3 transaction with both standard parameters and the custom ones. Call the API extension and perform additional logic with the new parameters inside the XtendM3 transaction.
- Workaround:
Changing the output parameter values
- It is not possible to change the output parameters for a transaction. The output parameters are read-only and cannot be modified by an extension.
Expanding
Reference Fields
TBA, this feature has not been released yet.
Database
Limitations specific to Dynamic Tables.
Adding fields to existing standard tables
- It is not possible to add fields to existing tables.
- Workaround:
Create new tables by using XtendM3 Dynamic Table.
- Workaround:
Adding table index for standard tables
- Cannot be done in XtendM3, workaround exists.
- Workaround:
Custom table index for standard tables should be created in CRS021.
- Workaround:
API
Limitations specific to Transaction type extensions.
Creating new transactions on standard APIs
- It is not possible to define new transactions on the existing standard APIs.
- Workaround:
Define a new transaction on an XtendM3 API. To find and relate the transaction easier to the standard program you could use the same suffix e.g. for new transactions in OIS100MI you can define EXT100MI API.
- Workaround:
Batch
Limitations specific to Batch type extensions.
ION API
- It is not possible to call ION APIs from Batch extensions.
- Workaround:
No workaround available.
- Workaround:
Interactive
XtendM3 APIs
Limitations to the XtendM3 APIs.
TransactionAPI
- It is not possible to fetch and work with the input-parameters POST Transaction, using the Transaction API. However, output-parameters are available in POST.
To clarify, PRE Transaction both input- & output-parameters are available. POST Transaction only output-parameters are available.- Workaround:
Use the SessionAPI instead.
- Workaround:
Integration
ION API
- It is not possible to call a Transaction Extension, that is inherently calling an ION API, from a MEC Context.
- Workaround:
No workaround available.
- Workaround:
M3 API
Calling CMS100MI/MDBREADMI
- It is not possible to call custom transactions defined in CMS100MI or MDBREADMI.
- Workaround:
Perform the query using either direct database access or via calling CMS100MI/MDBREADMI IONAPI as a last resort option.
- Workaround:
Governance
Governance limitations.
Timeouts
- Trigger extensions: five seconds.
- Transaction extensions: two minutes.
- Batch extensions: one hour.
- Utility extensions: depends on the calling extension.
- E.g., a Utility called from a Trigger extension will be able to use up the remaining timeout for that Trigger.