> SYSPRO e.net Communications Service

SYSPRO e.net Communications Service

This service (based on Windows Communication Foundation) exposes the ENCORE.DLL library to internal and external applications that need to interact with SYSPRO (e.g. SYSPRO Espresso, Predictive Search, third party developer applications, etc). Data is retrieved from the SYSPRO database using the open e.net architecture, without compromising data integrity.

This service replaces the SYSPRO e.net WCF Service (originally developed to replace SYSPRO Web Services and DCOM) and provides for load balancing functionality as well as being fault-tolerant (e.g. if a channel fails, a new thread is initiated automatically preventing the whole service from failing).

Applications using this service

  • SYSPRO Server-side Reporting

  • SYSPRO Web-based Product Configurator

  • SYSPRO Executive Dashboard Gadget

  • SYSPRO Workflow

  • SYSPRO Espresso

  • SYSPRO Point of Sale

  • SYSPRO e.net Diagnostics

  • SYSPRO Harmony

  • Any external or third party e.net application accessing SYSPRO data

Getting Started

Before you begin

  • Although you can continue running the older SYSPRO e.net WCF Service alongside the new SYSPRO e.net Communications Service, you will have to configure a different communication port.

Installation

  1. Run the SYSPRO_enet_Communications.exe executable.

    You can obtain the file from the Ports and Downloads section of the InfoZone. Otherwise, contact your local reseller for more information.

    After any port updates, we recommend you restart the service to release any e.net business objects which may be held by the service.

    Reinstalling a service is typically only required if an updated and/or improved version of the service is released.

  2. During the installation you will be required to configure settings for the service.

    • Configure the communication ports screen:

      Field/Option Description
      Service Details  
      Service Name This forms part of the naming convention for the service that is displayed in the Windows Services Management Console.
      Service Description This forms part of the naming convention for the service that is displayed in the Windows Services Management Console.
      SYSPRO Instance This indicates the default instance of SYSPRO with which the service will communicate. SYSPRO instances are reflected in your Windows Registry to identify the Base folder of your SYSPRO install where the necessary .dll and .exe files are located.
      Communication Ports
      Port numbers Description
      Below 1023 Reserved for system ports.
      From 1024 to 49151 Recommended user ports.

      Once a port number is assigned, avoid reusing that number for another service as this will cause a conflict.

      From 49152 to 65535 Dynamic ports.
      Service SOAP port This is the port that the service will use to host the SOAP endpoint. If set, SOAP communication must be performed using an address that includes the port number (e.g. http://localhost:{PortNumber}/SYSPROWCFService/Soap).
      Add SOAP port to firewall This adds the SOAP port automatically to the firewall.
      Service REST port This is the port that the service will use to host the REST endpoint. You must add the REST port to the firewall manually.

    • Configure load balancing processes screen:

      Field/Option Description
      Specify the number of load balancing processes This defaults to 5 and indicates how many load balancing processes you want to be able to run. This translates to a range of hives accessed through a single SOAP port or a single REST port. If a hive crashes, the call is routed to a different hive. It can also assign the call to the hive with the least traffic.
      Specify internal REST port numbers for the load balancing processes Enter the range of REST port numbers that you want the system to assign automatically. These will be used by the service internally and don't need to be externally available.
      Use individual REST port numbers instead This lets you enter a comma-separated list of REST ports. This must match the number of processes specified.

Troubleshooting

Debugging and diagnostics

You can troubleshoot errors or failures when using this service by editing the associated config file in elevated mode (i.e. with administrator privileges).

The SYSPROWCFHiveHostService.exe.config file is located in the folder to which you installed the service and defaults to: C:\Program Files (x86)\SYSPRO\SYSPRO e.net Communications.

[Note]

You should only edit this file for debugging purposes.

Don't use this as a method to update values for the service. The reason for this is that a wizard installation updates the system registry, which is what is read when using the service. A fresh installation will overwrite these values, which may cause problems when you next run the service.

Key Description
Language The default language to use with SYSPRO communication. This can be overridden if manually specified during the logon.
LogDetail The default logging detail used by SYSPRO. This can be overridden if manually specified during the logon.
Instance This indicates the default instance of SYSPRO with which the service will communicate. SYSPRO instances are reflected in your Windows Registry to identify the Base folder of your SYSPRO install where the necessary .dll and .exe files are located.
baseaddress The template base address used by the service. For REST and SOAP communication, the schema must be left as http:// even if a different binding is used as the service will configure this automatically.
DetailedLog When set to true the service will output a detailed log file to the temp folder of the machine on which the service is installed.
servicesoapbinding The communication binding for the service to use for SOAP communication
servicerestport This is the port that the service will use to host the REST endpoint. You must add the REST port to the firewall manually.
servicesoapport This is the port that the service will use to host the SOAP endpoint. If set, SOAP communication must be performed using an address that includes the port number (e.g. http://localhost:{PortNumber}/SYSPROWCFService/Soap).
servicerestportchildrange The internal range of REST ports used by the hive processes of the service. The range should include the same number of items as the hive process count.
hiveprocesscount The number of Hive processes to start to process SYSPRO WCF Service requests.
ReceiveTimeout The maximum length of time a call to the service can take.
SendTimeout The maximum length of time a call to the service can take.

Service logging

The SYSPRO e.net Communications Service outputs an event log to the SYSPROECS file (Control Panel->Administrative Tools->Event Viewer->Applications and Service Logs) which you can review for diagnosing any problems encountered.

It logs all children or hive processes started and the ports at which they are hosted. It also outputs the ports for REST and SOAP used by the parent service. Finally, it logs whether a child/hive process exits or crashes and then logs that a new one has been created to replace it.