Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Users might be interested in automatically receiving reports about the JS7 - Task History which list , listing which jobs have been executed, the date and time at which they were executed and the respective execution result.
    • Such reports include similar information to that which is available in the JOC Cockpit's Task History view.
    • The reports are provided as Excel® files similar to those which are available for export from the JOC Cockpit Task History view.
  • These reports can be scheduled, for example on a daily basis, to provide ongoing information about completed tasks and execution results.

...

  • Credits for the Windows shebang replacement go to How to run a PowerShell script within a Windows batch file.
  • If you consider this shebang replacement somewhat cryptic then add it to JS7 - Script Includes which are easily referenced from a shell job, for example, by using ##!include pwsh.
  • The PowerShell executable pwsh.exe is available starting from PowerShell 6.0. PowerShell releases 5.x use the executable powershell.exe executable which can be specified accordingly with the shebang.

...

  • Line 1: The job is executed with a Windows Agent and makes use of the PowerShell shebang for Windows, as described above.
  • Line 3-4: The required necessary PowerShell modules are imported. They could be installed in any location in the file system
  • Line 6-7: The Connect-JS7 cmdlet is used to authenticate with the JS7 REST Web Service API. The required arguments for -Url , -Credentials and -Id can specified in a number of ways:
  • Line 10: The Get-JS7TaskHistory cmdlet is invoked:
    • with the -Timezone parameter to specify which time zone the date values in the report should be converted to. The -Timezone (Get-Timezone) parameter value specifies that the time zone of the Agent's server is used. Otherwise specify the desired time zone, for example like this: -Timezone (Get-Timezone -Id 'GMT Standard Time'). Without using this parameter any date values are stored in the report as UTC dates.
    • optionally with additional parameters, for example to specify the date or date range which the report is created for. A value -RelativeDateTo -3d specifies that the report should cover the last 3 days (until midnight). Keep in mind that dates have to be specified for the UTC time zone. Without this parameter the report will be created for the next day.
    • see the Get-JS7TaskHistory cmdlet for a full parameter reference.
  • Line 11-28: From the output of the Get-JS7TaskHistory cmdlet a number of properties are selected and are specified for the sequence in which they should occur in the report. 
    • To add more appropriate column headers the property names are mapped to a more readable textual representation.
    • Consider the handling of date formats in line 17-21. Use of the Get-Date cmdlet converts the output format of dates (not the time zone) to the default format which is in place on the Agent's server. Without using the Get-Date cmdlet any date values will be stored in the report in ISO format, e.g. 2020-12-31 10:11:12+02:00 for a date in the European central time zone that is UTC+1 in winter time and UTC+2 in summer time.
    • Line 28 introduces a new property, a calculated duration. From the start time and end time values of a planned start the difference in seconds is calculated and is added to the report.
  • Line 29: The list of properties for every Task History item is piped to the Export-Excel cmdlet which is available with the ImportExcel PowerShell Module. The report file name is specified and optionally the worksheet. For a full list of parameters see the ImportExcel PowerShell Module.

...