-
 Zitat von dschroeder
Wir haben das gleiche Problem und es folgendermaßen gelöst:
1. Definition einer externen Datenstruktur, die auf BESTELLUNG basiert.
2. Eine Alpha-Variable definieren, die immer die Länge der Datenstruktur hat und die vor der Änderung mit dem alten Datensatzinhalt gefüllt wird.
3. Vor dem Update einen Vergleich des Datensatzes mit dem gesicherten Alphafeld.
Hier der Code:
D BestellSatz E DS EXTNAME(bestellung)
D BestellKopie S like(BestellSatz)
read Bestellung // dadurch wird Struktur BestellSatz gefüllt
BestellKopie = BestellSatz // Alten Datensatzinhalt sichern
- Änderung des Datensatzes (oder auch nicht)
if BestellSatz <> BestellKopie
writeHistorie;
endif
Bei Datenstrukuränderungen (z.B. wenn in der Tabelle BESTELLUNG ein neues Feld eingefügt wird) reicht es, das Programm neu zu kompilieren, da die Alpha-Variable mit like definiert ist und damit immer die richtige Länge hat.
Bei uns klappt das Verfahren seit Jahren problemlos.
Das mit dem Trigger geht natürlich auch. Dabei hat man den Vorteil, dass alle Änderungen (z.B. auch mit SQL) die Historie fortschreiben
Gruß,
Dieter
Hallo!
Ich hab das auch schon mehrmals so gemacht, aber statt eines Alpha-Feldes eine zweite DS mit dem Schlüsselwort PREFIX verwendet. Dadurch bekommen alle Variablen-Namen ein Prefix z.B. 'H' für Hilf o.ä. vorangestellt.
Dann braucht man nicht mit qualified arbeiten und kann die DS auch mit Like definieren. Vor dem Update wird die DS1 in die DS1H gemoved und mit einem Chain der Satz aus der DB in DS1 gelesen
Der Vergleich ist dann durch ein einfaches if ds1 <> ds1h erledigt. Wenn Unterschiede herrschen, DS1H zurückmoven und damit die DB updaten.
Gruß,
Günter
Similar Threads
-
By Easyrider in forum NEWSboard Programmierung
Antworten: 5
Letzter Beitrag: 06-12-06, 07:48
-
By M.Kasper in forum IBM i Hauptforum
Antworten: 6
Letzter Beitrag: 25-08-06, 07:32
-
By JonnyRico in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 08-06-06, 08:47
-
By JonnyRico in forum NEWSboard Programmierung
Antworten: 6
Letzter Beitrag: 12-05-05, 15:46
-
By Schorsch in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 07-05-04, 11:18
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks