PDA

View Full Version : Erstelle Physische Datei



Burgy Zapp
03-04-01, 20:21
Wie der Befehl -CRTPF- allerdings wird der Datei-Inhalt über eine Zwischendatei gerettet; Sämtliche abhängigen logischen Dateien werden gelöscht und neu erstellt.

Download URL: tools/CRTPDAT.ZIP (http://www.dukeserver.de/ftp/tools/crtpdat.zip)
Größe: 8,4 kb
Ursprung: http://www.albwerk.de/fritz/as400.htm

Fuerchau
03-04-01, 23:02
Dieses Tool ist nicht mehr nötig, da mittels CHGPF und Angabe einer Quelle PF-Dateien mit Berücksichtigung sämtlicher Zugriffspfade und aktueller Daten geändert werden können.
Alternativ bietet sich auch die Möglichkeit eine SQL-Befehls ALTER TABLE.
Wer kein STRSQL hat, kann diesen Befehl in eine normale SEU-Quelle stellen und mittels RUNSQLSTM ausführen.
Viel Spaß beim Ausprobieren.
- Baldur Fürchau -

Günther
04-04-01, 11:15
Einspruch:

CHGPF funktioniert nicht immer;
RUNSQLSTM läuft nur, wenn SQL als Lizenzprogramm vorhanden ist

Gruß Günther

Fuerchau
04-04-01, 21:47
Vielen Dank für den Hinweis mit RUNSQLSTM.
Die Alternative hierzu ist eine kleine REXX-Prozedur, die ja auch SQL unterstützt und REXX steht eigentlich immer zur Verfügung.

Warum funktioniert denn CHGPF nicht immer ?

Günther
05-04-01, 11:39
CHGPF funktioniert immer, wenn ein neues Feld am Ende hinzugefügt wird;
falls aber an bisherigen Feldern Änderungen vorgenommen werden, wird es u.U. problematisch;
zumindest wenn *char in *dec geändert wird, ist CHGPF ungeeignet, in anderen Fällen bin ich mir unsicher und sollten zumindest sorgfältig geprüft werden

Gruß Günther

schreibr
05-04-01, 12:26
Dies kann ich nur bestätigen - der CHGPF funktioniert nicht, wenn sich das Attribut eines Feldes ändert. Lediglich das Löschen von Feldern sowie das Hinzufügen von Felder funktioniert problemlos.

Fuerchau
10-04-01, 11:19
Ich sehe keinen Grund darin, das Format eines Feldes grundlegend zu ändern (z.B. CHAR->DEC) da dies immer mit Datenverlust zu tun hat. Wenn lediglich die Länge eines Feldes geändert wird, funktioniert CHGPF, da ggf. nur Teilverluste auftreten.
Bei grundlegenden Formatänderungen hilft auch das obige Tool nicht, da ein CPYF mit *MAP/*DROP keine Formatänderungen durchführen kann.
In einem solchen Fall sollte man die Daten vorher retten, mittels CHGPF das Feld löschen und anschließend neu erstellen, ggf. klappt auch direktes Ändern, da die Daten aktuell nicht rettbar sind. Anschließend mit einem Programm die Daten zurückstellen, da ja das Format geändert wurde.
Als Alternative, wenn so etwas häufiger vorkommt, kann man das Tool SQLCPY ( www.fuerchau.de (http://www.fuerchau.de) ) verwenden, da hiermit eine Vielzahl von Konvertierungen durchgeführt werden können.

lorenzen
23-05-01, 17:12
Bei Nutzung einer Collection in der nur SQL-Objekte existieren, gibt es keine DDS mehr. Im as400network gibt es RTVSQLSRC und CRTSQLOBJ als Tool, mit dem man sich SQL-Scripte erstellen kann.