-
Quellen müssen ja zur Laufzeit nicht zur Verfügung stehen.
An Stelle per Quelle und CRT-Befehl ein Objekt ständig neu zu erstellen, würde ich eher CRTDUPOBJ empfehlen.
Ausserdem generiert sich die FMT-Id aus einer Checksumme, die von der Anzahl Felder, Typ und Ausprägung sowie Reihenfolge ergibt.
Solange man also in der Quelle ausser Kommentaren nichts ändert, ändert sich auch an der FMT-ID nichts.
Ein kleiner Fehler ist da allerdings schon dabei.
Der Key einer PF/LF unterliegt nicht der FMT-ID. Ändert man also den Key, fliegt einem das Programm leider erst beim Zugriff und nicht bereits beim Open um die Ohren.
-
@Baldur: gilt nur für DDS erstellte Dateien!!!
 Zitat von Fuerchau
Ausserdem generiert sich die FMT-Id aus einer Checksumme, die von der Anzahl Felder, Typ und Ausprägung sowie Reihenfolge ergibt.
-
Auch bei TABLE's habe ich eine FMT-Id, die nach gleichen Kriterien erstellt und bei Native-Open auch geprüft wird.
Natürlich kann ich den LVLCHK auch dort abschalten.
PS:
Übrigens nicht zu verwechseln mit der "Dateiebenen-ID", die nur einen Timestamp in der Form CYYMMDDHHMMSS darstellt und nur informatorischen Wert darstellt.
-
Für SQL gibt's da wohl ein paar PTFs.
-
dann mach doch mal ein
create table hugo like myTable
und auch mal ein
create table qtemp.otto as (select * from mytable) with no data
oder ändere mal ein SQL Skript ab (sagne wir mal ein Feldname
und vielleicht auch mal ein
create view ddd as select * from mytable
und dann bin ich mal gespannt, ob du das bekommst, was du erwartest?!
Dieter Bender,
der das auch mal geglaubt hat (obwohl sein Urgroßvater bereits aus der Kirche ausgetreten ist)
Ob das ein Bug, oder ein Feature ist und ob das nur zuschlägt wenn man die SQL Möglichkeiten wirklich nutzt, das weiß ich nicht, aber seitdem mir das mal zufällig (stört nicht, weil ich durchgängig mit SQL arbeite) aufgefallen ist, ist das durchgängig so (mit mehr als 10 Group PTF Ständen unter mehreren Releases)
 Zitat von Fuerchau
Auch bei TABLE's habe ich eine FMT-Id, die nach gleichen Kriterien erstellt und bei Native-Open auch geprüft wird.
Natürlich kann ich den LVLCHK auch dort abschalten.
PS:
Übrigens nicht zu verwechseln mit der "Dateiebenen-ID", die nur einen Timestamp in der Form CYYMMDDHHMMSS darstellt und nur informatorischen Wert darstellt.
-
Ich streite ja nicht ab, dass die Berechnung der ID anders läuft.
Aber wenn Quelle und Ziel identisch bleiben, bleibt auch die ID identisch.
Ändere ich z.B. den Zielnamen, gibts (hier im Gegensatz zu DDS) auch tatsächlich eine neue ID.
Ich nehme mal an, dass SQL einfach sicherstellen will, dass die ID für das gewünschte Objekt eindeutig sein soll und nicht nur bezogen auf den Satzpuffer.
Dies hebt insbesonders den Nachteil auf, dass bei DDS-Schlüsseländerung die ID bleibt, wobei bei CREATE INDEX mit einem anderen Schlüssel auch die ID eben eine andere ist.
Ich gebe dir allerdings insoweit Recht, dass man Table-Objekte auch nur mit SQL bearbeiten sollte.
-
die Berechnung der Fromagebenen IDs in SQL ist alles ein einziger Sch... (in Worten: Sch...) nur ein paar Highlights:
Änderung eines Feldnamens (ohne sonstige Änderung) ändert die Formatebenen ID
Änderung eines Feldes im Typ ändert die Formatebenen Id einer darauf hockenden View nicht unbedingt!!!
Duplizieren einer Datei mit create table like ändert die Formatebenen Id.
Mit Schlüsseln hat das alles nix zu tun, die leigen bei SQL ohnehin völlig außerhalb dieser Logik (Constraints).
Mein Resumee (nicht nur aus diesen Gründen):
Mix aus DDS/RLA und SQL ist was für Leute, die noch Probleme suchen. Entweder reinrassig DDS/RLA oder alles mit SQL.
 Zitat von Fuerchau
Ich streite ja nicht ab, dass die Berechnung der ID anders läuft.
Aber wenn Quelle und Ziel identisch bleiben, bleibt auch die ID identisch.
Ändere ich z.B. den Zielnamen, gibts (hier im Gegensatz zu DDS) auch tatsächlich eine neue ID.
Ich nehme mal an, dass SQL einfach sicherstellen will, dass die ID für das gewünschte Objekt eindeutig sein soll und nicht nur bezogen auf den Satzpuffer.
Dies hebt insbesonders den Nachteil auf, dass bei DDS-Schlüsseländerung die ID bleibt, wobei bei CREATE INDEX mit einem anderen Schlüssel auch die ID eben eine andere ist.
Ich gebe dir allerdings insoweit Recht, dass man Table-Objekte auch nur mit SQL bearbeiten sollte.
Similar Threads
-
By mk in forum IBM i Hauptforum
Antworten: 9
Letzter Beitrag: 21-12-06, 08:56
-
By jo400 in forum IBM i Hauptforum
Antworten: 1
Letzter Beitrag: 21-10-06, 17:57
-
By deni87991 in forum IBM i Hauptforum
Antworten: 1
Letzter Beitrag: 19-10-06, 13:55
-
By jogisarge in forum NEWSboard Programmierung
Antworten: 1
Letzter Beitrag: 15-05-06, 13:47
-
By PGMR in forum NEWSboard Programmierung
Antworten: 4
Letzter Beitrag: 15-06-05, 15:37
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