Problem Description
A WinCC TIA Portal tag containing a literal period character (.) in its name becomes unmanageable through the standard HMI tag editor. Once the dot is committed into the tag name, the WinCC tag manager treats the entry as a member reference of a structured tag, even though no user-defined structure of that name exists. The tag cannot be selected, renamed, or deleted through the WinCC Tag Administration dialog, and—because the project will not allow a tag to be removed from its channel while the tag itself is unselectable—the parent channel inside the PLC connection can also become non-deletable.
The symptom typically presents as follows:
- The HMI tag list shows the tag with a dot in the name and refuses to accept a Delete command.
- Right-clicking the tag in the Tag Administration tree does not expose a Rename or Delete option, or those options are greyed out.
- The parent channel (the connection unit in the HMI device's Connections editor) cannot be removed because the project reports it still contains tags.
- The WinCC Configuration Tool may not even list the offending tag, depending on how the project stores it.
The exact way the editor behaves depends on the WinCC version, the HMI device type (Comfort Panel, RT Professional, WinCC Unified), and whether the tag was originally created in the current project or carried over from a migrated configuration. Field reports indicate the issue is reproducible on older WinCC V14-V15 projects but is increasingly blocked at the input stage in later TIA Portal releases, where the tag name validator rejects the period before the tag is committed.
Root Cause: Why the Dot Triggers Structure Interpretation
WinCC uses the period character as a structure member access operator. In a structure tag such as MyStruct.Member1, the dot is the delimiter between the structure instance and one of its members, and the WinCC tag manager stores the two halves as separate resolved names in the project database. The same parser is used during tag name validation, so when a user enters a name that contains a dot, the editor assumes the left-hand portion is a structure type or instance name and the right-hand portion is a member name.
The tag therefore appears in the tag administration tree under a phantom structure. Standard deletion logic in the WinCC tag editor only operates on top-level tag names, not on what it believes to be inherited members. Even when the user attempts to delete the parent structure, the editor refuses because it cannot reconcile the orphan member with any actual structure type defined in the project.
Three factors determine the severity of the resulting state:
- Whether a structure of the matching name exists. If the project already has a structure type whose name matches the left-hand part of the offending tag, the tag binds to that structure and is handled as a legitimate member. Deleting it requires deleting the structure type first, which can cascade to every legitimate tag that references the structure.
- Whether the tag has any process connection. A connected tag is referenced by the runtime database, the PLC connection table, and the HMI tag log table. An orphaned tag that was never linked to a PLC address still occupies an entry in the tag table but is invisible to the connection cleanup.
- WinCC version behavior. Older TIA Portal versions permitted the period at the input stage and only flagged it on commit. Newer versions of the input validator reject the period outright, which is why the issue is often encountered in legacy projects opened in the latest TIA Portal.
Affected Versions and Reproduction Conditions
Field reports and engineering experience place the issue primarily in projects created or migrated through TIA Portal V14, V14 SP1, V15, and V15.1, particularly where the WinCC Comfort/Advanced configuration tool was used to author tag names. In WinCC Professional (RT Professional) and WinCC Unified, the same logic applies at the project-database level, although the exact dialog flow differs.
Reproduction path as documented by the original symptom report:
- Open a WinCC HMI station in TIA Portal.
- Open Connections and create a new PLC connection (or reuse a test channel).
- Open HMI tags and create a new tag.
- In the Name field, type a name that contains a period—for example,
Tag.Test. - Press Enter or click outside the field to commit the name.
- Older TIA Portal releases accept the name; newer releases reject the period at the input stage and the bug is blocked at validation.
Once the tag is committed with a dot in the name, the configuration tool may not show the entry at all in the visible tree, but the project database still contains the record. Attempting to delete the parent channel produces an error stating that tags still reference the channel, and yet the tag itself cannot be selected for deletion.
Preconditions Before Attempting the Fix
Before applying either of the two solutions below, complete the following preparation steps to avoid cascading errors:
-
Archive the project. Use Project > Archive > Archive in TIA Portal and store the
.zaparchive in a versioned location. Do not proceed without a restorable backup. - Export the HMI tag table. In the HMI tag editor, use Edit > Export to produce a CSV of the current tag definitions. This gives a clean reference of every legitimate tag and its address so you can verify nothing was lost during cleanup.
- Close all runtime instances. Stop WinCC Runtime, RT Professional, or any HMI simulation running against the affected project. Live runtime access locks the project database and will cause the rename attempts to fail with file-share errors.
- Open the TIA Portal project exclusively. Multi-user or server-based project modes may hold file locks on the HMI station's tag database. Switch to a local working copy for the duration of the cleanup.
- Note the HMI device type and TIA Portal version. The exact steps in Solution 2 (Configuration Tool) require a tool that targets the same WinCC version; do not run a Configuration Tool from a different TIA Portal version against a project opened in a different one.
Solution 1: Structure-Tag Override Workaround
This is the procedure that the original report confirms resolves the issue. It exploits the same parsing behavior that created the bug: by introducing a real structure of the matching name and binding a real structure tag to the same fully qualified name, WinCC reconciles the orphan entry and removes it from the database. The procedure is unconventional but documented as reliable in the field.
Step 1 — Create a matching structure type
- In the HMI station, open HMI tags > Structures (in WinCC Comfort/Advanced) or the equivalent UDTs folder in WinCC Professional/Unified.
- Create a new structure type. The name of the structure type must match the left-hand portion of the offending tag name. If the offending tag is
Tag.Test, the structure type must be namedTag. - Define at least one member inside the structure. The member name must match the right-hand portion of the offending tag name. For
Tag.Test, the member isTest. - Add a placeholder PLC data type (BOOL or INT) and a placeholder access mode so the structure is well-formed.
Step 2 — Instantiate the structure tag
- Open HMI tags and create a new tag.
- Set the data type of the new tag to the structure type you just created.
- Give the new tag the same name as the original offending tag (
Tag.Test). - At this point, WinCC will detect the duplicate fully qualified name and automatically delete the original orphan entry. The original tag disappears from the tag table.
Step 3 — Delete the temporary structure and instance
- Once the orphan entry is removed, delete the new structure tag you just created.
- Delete the structure type from the Structures folder.
- Compile the HMI station (Compile > Software (rebuild all)) to confirm the project database is consistent.
Solution 2: WinCC Configuration Tool (Bulk Rename)
The WinCC Configuration Tool (also referred to as the WinCC Tag Configuration tool or the HMI Configuration Tool in some TIA Portal installations) operates directly on the HMI station's underlying tag database. It exposes every tag—including entries the editor's UI hides—and supports bulk rename, bulk delete, and CSV round-trip. It is the cleaner long-term solution because it does not require creating and then deleting temporary structures.
Step 1 — Launch the Configuration Tool
- Close the TIA Portal project.
- Open the Configuration Tool from the TIA Portal installation directory or from the Windows Start menu (path varies by version; under Siemens Automation > SIMATIC > WinCC > Tools in most installations).
- Open the affected HMI station's runtime database. The default file is the project-specific HMI database (commonly a
.dfor.udbfile in the HMI station's project path).
Step 2 — Locate the offending tag
- In the Configuration Tool, switch the view to display All tags (some versions filter by connection by default).
- Sort the tag list by name and look for the entry containing the period. In some legacy databases the tag may be present but flagged as orphan or unresolved.
- Open the tag's properties. Confirm the data type, connection, and address fields are empty or marked as invalid—this confirms the tag is a leftover and not a legitimate process tag.
Step 3 — Rename the tag
- Edit the Name field and replace the period with an allowed character. The recommended replacement is an underscore (
_), for exampleTag_Test. Other permitted characters in WinCC tag names are letters, digits, and the underscore; the period, hyphen, slash, backslash, and most punctuation are reserved. - Save the change.
- Optionally, export the current tag set to CSV using the Configuration Tool's Export function. Open the CSV in Excel, perform a search-and-replace of the period to underscore, then re-import. This is the fastest approach when many tags need correcting.
Step 4 — Verify and recompile
- Reopen the TIA Portal project.
- Open the HMI tag editor and confirm the renamed tag is now present and editable.
- Recompile the HMI station. A clean compile is the verification that the database is consistent.
| Approach | Best for | Risk | Tooling required |
|---|---|---|---|
| Structure-tag workaround (Solution 1) | One-off or single tag, no external tooling | Medium — leaves temporary structure artifacts if cleanup is skipped | Built-in TIA Portal editors only |
| Configuration Tool rename (Solution 2) | Bulk cleanup, multiple tags, CSV-based workflows | Low — direct database edit with full visibility | WinCC Configuration Tool from matching TIA Portal version |
| Restore from project archive | Tag was created in current session and is otherwise unused | Loss of any other edits made since the offending tag was created | TIA Portal archive restore |
Cleanup: Removing the Empty Channel
Once the offending tag is gone, the parent channel is often still present and may need to be removed if it was created only for the failed test tag. Channel deletion must be performed inside the TIA Portal Connections editor for the HMI station.
- Open the HMI device's Connections editor.
- Select the empty channel.
- Right-click and choose Delete. The channel should now remove cleanly because the tag table no longer references it.
- If the channel still refuses to delete, repeat the cleanup against any other tags you may have missed: use the Configuration Tool to list every tag whose Connection column points to the channel.
Verification Checklist
Run through the following checks after applying either solution to confirm the database is clean and the runtime is healthy:
- Tag table visibility. Open the HMI tag editor. The offending tag name (with the dot) no longer appears.
- Compilation success. Perform a full software recompile of the HMI station. The build must complete without warnings about unresolved tags or dangling structure references.
- Channel deletion. If the channel was a leftover test connection, confirm it can be removed cleanly from Connections.
- Runtime download. Download the project to the HMI panel or WinCC Runtime. Verify the start screen loads without a tag-resolution error and the alarm log is not reporting missing tags.
- Cross-reference check. Use Edit > Cross-references on the HMI station to confirm the removed tag is not referenced by any screen, script, or tag logging object.
- CSV round-trip diff. Compare the pre-cleanup CSV export with the post-cleanup tag table to confirm no legitimate tags were removed.
Prevention: WinCC Tag Naming Conventions
The cleanest defense against this issue is to never introduce a period into a tag name. Siemens' tag naming rules are enforced by the input validator in modern TIA Portal releases, but enforcement is inconsistent across versions and device types, so projects should adopt a project-wide naming convention that is explicitly checked at code review.
| Character | Allowed in WinCC tag names? | Notes |
|---|---|---|
| Letters (A-Z, a-z) | Yes | Always permitted. |
| Digits (0-9) | Yes | First character must be a letter in most device types. |
Underscore (_) |
Yes | Standard word separator in WinCC tag names. |
Period (.) |
No | Reserved for structure member access. |
Hyphen (-) |
No | Reserved for some arithmetic expressions; rejected by most validators. |
Slash (/, \) |
No | Reserved for path-style references. |
Space ( ) |
No | Rejected by the input validator in current TIA Portal versions. |
| Non-ASCII characters | No | Rejected at compile time when generating PC runtime files. |
Recommended conventions to avoid the dot-in-name trap entirely:
- Use a flat naming scheme for HMI tags with explicit prefixes (for example,
Pump1_RunCmd,Pump1_Status) rather than nested dot syntax. - Import tags from a master CSV maintained outside TIA Portal. This puts naming under source control and avoids the human-typing path that produced the offending period in the first place.
- When migrating tags from older WinCC Flexible or WinCC V13 projects, run the migration report and search the output for any tag containing
.before opening the resulting project. Fix the names in the source project, re-archive, and re-migrate.
Edge Cases and Known Limitations
Tag is referenced by a script
If a VB script or C script on an HMI screen references the tag by its dotted name, the script editor may still resolve the name because it uses the same parser. Removing the tag will leave the script with a broken reference. Use Cross-references on the HMI station to locate every script and screen that references the tag before deletion.
Tag appears in tag logging
Tag logging configurations store the tag name as a string. Renaming the tag will not update the logging configuration automatically; the logging object will either log nothing or generate a runtime error. Reopen every tag logging object and verify the tag references after the rename.
Multi-language projects
In a project with multiple runtime languages, the tag name is language-independent, but display texts on screens may still reference the old name. Use the Go to function on the renamed tag in the tag table to locate screens and update any text references manually.
Unified PC RT projects
In WinCC Unified, the same parser is used at the project-database level, but the visible UI gives a different error. The Configuration Tool path is the same, and the structure-tag workaround also applies. Always use the Configuration Tool from the matching Unified version—cross-version tools will fail to read the unified database schema.
Project in multi-user editing
In a server-based multi-user TIA Portal project, the HMI station's tag database is locked by the session that committed the offending tag. The cleanup must be performed in a local working copy of the project, and the change must be checked back in to the server project as a single HMI station commit to avoid merge conflicts on the tag table.
Related Tag Management Procedures
The procedures that follow share tooling and risk profile with the dot-in-name fix and are worth standardizing as part of the same HMI tag management workflow:
-
Bulk import of HMI tags from CSV. Use the HMI tag editor's Import function to populate the tag table from a controlled CSV. Validate the CSV with a simple script that rejects any row whose name contains
.,-, or whitespace before the import. - Bulk rename via the Configuration Tool. When a project's naming convention changes (for example, a new prefix is required for a new plant area), use the Configuration Tool's CSV export/import cycle to apply the rename in one pass.
- Structure tag creation for PLC UDTs. Whenever a PLC user-defined type is added, mirror it as a WinCC structure type to keep the HMI tag table aligned. This avoids the manual tag creation path that produced the bug in the first place.
- Project archive hygiene. A full project archive should be taken before any bulk rename, channel delete, or HMI recompile. This is the only reliable rollback path for the procedures described above.
Why can't I delete a WinCC tag that has a period in its name?
WinCC uses the period as a delimiter between a structure tag and its members. When a tag name contains a dot, the editor treats the entry as a member of a structure, so the standard delete command—which only operates on top-level tag names—has no effect. The Configuration Tool or the structure-tag workaround is required.
How do I remove a stuck WinCC tag from a test channel?
Create a structure type whose name matches the part of the tag before the dot, add a member that matches the part after the dot, and instantiate a structure tag using the same fully qualified name. WinCC resolves the duplicate and deletes the orphan. Then remove the temporary structure and structure tag, and the test channel can be deleted.
What characters are allowed in WinCC TIA Portal tag names?
Letters, digits, and the underscore. The first character must be a letter. The period, hyphen, slash, backslash, space, and any non-ASCII character are rejected by the current TIA Portal input validator and should be avoided in any project that may be opened in an older WinCC version.
How do I bulk rename WinCC tags?
Open the WinCC Configuration Tool that ships with the matching TIA Portal version, export the tag table to CSV, perform a search-and-replace in Excel, then re-import the CSV. The Configuration Tool exposes entries that the standard HMI tag editor hides, including any tag that contains a reserved character.
Can I edit the WinCC tag database directly?
Do not edit the underlying HMI database files by hand. Always use the WinCC Configuration Tool from the matching TIA Portal version, or use the structure-tag workaround through the standard editors. Manual database edits will desynchronize the project and cause compile or runtime failures that are difficult to diagnose.