QPR ProcessAnalyzer ScriptLauncher

From QPR ProcessAnalyzer Wiki
Jump to navigation Jump to search

QPR ProcessAnalyzer ScriptLauncher is a tool to run QPR ProcessAnalyzer scripts located in a QPR ProcessAnalyzer Server. QPR ProcessAnalyzer ScriptLauncher is part of QPR ProcessAnalyzer installation package and includes the following files (in addition to DLL files and an XML file):

  • Qpr.ProcessAnalyzer.ScriptLauncher.exe (an executable file)
  • Qpr.ProcessAnalyzer.ScriptLauncher.exe.config (a configuration file)

These files are located in the QPR Connector folder that is in the QPR ProcessAnalyzer Excel Client installation folder (e.g. C:\Program Files\QPR ProcessAnalyzer\QPR Connector). Note that the installation of the QPR Connector needs to be chosen when installing the QPR ProcessAnalyzer Excel Client.

Installing ScriptLauncher

Follow these instructions to install QPR ProcessAnalyzer ScriptLauncher:

  1. Copy the folder <QPR ProcessAnalyzer release folder>\Release\Files\Connector to the destination folder (e.g. C:\<QPR ProcessAnalyzer Excel Client installation folder>\QPR Connector\).
  2. Copy the SAP dlls (sapnco.dll and sapnco_utils.dll) directly to the ScriptLauncher directory (e.g. C:\<QPR ProcessAnalyzer Excel Client installation folder>\QPR Connector\). Those files can be found in SAP Service Marketplace (SAP Service Marketplace credentials required).
  3. Follow Installing SAP Connector instructions to install the SAP connector.
  4. Edit the configuration file Qpr.ProcessAnalyzer.ScriptLauncher.exe.config and update the needed parameters (e.g username, etc...) used by ScriptLauncher application.
  5. Run ScriptLauncher e.g. .\Qpr.ProcessAnalyzer.ScriptLauncher.exe.

Configuring ScriptLauncher

Before you can start running scripts with QPR ProcessAnalyzer ScriptLauncher, you need to configure the connection and other parameters for the tool. Note that you need to have write access to the folder where the Qpr.ProcessAnalyzer.ScriptLauncher.exe.config file is located.

  1. Open the Qpr.ProcessAnalyzer.ScriptLauncher.exe.config file in a text editor.
  2. Within the file, go to the following section starting with <Qpr.ProcessAnalyzer.ScriptLauncher.Properties.Settings> and configure the values for the following parameters:
    • ConnectionType: Service (if you are connecting to a service) or Database (if you are connecting to a connection string)
    • LogOnName: your QPR ProcessAnalyzer username
    • Password: your QPR ProcessAnalyzer password
    • ConnectionString: the connection string to the QPR ProcessAnalyzer database (e.g. Server=localhost;DataBase=<database_name>;Trusted_Connection=True)
    • ServiceUrl: the URL of your service
    • ProjectId: the ID of the project (0 = default)
    • ModelId: the ID of the model (0 = default)
    • FilterId: the ID of the filter (0 = default)
    • ScriptId: the ID of the script you want to run. You can copy the ID from the Manage Scripts dialog in QPR ProcessAnalyzer Excel Client. If ScriptId is 0 (or less than 0), there will be an error written into the log.
    • OutputDirectory: the folder where to store the created CSV export file. If the folder doesn't exist, it will be created.
    • Parameters: passes defined custom parameters to the ProcessAnalyzer script being run. The script should have corresponding "@_Parameter_<Parameter name>" variables in the script. For example, the following would result in "5" being used in the ProcessAnalyzer script as the value of the variable @_Parameter_AnalysisType:
<setting name="Parameters" serializeAs="Xml">
  <value>
    <ArrayOfString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xmlns:xsd="http://www.w3.org/2001/XMLSchema">
      <string>AnalysisType=5</string>
    </ArrayOfString>
  </value>
</setting>

Note that it is possible to add more than one string. The type of the parameter value is always NVARCHAR.

The context in which the script will be run depends on the configuration of the parameters for the different ID's listed above in the following order, so that the first found context definition in the configuration file will be used when running the script:

  1. FilterId (in case the value for this parameter is greater than 0)
  2. ModelId (in case the value for this parameter is greater than 0)
  3. ProjectId (in case the value for this parameter is greater than 0)
  4. The context of the analysis the user has last opened

In case you want to change location of the log file that will be created, you can do that by changing the value of the parameter LogFilePath in the following section of the configuration file:

<applicationSettings>
  <Qpr.ProcessAnalyzer.Common.Properties.Settings>
    <setting name="LogFilePath" serializeAs="String">
      <value>.\Qpr.ProcessAnalyzer.ScriptLauncher.log</value>
    </setting>
  </Qpr.ProcessAnalyzer.Common.Properties.Settings>
</applicationSettings>

Note that the log folder needs to exist before running QPR ProcessAnalyzer ScriptLauncher and you must have rights to write to that folder. By default, the log file will be stored in the same folder as the configuration file.

Running ScriptLauncher

After you have configured the parameters as explained in the section above, run Qpr.ProcessAnalyzer.ScriptLauncher.exe. You can also run it from cmd.exe. You need to have RunScripts rights assigned to you in QPR ProcessAnalyzer.

All the supported configuration settings can also be specified from the command line when launching QPR ProcessAnalyzer ScriptLauncher. The command line parameters will override the settings in the configuration file. The parameter names are case sensitive. To specify a setting via the command line, use the following format:

-<SettingName>=<SettingValue>

For example:

Qpr.ProcessAnalyzer.ScriptLauncher.exe -ScriptId=123 -ProjectId=1234 -ModelId=12345 -FilterId=432

Setting values that contain special characters, such as whitespaces, must be escaped by using double quotes. For example:

-LogFilePath="C:\Temp\Path to My Log Files\ScriptLauncherDir\"

Exporting to CSV

When a QPR ProcessAnalyzer script contains the GetAnalysis command with the Show=TRUE parameter or the ShowReport command, the analysis is exported into a CSV file. The name of the exported file will be the same as the Excel sheet name when the script is run using ProcessAnalyzer Excel client. If there are multiple Show commands for a same Excel sheet name, the newer will overwrite the older file(s).

Only tabular analysis types are supported by the CSV export.

The exported CSV files have the following formatting:

  • Column separator: semicolon
;
  • Decimal separator in numeric fields: period
.
  • Quotation character for text fields: double quotes (used when the textual value contains semicolon, double quotes, linebreak or tabulator)
"
  • Escape character: When text fields contain double quotes, they are escaped with two double quotes.
""
  • Date format for date fields: yyyy-MM-dd HH:mm:ss,fff
  • First line: contains column headers

When the script has been run, script progress will be written to the specified log file, Qpr.ProcessAnalyzer.ScriptLauncher.log.