Syspro
Provides integration with SYSPRO E.Net Business Objects through the SYSPRO WCF service.
Revision History
0.0.1.40 - Initial release.
0.0.1.41 - Allowed the Node to run on Cloud and Local clusters.
0.1.0.0 - Updated invocation startup and streaming behavior.
0.1.1.0 - Added request details to normalized mutation responses.
0.1.1.1 - Improved cancellation handling.
0.1.1.2 - Added optional raw execution logging.
Connection
Use this Connection to store the SYSPRO service endpoint and credentials used by all Node methods.
| Property | Type | Description |
|---|---|---|
Service URL |
String | Absolute net.tcp URL for the SYSPRO SOAP service endpoint, e.g. net.tcp://server:31001/SYSPROWCFService/. |
Operator |
String | SYSPRO operator name used to log on to the service. |
Password |
Masked | Password for the SYSPRO operator. |
Company |
String | SYSPRO company ID. |
Company Password |
Masked | Password for the SYSPRO company, when required. |
Correct XML Case |
Boolean | Corrects element casing in the response XML by using the input XML structure as a reference. |
Use Mutex |
Boolean | Serializes calls for environments that require one-at-a-time SYSPRO execution. |
Serialisation Timeout Seconds |
Integer | Timeout used while waiting for the mutex. Set to 0 to wait indefinitely. |
Include Raw Data |
Boolean | Writes the generated request XML, mutation request, and raw response XML to the platform logs for each execution. |
Setup Notes
The Node calls SYSPRO E.Net Business Objects through the SYSPRO WCF service. Configure the Service URL with an absolute net.tcp endpoint that the Flowgear runtime can reach. The Connection test validates the required fields, verifies that the URL uses the net.tcp scheme, and performs a logon and logoff round trip.
Acquiring Licensing
All E.Net calls require the appropriate SYSPRO licensing. Licenses can be requested from SYSPRO or a SYSPRO VAR. Licensed Business Objects are defined by modules in the License.xml file under the Enet XML element. If the Enet element is not present, no E.Net licenses are present.
To determine which modules must be licensed, refer to the Business Object Reference Library in the SYSPRO support resources. Locate the transaction you want to perform, then check which module it is grouped into. The SORTOI Business Object, Sales Order Import, is listed under the Sales Orders Primary Posting Functional Area. This is the module that must be licensed before you can make a SORTOI call.
You can obtain detailed Business Object information from the SYSPRO Customer Portal. Although this Node includes templates and sample payloads, you may find additional schemas and sample payloads in the SYSPRO install folder, e.g. BASE\Schemas.
Configuring Licensing
After you have obtained a License.xml file containing the appropriate licensing, import it into SYSPRO. Then configure E.Net license access:
- Open
Setup > Setup Options. - Select
Configure e.net licenseunder theDefinemenu. - If you have not used E.Net before, import your
License.xmlfile, then return to theConfigure e.net licensescreen. - Select
Configure e.net licenses. - Click
Business Objects. - Step through each Business Object you plan to use in the tree on the left.
- Select the operators that should have access to each Business Object in the list on the right.
Your Operator
Configure the SYSPRO operator that you will use in the Flowgear Connection:
- Open
Setup > Security > Operators. - Edit the operator.
- Open the
e.nettab. - Confirm that access to the relevant areas has been granted.
- Set the operator usage for E.Net Business Objects to
Named User.
Operator Security Group
In SYSPRO, all operators are assigned to a security group. By default, only the Admin group has full rights to E.Net. If the operator belongs to another group, configure access on that group:
- Open
Setup > Security > Groups. - Edit the security group assigned to the operator.
- Click
Security Access. - In the tree on the left, confirm that the required permissions have been set for each module.
- To change a permission, right-click the item in the list on the right and select
Allow. - Scroll to the bottom of the tree and expand
e.net solutions. - Set the required permissions for
Utility,Query,Transaction, andSetupper Business Object.
Methods
The Node exposes separate methods for SYSPRO query, transaction post, and setup operations. Templates populate the expected BusinessObject, Options, and Items shapes for the selected Business Object.
Query
Executes the SYSPRO Query action.
| Parameter | Type | Description |
|---|---|---|
Connection |
Connection | SYSPRO Connection profile. |
BusinessObject |
String | SYSPRO Business Object identifier, e.g. INVQRY. |
Options |
Object | Query options or an explicit dataXml payload. Template-projected fields are converted back to SYSPRO XML. |
Items |
Array | Optional input items that provide dataXml values. Query templates do not include Items by default. |
| Return | Type | Description |
|---|---|---|
Response |
Array | Provider-shaped response rows streamed as JSON objects. Query responses that contain a single business-record array may emit one row per business record, valid no-match outcomes return zero rows, and first-call provider failures surface instead of being normalized into success rows. |
Post
Executes the SYSPRO Post action for transaction Business Objects.
| Parameter | Type | Description |
|---|---|---|
Connection |
Connection | SYSPRO Connection profile. |
BusinessObject |
String | SYSPRO Business Object identifier, e.g. SORTOI. |
Options |
Object | Parameter values for the post operation, or explicit parametersXml and dataXml values. |
Items |
Array | Input items that provide the transaction data payload. Templates expose payload fields directly on Items where possible. |
| Return | Type | Description |
|---|---|---|
Response |
Array | Response rows with projected SYSPRO business fields and a Flowgear object containing IsSuccess, Message, and Request. |
SetupAdd
Executes the SYSPRO SetupAdd action.
| Parameter | Type | Description |
|---|---|---|
Connection |
Connection | SYSPRO Connection profile. |
BusinessObject |
String | SYSPRO setup Business Object identifier. |
Options |
Object | Setup parameter values, or explicit parametersXml and dataXml values. |
Items |
Array | Input items that provide setup data to add. Templates expose payload fields directly on Items where possible. |
| Return | Type | Description |
|---|---|---|
Response |
Array | Response rows with normalized SYSPRO fields and a Flowgear object containing IsSuccess, Message, and Request. |
SetupUpdate
Executes the SYSPRO SetupUpdate action.
| Parameter | Type | Description |
|---|---|---|
Connection |
Connection | SYSPRO Connection profile. |
BusinessObject |
String | SYSPRO setup Business Object identifier. |
Options |
Object | Setup parameter values, or explicit parametersXml and dataXml values. |
Items |
Array | Input items that provide setup data to update. Templates expose payload fields directly on Items where possible. |
| Return | Type | Description |
|---|---|---|
Response |
Array | Response rows with normalized SYSPRO fields and a Flowgear object containing IsSuccess, Message, and Request. |
SetupDelete
Executes the SYSPRO SetupDelete action.
| Parameter | Type | Description |
|---|---|---|
Connection |
Connection | SYSPRO Connection profile. |
BusinessObject |
String | SYSPRO setup Business Object identifier. |
Options |
Object | Setup parameter values, or explicit parametersXml and dataXml values. |
Items |
Array | Input items that provide setup data to delete. Templates expose payload fields directly on Items where possible. |
| Return | Type | Description |
|---|---|---|
Response |
Array | Response rows with normalized SYSPRO fields and a Flowgear object containing IsSuccess, Message, and Request. |
Usage Notes
BusinessObjectis typically a short SYSPRO identifier composed of a module and transaction code, e.g.APSTIN,INVQRY, orSORTOI.- Templates provide the recommended
OptionsandItemsshape for the selected Business Object. Prefer template-projected fields for new Workflows. - Query templates project XML sections such as
Key,Option, andFilterintoOptionsfields. The Node converts these fields back into SYSPRO XML at runtime. - Post and setup templates usually expose data fields directly on
Items, so you do not need to map rawdataXmlunless the template does not cover your scenario. - The Node converts SYSPRO XML responses into JSON and removes response metadata objects where possible.
- The Node validates the
Connectionand completes the first SYSPRO call before it begins streaming responses. IfItemsis connected but contains no items, the Node does not call SYSPRO. - Enable
Include Raw Dataonly when you need detailed execution logs. The logs contain unredacted request and response data and may include sensitive business information.
Parsing SYSPRO Responses
The naming and nesting of the SYSPRO response document can vary by Business Object, class, method, and validation mode. Test against the exact response fields returned by the Business Object you are using.
When you need to check for success or failure, map the specific response fields returned by the selected template. SYSPRO usually returns descriptive values in fields such as Error, ErrorDescription, or ErrorMessage.
Post and setup responses include Flowgear.IsSuccess, Flowgear.Message, and Flowgear.Request. The Flowgear.Request object contains the Items value that produced the response, or Options when no item was supplied, with nested Content fields removed. Query failures stop execution and are surfaced as Node errors.
Troubleshooting
Service URL must use the net.tcp scheme
The V2 Syspro Node requires a net.tcp WCF endpoint. Update Service URL to an absolute URL such as net.tcp://server:31001/SYSPROWCFService/.
Unable to open and read operator file, ADMOPR.DAT
This usually indicates that the service account running the SYSPRO service does not have permission to access the file. Ensure that the account has read and write permissions to the required SYSPRO folder.
Access denied to Functional Area for operator
Either the functional area is not enabled for the operator, or the functional area is not licensed. Review the E.Net license, operator, and security group setup described in Setup Notes.
The supplied UserID is invalid, or your session has expired
This can occur when multiple requests are sent to SYSPRO using the same session. Keep Use Mutex enabled for serial execution, and make sure all Workflows that target the same SYSPRO service use the same Syspro Node version where possible.