Integrates with SYSPRO using the E.Net Business Objects



Demo Video


Properties

Connection

Type: Connection Input

Operator
Type: String

Password
Type: String

Company
Type: String

CompanyPassword
Type: String

Identifies the SYSPRO Company and Operator to impersonate. See below for further information on configuring E.Net licenses.

Action

Type: List Input
Query - Query Class
Post - Post Class
SetupAdd - Add Method for Setup Class
SetupAddUpdate - Performs a SetupAdd followed by a SetupUpdate. This is useful for master data such as customer information but take care in using it as there can be side-effects for certain types of master data.
SetupUpdate Update Method for Setup Class
SetupDelete Delete Method for Setup Class
Build Build Method for Transaction Class
Browse Browse Method for Query Class
Fetch Fetch Method for Query Class
NextKey NextKey Method for Query Class
PreviousKey PreviousKey Method for Query Class
Specifies the E.Net Action.

BusinessObject

Type: String Input
The SYSPRO Business Object to be specified for the call. This is typically a 6 character value composed of a short name for the module and a short name for the tyep of transaction. For Example "APSTIN".

DataXml

Type: Xml Input
An XML representation of the data to be integrated.

ParameterXml

Type: Xml Input
The Parameter XML that governs how the Data XML should be treated.

ResponseXml

Type: Xml Output
The XML response returned by SYSPRO.

CorrectXmlCase

Type: Boolean Input
Certain SYSPRO business object calls case XML nodes differently in the response. For example, the node SalesOrder in DataXml may be returned as salesorder in the ResponseXml. This inconsistency can be compensated for by setting CorrectXmlCase to true. When true, the casing of the returned XML nodes in ResponseXml will be modified to match corresponding node casing in DataXml.

Remarks

SYSPRO's integration capabilities are extensive and are beyond the scope of this document. Obtain detailed business object information from the SYSPRO Support Zone. Additionally, a large proportion of the transaction schemas and sample XML that are shipped with SYSPRO in the BASE\Schemas folder are included as samples in Flowgear. Refer to Node Samples for additional information on using these samples.

Handling Simultaneous Requests

As of version 1.0.0.4 of this Node, only one SYSPRO request will be allowed to execute at a time. Any requests received while a request is being processed will be queued and executed in the order they are queued as each prior request completes. This behaviour ensures that as long as the same DropPoint is used for all SYSPRO E.Net requests, there is no chance of requests processing concurrently which does cause problems on some Business Objects.

Setting a timeout on the Connection governs the maximum amount of time the Node will wait for requests that are already executing before aborting. If no timeout is specified, the Node will wait indefinitely.

Connecting to SYSPRO

The Flowgear SYSPRO Connector does not use any of the WebServices that ship with the product (this includes both the legacy SOAP and newer WCF/RESTful services). Instead, install a DropPoint on the application server. This approach eliminates problems associated with firewalling, payload restrictions, timeout restrictions, security account restrictions and registry access restrictions.

Acquiring Licensing

All E.Net calls require the appropriate licensing. Licenses can be requested from SYSPRO or a SYSPRO VAR. The licensed Business objects are defined by modules in the License.Xml file and can be located under the Enet XML node in this file. If this node is not present, no E.Net licenses are present.

To determine exactly which modules need to be licensed, refer to the Business Object Reference Library in the Support Zone. Locate the transaction you would like to perform and then check which module it is grouped into. For example the SORTOI Business Object (Sales Order Import) is listed under the Sales Orders Primary Posting Functional Area. This is the name of the module that must be licensed in order to have the ability to make a SORTOI call.

Configuring Licensing

Once you have obtained a License.Xml file containing the appropriate licensing, import it as normal. In addition, the license needs to be installed for use in E.Net:

SYSPRO E.NET License

  • Click Setup/System Setup, then click “Configure e.net license”
  • If you’ve never used e.net before, you need to import your license.xml file here first – click Next and follow the prompts, then go back to the Configure e.net license screen again and choose the “Configure e.net licenses” radio button
  • Click Business Objects and in the screen that comes up, step through each business object you’re going to be using in the tree on the left and tick the operators you want to have access to the business object in the list on the right.

Your Operator

  • Go to Setup/Security/Operators and edit your Operator (this is the Operator you will be using in the Connection property of the SYSPRO Connector)
  • In the e.net tab, ensure that access to relevant areas has been granted
  • Check the operator usage for e.net business objects option – this should be set 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 in question belongs to another group, go to Setup/Security/Groups and edit the group for the operator in question.
  • Click Security Access
  • In the tree on the left, ensure the appropriate permissions have been set for each module. To change a permission, right click the item in the list on the right and choose “Allow” as appropriate
  • Scroll to the bottom of the tree and expand “e.net solutions” which appears right at the bottom of the tree
  • Set the appropriate permissions for Utility, Query, Transaction and Setup per business object

Parsing SYSPRO Response XML

The naming and nesting of the Response XML document is not always consistent as SYSPRO varies it depending on the Business Object, Class (Setup/Query/Post), Method (Add/Update/Delete) and other factors such as whether a transaction is being integrated or validated only.

Take care to test for the appropriate response information when building integrations. Generally it is recommended that a precise XPath Match is used to test for success. If you wish to present general failure information, descriptive failure strings are usually present within Error or ErrorDescription XML nodes in the response.

Troubleshooting

Here are some common error messages and their resolutions.

Unable to open and read operator file (ADMOPR.DAT)

Indicates that the service or user account under which the DropPoint Windows service is running does not have permission to this file.

Ensure that the the user account the service is running under (SYSTEM by default) has read and write permission to the entire SYSPRO folder.

Retrieving the COM class factory for component with CLSID {Some GUID} failed due to the following error: 8007007e The specified module could not be found (Exception from HRESULT: 0x8007007E).

This happens because the COM object did not register correctly during installation.

Run Command Prompt as Administrator. Type regsvr32 {SysproBasePath}\Encore.dll where {SysproBasePath} is the path to the base directory in Syspro - default is C:\Syspro61\BASE\Encore.dll or C:\Syspro71\BASE\Encore.dll depending on the version of Syspro.

Access denied to Functional Area '{some functional area}' for operator 'FLOWGEAR'

Either the functional area is not enabled for the operator, or the functional area is not purchased.

Refer to the SYSPRO E.NET License section of this article.

Examples


See https://flowgear.me/s/S7kUjUp for examples.

Did this answer your question?