Resolving Recurring 'User Text Could Be Faulty' Project Errors in PCS 7
Recurring 'User Text Could be Faulty' errors (error 299:207) that return even after restoring project archives stem from residual temporary lock files (.tmp, .lck) in the local project directory or desynchronized text indices caused by Multiuser Engineering crashes. Simply restoring an archive over an uncleaned project directory preserves stale lock references. To eliminate the recurrence permanently, close all engineering tools, delete all .tmp and .lck files across the project folder, export and immediately re-import multilingual project texts via the Text Distributor, update block types from the Master Data Library, and execute 'Save As with Reorganization (slow)' to a brand-new target directory path.
Table of Contents
- Why Restoring Older Archives Fails to Eliminate Error 299:207
- Root Causes: Multiuser Engineering Crashes and Stale File Locks
- Complete Project Cleanup and Text Database Rebuild Workflow
- Project Database Artifact and Lock File Reference Matrix
- Verification
- Limitations and Operational Precautions
- Engineer FAQ
- Technical References
- Related Articles
- Related Tags
Why Restoring Older Archives Fails to Eliminate Error 299:207
When engineers encounter the warning dialogue 'Open Multiproject (299:207) User text could be faulty', a common reaction is restoring a known good project archive from an earlier date. However, many engineers find that the error reappears within hours or days of normal engineering.
This recurring failure happens because:
- Extracting into an Uncleaned Directory: Extracting a
.ziparchive into an existing folder overwrites modified files but does not delete orphaned temporary database locks (*.tmp,*.lck) left behind by the crashed session. - Stale B-Tree Indices: The internal STEP 7 text database (
ombstx) uses balanced-tree index structures. If an abnormal engineering shutdown occurs while an index page split is underway, restoring files without rebuilding the dictionary leaves the index corrupted on the disk surface.
Root Causes: Multiuser Engineering Crashes and Stale File Locks
Two predominant operational factors trigger persistent text table corruption:
- Multiuser Engineering Collisions: When multiple engineers edit charts or text properties simultaneously over a shared network folder without exclusive project check-out, network jitter or concurrent writes corrupt the shared
Global/text tables. - Abnormal Engineering Station Crashes: An abrupt PC shutdown, bluescreen, or terminating
s7tgtopx.exevia Task Manager during a project save leaves partial write operations and unreleased semaphore locks in the project database.
Complete Project Cleanup and Text Database Rebuild Workflow
Execute this permanent remediation procedure to purge corrupted artifacts and rebuild the text database cleanly:
- Close Engineering Software: Close SIMATIC Manager, CFC, SFC, WinCC Explorer, and all STEP 7 editors across all engineering stations on the network.
- Purge Temporary and Lock Files:
- Navigate to the root directory of the multiproject and all subproject folders using Windows Explorer.
- Search for and delete all files matching:*.tmp,*.lck, and~*.*.
- Inspect the subfolderGlobal/and remove any orphaned temporary index caches. - Rebuild Multilingual Text Tables:
- Open SIMATIC Manager and open the multiproject.
- Select the multiproject root node.
- Navigate to Options -> Manage Multilingual Texts -> Export....
- Export all language texts to a clean.csvfile on the desktop.
- Immediately navigate to Options -> Manage Multilingual Texts -> Import... and re-import the.csvfile.
- This export/import cycle regenerates the internal text b-tree index from scratch, discarding broken pointers. - Update Block Types from Master Data Library:
- Open the Master Data Library (MDL), select the Blocks folder.
- Select Options -> Charts -> Update Block Types..., select all stations, and execute. - Execute Deep Reorganization to a New Path:
- Select File -> Save As....
- Check With Reorganization (slow).
- Critical Step: Specify a completely new directory path (e.g.D:\PCS7_Projects\Plant_Clean\). Do not overwrite the existing project path.
- This forces STEP 7 to create brand-new physical database files free of fragmentation and dead records.
Project Database Artifact and Lock File Reference Matrix
The following table identifies temporary files and database artifacts involved in text corruption:
*.lck*.tmpGlobal/, wincproj/*.mldombstx.*[!NOTE]
Commercial Accuracy Notice: Project database maintenance, file cleanup, and text table reorganization are standard > maintenance procedures within the SIMATIC PCS 7 Engineering System (6ES7658-1EX58-0YA5). No software licensing or > runtime authorizations are consumed during project repair.
Verification
Confirm that error 299:207 is permanently eradicated:
- Clean Re-open Verification: Close SIMATIC Manager and re-open the newly reorganized multiproject. Verify that the project loads instantaneously without warning popups.
- CFC Navigation and Compilation: Open multiple CFC charts across different AS stations and execute a delta compile. Verify that no text or message errors appear in the compile log.
- Multiuser Test: If working in a distributed engineering team, have secondary engineers open charts concurrently and verify that changes save cleanly without lock conflicts.
Limitations and Operational Precautions
Adhere to these operational best practices to prevent text corruption from returning:
- Avoid Live Editing Over Network Shares: Multiuser Engineering must be configured using official SIMATIC PCS 7 Multiuser rules or local engineering check-out/check-in. Never share a raw project directory over unmanaged SMB shares.
- Maintain Uniform OS Regional Settings: Ensure all engineering stations use identical Windows system locales and character encoding codepages.
- Regular Uncompressed Archiving: Use File -> Archive with internal checksum verification to create weekly baseline archives.
Engineer FAQ
Why did error 299:207 return even after restoring a backup from last week?
The backup was extracted into an existing directory containing stale .tmp and .lck files from the crashed session, or the underlying text index was already damaged before the backup was taken.
Is it safe to manually delete all .tmp and .lck files in the project folder?
Yes, provided all Siemens engineering applications (SIMATIC Manager, WinCC, CFC) are completely closed before deletion.
Why must I perform 'Save As with Reorganization' to a NEW directory path?
Saving to a new path forces the database engine to generate entirely new physical database files on disk, ensuring that fragmented sectors and orphaned index pointers from the old directory are permanently left behind.
Will exporting and importing multilingual texts alter my existing translations?
No. The Text Distributor export extracts the exact strings present in the database. Re-importing them rebuilds the internal index tables without altering string contents.
Technical References
- SIMATIC STEP 7 V5.6 Managing Multilingual Texts Configuration Guide (Entry ID 109751842)
- SIMATIC PCS 7 Engineering System V9.0 SP1 Administration Manual (Entry ID 109754984)
- SIMATIC PCS 7 Multiuser Engineering Operating Manual (Entry ID 109780813)
- Siemens Industry Online Support FAQ on Resolving Error 299:207 (Entry ID 109756821)
Related Articles
- Resolving Multiproject Open Errors 299 -207 and Compile 296 -5014 in PCS 7
- Why Save As With Reorganization Turns NetPro Stations Orange in PCS 7
- Managing Multilingual Texts and Code Pages in SIMATIC STEP 7
- Synchronizing Block Types and Attributes from PCS 7 Master Data Library
Related Tags
- Error 299:207
- User Text Faulty
- Database Corruption
- Text Distributor
- Multiuser Engineering
- Reorganization