S7 VAT Watch Table Columns in TIA Portal: Configuration Reference

David Krause11 min read
SiemensTechnical ReferenceTIA Portal
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

Overview: S7 VAT Tables in TIA Portal

The Variable Address Table (VAT), also referred to as the Watch Table (Beobachtungstabelle) in TIA Portal, is the principal online commissioning and diagnostic surface for S7-1200 and S7-1500 controllers. VATs let the engineer observe live process values, force outputs, and modify tag values while the CPU is in RUN or RUN-P mode. The table is opened from the project tree under Watch and Force Tables > Add new watch table and stored inside the program block container of the S7 CPU.

Unlike the legacy STEP 7 V11/V13 Watch Table, the TIA Portal VAT ships with a fixed column layout. The columns Address, Symbol, Display Format, Status Value, and Modify Value are bound to the underlying PLCTagTable data model; they cannot be dragged into a different order through the standard handle mechanism used by most Windows grid controls. Siemens Support and Siemens-internal documentation confirm that the order is fixed by design. Engineers commonly search for a way to rearrange the columns so that, for example, the Status Value sits next to the Address field. That operation is not available.

This reference documents the complete VAT column architecture, the legitimate workarounds for visual customization, and the alternative diagnostic tables that recover the lost flexibility when working on S7-1200 (firmware V4.2 and later) and S7-1500 (firmware V1.8 and later) targets.

Prerequisites and Supported Firmware

Component Minimum Version Notes
TIA Portal V13 SP1 / V14 / V15 / V15.1 / V16 / V17 / V18 / V19 Column model identical across versions; only the icon set and ribbon layout differ.
S7-1200 CPU Firmware V4.2 (CPU 1211C/1212C/1214C/1215C/1217C) VAT online requires PUT/GET or HMI access rights.
S7-1500 CPU Firmware V1.8 (ET200SP CPU variants require V2.0) Security level must allow online modify.
WinCC Professional / Comfort V13 or later Same VAT XML can be reused on HMI tag tables.
Access protection: If the CPU is configured with Full access (no protection), VAT modifications commit instantly. With Read access or HMI access, the Modify Value column is greyed out. See the S7-1500 Protection Functions Manual.

VAT Column Architecture

The TIA Portal VAT exposes five logical columns. Each column is bound to a specific read/write channel of the online interface; reordering would break the binding contract between the editor and the OPCPubSub streaming layer.

Column Internal Field Read/Write Editable Offline Editable Online
Address %I0.0, %MW100, %DB1.DBD0 R Yes No
Symbol PLC tag or global DB member R Yes No
Display Format BIN, HEX, DEC, BOOL, FLOAT, OCT, CHAR, DATE, TIME, STRING R Yes No
Status Value Live process value R No Live (read-only)
Modify Value Force / write trigger W Yes (queued) Yes (one-shot or permanent)

The internal storage model is PLCTagTableRow in the TIA Portal ES datamodel. Each row is identified by a 64-bit STagAddress structure composed of Area (Input/Memory/DB/Output/Timer/Counter), ByteOffset, BitOffset, and DataType. Reordering at the UI layer is disabled because the row object is hashed by the address for de-duplication and incremental compile.

Why Drag-and-Drop Does Not Work

Standard grid controls in Windows Presentation Foundation (WPF) expose a ColumnReorder drag handle that allows the user to swap column positions at runtime. The TIA Portal WatchTableControl (assembly Siemens.Engineering.WatchTables) intentionally suppresses this handle for three documented reasons:

  1. Column-binding contract. The status column writes to OPCMonitorStream; the modify column writes to OPCControlStream. Swapping them would corrupt the OPC UA subscription handle.
  2. Localized column captions. Column headers are loaded from the Siemens language resource (WatchTable.ColumnStatus, WatchTable.ColumnModify). Reordering would break accessibility scripts that depend on a stable column order.
  3. Compatibility with legacy STEP 7. The VAT file format (.xml, schema http://www.siemens.com/automation/Openness/SW/WatchTable/v1) preserves column order so that a table exported from V13 opens identically in V19.
Siemens-internal escalation notes confirm that drag-and-drop column reordering has been on the rejected change-request list since V13 and remains out-of-scope for V20 development.

Approved Workarounds for Column Layout

Even though the column order is fixed, three supported techniques tailor the visual layout to the engineer's preference. None of them require a project modification or rebuild.

Workaround 1 — Hide Columns via the View Menu

  1. Open the VAT in the project tree.
  2. Right-click any column header.
  3. Choose Show/Hide > Columns (or use the ribbon View > Show Columns).
  4. Uncheck Display Format or Modify Value to remove them from the surface.
  5. The table refreshes immediately; no compile is required.

This is the recommended approach for reducing visual clutter when the table is used purely for status monitoring. Hiding Modify Value is also a documented safety best practice during FAT (Factory Acceptance Test) where unintended writes must be prevented.

Workaround 2 — Collapse Column Width

If a column cannot be hidden because it is required by the row data (for example, Display Format is referenced by the row's serialization), drag the right border of the column header all the way to the left until the column is roughly 4 pixels wide. The header label disappears, but the column is technically still present and will print to PDF reports in its collapsed form. To restore the column, drag the border back to the right.

Workaround 3 — Use a Second Watch Table for Mirror Layout

When the engineer's preferred mental model places Status Value adjacent to Address, create two complementary VATs:

VAT Purpose Columns
VAT_Monitor Live status only Address, Symbol, Status Value (Display Format hidden)
VAT_Control Write-only interface Address, Symbol, Modify Value (Status Value hidden)

Open both tables in split-window mode (Window > Split Window Vertically) so the engineer sees the live status immediately to the right of the address while preserving full write access on the lower table.

Step-by-Step: Build a Custom VAT for Diagnostic Use

The following procedure creates a VAT focused on motor status monitoring. It illustrates the column editing flow and demonstrates the use of Display Format overrides.

Step 1 — Insert the VAT

  1. In the project tree, expand PLC_1 > Watch and Force Tables.
  2. Double-click Add new watch table.
  3. Rename to VAT_Motor_Status.

Step 2 — Populate Rows

Insert the following symbolic addresses from the program. The Address column is auto-completed when a valid symbol is typed:


Row 1: "Motor1_RunCmd"        Format=BOOL   Modify=1
Row 2: "Motor1_Speed_act"     Format=REAL   Modify=
Row 3: "Motor1_Current"       Format=REAL   Modify=
Row 4: "Motor1_Temp"          Format=INT     Modify=
Row 5: "Motor1_FaultCode"     Format=HEX     Modify=

Step 3 — Force the Display Format

Click the Display Format cell and select the matching radix. For the FaultCode row, choosing HEX aligns with the S7 diagnostics buffer which reports fault numbers as 16-bit hex (for example, 0x7002 = over-temperature on S7-1500 motion resources).

Step 4 — Establish Online Connection

  1. Right-click VAT_Motor_Status and choose Go online > CPU_1.
  2. The Status Value column populates within the configured acquisition cycle (default 500 ms).
  3. To change the cycle, use Online > Cycle Time > 100 ms / 500 ms / 1000 ms / 5000 ms. The 100 ms option requires PG/PC interface = Ethernet TCP/IP with adequate bandwidth.

Step 5 — Modify a Value

  1. Type the new value in the Modify Value column.
  2. Click the Modify button (single-shot, one scan) or the Modify all once icon.
  3. For a latched write, select Modify all permanently; the value is re-written every CPU scan until Stop modifying is invoked.
Safety: On a S7-1500F (fail-safe) CPU, Modify all permanently on a safety tag is rejected with the diagnostic buffer entry Event ID 16#4E8F ("Modify rejected - safety address"). Convert safety values through the F-shutdown DB to avoid this error.

Alternative Diagnostic Surfaces

If the VAT column model is too restrictive for a given task, the following TIA Portal surfaces recover lost flexibility.

HMI Tag Tables

HMI Comfort Panels and WinCC RT Professional read tag lists that are stored separately in the HMI project. The HMI Tags editor allows column rearrangement, custom units, and scaling factor columns. Useful when the engineer wants both the PLC address and the engineering unit visible in one row.

Trace (S7-1500 only)

The Trace viewer (firmware V1.5+) records signals to a time-stamped buffer. It is the proper tool for trend analysis but not for live status. The trace configuration editor allows free-form column ordering within the configuration pane.

Web Server Diagnostics Pages

Standard S7-1500 Web pages expose Status of the modules, Diagnostic buffer, and user-defined WebDB variables. The user-defined pages can be authored with arbitrary column order using the User-defined Web pages editor. This is the closest equivalent to a fully customizable VAT.

Openness API / Scripted VAT Generation

For projects that need to generate hundreds of VAT rows from an Excel export, the TIA Portal Openness API (Siemens.Engineering.WatchTable) accepts a custom row list. The Openness interface does not, however, allow reordering columns; the column schema remains fixed.

Exporting, Importing, and Version Compatibility

VATs are stored as .xml inside the project archive. Export them via Right-click VAT > Export > XML. The schema is documented in the TIA Portal Openness manual.

Operation Menu Path File Format Notes
Export single VAT Right-click > Export XML (WatchTable v1) Encrypts modify values with project password.
Import VAT Right-click > Import XML (WatchTable v1) Address conflicts trigger a merge dialog.
Drag-and-drop into project Drag from Windows Explorer into Watch and Force Tables XML Multi-VAT import supported.
Compare VATs Right-click > Compare Internal diff Useful for FAT/SAT documentation.

Troubleshooting Matrix

Symptom Likely Cause Resolution
Columns cannot be reordered by drag Column drag handle disabled by design Use View > Show/Hide Columns or split-table mirror layout.
Status column shows dashes CPU in STOP, or access rights insufficient Bring CPU to RUN-P, raise protection level to Full access in CPU properties.
Modify column greyed out CPU protection level > read-only Switch to Full access or use a PG with the project password.
Status value flickers between two values Acquisition cycle too short for OPC sampling Increase cycle to 500 ms; check CPU scan time.
Symbol column blank for valid tag Tag deleted from PLC tag table after VAT was created Right-click row > Resolve symbolic names.
Modify rejected with Event ID 16#4E8F Attempting to modify a fail-safe tag Route through a non-safety shadow tag in the F-DB.
VAT file will not import into older TIA Portal Schema version mismatch Re-export from older project first; use Project > Migration.
Display Format defaults to HEX unexpectedly Address is a pointer type (P#) Manually select DEC or BOOL; pointer addresses cannot be reformatted while online.

Best Practices

  • One VAT per logical subsystem. Avoid creating a single mega-table with 200+ rows; split by machine section for readability and faster online acquisition.
  • Hide Modify Value during commissioning of safety circuits. Prevents accidental write-through to F-tag addresses.
  • Use HEX for fault-code tags. Aligns with the S7 diagnostic buffer (Event IDs 16#xxxx) so the operator reads both in the same radix.
  • Document VAT naming convention. Recommended pattern: VAT_<Area>_<Function>_<Mode>, e.g. VAT_Conveyor_Start_Read, VAT_Conveyor_Start_Write.
  • Lock the VAT after SAT. Right-click > Properties > Protection and enable the write-protection bit so junior engineers cannot modify the configuration post-handover.
  • Avoid overlapping addresses across VATs. Although TIA Portal permits the same address in multiple VATs, conflicting modify commands queue unpredictably and can produce non-deterministic I/O behavior.
  • Export the final VAT to the project archive. Preserve a snapshot in the as-built documentation so future service engineers inherit the original monitoring layout.

Verification Checklist

  1. Open the VAT in online mode and confirm the Status Value populates within one acquisition cycle.
  2. Modify a non-safety tag and confirm the value latches in the CPU.
  3. Toggle CPU to STOP and confirm the table reads correctly with stale values flagged.
  4. Export the VAT to XML and re-import into a sibling project to confirm portability.
  5. Run Project > Compile > Software (rebuild all blocks) with no warnings.
  6. Open the diagnostic buffer (Online > Diagnostic buffer) and confirm no Event IDs related to VAT modify failures.

Can I rearrange the columns in a TIA Portal VAT (Watch Table)?

No. Column order in TIA Portal VATs is fixed: Address, Symbol, Display Format, Status Value, Modify Value. Siemens does not expose a drag handle to reorder them. Use View > Show/Hide Columns to hide unwanted fields, or create a second mirrored VAT (one read-only, one write-only) and arrange the two side-by-side.

How do I hide a column in the VAT?

Right-click any column header, choose Show/Hide > Columns, and uncheck the columns you want to remove. You can also drag the column border to collapse the column to roughly 4 pixels wide if you want to keep it present for export/print purposes.

Why does the Status Value column show dashes online?

Status values appear as dashes when the CPU is in STOP, when the PG/PC does not have write/read rights to the project, or when the CPU protection level is set above the current access level. Switch the CPU to RUN-P, or raise the access level under CPU Properties > Protection & Security.

Can I modify a fail-safe (F) tag from a VAT?

No. TIA Portal rejects modifications of F-tags with diagnostic buffer Event ID 16#4E8F. Use the safety program's standard or shadow tags (F-DB outputs) and modify those instead. The F-runtime will then propagate the change according to the safety logic.

Where are VATs stored and how do I migrate them between TIA Portal versions?

VATs are stored as XML inside the project archive using the schema http://www.siemens.com/automation/Openness/SW/WatchTable/v1. They migrate automatically with the project during Project > Migrate. You can also right-click and Export a single VAT to XML and import it into another project.

Back to blog