Resolving Error Text Displays on Motor and Valve Command Buttons in WinCC Faceplates
When SIMATIC PCS 7 Advanced Process Library (APL) faceplates for motors (MotL) or valves (VlvL) display the literal text 'Error' on runtime command buttons instead of 'Start', 'Stop', 'Open', or 'Close', the fault is caused by missing or unlinked entries in the WinCC Text Library. In projects migrated from older PCS 7 releases or where block types were instantiated with blank text parameters, the OS compiler fails to resolve the localized string reference IDs. To resolve this, open SIMATIC Manager, execute 'Options -> Block Types' to update all library block types, verify project runtime languages in the Text Library, and execute a full OS compilation with the option 'With reset' enabled.
Table of Contents
- Executive Summary
- Architecture and Fundamental Mechanics
- Step-by-Step Implementation Procedure
- Verification
- Limitations and Operational Precautions
- Engineer FAQ
- Technical References
- Related Articles
- Related Tags
Executive Summary
During testing in SIMATIC PCS 7 V9.0 SP2 or following project migrations from PCS 7 V8.0 / V8.1, commissioning engineers often discover an alarming graphical defect: on standard APL motor and valve faceplates, the primary operating command buttons display the word 'Error' instead of normal action labels ('Start', 'Stop', 'Open', 'Close'). Crucially, the actuators are not physically faulted: clicking the button labeled 'Error' successfully starts the motor or opens the valve. This defect is strictly a WinCC textual resolution failure. The APL faceplate C-script queries the WinCC Text Library using parameter string IDs (such as StartMan#string1). When the text database lacks the corresponding record for the active runtime language, WinCC outputs the string 'Error' as an internal fallback indicator.
Architecture and Fundamental Mechanics
Understanding the 'Error' label defect requires examining the APL dynamic text resolution pipeline:
1. The Dynamic Command Button Text Pipeline
In @PCS7ElementsAPL.pdl and block faceplates (@PG_MotL_Standard.pdl, @PG_VlvL_Standard.pdl), command buttons are dynamic containers:
- Rather than hardcoding static English text into the button properties, the APL script reads the block parameter's system attribute S7_string0 or S7_string1 (e.g., parameter StartMan has text0 = 'Stop', text1 = 'Start').
- During OS Compilation, the compiler extracts these attribute strings from the CFC block definitions and registers them in the WinCC Text Library with a unique numeric Text ID.
- In runtime, when the faceplate opens, the internal C-action GetText() queries the Text Library for the Text ID in the currently active runtime language (e.g., LCID 1033 for English-US).
2. Why the Text 'Error' Appears
- Empty Text Attributes: If a block instance in CFC has its parameter text field cleared or blanked out, the system loses the pointer to the default library string.
- Migration Desynchronization: When a project is migrated across PCS 7 versions without updating block types in CFC, legacy string pointers become orphaned in the WinCC SQL database.
- Missing Language Mapping: If the Engineering Station compiled the OS with a different default language than the active WinCC Runtime user language, untranslated entries return the internal string
'Error'.
Step-by-Step Implementation Procedure
To resolve the 'Error' button label and restore proper command text:
Step 1: Update Block Types in SIMATIC Manager
- Open SIMATIC Manager on the Engineering Station.
- Open the chart folder of the affected AS station.
- In the menu, select Options -> Block Types.
- Select all APL motor and valve blocks (
MotL,MotRevL,VlvL,VlvMotL, etc.) from the system library and click New Version / Update. - Confirm that all instances are updated to the current APL library version.
Step 2: Check Text Library in S7 Program
- In SIMATIC Manager, select the
S7 Programfolder. - Select Options -> Manage Multilingual Texts -> Change Language.
- Ensure the project default language matches your WinCC runtime language (e.g., 'English (United States)').
- Verify that the parameter text definitions (
text0,text1) on block types are populated.
Step 3: Execute Full OS Compilation with Reset
- In SIMATIC Manager, right-click the OS station and select Compile.
- Select Entire OS.
- In the compilation options dialog, check the box With reset (this purges and rebuilds the WinCC Text Library completely).
- Complete the OS compilation without errors.
Step 4: Verify in WinCC Text Distributor / Text Library
- Open WinCC Explorer on the OS.
- Open Text Library from the left navigation tree.
- Search for the block instance name; verify that Text IDs for 'Start', 'Stop', 'Open', and 'Close' are populated with valid strings for all installed languages.
- Start WinCC Runtime.
Verification
To confirm that command labels display correctly:
-
Faceplate Visual Inspection:
- Open the WinCC faceplate for the affected motor and valve instances.
- Confirm that the command buttons now display crisp, accurate labels: Start, Stop, Open, or Close.
- Verify that the word 'Error' no longer appears anywhere on the command pane. -
Language Switching Test:
- If the project is multilingual (e.g., English and German), switch the runtime language.
- Confirm that button texts transition smoothly to the translated equivalents (e.g., 'Start' $\rightarrow$ 'Ein').
Limitations and Operational Precautions
Operational limitations and precautions:
- Never Manually Hardcode Text in PDL Scripts: Modifying
@PG_MotL_Standard.pdlto hardcode 'Start' defeats multilingual support and violates Siemens APL engineering standards. - Custom Instance Overrides: If specific motors require custom button labels (e.g., 'Forward' / 'Reverse' instead of 'Start' / 'Stop'), configure the
text0andtext1attributes in the CFC block Object Properties, followed by an OS compilation. - OS Client Synchronization: In distributed client-server systems, server data packages must be updated and clients re-downloaded to synchronize the new Text Library.
- Commercial Disclaimer: Verify all software libraries, engineering options, and SIMATIC PCS 7 versions with an authorized Siemens distributor or the Siemens Industry Mall.
Engineer FAQ
Why does the command button show 'Error' even though the motor operates normally?
The button operates normally because the binary control logic in the AS is functional. The word 'Error' is an internal WinCC GUI fallback indicating that the Text Library lacks a string for that button ID.
How does WinCC resolve command button labels?
APL faceplate scripts read the block parameter's S7_string attributes via numeric Text IDs stored in the WinCC Text Library for the active runtime language.
What does compiling the OS 'With reset' do?
It clears the existing WinCC Text Library and regenerates all message texts, block headers, and attribute strings directly from the CFC database.
Can I customize the command text on a specific motor block?
Yes. Open the block in CFC, open the Object Properties for the command parameter (e.g., StartMan), enter the desired string in text1, and compile the OS.
Why does this issue frequently occur after migrating from PCS 7 V8.0 to V9.0?
Migration often leaves block types at the older library version. Updating block types via 'Options -> Block Types' synchronizes the parameter text attributes with V9.0 standards.
Technical References
- [SIMATIC PCS 7 Advanced Process Library (APL) Manual V9.0: MotL and VlvL
- WinCC V7.5 System Manual: Working with Text Library
- SIMATIC Process Control System PCS 7 Released Modules and Licenses
Related Articles
- Activating Disabled APL_ANALOG_OP_DISPLAY Faceplate Elements in SIMATIC PCS 7
- Diagnosing Cannot Write the Tag Errors and APL_CloseArea Script Faults in WinCC Faceplates
- Configuring Unidirectional Speed Control and Readback Bypass on MotSpdCL
Related Tags
- APL Faceplates
- Text Library
- Command Button Error
- OS Compilation
- MotL