Wenn du das Programm auf einen anderen DB vorbereitet hast, dann musst du aber anschließend noch alle DB-Zugriffe anpassen. Also im Grunde kannst du nichts wirklich 100% vorbereiten wie das bisher möglich war.
Das mit der Momentaufnahme ist auch nur sehr eingeschränkt nutzbar. Machst du eine Momentaufnahme und änderst etwas am DB, dann sind auch die Momentaufnahmewerte weg.
Im Grunde hast du bei "optimierten" für den Fall dass du die Aktualwerte behalten willst mehr Nachteile als Vorteile. "Optimiert" ist dort nur die Praxisuntauglichkeit.
Ich bereite ~50% aller Änderungen offline vor. Inklusive Änderungen von DBs und FBs. Ich habe keinerlei Probleme und die Zeit auf der Baustelle für die Umwege beschränken sich auf weniger als 1-2 Minuten.
Ich kann sehr wohl ohne Verluste der aktuellen Werte die Datenbausteine tauschen:
- Kopiere Deinen DB 2 mal
- Ändere am neu erstellten, also der Kopie, den Variablennamen, füge neue hinzu, füge welche ein.
- Gehe online
- Momentaufnahme des alten DB erstellen, kopieren und in die Startwerte des veränderten, darauf aufpassen das bei eingefügten oder entfernten Variablen die Struktur stimmt, entsprechend öfter kopieren bei eingefügten Variablen.
- Gehe offline
- Lösche alten DB
- Benenne geänderten so um das er anstelle des alten tritt: Umbennenen und _1 entfernen
- Gehe online
- Laden und übersetzen
- Startwerte vom 2. kopierten in den DB kopieren
- Lösche 2. Kopie
- Laden und übersetzen
Wenn die Struktur des DBs geändert wird, also neue Variablen dazwischen eingefügt werden, dann muss man mit dem kopieren der Werte eben aufpassen. Aber das war noch nie anders.
Und nein, wenn ich am DB etwas ändere dann verliere ich nicht die Momentaufnahmen, nur die aktuelle Beobachtung kann nicht fortgesetzt werden.
Und auch alle Verlinkungen im Programm werden richtig angepasst, selbst wenn der Variablenname sich ändert oder eine Variable dazwischen eingefügt wird.
Es ist also ohne Probleme, jedoch mit Umweg (der dank der sehr viel einfacheren Handhabung des TIA-Portals vs S7-Classic sehr zügig abgearbeitet werden kann) möglich DBs zu ändern. Selbst bei IDBs kann ein leicht abgewandeltes Vorgehen gewählt werden.
Die Option Speicherreserve/Laden ohne Reinitialisierung ist gedacht um bei der Inbetriebnahme/Online etwas hinzuzufügen. Das funktioniert einwandfrei.
Wenn man aber grundlegend die Struktur oder Namen ändern will, dann muss eben darauf geachtet werden was man tut. Doch es ist möglich, und durch ein übersichtlicheres Projektfenster natürlich leichter und angenehmer als mit S7-Classic.