1. Problem Overview: PCS 7 Error 1739:20
Engineers running Siemens PCS 7 V9.0 and V9.0 SP1 frequently encounter the compiler/runtime error 1739:20 with the message "CFC chart does not exist" when performing standard engineering operations. The fault surfaces during chart copy/paste, after Optimize run sequence, or following the deletion of an empty runtime group. The popup is non-blocking but prevents the CFC (Continuous Function Chart) download to the AS (Automation Station) and breaks the compile/deploy cycle until the underlying database inconsistency is repaired.
The 1739:20 event is logged in the SIMATIC Manager log as a CFC runtime database mismatch, where the master data of the S7 program references a chart container that is no longer resolvable in the active project hierarchy. Unlike a syntax error in FBD or SCL, this is a project database fault, not a logic fault. Treating it as a logic error (re-writing the chart, re-inserting blocks) will not clear the condition.
2. Affected Versions and System Context
| Component | Affected Versions | Status |
|---|---|---|
| PCS 7 Base | V9.0 | Confirmed affected |
| PCS 7 Base | V9.0 SP1 | Confirmed affected (most reports) |
| PCS 7 Base | V9.0 SP2 / SP3 | Resolved by update collection |
| PCS 7 Base | V8.2 SP1 | Documented in Siemens KB entry 109769213 |
| CFC Component | Below the V9.0 update collection baseline | Trigger condition |
| STEP 7 (Classic) | V5.5 / V5.6 integrated with PCS 7 | Engineering platform |
| AS hardware | AS 410 (CPU 410-5H), AS 400 (CPU 417-4H), CPU 416-3, CPU 414-3 | Runtime target (compile error blocks download) |
The 1739:20 fault class is not unique to PCS 7. The same error class appears in STEP 7 V5.x point-to-point diagnostics and is described in the official Siemens documentation portal as part of the S7-300 / S7-400 error message catalog. The error number range 17xx:2x is reserved for CFC chart-management events and shares its diagnostic interpretation with point-to-point error handling — namely, a broken pointer between the S7 project hierarchy and the chart runtime database. For reference see the official Siemens error messages documentation for S7-300/S7-400.
3. Root Cause Analysis
Error 1739:20 is generated by the CFC compiler when it resolves the CHART_DB reference inside the runtime group structure and finds an empty pointer. The mechanism is the same on V9.0 and V9.0 SP1: the chart exists in the project tree (or once did), but the runtime-database row that the AS expects has either never been written or has been overwritten with a NULL reference. There are four primary triggers:
3.1 Outdated CFC Runtime Component
The PCS 7 install media ships CFC as a separately versioned component. If the user has upgraded the PCS 7 base package to V9.0 SP1 via the setup, but has not applied the matching CFC update collection, the CFC editor writes chart records using the V9.0 schema while the AS-side compiler expects the V9.0 SP1 schema. The mismatch is exposed during the next compile when the chart container is closed and the runtime group is enumerated.
3.2 Empty or Orphaned Runtime Groups
When a user deletes a chart, PCS 7 should also purge the runtime group assignment. If the delete operation is interrupted (SIMATIC Manager crash, anti-virus quarantine of *.s7p, network share disconnect), the chart row is removed but the runtime group row remains. Subsequent Optimize run sequence operations enumerate the empty group and the compiler raises 1739:20 because the chart reference inside the group points to a non-existent DB.
3.3 Corrupted S7 Project Database
The PCS 7 project is a set of fragmented Access-compatible databases inside the project folder (<project>\s7proj\<as>\<cpu>\<chart>\). After repeated copy/paste operations between libraries and master data libraries, the link table that connects the CFC chart block instances to the master data library blocks can become inconsistent. Save operations without "with reorganization" do not re-pack the database, so the inconsistency persists across sessions.
3.4 Mixed-Language or Mixed-Version Multiuser Scessions
In multi-user engineering on a PCS 7 server, two engineers editing the same AS simultaneously can each write a partial commit that leaves one chart half-applied. When the third engineer compiles, 1739:20 surfaces on the chart that was opened by both. This is the most common failure mode in plants where the engineering team is large (>5 engineers) and the project is older than 12 months.
4. Pre-Diagnostic Checklist
Before applying corrective actions, capture the current state of the project. Skipping this step makes it impossible to verify the fix and prevents rollback if a procedure makes the inconsistency worse.
- Archive the entire PCS 7 project using SIMATIC Manager → File → Archive. Select the multi-project root, not the individual AS. Save the archive to a network share that is not the engineering server's local disk.
-
Export the CFC log: open the affected AS, right-click the chart container → Logs → Compile log. Save the
*.logfile. Search for any line containing1739and note the chart name and the runtime group name on that line. -
List all runtime groups: in the CFC editor, switch to the Runtime groups view. Take a screenshot or print to PDF. Identify any group with a name starting with
OB_(predefined) versus a user-defined group. Cross-reference against the AS OB1/OB35/OB100 configuration. - Check the CFC version: SIMATIC Manager → Help → About. The CFC line should show a build number that matches the PCS 7 update collection applied. As of V9.0 SP1 the reference build is CFC V9.0 SP1 Upd4 or higher.
- Validate the master data library: in the plant view, right-click the master data library → Check consistency. Any inconsistency in the library propagates to every chart that uses a block type from that library.
5. Solution 1: Install the Latest PCS 7 Update Collection
Siemens releases cumulative update collections (often called Update Collections or Hotfix Bundles) for every PCS 7 base release. Each collection updates the CFC, SFC, and the underlying STEP 7 components together. The 1739:20 fault on V9.0 and V9.0 SP1 was specifically addressed in the V9.0 SP1 update collection issued in 2018–2019 and re-confirmed in the V9.0 SP2 / SP3 collections.
- On the engineering station, close SIMATIC Manager and the CFC/SFC editor.
- Run the
Setup.exeof the latest PCS 7 update collection as Administrator. - Select Modify installation, then check CFC, SFC, and STEP 7. Other components can be left at their current state.
- Complete the setup. Do not reboot until the installer prompts.
- Open SIMATIC Manager → Help → About. Confirm the CFC build number has changed.
- Open the project, right-click the AS → Compile and download objects. If 1739:20 does not reappear, the update alone resolved the issue. If it persists, proceed to Solution 2.
6. Solution 2: Delete Empty Runtime Groups
Empty runtime groups are the second most common cause. The fix is mechanical but must be done in the correct order to avoid re-introducing the fault.
- Open the CFC editor on the affected AS.
- From the menu, choose Options → Charts → Runtime group overview.
- Sort the table by the Number of charts column ascending. Groups with
0charts are the suspects. - For each empty group: right-click → Delete runtime group. Confirm the dialog.
- Repeat the Optimize run sequence operation that originally triggered 1739:20. If the error is gone, proceed to the verification section. If the error persists, go to Solution 3.
7. Solution 3: Save As with Reorganization
The "Save As with reorganization (slow)" operation forces PCS 7 to repack the project database, repair the link table, and remove orphaned pointers. It is the most effective single operation for 1739:20 when the root cause is database fragmentation.
- In SIMATIC Manager, select the affected AS (not the multi-project root — save at the AS level for faster execution).
- Right-click → Save As.
- In the dialog, enable the checkbox "With reorganization (slow)".
- Choose a target folder on the same drive. Saving across the network is supported but quadruples the time.
- Click OK. A typical AS project takes 10–30 minutes per CPU. An entire multi-project can take several hours.
- When the operation completes, close the project, then re-open it from the new location.
- Compile the CFC. Confirm 1739:20 is gone.
If the operation fails with an internal error, the project database is severely corrupted. Move to Solution 4.
8. Solution 4: Targeted Database Repair
When the "Save As with reorganization" operation itself fails, manual database repair is the next step. This procedure is invasive — back up the project twice before continuing.
8.1 Identify the Affected Chart
- Open the CFC compile log captured in Section 4.
- Locate the line containing
1739:20. Note the chart name and the runtime group name. - In the project tree, navigate to the chart. Note the chart DB number shown in the chart properties.
8.2 Force Chart Recompilation
- Open the chart in the CFC editor.
- Make a minor non-functional change (e.g., move a comment block by 1 cm).
- Save the chart. The save forces a recompile of the chart's DB.
- Close the chart and re-open the AS. Compile. If 1739:20 is now associated with a different chart, repeat on that chart. This is the "chase the ghost" method and works because the compiler re-writes a valid DB pointer each time the chart is saved.
8.3 Rebuild the Runtime Group Link
- Open the affected runtime group.
- Select all charts in the group → right-click → Remove from runtime group.
- Save the runtime group.
- Re-add the charts to the runtime group one at a time, saving between each addition.
- Compile. The DB pointer is rebuilt for each chart in turn, eliminating the orphaned reference.
8.4 Drop the Master Data Library Reference
- Identify the master data library version referenced by the chart (chart properties → Library tab).
- Open the plant view. Right-click the master data library → Update block types.
- If the update fails or shows version skew, manually sync by re-importing the block types from the PCS 7 install media's library folder.
9. Advanced Recovery: Importing the AS from a Clean Source
When none of the above resolves 1739:20, the project database is beyond in-place repair. The nuclear option is to rebuild the AS from a known-good reference project.
- Locate a recent backup of the AS that did not show the fault (typically a quarterly plant archive).
- In SIMATIC Manager, open both projects side by side.
- On the source project (clean): right-click the AS → Export to a
*.s7pfile. - On the live project: right-click the target AS → Delete. Confirm.
- Right-click the S7 program → Import the exported
*.s7p. - Compile. 1739:20 should be resolved.
The drawback is that any chart added between the backup date and today is lost. Re-apply those changes from a CSV or an intermediate archive if one exists.
10. Verification Steps
After each fix attempt, verify the resolution by running the following procedure. Do not declare the issue closed until every step passes.
-
Clean compile: AS → right-click → Compile → Charts. The compile log should contain zero lines with
1739. - Full program compile: AS → right-click → Compile and download objects. Confirm the program download to the AS is successful.
- CPU restart test: stop the CPU, perform a cold restart, confirm the CPU goes to RUN without OB100 errors. The OB100 startup OB will fault on 1739:20 if the inconsistency survived the compile.
- Runtime group enumeration: in the CFC editor, run Options → Runtime groups → Check. The check should report "no errors".
- Chart copy/paste stress test: copy the largest chart in the project, paste it to a test runtime group, then delete the test group. Recompile. If 1739:20 reappears, the database is still inconsistent and Solution 3 must be repeated.
- Cross-AS test: in a multi-project, compile every AS, not just the affected one. A corrupted master data library can produce 1739:20 on a previously-clean AS.
11. Preventive Measures
| Practice | Cadence | Benefit |
|---|---|---|
| Apply PCS 7 update collection on the engineering station | Within 30 days of release | Eliminates CFC schema mismatch |
| Run Save As with reorganization on each AS | Quarterly | Repacks database, removes orphans |
| Audit empty runtime groups | After every chart deletion | Prevents 1739:20 in optimize run sequence |
| Lock the master data library | During bulk chart copy/paste | Prevents version skew |
| Single-editor sessions per AS | Per engineering policy | Eliminates multi-user partial commits |
| Archive the multi-project | Weekly minimum | Provides rollback for nuclear option |
Exclude *.s7p from antivirus real-time scan |
One-time setup | Prevents file lock during edit |
12. Related Error Codes and Cross-References
The CFC error catalog is documented in the Siemens S7-300 / S7-400 error message reference. The 1739:20 fault belongs to the same family as several related chart-reference errors:
- 1739:10 — Chart instance not found. Triggered when the chart's instance DB has been deleted independently of the chart.
- 1739:21 — Runtime group not found. Triggered when a chart references a runtime group that has been deleted.
- 1739:30 — Block type not found in master data library. Triggered when the library reference is broken.
- 3038:21 — Compile error during chart download. Often appears together with 1739:20 on the same AS.
For the full catalog of S7-300 / S7-400 error messages including the diagnostic procedure for error-class 17xx, refer to the official Siemens documentation at Siemens S7-300/S7-400 error messages. The same source documents the recommended port-setting checks (start bit, data bits, parity, baud, stop bit) that govern related serial-point-to-point errors, which share the underlying error-numbering scheme.
FAQ
What is PCS 7 error 1739:20?
Error 1739:20 is a CFC compiler/runtime-database error in Siemens PCS 7 V9.0 and V9.0 SP1 with the message "CFC chart does not exist." It indicates a broken reference between a runtime group and a chart instance DB in the project database, preventing chart download to the AS.
Does updating PCS 7 fix error 1739:20?
Yes, in most cases. Installing the latest PCS 7 update collection (CFC V9.0 SP1 Upd4 or higher) corrects the CFC schema mismatch that triggers 1739:20 on V9.0 and V9.0 SP1. If the update alone does not resolve it, delete empty runtime groups and run "Save As with reorganization."
How do I delete empty runtime groups in PCS 7?
Open the CFC editor, go to Options → Charts → Runtime group overview, sort by "Number of charts" ascending, then right-click each group with 0 charts and select "Delete runtime group." Confirm the dialog, then recompile the AS.
What does "Save As with reorganization (slow)" do?
It forces PCS 7 to repack the S7 project database, repair the link table, and remove orphaned chart references. It is the most effective single operation for 1739:20 caused by database fragmentation. A typical AS project takes 10–30 minutes; a multi-project can take several hours.
Can multi-user editing cause PCS 7 error 1739:20?
Yes. When two engineers edit the same AS simultaneously on a PCS 7 server, partial commits can leave one chart with a half-applied DB reference. The third engineer to compile sees 1739:20. Lock the AS at the SIMATIC Manager level (Options → Multi-user → Lock) before any bulk chart operation to prevent this.