๐๏ธ What is an RDMI component and how do you create one?
A ย component is a piece of software that is made known to a USoft application so that its methods may be called from constraints, jobs or other USoft constructs.
๐๏ธ Java Enterprise (J2EE) components
USoft Developer supports Java (Enterprise) components, referred to as J2EE components. USoft's support for components is realized using RDMI technology, in which methods of components can be invoked by rules, allowing USoft applications to interact with other applications.
๐๏ธ Component parameters
When you use RDMI, you are likely to pass parameters to the method and/or receive parameters back from the method. For each method call you need to determine:
๐๏ธ Component state
On a component's State tab, you can determine when the component is constructed and when it is destroyed. You can also set what functionality it supports:
๐๏ธ Constructor SQL
The constructor of a component is a method that is called at the moment that the component is created. The constructor is used primarily for initialization purposes.
๐๏ธ How many times a called component is executed?
The INVOKE clause is a SQL statement. It is executed under exactly the same conditions as a SQL statement without INVOKE.
๐๏ธ Components: Standard protocol
The standard protocol is the default way of interacting with an RDMI component. The RDMI component is treated as a procedure that you call by (optionally) passing a single set of values as input parameters (if applicable). The input data may consist of hard-coded values or values found in a single row in a table.
๐๏ธ Query protocol, component table
The query protocol
๐๏ธ Component querying multiple CSV files
This is a variation on Example 1. Instead of querying a CSV file identified by a hard-coded filepath, a column is added to the component table. This allows the user, at query time, to identify the CSV file to be queried.
๐๏ธ Component querying a CSV file
This example shows how to create a component table that returns data from a CSV file as if it were a database table with multiple rows: a component table mimics the behaviour, or part of the behaviour of a database table but is not itself in the database.
๐๏ธ Aggregate protocol
The aggregate protocol is a way of interacting with an RDMI component that involves passing a multi-row data set to the component and letting it return a single-record or single-value result. With the aggregate protocol you can:
๐๏ธ Component for exporting a data set to a CSV file
The following step-by-step instructions are for creating a .NET component that exports a set of data to a CSV file. This is an example of how to create and use the aggregate protocol.
๐๏ธ Calling a component
Where to call a component from?
๐๏ธ Component error handling
When a method is being invoked, RDMI supports the principle of exception handling for reporting errors. Subsequently, if the chosen middleware supports it, a message can be passed on with the exception to explain in detail what has gone wrong. Following the exception, the rules engine will display the returned message and will discontinue the transaction.