The ROB-EX Scheduler client can as needed be installed to run as a Windows service. This is typically useful when a ROB-EX Scheduler client needs to run unattended batch jobs like interfacing to external ERP systems, running the Shop Floor server, automatic generation of reports, automatic rescheduling, etc. In the following this client is termed the “Integration Client” (some also refer to it as Client Run as Service).

A dedicated Integration Client installer is available in the directory <sch_client_dir>\service supporting the installation of a client service. The installer is automatically placed in the service directory whenever a ROB-EX Scheduler planner client is installed or updated – i.e. it is not available for a viewer installation.

The ROB-EX Scheduler Integration Client can be started in either

  • UI mode – In UI (User Interface) mode the client starts with the normal ROB-EX Scheduler windows, menu, Gantt chart, etc. enabled. This mode allows the service client to be configured and tested. Read more about UI mode in the Start service” section.
  • Headless mode – in this mode the client is started and controlled by a Windows service and no UI will be displayed. This mode is the normal production mode of the service client. Before starting the client in this mode make sure it has been started in UI mode, so it has been validated that the service client is correctly licensed and configured.

The Tray Service Manager is used to start/stop the integration client in both UI and Headless mode.

When running in Headless mode it is important to note that the user running the Integration Client will be the “SYSTEM” user. This has implications for

  • how the muProfiles.xml is configured – i.e. specifying {user_name} as login name may not do what you expects.
  • network drive letters. I.e. you may have a f: drive mapped when running in UI mode, which is no longer available when the service runs as the SYSTEM user.
    Note that you can map a drive letter by creating a macro. Configure the “RunExternalProgram” macro like this:
    • program= cmd.exe
    • parameters= /c "net use f: \\myserver\myshare"
  • network drive security. I.e. in UI mode you may have security rights enabled to access a network drive. The SYSTEM user may not have the same security rights.

If the SYSTEM user has too many limitations, consider creating a new Windows user and have the service run logged in as this user.
To change the Windows user that the Integration Client service uses, navigate to the service in Windows, i.e. ‘Control Panel’ -> ‘Administrative Tools’ -> ‘Services’. Locate the ‘Integration Client’ service, right-click and view the ‘Preferences’. Go to the ‘Log On’ tab and change the user as desired.

Installing the service

To install the service run the Integration Client Setup program located in the <sch_client_dir>\service directory. The first time this installer is executed select the option Auto start tray program and as well select the Service 1 install option.

Enter the multiuser site name you want to connect to. The entered site will become part of the service name and will help you to choose the correct service in case more than a single ROB-EX Scheduler client is installed as a service. Typical examples of names could be “stdSite”, “production”, “east_site” etc. Click next and close

Note that the ROB-EX Scheduler Tray program can if needed also be started manually by running the Tray .exe file located in directory <sch_client_dir>\bin.

A ROB-EX Scheduler client installed as a service shares the same code base as normal ROB-EX Scheduler clients. I.e. if you run the Integration Client Setup program from location c:\rob-ex\planner\service the client code base placed in c:\rob-ex\planner is used.
The Integration Client Setup program supports the installation of up to 20 different services running on the same PC. If you have multiple different ROB-EX Scheduler client code bases installed on the same PC, make sure they all use different service numbers.

Legal Configuration:

Code Base 1: "c:\rob-ex\planner\service 1"
Code Base 2: "c:\rob-ex2\planner\service 2"

Illegal configuration:

Code Base 1: "c:\rob-ex\planner\service 1"
Code Base 2: "c:\rob-ex2\planner\service 1"
 (Service 1 cannot be used simultaneously from two different client code bases!)

Once the service is running is it possible to communicate with the service by either

  1. Use the Tray Service Manager as described below, to monitor the current status or
  2. Enable the Automation Service from the outside by running the automation exe file

Service files

For each service installed a directory is created in the <sch_client_dir>\service directory named “service1”, “service2” etc. Files and sub-directories of these directories are explained below.

Sub-directory conf

The file “service.bat” contains settings of how the service client and what settings it is launched with. The settings in service.bat are used only during the creation of the service. Once it has been created, edit existing or additional settings using the Windows Regedit tool (Run->Regedit.exe).

Search for the node HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Apache Software Foundation\Procrun 2.0\RobexClient_<site>_<instance>\Parameters.

Especially Java->Options may need configuration. E.g.

# Communication Port number (TCP) the Scheduler uses for communication with the
# tray manager and other automation clients.
# If you have existing applications occupying the same port numbers change
# this setting to an unused port and restart the client service.
-Dgantt.rest.portnumber=9999

In case the PC has more than one Java Runtime installed (e.g. a 32-bit and 64-bit Java Runtime), a specific Java runtime may be chosen by editing Java->Jvm. The Java Runtime selected depends on the ROB-EX version.

  1. From new installs from version 6.4.1.814 and later, an embedded Java Runtime is used
  2. For installs prior to version listed above, the Java Runtime pointed to by the %JAVA_HOME% environment variable is selected.

To learn more about the available settings read the descriptive comments directly in the service.bat file.

Sub-directory bin

Contains .bat files to manually install, test and uninstall the ROB-EX Scheduler Integration Client services. They are for advanced usage, since for a typical setup the Integration Client installer and the Tray Icon manager contains similar functionality.

Sub-directory servicelog

Once the service is installed the log-file of the launcher (not the integration client) will be stored in this directory. Use these log files to debug and trouble shoot problems related to the launching of the background client service.

Sub-directory robex

This directory is created automatically the first time an integration client is started up – but only if the USER_HOME_DIR_PATH (as explained in the conf” area) is configured with the default values.
This directory will contain the default settings of the client (ganttPlanner sub-directory) as well as log-files generated by the client (log sub-directory).

Automating jobs

Once the Integration client has been installed and configured to start, then the recommended process for configuring it will be

  1. Start the integration with UI
  2. Now exit the client UI mode and startup the client like a normal service (either from the normal Windows Services window or using the Tray Service Manager as explained in the following section)

Tray Service Manager – Tray Icon

Once installed with the “Auto start tray program” option of the installer the ROB-EX Scheduler Tray program is displayed as an icon in the system tray area of the Windows task bar. The tray program provides an interface, which enables the user to interact with a ROB-EX Scheduler client running as a service: start/stop the service and monitor the status. The following chapters provides an overview of the possibilities available with the ROB-EX Scheduler Tray Service Manager

The tray icon right-click menu

The table below describes the list of possibilities when right-clicking on the ROB-EX Scheduler Tray icon.

Option Description
Exit Shuts down the Tray Icon program. It will be started the next time the user logs in (optionally if enabled with the installer)
Open Service Manager Open the main window ‘Services’. Same effect as double-clicking the Tray Icon. When started the first time click the “Refresh” button to search for installed services.

The Main Window (ROB-EX Scheduler Services)

When opening up the main window notice that the window is separated into two areas: the service list area (the left side) and the service information area (the right side). The service list area contains the list of known service (the service list) and below the service list the service list button panel.

The service list

The service list contains known services. There are two kinds of services as explained in the following table.

Type Description Icon
Local service Is a service that resides on the same local PC as the one running ROB-EX Scheduler Tray Icon
Remote service A remote service, is a service that is NOT running on the same PC as the one running ROB-EX Scheduler Tray Icon

The name of the service is displayed with different text color. The meanings of the colors used are the following.

  • Red – for local services the service is detected not to be running and the tray service manager is not able to establish communication to the service client. For remote services the tray service manager is not able to establish communication to the service client.
  • Yellow – the service is detected to be running, but the tray service manager is not able to establish communication to the service client. If this happens right after the first startup of the integration client it could indicate that the SERVICE_PORT_NUMBER of the client is occupied by another running program. If the yellow indicator is shown for an integration client it could indicate that the integration client is dead locked and unresponsive.
  • Green – a communication channel has been established between the tray service manager and the service client. The different tabs on the right will allow a user to obtain information about the status of the service client.

The service list button panel

The service list button panel provides the following components:

Component name Type Description
Add remote Button Clicking this button opens a dialog which enables the user to add a remote service.

To add a remote service the user most input a host and a port range.

The host could be an IP address or a hostname.

The port range specifies the range where ROB-EX Scheduler Tray Icon will search for services. If the port is known, the range can simply be one port. The port number is assigned by the Tray Icon installer and can be changed/viewed by opening the service configuration file.
Refresh Button Clicking the ‘Refresh’-button will start an automated search scanning the local <sch_client_dir>\services file system for any information about ROB-EX Scheduler services and adds any found service to the service list. Notice that it does not search for actual installed Windows services; it only scans local file system (so it might show services that has been removed as a Windows service, but still exists on the file system).
Remove Button Clicking the ‘Remove’-button, will remove the service that is selected in the service list.

The service information area

The service information area consists of three tabs. The Service Info tab, the Console output tab, and the Log viewer tab.

Each tab is updated with some kind of information about the selected service from the service list.

The Service Info tab

The service info area provides the user with general information about the service.

The service info button panel

The service info button panel provides the user with some possibilities to interact with the service.

The button panel has five components, a ‘Refresh info’-button, a ‘Start’-drop-down menu, a ‘Start’-button, a ‘Stop’-button and a ‘Close’-button.

The following table shows what the different components are for:

Component name Type Description
Refresh info Button Clicking the ‘Refresh info’-button, will make ROB-EX Scheduler Tray Icon check the communication link with the service and refresh the service info area.
Start Drop-down menu Clicking the ‘Start’-drop-down menu enables the user to select one of two options: ‘Start: service’ and ‘Start: GUI’.
The selected option will influence the behavior of the ‘Start’-button, see the row about the ‘Start’-button for more information.

Note: This component is only available when the service is stopped!
Start Button Clicking the ‘Start’-button, will do one of two things depending on the option selected in the ‘Start’ drop-down menu.

If the option ‘Start: service’ is selected, clicking the ‘Start’-button will start the service that is selected in the left hand side service list.

If the option ‘Start: GUI’ is selected, clicking the ‘Start’-button will open up a normal ROB-EX Scheduler client with UI enabled. This option enables a user to change and test setting within ROB-EX Scheduler. Typically this option is selected the first time the client is started, in order to setup and configure
  • licensing information – i.e. make sure the integration client starts with a valid license key
  • server connection settings – i.e. use menu Functions->General->Setup and select the Multiuser tab to configure what ROB-EX Scheduler Server the client should connect to
  • data source connections – i.e. setup SQL driver connection properties to be able to interface to external systems like ERP or MES systems
  • macros – i.e. configure macros that will run with regular intervals performing various jobs that need to run unattended
  • and more
Stop Button Clicking the ‘Stop’-button, will make ROB-EX Scheduler Tray Icon try to stop the service that is selected in the service list.
Close Button Clicking the ‘Close’-button will close the main window (ROB-EX Scheduler Services).

The Console output tab

The console output area show the console output from the service that is selected in the service list, i.e. this is the same information sent to the ROB-EX Scheduler client log file.

The console output button panel

The console output button panel has two components. The following table shows what the different components are for:

Component name Type Description
Refresh output Button Clicking the ‘Refresh output’-button, will make ROB-EX Scheduler Tray Icon refresh the console output for the service that is selected in the service list.
Close Button Clicking the ‘Close’-button will close the main window (ROB-EX Scheduler Services).

The Log viewer tab

The log viewer date area shows the date from which we will show logs for the service that is selected in the service list.

Log entries that are older than that will not be displayed in the log viewer table.

Note: This area is empty if no service is selected in the service list.

The log viewer table

The log viewer table shows a list of log entries, for the service that is selected in the service list, with some brief information about the log.

The log viewer detail area

The log viewer detail area shows detailed information for the log entry that is selected in the log viewer table.

The log viewer button panel

The log viewer button panel has four components. The following table shows what the different components are for:

Component name Type Description
Refresh Button Clicking the ‘Refresh’-button, will make ROB-EX Scheduler Tray Icon refresh the log viewer table entries for the service that is selected in the service list.
Clear Button Clicking the ‘Clear’-button, will make ROB-EX Scheduler Tray Icon clear the log viewer table of all entries.
It then saves the newest date of the cleared entries, so that the log viewer table will only display logs that are newer than that date.
Reset Button Clicking the ‘Reset’-button, will make ROB-EX Scheduler Tray Icon delete the saves date displayed in the log viewer date area, so that all logs will be show the next time the ‘Refresh’-button is clicked.
Close Button Clicking the ‘Close’-button will close the main window (ROB-EX Scheduler Services).

Feedback

Was this helpful?

Yes No
You indicated this topic was not helpful to you ...
Could you please leave a comment telling us why? Thank you!
Thanks for your feedback.

Post your comment on this topic.

Post Comment