PDA

View Full Version : dBase Ausgabe



edig
05-02-07, 09:02
Hallo Forum,

gibt es eine Möglichkeit Daten aus der DB2/400 in eine dBase zu schreiben?

Vielen Dank!

Fuerchau
05-02-07, 10:38
Eindeutig Jein !
Von der AS/400 aus nicht, aber mittels PC-Programm kannst du die Daten mittels ODBC aus der AS/400 lesen und in dbase schreiben.

BenderD
05-02-07, 10:46
Hallo,

naja mit einem tiefen Griff in die Trickkiste schon.
- Ausgabe in Streamfile
- DBase Header vorneweg erzeugen
- Daten dahinter (mit ein wenig Konvertierung)
- Satzanzahl in DBase Header korrigieren
- das ganze in einem Samba share
fragt sich wieviel Aufwand man treiben mag.

mfg

Dieter Bender

<edit> PS: oder halt per Java und JDBC

Eindeutig Jein !
Von der AS/400 aus nicht, aber mittels PC-Programm kannst du die Daten mittels ODBC aus der AS/400 lesen und in dbase schreiben.

wwg
05-02-07, 14:55
Hallo,



- DBase Header vorneweg erzeugen
- Daten dahinter (mit ein wenig Konvertierung)
- Satzanzahl in DBase Header korrigieren

Oder man bestimmt die Satzanzahl vorher und schreibt dann in einem Rutsch.

mfg

Werner Grzemba.

BenderD
05-02-07, 15:44
... dann kriegt der dBase den Husten, wenn er drauf zugreift!


Hallo,


Oder man bestimmt die Satzanzahl vorher und schreibt dann in einem Rutsch.

mfg

Werner Grzemba.

wwg
05-02-07, 20:05
Huh...

das läuft hier seit 1994, und bisher hat noch nie etwas gehustet.

Kann natürlich sein, daß es daran lag, daß während des Laufes keine Sätze hinzufügt oder gelöscht wurden. Das waren meistens Übertragungen von durch Queries oder durch Anwenderprogramme erzeugten temporären Dateien, und da ändert sich die Satzanzahl nicht mehr.

Ich werde mal ausprobieren, was passiert, wenn mehr Datensätze als im Header angegeben übertragen werden - daß dürfte keine Probleme machen - oder wenn während des Laufes Sätze gelöscht wurden (dann sagt man einfach, es liegt am Windows, und startet das Programm neu - und plötzlich geht alles).

Danke für den Tip!

Werner Grzemba.

BenderD
06-02-07, 08:20
Hallo,

das ist bei mir alles 'ne Weile her...
soweit ich mich erinnere, richtet sich dBase nach dem Header; sprich: wenn mehr Sätze da sind als der Header behauptet, dann sieht dBase die noch nicht; wenn der Header mehr Sätze behauptet als da sind, dann kann es richtig in den Wald gehen, da die Dateigrößen von Windows nicht verlässlich sind (werden erst beim close geschrieben).

mfg

Dieter Bender


Huh...

das läuft hier seit 1994, und bisher hat noch nie etwas gehustet.

Kann natürlich sein, daß es daran lag, daß während des Laufes keine Sätze hinzufügt oder gelöscht wurden. Das waren meistens Übertragungen von durch Queries oder durch Anwenderprogramme erzeugten temporären Dateien, und da ändert sich die Satzanzahl nicht mehr.

Ich werde mal ausprobieren, was passiert, wenn mehr Datensätze als im Header angegeben übertragen werden - daß dürfte keine Probleme machen - oder wenn während des Laufes Sätze gelöscht wurden (dann sagt man einfach, es liegt am Windows, und startet das Programm neu - und plötzlich geht alles).

Danke für den Tip!

Werner Grzemba.

wwg
06-02-07, 18:44
Hallo,


das ist bei mir alles 'ne Weile her...

bei mir auch; das war vor über 12 Jahren im Wesentlichen eine Einarbeitung in API-Programmierung und User-Spaces (unter COBOL) für mich. Läuft aber immer noch.

Das wird hier jetzt etwas off-topic, aber ich habe mal ausprobiert, was heutzutage bei fehlerhaftem Header passiert:
Wenn mehr Sätze im Header angegeben sind als vorhanden, füllt OpenOffice bis zur angegebenen Anzahl mit dem letzten gelesenen Satz auf.

mfg
Werner Grzemba.