deutschsprachige FoxPro User Group
Forum View
Home
  
  Re: kann dbf nicht öffnen ... is not a table - #22328 in section [729361]
Sec: (1) Allgemeines
Von: Michael Bickel
An: Harro Schippan
Am/Um: 13.01.2011 12:37:30 gelesen

--from Newsreader at Donnerstag, 13. Januar 2011; 12:37:30--

?... der einfachste Weg wäre eigentlich von Delphi aus.

TDBF kann das (sollte zumindest), alte einlesen, neue VFP kompatible DBF
schreiben, dann kannst Du diese weiterverarbeiten. Einziges Problem, es
fehlen Dir dann acht Felder...
Jetzt musst Du also nur 8 Felder finden, die nicht so wichtig sind

Oder halt ein Zwischenformat schreiben (XML, CSV...)

Delphi an sich hat ja eigentlich keine eigenen Formate, sondern unterstützt
nur vorhandene Formate oder DB (meines Wissens nach).
Offensichtlich gibt es halt andere erweiterte DBF Formate, ich weiß nicht
wirklich, was dBASE IV und Nachfolger so konnten.

Borland ODBC-Treiber wüßte ich nichts von, aber vielleicht irgendwas von
Dbase (bzw. Nachfolgern?)
Die BDE wird halt auch seit 10 (?) Jahren nicht mehr unterstüzt.

Viele Grüße
Michael


"Harro Schippan" schrieb im Newsbeitrag news:729360...




Hallo Harro,

mit Deiner Tabelle stimmt so Einiges nicht!

Dass die Memo-Felder 10 anstelle von 4 Byte lang sind, hast Du ja schon
herausgefunden. Hinzu kommt, dass wohl das Delphi-Programm mit der
Jahreszahl 2011 nicht umgehen kann und daraus 0x6F, Dezimal 111 macht. Der
Fehler mit der Headerlänge ist auch noch da und die Tabelle hat keine
korrekte Information über die Dateigröße.

Das größte Probleme ist jedoch die Tatsache, dass Du 262 Felder hast!! Mit
dBASE und FoxPlus oder auch VFP sollte dies eigentlich nie möglich gewesen
sein. Keine Ahnung was andere Programmiersprachen/Entwickler da herum
gewurschtelt haben. Der Fuchs wird das so jedoch nicht verarbeiten können.

Du wirst Dich wohl entscheiden müssen, ob das Delphi-Programm weiterhin tun
darf was es will, oder Du die Daten in VFP lesen und/oder bearbeiten
möchtest.

Gruß
Thomas







Hallo Thomas,
ja das ist ja Frust auf der ganzen Linie

Das mit der Jahreszahl ist wohl ok, zu dem Wert muß man 1900 dazuaddieren.
1900 + 111 = 2011 <== das ist ok.

Das eigentliche Problem sind dann wohl die 262 Felder.
Wo liegt denn die Grenze bei VFP? 254 ??

Die Delphi-Anwendung ist eine eigene Applikation und wird auch noch lange
laufen. (Buchhaltung, Warenwirtschaft)

Meine Anwendung ist Vertriebsunterstützung.
Ich möchte ein Interface zwischen beiden erstellen.
Habe das schon zigfach gemacht. Normal auch kein Problem.
Hab auch selbstbewußt gesagt: "DBF lesen, kein Problem".

Wenn man sieht, kann Delphi DBF-Dateien mit 262 Feldern verarbeiten.

Im Moment sehe ich diese Möglichkeiten:
- Ich lasse mir täglich einen Extrakt mit weniger Feldern erstellen.

- Vielleicht gibt es auch einen Borland ODBC-Treiber mit dem man diese Datei
lesen kann.

- Theoretisch könnte ich mir einen Header mit der zulässigen Anzahl von
Feldern erstellen und dann mit FREAD / FWRITE entsprechend verkürzte
Datensätze in eine neue Datei schreiben. In der Hoffnung, daß ich "hinten"
am Datensatz abschneiden kann und dort nichts steht was ich brauche.

Aber alles nicht "mal eben".

Werde alles mal "sacken" lassen.

Gruß Harro




Harro Schippan   12.01.2011 14:17
Harro Schippan  12.01.2011 15:37
Thomas Geissler  12.01.2011 16:49
Harro Schippan  12.01.2011 17:05
Thomas Geissler  12.01.2011 17:11
Michael Bickel  12.01.2011 17:05
Harro Schippan  12.01.2011 17:10
Harro Schippan  13.01.2011 08:28
tom knauf  13.01.2011 10:15
Harro Schippan  13.01.2011 09:33
Michael Bickel  13.01.2011 09:54
Thomas Geissler  13.01.2011 10:43
Michael Bickel  13.01.2011 11:11
Harro Schippan  13.01.2011 13:08
Harro Schippan  13.01.2011 12:15
Michael Bickel  13.01.2011 12:37
Harro Schippan  13.01.2011 13:36
Michael Bickel  13.01.2011 14:32
Thomas Geissler  13.01.2011 15:33
Michael Bickel  13.01.2011 15:58
Harro Schippan  13.01.2011 17:13
S.Schabbach  13.01.2011 18:46
  
zurück zum Forum