Resolving Disabled Operator Level Authorization Attributes on CFC Block Pins in PCS 7
In SIMATIC PCS 7 Continuous Function Chart (CFC), the Operator Level Authorization field (Op_Level) on block I/O properties remains grayed out and disabled when attribute syntax violates case-sensitivity rules or when prerequisite WinCC compile tags are missing. Enabling the field requires assigning the exact case-sensitive attribute 'Op_Level' (not 'OP_Level') to the parameter, verifying that attribute 'S7_m_c = true' is assigned to the pin, and ensuring the enclosing block header also asserts 'S7_m_c = true'.
Table of Contents
- Role of Op_Level and S7_m_c Attributes in PCS 7 Engineering
- The Strict Case-Sensitivity Rule: Op_Level vs. OP_Level
- Prerequisite Attribute Chain: Pin S7_m_c and Block Header S7_m_c
- Step-by-Step Procedure to Enable and Configure Operator Authorizations in SCL/CFC
- Verification
- Limitations and Operational Precautions
- Engineer FAQ
- Technical References
- Related Articles
- Related Tags
Role of Op_Level and S7_m_c Attributes in PCS 7 Engineering
SIMATIC PCS 7 integrates controller logic with the WinCC supervisory layer through technological system attributes declared in STEP 7 block interfaces (SCL or LAD/FBD):
* S7_m_c (Message and Control): Dictates whether a block instance or specific block I/O pin is transferred into WinCC Tag Management during AS-OS compilation.
* Op_Level (Operator Level Authorization): Specifies the required operator privilege level (e.g., Level 5 Process Controlling, Level 6 Higher Process Controlling) required to modify that parameter from WinCC faceplates.
* In CFC, double-clicking a block pin opens the Properties - Input/Output dialog, where engineers can customize the Operator Level Authorization. When this field is disabled (grayed out), the parameter cannot be assigned user-specific security rights.
The Strict Case-Sensitivity Rule: Op_Level vs. OP_Level
The CFC compiler and dialog parser adhere strictly to case-sensitive identifier evaluation for system attributes:
* Declaring the attribute as OP_Level, op_level, or OP_LEVEL is rejected by the internal parser. The compiler treats the entry as an arbitrary custom string rather than the recognized system attribute.
* The required exact case syntax is:
$$\mathbf{Op_Level}$$
* Correcting OP_Level to Op_Level immediately enables the Operator Level Authorization drop-down list in the CFC block pin properties dialog.
Prerequisite Attribute Chain: Pin S7_m_c and Block Header S7_m_c
Even with correct capitalization, Op_Level remains disabled if the parameter is not authorized for WinCC communication:
1. Block Header Requirement: The function block header must declare S7_m_c := 'true'. Without this, the entire block is excluded from WinCC data exchange.
2. Parameter Pin Requirement: The specific input or output pin must declare S7_m_c := 'true'. If the pin is internal to the AS, operator level security does not apply, and CFC grays out the field.
3. Both conditions must be satisfied concurrently:
scl
FUNCTION_BLOCK FB_CustomControl
{ S7_m_c := 'true' }
VAR_INPUT
SP_Ext { S7_m_c := 'true'; Op_Level := '1' } : REAL; // Field Enabled
InternalParam { S7_m_c := 'false' } : REAL; // Field Disabled
END_VAR
Step-by-Step Procedure to Enable and Configure Operator Authorizations in SCL/CFC
To restore and configure operator authorization levels:
1. Open SCL Source File: In SIMATIC Manager, locate the SCL source file generating the function block.
2. Inspect Block Header: Verify that { S7_m_c := 'true' } appears immediately after the block declaration.
3. Inspect Pin Declaration: Locate the target parameter under VAR_INPUT or VAR_OUTPUT.
4. Apply Correct Syntax:
scl
SetPoint { S7_m_c := 'true'; Op_Level := '1' } : REAL;
5. Compile SCL Source: Compile the source (File -> Compile). Confirm that compilation succeeds with 0 errors.
6. Update Master Data Library and Charts:
* In SIMATIC Manager, copy the updated FB to the Master Data Library.
* Execute Options -> Charts -> Update Block Types... across all project charts.
7. Verify in CFC: Open the chart, double-click the block pin: confirm that the Operator Level Authorization field is active and allows selecting authorization levels 1 through 10.
Verification
- In CFC, open the block pin properties dialog: confirm that the Operator Level Authorization field is editable.
- Select an authorization level (e.g., Level 6: Higher Process Controlling) and click OK.
- Execute an AS-OS compilation (Changes Only).
- In WinCC OS runtime, log in with an operator account possessing only Level 5 privileges: confirm that the parameter input field on the faceplate is locked/disabled.
- Log in with a supervisor account possessing Level 6 privileges: confirm that the input field enables and accepts setpoint commands.
Limitations and Operational Precautions
- Modifying block attributes in SCL changes the block interface signature; execute Update Block Types to prevent compilation mismatch errors.
- Avoid assigning excessively high authorization levels to daily operating parameters; align security levels with your plant's standard operating procedures.
- Attribute names inside curly braces
{ ... }must not contain unquoted spaces or invalid syntax.
Engineer FAQ
- What causes the Operator Level Authorization field to be disabled in CFC?
Incorrect capitalization (e.g., OP_Level instead of Op_Level) or missingS7_m_c := 'true'attributes. - Is the Op_Level attribute case-sensitive?
Yes, the CFC parser requires exact camel-case capitalization:Op_Level. - Can Op_Level be configured if S7_m_c is set to false?
No, operator authorizations apply strictly to variables exposed to WinCC; non-OS variables have the field permanently disabled. - What authorization level corresponds to standard process operation in PCS 7?
Authorization Level 5 (Process Controlling) is standard for routine operator changes. - What authorization level corresponds to supervisor or engineering changes?
Authorization Level 6 (Higher Process Controlling) or customized higher levels (e.g., Level 1100). - Where are user authorizations configured on the WinCC OS?
In the WinCC User Administrator editor on the Engineering Station / OS Server. - Can I change the Op_Level attribute directly in CFC without modifying SCL?
Yes, once enabled by correct SCL syntax, the numerical authorization level can be customized per instance in CFC pin properties. - Does modifying Op_Level require an AS-OS compilation?
Yes, authorization mappings are compiled into the WinCC tag dictionary and faceplate properties during OS compilation. - What happens if a parameter has S7_m_c = true but no Op_Level defined?
The parameter defaults to the standard authorization level defined by the block type (typically Level 5 or Level 1). - Can output pins have operator level authorizations?
Only output pins that are configured for operator monitoring or manual override support operator authorization settings.
Technical References
- SIMATIC PCS 7 CFC for S7 / PCS 7 Manual (V9.0 / V9.1)
- SIMATIC S7-SCL V5.6 for S7-300/400 Manual
- Siemens Industry Online Support Entry: Op_Level and S7_m_c Attributes (Entry ID 299451)
- SIMATIC HMI WinCC V7.5 User Administrator System Manual
Related Articles
- Extracting Substring Characters and Linking Dynamic Text Signals Between WinCC OS and AS
- Configuring Mass Digital Input State Alarms in SIMATIC PCS 7 Without OS Compile Overwrites
Related Tags
PCS 7, CFC, SCL, Attributes, Op_Level, S7_m_c, Authorization, WinCC, Security, User Administrator