Technical data
Defining Symbols
8.6 Entering Shared Symbols
Programming with STEP 7
208 Manual, 05/2010, A5E02789666-01
8.6.4 Using Upper and Lower Case for Symbols
No Distinction between Upper and Lower Case Characters
Previously it was possible to define symbols in STEP 7 which differed from one another only in the
case used for individual characters. This was changed in STEP 7, V4.02. It is now no longer
possible to distinguish between symbols on the basis of the case used.
This change was made in response to the wishes of our customers, and will greatly reduce the risk
of errors occurring in a program. The restrictions which have been made to the symbol definition
also support the aims of the PLCopen forum to define a standard for transferable programs.
Symbol definition based solely on a distinction between upper and lower case characters is now no
longer supported. Previously, for example, the following definition was possible in the symbol table:
Motor1 = I 0.0
motor1 = I 1.0
The symbols were distinguished on the basis of the case used for the first letter. This type of
differentiation carries with it a significant risk of confusion. The new definition eliminates this
possible source of errors.
Effects on Existing Programs
If you have been using this criterion to distinguish between different symbols you may experience
difficulties with the new definition if:
• Symbols differ from one another only in their use of upper and lower case characters
• Parameters differ from one another only in their use of upper and lower case characters
• Symbols differ from parameters only in their use of upper and lower case characters
All three of these conflicts can, however, be analyzed and resolved as described below.
Symbols which Differ from One Another Only in their Use of Upper and Lower Case Characters
Conflict:
If the symbol table has not yet been edited with the current version of the software, the first of the
non-unique symbols in the table is used when source files are compiled.
If the symbol table has already been edited, such symbols are invalid; this means that the symbols
are not displayed when blocks are opened and source files containing these symbols can no longer
be compiled without errors.
Remedy:
Check your symbol table for conflicts by opening the table and saving it again. This action enables
the non-unique symbols to be recognized. You can then display the non-unique symbols using the
filter "Non-Unique Symbols" and correct them. You should also correct any source files which
contain conflicts. You do not need to make any further changes to the blocks, as the current (now
conflict-free) version of the symbol table is automatically used or displayed when a block is opened.