Incompatibilities introduced in 3.20

General

Handling of deactivated _alert_hdl Configurations

With WinCC OA Version 3.20, the handling of deactivated _alert_hdl configurations has been changed. In previous versions, even if the alert handling was deactivated, the Event Manager still provided alert previews.

To increase the overall performance of WinCC OA, this behavior has now been disabled and no alert previews will be generated.

Since the behavior of the earlier versions was also used in other areas of application, e.g. in order to use a text-attribute (_offline..text) to obtain additional information for value changes in historical queries, it may be necessary to reactivate this for your use case.

To reenable the behaviour of older versions, the config entry [event] enableAlertPreview can be set.

[event]
enableAlertPreview = 1
Important: Reenabling the handling of deactivated _alert_hdl configurations will lead to increased load of the Event Manager.

ASCII Manager - DP Comment

As of WinCC OA Version 3.20, the DP Comment in the _common config is split into the sections comment, format and unit. This ensures easy handling of translatable content with the translator tool in the future

User Interface

UI - Light/Dark Mode

When the application mode of the Windows operating system is set to "dark" and the WinCC OA UI is started with the manager options "-palette=light" and "-style fusion", then, instead of a "light" appearance of the UI, the dark mode will be used. This behavior will be fixed in a future patch of WinCC OA.

Important: This limitation only applies to 3.20.0 and 3.20.1 With 3.20.2 the issues has been fixed, and the options are working as intended.

Databases

PostgreSQL® Schema Indices

The PostgreSQL® schema was changed from BRIN indices to BTREE indices in version 3.20. BRIN indices in the PostgreSQL® schema are therefore obsolete. You can request a tool/script for converting an existing PostgreSQL® database from BRIN to BTREE from WinCC OA support.

CONTROL

Panel, Function and Script Restructure

In order to reduce space requirements, limit resource utilization and shorten startup time, many unused/unnecessary functions have been removed from the product.

The changes have been made to the following parts of the product:

  • Config files
  • Internal data point types and data points
  • Panels
  • Scripts
  • CTRL libraries
  • Message catalogs

The structure of the scripts and CTRL libraries has been changed to reduce the number of libraries in the file system and the number of libraries loaded when starting a manager. In particular for a runtime UI, the number of loaded standard libraries has been significantly reduced in order to shorten the start time. This has a particularly positive effect on the mobile user interface if a network connection with a lower bandwidth is used.

In order to limit the impact on existing projects, an "obsolete" library remains as a file in the WinCC OA installation.

If an obsolete library is loaded, one of the following log messages is written. If another library now contains the functions that were previously defined in the obsolete library, the new library name is specified in the log message.

Example for loading the obsolete library stdlib.ctl if another library std.ctl must be used:

WCCOAui (1), 2023.10.04 12:32:25.478, SYS, WARNING, 253, Obsolete library, library 'C:\Siemens\Automation\WinCC_OA\3.20\libs\stdlib.ctl' is obsolete. Please use the library std.ctl.

Example for loading a rejected library:

WCCOAui (1), 2023.10.04 12:32:25.478, SYS, WARNING, 253, Deprecated library, library 'C:\Siemens\Automation\WinCC_OA\3.20\libs\stdlib.ctl' is deprecated. The functions defined in this library are no longer required - remove the link to the library.

Info about internal data points: The reduced number of internal data points is only applied when creating a new project.

If a project is updated from an older version to the current version, there is no functionality that deletes the obsolete data point types and data points.

Deprecated Libraries

The following libraries are declared as deprecated in WinCC OA Version 3.20:

  • bandwidthMeasurement.ctl
  • ChannelManager.ctl
  • CtrlAudio.ctl
  • dpDyn.ctl
  • email.ctl
  • ExcelReport.ctl
  • hosts.ctl
  • ini.ctl
  • libCTRL.ctl
  • ngedi.ctl
  • notes.ctl
  • pager.ctl
  • pmonWatchdogAlarming.ctl
  • pmonWatchdogTypes.ctl
  • stdlib.ctl
  • stdVar.ctl
  • table.ctl
  • tools.ctl

Changed Function Location

The list of the following functions was moved from their original library to a new library:

Function Name New Library Original Library
readSMS() communication std
sendMail() communication std
sendSMS() communication std
sendSMSCB() communication std
_createdpName() csg libCTRL
_createfileName() csg libCTRL
_CSG* functions csg libCTRL
_checkValue() ep libCTRL
evaluateVariableTypeStringValue() ep libCTRL
getTrendDPE() ep std
catInsertKey() mp std
dynDynStringToString() mpTemplate libCTRL
dynStringToDynDynString() mpTemplate libCTRL
getPossibleVarTypes() mpTemplate libCTRL
parseSimpleVarTypeToString() mpTemplate libCTRL
parseStringToSimpleVarType() mpTemplate libCTRL
stringToDynDynString() mpTemplate libCTRL
dynContainsPattern() pa libCTRL
dynInsertPatternMatch() pa libCTRL
isValidProjectPath() pa std
ColorNames() para libCTRL
dpGetDefaultFormat() para libCTRL
byteSizeToString() spaceCheck std
dpValueFieldFormat() std libCTRL
dynDynStringToDynString() std libCTRL
dynLangString2dynString() std libCTRL
dynString2dynLangString() std libCTRL
dynStringToString() std libCTRL
isAckable() std libCTRL
lcDpGetFormat() std libCTRL
stringToDynString() std libCTRL
stringToVarType() std libCTRL
varTypeToString() std libCTRL
std_quittScript() STD_Symbols std
dpExistsDPE() varTrend libCTRL
lookupSorted() WssCoreExtRequestHandler std
isTableAckable() aescustomizations libCTRL

Changed Panel Location

The following panels were moved from their original directory to a new directory:

Panel Original Directory New Directory
alertHornProps.pnl vision DemoApplication

Removed Functions

Following functions were removed from WinCC OA Version 3.20:

Removed Function Library
_checkDPType() libCTRL.ctl
_checkValue2() libCTRL.ctl
_DPSEL_showdp() libCTRL.ctl
_tableHead() libCTRL.ctl
aesinitAEItemListCB() libCTRL.ctl
avgSmentTime() libCTRL.ctl
counter() libCTRL.ctl
diff() libCTRL.ctl
dpSetDynErrorCheck() libCTRL.ctl
dpSetErrorCheck() libCTRL.ctl
evaluateDpElementTypeStringValue() libCTRL.ctl
eventCounter() libCTRL.ctl
findDuplicateUser() std.ctl
getChildCentralPosition() panel.ctl
getStartDayOfWeek () libCTRL.ctl
getStartTimeOfWorkDay() libCTRL.ctl
initAEItemList() libCTRL.ctl
initAEItemList1() libCTRL.ctl
isJavaUI() panel.ctl
noFlickerRedraw() panel.ctl
Panel_OnZoomed() panel.ctl
PasswordDialog() panel.ctl
pvssRangeCheck() libCTRL.ctl
resetAEItemListsCB() libCTRL.ctl
smOpenSysMgmVisu std.ctl
std_catgets std.ctl
std_errorDialog std.ctl
std_miniHelp std.ctl
strcmp std.ctl
getCurrentOSUser std.ctl
getDomainOSUser std.ctl
getUserDomain std.ctl
getUserWithoutDomain std.ctl
valueEditor() libCTRL.ctl
ve_calculateValue() libCTRL.ctl
ve_setValue() libCTRL.ctl
ve_startFunction() libCTRL.ctl
ve_work () libCTRL.ctl
weekNumber std.ctl

Removed Panels

The following panels were removed from WinCC OA Version 3.20:

  • gedi/dpsel
  • gedi/dpsel2
  • gedi/dpsel3
  • gedi/dpsel4
  • gedi/dpsel5
  • para/address_skeleton.pnl
  • vision/aes/AEScreenRegGeneral.pnl
  • vision/aes/AS_propSort.pnl
  • vision/aes/ES_propSort.pnl
  • vision/alertHornProps.pnl
  • vision/backupComplete_2.pnl
  • vision/backupConfig_2.pnl
  • vision/backupImplementation_2.pnl
  • vision/backupMedium_2.pnl
  • vision/DataManager_par
  • vision/hupe.pnl
  • vision/messages/MessageComboInput.pnl
  • vision/miniHelp.pnl
  • vision/notes_ref.pnl
  • vision/PagerConfig.pnl
  • vision/PagerMain.pnl
  • vision/PagerMsgList
  • vision/PagerPhonebook
  • vision/PagerSelectUser.pnl
  • vision/PagerSendMsg.pnl
  • vision/SC/AlertRowvision/SC/AlertScreen
  • vision/SC/AS_ackOldest
  • vision/SC/AS_choice
  • vision/SC/AS_comments.pnl
  • vision/SC/AS_detail_ranges.pnl
  • vision/SC/AS_detail.pnl
  • vision/SC/AS_matching.pnl
  • vision/SC/AS_properties.pnl
  • vision/SC/AS_propFilter.pnl
  • vision/SC/AS_propFilterSystems.pnl
  • vision/SC/AS_propFilterTypes.pnl
  • vision/SC/AS_propSort.pnl
  • vision/SC/AS_propTime.pnl
  • vision/SC/AS_status.pnl
  • vision/SC/ES_detail.pnl
  • vision/SC/ES_dpeList.pnl
  • vision/SC/ES_properties.pnl
  • vision/SC/ES_propFilter
  • vision/SC/ES_propFilterSystems.pnl
  • vision/SC/ES_propFilterTypes.pnl
  • vision/SC/ES_propSort.pnl
  • vision/SC/ES_propTime.pnl
  • vision/SC/EventScreen
  • vision/SC/timeRange.pnl
  • vision/SC/trend.pnl
  • vision/SC/trendButton.pnl
  • vision/SC/XS_propFilterDpMatch.pnl
  • vision/SC/XS_propGeneral.pnl
  • vision/SC folder including all panels
  • vision/valueEditor.pnl
  • vision/valueEditorPoint.pnl
  • vision/valueEditorValue.pnl

Removed Data Points

The following data points were removed from WinCC OA Version 3.20:

  • _ConfirmAll.
  • _ConfirmMode.
  • _Dbg
  • _Dbg_2
  • _Device2
  • _Device2_2
  • _Device3
  • _Device3_2
  • _LayerOff.
  • _LayerOn.
  • _LT_1
  • _ModuleOff.
  • _ModuleOn.
  • _Pager_1_2.
  • _Pager_1.
  • _PanelOff.
  • _Printer.
  • _PrintPanel.
  • _RootPanelOn.
  • _RootPanelOrigOn.
  • _SilentPrint.
  • _SMS_1
  • _SMS_1_2
  • _SPS_1
  • _SPS_2
  • _SystemPrinter.
  • AlertHorn

Removed Data Point Types

The following data point types were removed from WinCC OA Version 3.20:

  • _Abb
  • _AbbUdpArcConn
  • _AlertFilter
  • _AlertHorn
  • _AlertRow
  • _AlertStatusText
  • _ChildPanel
  • _DbgFlags
  • _DpListTable
  • _Layer
  • _Module
  • _ModuleOn
  • _MP
  • _Pager
  • _Panel
  • _Printer
  • _PrintPanel
  • _PrintTable
  • _RootPanel
  • _UltralightClient

Removed Libraries

The following libraries were removed from WinCC OA Version 3.20:

  • as.ctl
  • cnsExtensions.ctl
  • deviceManager.ctl
  • es.ctl
  • impexp.ctl
  • proj_http.ctl
  • sysOverview.ctl

Removed Scripts

The following scripts were removed from WinCC OA Version 3.20:

  • AsyncImpExp.ctl
  • userDrivers.ctl
  • userPara.ctl
  • vision/_archiveMonitor
  • vision/_archiveMonitorClient
  • vision/alamscr
  • vision/allModuleOff
  • vision/confirmHorn
  • vision/eventscr
  • vision/home
  • vision/leer
  • vision/logout.ctl
  • vision/openSysMgm
  • vision/password.ctl

Removed Message Catalogs

The following message catalogs were removed from WinCC OA Version 3.20:

  • aesExtension.cat
  • applicom.cat
  • BACnetGeneral.cat
  • cnsToolTips.cat
  • ngedi.cat
  • nis.cat
  • pager.cat
  • sim.cat

Control functions - Parameter Warning

Starting with WinCC OA Version 3.20, a WARNING message is given for function calls when too many parameters are given.

SQL Queries - "." before UserName

Beginning with version 3.20 the syntax check for SQL queries has been improved, which results in an error message in case of invalid usage of user names (UserName without "." as prefix).

This behavior was not explicitly validated in previous versions.

Wrong usage of user name

sQuery = "SELECT 'UserName:_online.._value' FROM '*' WHERE _DPT = "_Ui"";

Correct syntax of the SQL query

sQuery = "SELECT '.UserName:_online.._value' FROM '*' WHERE _DPT = "_Ui"";

CNS Functions with Wildcards

As of version 3.20, there is a new default behavior.

The wildcards *, ** and ? can be used depending on the config entry cnsUseDoubleAsterisk in the [general] section.

The config entry is set to 1 by default, which means that:

  • One asterisk * returns one level.
  • Two asterisks ** return all levels.
  • The question sign ? returns one character.

You can also activate the old behavior by setting the config entry to 0. This means that the wildcards * and ? can be used:

  • One asterisk * returns all levels.
  • The question sign ? returns one character.

GEDI

Maps EWO - Step Size

With WinCC OA -Version 3.20, the step size for the navigation error buttons has changed due to a change within the Marble library used by the Maps EWO.

GEDI - Picture Drag & Drop

With version 3.20, the behavior of dragging and dropping a picture from the project tree into a free area of ​​the panel changes. Previously, this set the background of the panel. Now a new rectangle (without frame, in the standard size of the picture) is created with the picture as "fill".

Drivers

SNMP - Redundant Connection Data Point

The behavior of the SNMP driver in redundant systems has been changed. Previously, the SNMP driver did not use "<DP>_2" data points for connection data points. This meant that the SNMP driver could not provide separate status information for an agent connection in a redundant system. Previously, only the active driver set the status. This has now been changed in 3.20. In a redundant project the corresponding "<DP>_2" DPs for the types _SNMPAgent and _SNMPV3Entity will be created by default. Please note this if you use status information from these DPs in your project.

As an alternative, you can use the configuration entry useReduPostfix. It can be used to set the old behavior. Use this config entry only if it is really necessary, as in this case the fwdDpType config.redu entries, which refer to the data point types mentioned above, must be removed in order to achieve the old behavior.

DotNET API

  • DotNET API TypeModel and ProcessModel Service Refactoring for bulk operations

    as well as

  • DotNET API refactoring of RequestObjects in relation to the change of item type to record

can lead to incompatibilities.