Difference between revisions of "UBIK Enterprise Service"
Line 45: | Line 45: | ||
{{Hint|Keep UserID and Password empty, if you want the system to connect to the SQL Server using the Windows Authentication (https://msdn.microsoft.com/en-us/library/dd787978.aspx).}} | {{Hint|Keep UserID and Password empty, if you want the system to connect to the SQL Server using the Windows Authentication (https://msdn.microsoft.com/en-us/library/dd787978.aspx).}} | ||
− | {{Hint|If the database server is on the same machine (localhost) then write Value= | + | {{Hint|If the database server is on the same machine (localhost) then write Value="." for the server parameter.}} |
=== Workflow Arguments === | === Workflow Arguments === |
Revision as of 12:22, 6 April 2018
The UBIK® Enterprise Service is a Windows service that is meant to automate UBIK® interface components or interface workflows.
Contents
Concept
The EnterpriseService typically runs on a server and watches an arbitrary amount of folders in the file system for changes, like new or modified files. Once such a change occurs, it parses the file and checks if its extension matches the signature of a UBIK® command file. If true, it will be processed.
Command file
A command file for the UBIK® EnterpriseService is a plain text file and has the extension .command. When the EnterpriseService starts processing such a file, it will be parsed as an XML document, every non-XML information in the file will be ignored. A sample command file for starting an interface component looks like this:
<Commands>
<Interface FullName="UBIK.TEST, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" File="F:\Test\UBIK.TEST.dll" Class="UBIK.TestInterface" Direction="E">
<Parameter Key="Server" Value="AUGLNZ0SQL" />
<Parameter Key="InitialCatalog" Value="UBIK.Sandbox.Dev.V2" />
<Parameter Key="UserID" Value="sa" />
<Parameter Key="Password" Value="secretpassword123" />
<Parameter Key="RecordLifeTime" Value="-1" />
<Parameter Key="MyIFNeedsThis" Value="TestValue" />
</Interface>
</Commands>
</InterfaceManager>
This command file would attempt to instantiate the class UBIK.TestInterface from the assembly F:\Test\UBIK.TEST.dll. If connection succeeds, it will then invoke the the methods of the export interface, because of the setting Direction="E".
A sample command file for starting a workflow looks slightly different:
<Commands>
<Workflow Name="WF_XML_TEST" UID="5fdccb8c-85db-4dfc-861a-57be38267bfb" Async="False">
<Parameter Key="Server" Value="AUGLNZ0SQL" />
<Parameter Key="InitialCatalog" Value="UBIK.Sandbox.Dev.V2" />
<Parameter Key="UserID" Value="sa" />
<Parameter Key="Password" Value="secretpassword123" />
<Parameter Key="RecordLifeTime" Value="-1" />
<Parameter Key="MyWorkflowNeedsThis" Value="TestValue" />
</Workflow>
</Commands>
</InterfaceManager>
This command file would attempt to load the workflow object with the Guid 5fdccb8c-85db-4dfc-861a-57be38267bfb and invoke it synchronously, because of the setting Async="False".
![]() | Keep UserID and Password empty, if you want the system to connect to the SQL Server using the Windows Authentication (https://msdn.microsoft.com/en-us/library/dd787978.aspx). |
Workflow Arguments
Every workflow started by the Enterprise Service needs an argument UBIKObject of data type UBIK.Kernel.BaseClass. The Enterprise Service initiates this default argument with the workflow object itself.
![]() | Any additional parameter, which is passed from the command file to the workflow, has to have an equivalent workflow argument as well. |
![]() | Configuration files can of course be created and edited manually, but they can be more comfortably created using the Interface Manager |
Enterprise Service Task Execution Mode
For special cases the UBIK® EnterpriseService can be executed as a simple task. The reason to run it as a task can be for troubleshooting or for the case some referenced components cannot be run in service mode (e.g. Microsoft Office etc.). To be executed as a Task, the Enterprise Service .exe-File has to be started with the command line option "-tray". There will be a tray icon shown in the Windows Tray. Right-Clicking the tray icon opens the menu, where the user can start, stop, pause, or continue the enterprise service. Please note that starting the enterprise service as a task requires an active user session in order to be executed.