Hallo Kollegen, hallo Siemens-Mitleser
( VORBEMERKUNG)
Ich kenne das TIA-Portal noch nicht, möchte aber im Vorfeld auf einige Sachen hinweisen.
Mit der Entstehung einer neuen Programmiersoftware und einer neuen CPU-Generation könnten nun auch einige Design-Fehler behoben werden, die nach einer gewissen Zeit (nachvollziehbar) zur Systemeigenschaft mutiert sind, und dadurch unabänderbar wurden.
Es ist gut zu hören / lesen, dass die Länge der Labelnamen endlich verlängert wurde, aber es bleibt, denke ich, noch ein Problem:
VORSCHLAG:
Es sollte zwischen Netzwerk-lokalen und Baustein-globalen Labeln unterschieden werden können.
GRUND:
( Ich kopiere hier einfach mal, modifiziert, einen Vorschlag ein, den ich 2000 schon mal gemacht habe. Die Sache mit den Labelnamen ist geklärt, der Rest gilt aber immer noch.)
( Man erinnere sich in diesem Zusammenhang an die Glaubensdiskussionen der Hochsprachler in den 70/80er Jahre: 
"Sind Labels in Hochsprachen  schlechter Stil?" 
Die Step5-Entwickler hatten dieser Diskussion damals mit lokalen Labels Rechnung getragen und die damals angeführten Argumente gelten fuer uns  Halb-Assembler-Programmier nach wie vor. )
In der S5 waren die Labels Netzwerk-Lokal.
Dies hatte auch verschiedene Vorteile:
Bei Änderung musste nur eine umgrenzter Bereich (max 256 Befehle, also maximal das Netzwerk ) auf die Auswirkung der Änderung untersucht werden.
Eines der Hauptargumente der GOTO-Gegner war "Spagetti-Code".
Durch die jetzt ( Step7) bausteinweiten Labels in 64kb-Bausteinen hat sich die "Spagetti-Code"-Gefahr deutlich verschärft.
 
Ausserdem führen Netzwerk-Kopierfunktionen schnell zu fehlerhaften Sprüngen.
In dem TIA-Portal sollten deshalb folgende Verbesserungen eingebaut werden: 
- Label sind Lokal, wenn nicht als mit einem Präfix  gekennzeichnet. Dies erleichertert die Übersichtlichkeit (s.o)
- Es sollten in verschiedenen Netzwerken gleiche Labelnamen möglich sein, solange sie lokal sind. Dies ermöglicht im Netzwerk-Zusammenhang ausagefähige Namen ohne langen Info-Overhead.  ("HSK30AP001_nabb" oder "HSK30AP001_Auto" liest sich schlechter als "nabb" oder "Auto", vom Eintippen mal ganz abgesehen. )
- Sprünge, die ausserhalb des Netzwerks springen, werden ebenfalls mit einem Präfix versehen, es koennen nur Globale labels von ausserhalb des Netzwrks angesprungen werden.
( Dies hat im Uebrigen keinen Einfluss auf die SPSen. Ich weiss nicht,
ob S7-Programme mittlerweile abwaertskompatibel sind, aber auch dies
koennte realisiert werden, wenn die Praefixes nicht mit abgespeichert 
werden und nur zur Editierzeit existieren. )
z.B: 
 
------- Netzwerk n ------------------ 
     spb nabb   // lokaler Sprung 
     ....  
     spa G#ende // globaler Sprung 
 
nabb: NOP 0     // lokales Label  
------- Netzwerk n + 1 -------------- 
     spb nabb 
      
nabb: NOP  
------- Netzwerk n + m -------------- 
 
G#ende: nop 0   // Globales Label 
 
Es sollte also diesbezüglich der operative Stand der S5 (lokale Labels) und der S7 (bastein-weite Labels ) erreicht und übertroffen werden.
Gruss
Werner