Versions Compared

Key

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

...

The JOC Cockpit Resources / Calendars view has import and export functions to allow reliable Calendar deployment, for example, from a source, such as an Integrations Integration System (Int.INT, UAT) to a target, such as a Production System (Prod.PROD).

In general, such a deployment will involve 3 - 4 steps:

  1. Export of the Calendar from the Int. INT environment JOC Cockpit to the Int. file system, where the Calendar will be saved as a JSON file.
  2. Transfer of the JSON calendar file to the Production PROD file system.
  3. Import of the JSON calendar file to the Production PROD JOC Cockpit with automatic integration into the Production PROD JOC Cockpit Daily Plan.
  4. Updating of the Daily Plan will be required in particular situations.

...

  • whether a Calendar is to be deployed on the Prod. PROD system for the first time - i.e. a "new" deployment - or whether an existing Calendar on the Prod PROD system is to be updated.

Note that Calendars are always exported with usage and folder information - i.e.:

  • with information about the Orders or stand-alone Jobs which the Calender has been assigned to and the Runrun-time information (Period and Restrictions).
  • with the Calendar Path parameter.

If a an Order or stand-alone standalone Job is found on the target system with the same Path parameter (, i.e. name and directory) , as an Order or standalone Job on the source system which the Calender has been assigned to then the Calendar and Runrun-time information can be assigned to the Order or stand-alone standalone Job on the target system.

...

Consider the situation where a new Calendar has been tested in an INT environment and is now to be deployed to a production PROD environment.

Example Configuration

The following configuration will be used to demonstrate deployment of "new" Calendars:

  • On the Int. INT System:
    • Two Orders have been configured for a Job Chainjob chain:
      • inpexp_1, with the Frequencies:
        1. cal_sat, configured with every Saturday, and a Single Start Period at 12:00
        2. cal_sun, configured with every Sunday, and a Single Start Period at 18:00
      • inpexp_2, with the Frequency:
        1. cal_sat, configured with every Saturday, and a Single Start Period at 21:00
      • inpexp_3, with the Frequency:
        • cal_sun, configured with every Sunday, and a Single Start Period at 15:00
    • In addition, a further Calendar has been configured but not assigned to an Order:
      • cal_mo-fr configured with every day, Monday to Friday,
  • On the Prod. PROD System:
    • Two Orders have been configured for a Job Chain:

      • inpexp_1, with no Calendars assigned

      • inpexp_2, with a Single Start Period at 21:00 and the following Calendar assigned:
        • cal_fr, configured with every Friday, and a Single Start Period at 24:00
  • The Calendars to be exported are:
    • cal_sat and
    • cal_mo-fr.
    • The cal_sat Calender is not to be exported.

...

  • The Calendar or Calendars to be exported are selected using the select boxes shown either in the Calendar Cards (as shown in the screenshot below) or at the left of the list of Calenders.


  • Selecting a first Calendar will cause the default Import Calendar button (shown in the screenshot above) to be replaced with the Export Calendar button as shown in the next screenshot.


  • Clicking the the Export Calendar button will open a standard browser file-saving menu that is then followed to save the Calendar(s) selected as a single .json file to the Int. INT file system. This file can now be transferred to the Prod. PROD file system.
  • In the configuration used for the screenshots the impexp_cal_sat Calender is assigned to two Orders on the Int. INT system and the impexp_cal_sun Calender is not assigned to any Order. Both Calenders are none-the-less exported in the .json file.

...

The Import procedure is started in the Resources / Calendars view of the target system by simply clicking the Import Calendar button (any folder can be selected in the Folder Treefolder tree) as shown in the screenshot below.

...

After the import has been completed the Calendars will be shown the folder specified in the Path parameter alongside the cal_fr calender that had already been configured on the Prod. PROD system.

Behavior of the Import Function

The import function is conservative, preserving existing configurations on the target system where appropriate.

  • Orders on the target Prod. PROD system with the same names as Orders on the source Int. INT system will be automatically assigned the Frequency or Frequencies for the exported Calendar(s) that the Orders on the Int. INT System were assigned, where Frequencies are Calendar, Period and Restrictions. In the current example, this means that on the target Prod. PROD system:
    • The Order inpexp_1, will be assigned the Frequency:
      1. cal_sat, configured with every Saturday, and a Single Start Period at 12:00
        Note that a Frequency for the cal_sun Calendar will not be assigned to this Order as the Calendar for such a Frequency was not included in the export.
    • The Order inpexp_2, will be assigned the Frequency:
      1. cal_sat, configured with every Saturday, and a Single Start Period at 21:00
        Note that the already assigned Frequency with the cal_fr Calendar will neither be modified not nor overwritten.  
  • Frequency information for an Order on the Int INT system that was included in the export will not be imported into the Prod. PROD system if an Order with the same name is not found on the Prod. PROD system.
    • This means that in the example, the exported information for the inpexp_3 Order will not be imported.

...

In the Job Chains view, the Set Run-time modal window will show the Calendar(s) that have been imported as shown in the next screenshot, where they can be seen in the list of Frequencies along with any Period and Restriction information that has been imported:

...

A typical scenario would be where the Calender is to be extended for a further year and the holidays non-working days for that year added.

In the following example, a Working Week Calendar buswk_hols has been configured for 2017 (Valid From 01.01.2017, Valid To 31.12.2017) with a Monday to Friday working week configured as an Included Frequency and the German national holidays for 2017 as an Excluded Frequency. This Calendar is deployed on the Prod. PROD System and  appears in the Resources view as shown in the next screenshot:

...

The updated and tested version of the buswk_hols Calender is installed on the Int.INT system with the same Path parameter value and is assigned to an Order with the same name as the assigned Order on the Prod. PROD system and the same Period and Restrictions. 

...

Note that in contrast with the procedure described for deploying a "new" Calender, when updating an already existing Calendar there is no need for the createDailyPlan Order to be run before the Daily Plan is updated. The next screenshot shows the Calendar after the update with the Validity To setting now changed to 31.12.2018.

...