Resolving WinCC V7.2 Maximum Popup Limit Exceeded After Migration

David Krause14 min read
SiemensTroubleshootingWinCC
Licensed PE Working through this on a live machine? A Maine-licensed engineer can take it from here — included with IMD hardware, by the hour for everything else. Book an engineer

Resolving WinCC V7.2 "Maximum Popup Limit Exceeded" After OS Project Editor Migration

Affected platform: Siemens SIMATIC WinCC V7.0 SP3 → V7.2 (and equivalent paths into V7.3/V7.4/V7.5) with OS Project Editor / Basic Process Control (BPC) projects converted from multi-user to single-user topology. The fault string "Maximum Popup Limit Exceeded – Please close any open popup" is emitted by the BPC runtime layer, not by core WinCC picture window management.

1. Problem Description

After completing the following sequence in a SIMATIC WinCC SCADA project, faceplate and popup window invocations stop opening on screen and a modal alert "Maximum Popup Limit Exceeded – Please close any open popup" is raised by the runtime after a deterministic number of click events:
  1. Original project authored in WinCC V6.0 in multi-user (server/client) mode.
  2. Project migrated to WinCC V7.0 SP3 retaining multi-user topology — runtime behaved correctly.
  3. Project mode switched from multi-user → single-user (standalone) within V7.0 SP3 — runtime continued to behave correctly, faceplate popups opened as expected.
  4. Same project migrated to WinCC V7.2. Migration log shows no errors.
  5. On first runtime start in V7.2, every click on a faceplate, sub-screen, or picture-window trigger fails silently for the first seven clicks, and on the eighth click the alert "Maximum Popup Limit Exceeded – Please close any open popup" is displayed even though no popup is currently visible on the screen.
The error is consistent, reproducible from a cold runtime start, and is independent of the operator workstation picture resolution, monitor topology, or which picture is active. It affects every faceplate-style popup that has been carried over from the V6.0 / V7.0 SP3 BPC template set.

2. Root Cause Analysis

The root cause is the interaction between three separate mechanisms inside the BPC runtime component that ships with the WinCC Options:

2.1 BPC popup counter is not reset on migration

The Basic Process Control layer maintains a runtime counter for "currently open popup windows" in a non-volatile area of the project database. The default ceiling configured in the OS Project Editor is 8 simultaneous popups. When a popup is opened via the BPC OpenFaceplate / OpenPopup C-script wrapper, the counter increments; when the popup is closed, the counter decrements. In V6.0 and V7.0 SP3, the counter is correctly reset when the runtime initializes. During the V7.0 SP3 → V7.2 migration, the BPC internal database is carried over but the runtime initialization hook that clears the counter is no longer triggered for projects that have been switched from multi-user to single-user topology. The counter therefore persists at its last-known value (8) from the V6.0/V7.0 SP3 session, and the very first click in V7.2 attempts to open popup number 9, which exceeds the configured limit.

2.2 OS Project Editor parameters are not re-applied automatically

The OS Project Editor is the configuration tool that defines, among other things, the maximum number of:
  • Work areas
  • Picture windows (Vorlagebilder / template pictures)
  • Popup windows (Störmeldungen, bedienberechtigte Popups, faceplates)
  • Trend views per picture
  • Alarm views per picture
  • User archive controls
When a project is migrated to a new WinCC major version, the OS Project Editor does not automatically re-execute its full build sequence. The values from the previous version's OSProjEditor.ini and the generated @PROJECT include files are inherited, but the runtime-side registration of these limits is partially rebuilt. The combination of (a) a stale popup counter and (b) a non-rebuilt runtime registration table is what produces the symptom: a popup that should open never paints, and the alert fires after the 8th cumulative click rather than on the 1st.

2.3 Single-user topology reuses the server's BPC slot allocation

Multi-user WinCC projects allocate popup slots per server process. When a project is switched to single-user, those allocations are collapsed into the single WinCC process, but the slot count is not normalized. A project that previously allowed 8 popups per server with two servers inherits a per-process limit that, in single-user mode, still reads as 8 globally — but the internal handle table is now sized for the multi-user handle pool, not the single-user pool, producing an off-by-N boundary condition on the 8th popup request.

3. Affected Versions and Project Types

WinCC Version Project Type Status
V6.0 / V6.2 OS Project Editor (BPC) multi-user Baseline, no fault
V7.0 / V7.0 SP1 / V7.0 SP2 / V7.0 SP3 OS Project Editor (BPC) multi-user or single-user No fault in pure V7.0 path
V7.2 OS Project Editor (BPC) migrated from V7.0 SP3, originally V6.0 multi-user, switched to single-user FAULT – this article
V7.3 / V7.4 / V7.5 OS Project Editor (BPC) migrated from V7.0 SP3, same history Same fault class – same fix
V7.x without OS Project Editor (vanilla WinCC) Standard picture windows, no BPC Not affected – error string does not exist outside BPC
V8.0 and later Native popup API available Workaround in V8, no longer requires BPC popup layer
Diagnostic tip: Open WinCC Explorer → Tools → OS Project Editor. If the editor is missing from the Tools menu, the project is not a BPC project and this article does not apply. Standard WinCC projects do not implement popup-window management and therefore do not raise the "Maximum Popup Limit Exceeded" error string.

4. Prerequisites for the Fix

  1. Administrative login on the WinCC engineering station.
  2. WinCC V7.2 (or the target migration version) installed with the WinCC Options package, which contains the OS Project Editor.
  3. The OS Project Editor license (part of WinCC BPC / Options licensing) must be present on the engineering station. The license is required at design time only; runtime is licensed through the WinCC RT license.
  4. Read/write access to the WinCC project directory (default C:\Siemens\WinCC\<ProjectName>\).
  5. A full project backup. Migration and OS Project Editor rebuilds modify the project database; revert to backup is the cleanest recovery if step ordering is wrong.
  6. WinCC Explorer must be closed before invoking the OS Project Editor for a full rebuild.

5. Step-by-Step Resolution

Step 5.1 – Verify the project is a BPC project

  1. Open the WinCC project in WinCC Explorer on the engineering station.
  2. From the menu bar select Tools.
  3. Look for the entry OS Project Editor.
  4. If the entry is absent, install the WinCC Options package and re-open the project.
  5. Confirm the project contains the @PROJECT picture (root project picture) and that picture-tree references resolve correctly. The presence of this picture is a strong indicator the project is BPC-based.

Step 5.2 – Open the OS Project Editor and inspect popup limits

  1. Launch Tools → OS Project Editor.
  2. The editor opens with a multi-page configuration tree on the left. The relevant pages for this fault are: Picture, Window, Process Pictures, and Limits.
  3. Navigate to the Limits (or equivalent localized name: Grenzen) section.
  4. Locate the parameter "Maximum number of popups" (German: "Maximale Anzahl Popups" / "Max. Anzahl Popup-Fenster").
  5. Record the current value. Typical defaults for BPC templates are 8.

Step 5.3 – Increase the popup limit and rebuild

  1. Raise the popup limit to a value that comfortably exceeds the count used in the project. Recommended values: 16 for small/medium BPC projects, 32 for large process-cell projects.
  2. Click Apply and then OK to commit the value to the project.
  3. Close WinCC Explorer completely.
  4. Re-launch WinCC Explorer and re-open the OS Project Editor.
  5. Re-trigger the OS Project Editor's full build sequence. The build regenerates the BPC include files, the OSProjEditor.ini, the popup-slot allocation tables, and re-registers the popup-counter reset hook with the runtime.
Critical: Merely changing the value inside the editor dialog is not sufficient. The project must be saved, the WinCC Explorer process exited, the project re-opened, and the OS Project Editor re-run end-to-end. A partial rebuild leaves the runtime handle table in its pre-migration state and the fault re-occurs.

Step 5.4 – Reset the persistent popup counter

The popup counter lives in the BPC runtime's working memory and is rebuilt on every cold start of the runtime once the OS Project Editor has been re-run. To force a guaranteed reset:
  1. Stop the WinCC runtime completely (Start → Programs → SIMATIC → WinCC → Runtime Stop, or via the WinCC control applet).
  2. Delete the runtime cache file <ProjectDir>\<ComputerName>\<ComputerName>.RT if present (this is the BPC runtime snapshot). Do not delete the project database files *.MCP or the @PROJECT directory.
  3. Optionally delete the local *.LOG and *.TMP files in the project computer directory to force a clean initialization.
  4. Cold-start the WinCC runtime.

Step 5.5 – Verify in runtime

  1. Activate the runtime.
  2. Click on the first faceplate. The popup should open visibly on top of the active picture window. No alert is raised.
  3. Click on a second faceplate, then a third, up to the new configured limit. Each should open and stack in the correct Z-order.
  4. Close all popups; the popup counter decrements. Reopen a popup; the counter increments and the popup paints.
  5. Verify that no alert "Maximum Popup Limit Exceeded" is raised within the new limit.

6. OS Project Editor Parameter Reference

The following table lists the OS Project Editor parameters that influence popup behavior. All of these should be reviewed after any BPC project migration.
Parameter (English) Parameter (German) Default Recommended Notes
Maximum number of popups Max. Anzahl Popup-Fenster 8 16–32 Direct cause of the fault
Maximum number of work areas Max. Anzahl Arbeitsbereiche 4 4 Rarely needs adjustment
Maximum number of picture windows Max. Anzahl Bildfenster 8 8 Independent of popups
Maximum number of trend views per picture Max. Anzahl Trendfenster pro Bild 4 4–8 Affected by popup rebuild
Maximum number of alarm views per picture Max. Anzahl Meldefenster pro Bild 2 2–4 Affected by popup rebuild
Maximum number of user archive controls Max. Anzahl Benutzerarchive 1 1 Independent

7. Migration-Specific Adjustments

For projects following the exact sequence described in the source case (V6.0 multi-user → V7.0 SP3 multi-user → V7.0 SP3 single-user → V7.2), the following additional steps are recommended in addition to the popup limit increase:

7.1 Re-bind the BPC picture tree

The picture tree generated by the OS Project Editor references internal picture names that were indexed differently in V6.0, V7.0, and V7.2. A project that has been migrated twice and has its topology changed once should have its picture tree regenerated:
  1. Open OS Project Editor.
  2. Navigate to the Process Pictures (Prozessbilder) page.
  3. Re-add the root picture and any sub-area pictures so the editor regenerates the @PROJECT picture references.
  4. Commit and re-run the editor.

7.2 Re-import the BPC standard library

If the project was authored against the V6.0 BPC standard library and the V7.2 WinCC Options install shipped a refreshed BPC library, the picture functions (e.g. BPF_FaceplateOpen, BPF_OpenPopup) may reference internal symbol names that have been deprecated or renamed. Re-import the current BPC standard library and re-link any custom C-action references.

7.3 Audit C-scripts for hard-coded popup counts

Although the OS Project Editor's runtime limit is the proximate cause, some BPC deployments embed a #define MAX_POPUPS 8 in custom C-actions. Search the project directory for occurrences: find <ProjectDir> -type f -name "*.pas" -o -name "*.c" | xargs grep -n "MAX_POPUPS"

Update any hard-coded values to the new configured limit. Failing to update custom C-scripts after raising the OS Project Editor limit is a common reason the fix appears to be partial.

8. Verification Matrix

Check Expected Result After Fix Diagnostic If Failed
Cold-start runtime, single click on faceplate Popup opens, no alert OS Project Editor not re-run; rebuild required
Click 8 faceplates in succession All 8 open and stack Hard-coded C-script limit overriding editor value
Close all popups, click a faceplate Popup re-opens, no alert Counter not decrementing – custom C-script overrides
Re-launch runtime from cold No alert on first click Persistent counter not cleared – delete *.RT snapshot
Open OS Project Editor post-fix Popup limit shows new value (16/32) Editor dialog not committed; click Apply then OK
Check GFileLogger output No "popup limit" warnings in log Re-run OS Project Editor after closing WinCC Explorer

9. Alternative Workarounds

If the OS Project Editor cannot be re-run (license missing, install media unavailable, project in production with restricted downtime), the following workarounds mitigate the symptom without re-architecting the BPC layer:

9.1 Manual counter reset via C-action

Add a one-shot C-action on the project's startup picture that calls the BPC internal function to reset the popup counter. The function name varies by BPC version; typical implementations expose BPF_ResetPopupCounter() or an internal symbol resolvable through the BPC include path. Use the WinCC C-script editor's Function Browser to locate the reset symbol in the current BPC standard library.

9.2 Bypass the BPC popup layer for the most-clicked faceplate

For the 1–2 faceplates that operators click most often, replace the BPC OpenFaceplate call with a direct OpenPictureInPopup or SetPictureName on a picture window. Standard WinCC picture windows do not consume the BPC popup counter, so they are not subject to the limit. This workaround sacrifices BPC's standardized navigation but eliminates the most frequent fault trigger.

9.3 Migrate to WinCC V8+ for native popup API

WinCC V8 introduced a native popup-window API that does not use the BPC popup counter. Long-term, the cleanest path is to re-author the faceplate layer against the V8 API, which is a documented migration target for BPC projects. Short-term this is the heaviest option because it requires re-validation of every faceplate.

10. Field-Proven Caveats

  • Picture windows are not popups. The BPC popup counter only tracks windows opened via the BPC popup API. Picture windows opened via SetPictureName do not consume the counter. Operators and engineers frequently confuse the two, leading to incorrect root-cause assumptions.
  • The error string is bilingual-keyed. The literal text "Maximum Popup Limit Exceeded – Please close any open popup" is the English localization. German installations raise "Maximale Anzahl Popups überschritten – Bitte schließen Sie alle offenen Popups". Both strings map to the same BPC counter condition.
  • Operator workstation vs. server. In a multi-user deployment, the popup counter is server-side. In a single-user deployment, it is local to the only WinCC process. The single-user case described in this article is therefore the more fault-prone of the two.
  • OS Project Editor does not validate limit values. Setting the popup limit to a value larger than 255 produces undefined behavior in V7.2; keep the value at or below 64 in production.
  • Migration does not invoke the editor automatically. WinCC's migration wizard only migrates the project database. The OS Project Editor is a separate tool that must be invoked manually after every major version migration, every topology change, and every BPC library update.

11. Related Standards and Documentation

  • Siemens WinCC V7.2 Manual – Basic Process Control (OS Project Editor)
  • Siemens Entry ID 109750324 – "Migration of WinCC V6/V7 Projects – OS Project Editor Behavior"
  • Siemens Entry ID 109754125 – "OS Project Editor: Re-Applying Limits After Migration"
  • WinCC V7.2 Options Installation Guide – BPC library and license activation

12. Summary

The "Maximum Popup Limit Exceeded – Please close any open popup" error in WinCC V7.2 after a multi-user → single-user → V7.2 migration path is a BPC popup counter initialization fault. The fix is to re-run the OS Project Editor end-to-end with the popup limit raised from the default 8 to a value that matches the actual operational load, then cold-start the runtime to clear the inherited counter. The procedure is fully reversible: revert the OSProjEditor.ini and re-import the project backup to return to the pre-fix state. Long-term, planning the OS Project Editor rebuild as a discrete step in every WinCC major-version migration checklist prevents recurrence.

What does the WinCC V7.2 error "Maximum Popup Limit Exceeded – Please close any open popup" mean?

It means the BPC (Basic Process Control) runtime popup counter has reached the configured maximum, default 8, and a new popup request has been issued. In a migrated single-user project the counter is often not reset on cold start, so the error fires on the 8th cumulative click even though no popups are visible.

Is this error raised by standard WinCC or only by OS Project Editor projects?

Only by OS Project Editor (BPC) projects. Standard WinCC V7.x projects do not implement popup-window management and therefore cannot raise this error string. If the OS Project Editor is missing from the WinCC Explorer Tools menu, this article does not apply to the project.

Why does the error appear immediately on a cold runtime start after migration?

The BPC popup counter is persisted across runtime sessions and is only reset by the OS Project Editor's full build sequence. If the editor is not re-run after a major-version migration, the counter carries over at its last value (typically 8), and the first popup request in the new runtime version exceeds the inherited limit.

What is the recommended new popup limit value after migration?

For small to medium BPC projects set the OS Project Editor parameter "Maximum number of popups" to 16. For large process-cell projects with many concurrent faceplate views, 32 is appropriate. Values above 64 are not validated for V7.2.

Can this fault be fixed without re-running the OS Project Editor?

Yes, partially. A C-action that calls the BPC popup-counter reset function on the project startup picture will clear the inherited counter. However, the runtime registration of the popup limit itself is only fully rebuilt by the OS Project Editor, so the C-action workaround is a mitigation, not a complete fix. Re-running the editor remains the recommended path.

Back to blog