Hallo,

es geht um zwei Dinge:
die sogenannten technischen Umwandlungen sind mit oder ohne Source Control ein einziger Wackelhaufen. Nur mal ein Beispiel (aus leidvoller Praxis) herausgegriffen - ein hinzugefügtes Feld ist gleichnamig mit einem in einem der Programme verwendeten Feld; das hat zur Folge, dass die Umwandlung gelingt und Inhalte im Programm ungewollt überknüppelt werden. Sowas tun sich nur wahnwitzige an; mal ganz abgesehen davon, dass eine Erweiterung einer wichtigen Stammdatei fast die gesamte Anwendung hinterherzieht, das ist vom Aufwand alles andere als trivial, selbst wenn ich nur eine Installation habe.

Der zweite Punkt ist, dass die phyische Form der Speicherung in den Programmen nix verloren hat, deshalb verwendet man nämlich gerade ein relationales Datenbanksystem!

Nebenbei bemerkt gibt es auch mit Rekord Löffel Exzess keinen Grund die physische Datei in irgendeinem Programm zu verwenden und DDS erzwingt keineswegs komplette Satzformate einer physischen Datei zu verwenden und bei dieser Vorgehensweise merkt kein einziges Programm wenn ich einer PF ein Feld hinzufüge, da brauchts keine Rucksäcke!

Die angeführte Query Problematik wird ebenfalls ausgeschlossen, wenn man in den Queries ausschließlich LFs verwendet.

mfg

Dieter Bender


Zitat Zitat von Fuerchau
Klar kann ich solche Problem immer mit einem anständigen Source-Control-System verfolgen (da gibts auch mehrere).
Aber leider hilft auch dies nicht immer, insbesonders wenn noch zusätzliche Fremdprodukte auf gemeinsame Dateien zugreifen, die ich in mein SCS nicht unterkriege.

Ich kann da nur Dieter zustimmen:
Vorher Gedanken über die Datenbank machen und bei der Programmierung darauf achten.
Verwendet man kein SQL muss man eben neue Felder in eigenen Tabellen unterbringen (früher nannte man das Rucksack-Dateien) wenn man nicht ALLE betroffenen Programm neu erstellen kann.

Übrigens:
Bis V4R5 hatte auch Query/400 LVLCHK-Fehler bei geänderten Dateien.
Seit V5 prüft Query/400 nun mit SQL und meldet nur noch dann Fehler, wenn er Felder nicht mehr findet bzw. die Attribute nicht mehr kompatibel sind.