Update or patch project

Click the Upgrade project button in the project of older versions panel in order to update existing projects to the new WinCC OA version. The update includes the database and the config/progs file.

Figure 1. Upgrade Project

The update of the database updates data points and data point types and their configs. This is usually executed by using the tool WCCOAtoolConvertDb (state and error messages are written to the convertDb.log file in the <proj_path>/log/ directory.

Note: For upgrading an ISO project, consider the notes and limitations in the chapter Project upgrade of an ISO project to UTF8.

Requirements

  • A project must be registered, otherwise it cannot be updated.
  • Only executable projects can be updated. It is not necessary to update sub-projects (without an executable database).
  • Before a project can be updated, the WinCC OA standard libraries in the project directory and in project-specific sub projects must be synchronized with the current libraries or removed temporarily.
  • If the project contains custom CtrlExtensions that have not been compiled before the upgrade, they must be commented out in the config file before upgrading.
  • The config entry paramLang = "language" must be commented out or deleted before updating.
    Note: Each project that is updated, must contain a "log" directory.

Upgrade Project

To update an existing project, proceed as follows:

  1. Start the project administration of the new version.
  2. Open the panel for displaying the projects with an older version.
    Figure 2. Upgrade Project button
  3. Select the desired project from the project list - see the figure above.
  4. Click the Upgrade project button - see the figure above.
  5. Check the displayed settings/information:
    Figure 3. Upgrade Project Settings
  6. Click the OK button to apply the settings and to update the project - see figure above.

The project that should be updated is shown in the text field Project. The path of the current WinCC OA version is shown below the text field.

If the check box Save project before upgrading is enabled, the whole project is backed up before it is updated. The update is saved in the directory where the project is located with the name <ProjectName>.bak. If several backups are made, the .bak files are saved using ascending numbers (.bak, .bak1, .bak2).

The PMON port for the updated project can also be changed via the Pmon port field. If the port is not changed the standard PMON port (4999) is used.

If the check box CTRL syntax check before upgrading is enabled, the CTRL syntax is checked. The CTRL scripts and libraries of the project and the sub-projects are checked as well as the panels of the project. In a new version, variable names may no longer be allowed due to newly defined keywords (see Reserved keywords).

The syntax check is performed before upgrading the database. If one or more syntax errors are detected, a dialog will be opened asking whether to cancel or continue the project upgrade. The project can also be updated if the syntax of the project files is incorrect. The output of the syntax check is stored in the PVSS_II.log file of the project.

An older project can be converted to an SQLite project including an NGA database. For more information see chapter Automatic Migration of RAIMA → SQLite (+NGA).

Click OK to start the update - see figure above. When the update is started, the Log Viewer is opened automatically and the convertDb.log file is shown. This allows you to follow the update process. Error messages are shown in case of errors.

Note: Error messages with a positive error code are warnings and mean that a step has issued an error. However, the complete update process was finished successfully. Negative error codes mean that an error occurred and the update of the project failed. For possible error codes and their meanings, see chapter WCCOAascii.
Note: When updating projects of a direct pre version (e.g. from 3.18 to 3.19), the update also works without installation of the pre version support. In case of older versions (e.g. from 3.16 to 3.19) the pre version support must be installed with WinCC OA (see also chapter Installation). The system checks if the necessary dbd files (in the directory <wincc_oa_path >/dbdfiles/) exist when a project is updated.
CAUTION: If a project that contains sub projects is updated, the suffix of the sub projects in the config file must be adapted or the current sub projects must be selected via the project administration. E.g. SmartSCADA_3.17-> SmartSCADA_3.20.

After the project is successfully updated, it will be displayed in the list of projects in the Project Administrator panel with the current version. When closing the panel with the list of projects of an older version, the project list is automatically updated.

Note: If you have a customized version of the pvss_scripts.lst script and upgrade a project, add the ngaImporterControl.ctl script to the pvss_scripts.lst script.

Patch Update

Patch Update in a Single Server System:

  1. Stop the project
  2. Install the patch.
  3. Start the project.
  4. Check the functionality of the system.

Patch update in a redundant system:

  1. Stop the project at the passive host (e.g.: host2).
  2. Install the patch on this host.
  3. Start the project on the passive host.
  4. Wait until the start up of the project is finished.
  5. Check if the recovery was successful and the redundant hosts are connected.
  6. Perform a redundancy switchover.
  7. Repeat steps 1-5 for the second host.
  8. Check the functionality of the system.
Note: The update of internal data point types and data points as well as their values and configs is done automatically via the database upgrade script. The check if an upgrade is required is performed at project start. In a redundancy project, this check is performed at start up and in the event of a redundancy switchover.

WinCC OA Upgrade in a redundant system

The upgrade of the WinCC OA version in a redundant project is possible with the following steps. These steps are only necessary if a simultaneous stop of the projects on both redundant computers is not possible.

The following instructions take into account the use of UI machines or remote WinCC OA installations, e.g. for drivers or CTRL Managers. The upgrade order Server 1 → Server 2 or Server 2 → Server 1 can be chosen arbitrarily.

  1. Stop the WinCC OA project on server1 --> the system on server2 is now active.
  2. Change the port numbers of the Data Manager, Event Manager, Redu Manager and the Split Manager in the config file of the WinCC OA project on the Server 1
  3. Execute an upgrade to the actual WinCC OA version on server1 (eventually incl. upgrade to the current Oracle schema version, if RDB is used).
  4. Start the WinCC OA project on server1. Once the start up has been finished, both computers are active, but the system on server1 has no connection to the UI clients / remote machines.
  5. For the UI clients/remote WinCC OA machines, run the upgrade to the latest WinCC OA version. The upgrade includes the installation of the new version and modification of the config/progs file (reference to the new version and, if necessary, adjusted executable and WinCC OA manager names).
  6. Adjust the port numbers of the Data Manager and Event Manager of the UI clients / remote machines according to the configuration of server1.
  7. Start the WinCC OA processes on the UI clients/remote WinCC OA-machines
  8. Stop the WinCC OA project on server2.
  9. Execute an upgrade to the actual WinCC OA version on server2.
  10. Adjust the port numbers of the Data Manager, Event Manager, Redu Manager and Split Manager in the config file of the WinCC OA project according to the configuration of server1.
  11. Start the WinCC OA project on server2 --> the server2 executes a recovery and the project start up.
Note: Before executing this procedure on a running machine / customer project, we recommend testing on a test system in order to check the proper functionality of the upgrade and the WinCC OA project after the upgrade.

In case of a WinCC OA version upgrade, possibly changes on the project are necessary, e.g.:

  • Compiling of API processes and CTRL extensions with the new version
  • Minor adjustments in CTRL scripts, libraries and panels
  • Adjustments on the project caused by changed WinCC OA standard functionality, e.g. in AEScreen, Panel Topology, etc.