Syspro
Provides integration with SYSPRO E.Net Business Objects through the SYSPRO WCF service.
Revision History
0.0.1.40 - Initial release.
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. |
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 InfoZone. 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 | Response rows streamed as JSON objects. Query responses that contain a single business-record array may emit one row per business record. |
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 streamed as JSON objects with projected SYSPRO business fields. |
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 streamed as JSON objects with normalized SYSPRO fields. |
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 streamed as JSON objects with normalized SYSPRO fields. |
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 streamed as JSON objects with normalized SYSPRO fields. |
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.
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. If you need general failure information, SYSPRO usually returns descriptive values in fields such as Error, ErrorDescription, or ErrorMessage. The Node also surfaces handled service failures through status, statusMessage, and errorMessage.
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.