appen from DATEI.TXT sdf
Moderator: Moderatoren
appen from DATEI.TXT sdf
Bin nach zwei Tagen xbase auf ein Problem gestoßen mit dem ich trotz lesen des entsprechenden Beitrages von 2005 nicht fertig werde.
use DATEN
copy stru to HILFSDAT
use HILFSDAT new
append from DATEI.TXT sdf
Bringt nen fetten Fehler, weil DATEI.TXT und die Struktur von DATEN.DBF nicht übereinstimmen.
Bekanntes Problem, da gibt es im Forum einen link auf SDFDEL.ZIP,
runtergeladen,
SDF.CH ins include Verzeichnis,
ins Programm #include "SDF.CH" eingetragen,
compiliert,
und beim linken kommt dann die Meldung:
unresolved external symbol _XDBEXPORT
unresolved external symbol _XDBIMPORT
Was nun ? Vielleicht weils von 2003 ist ?
Und bitte für Anfänger !
Wie ich es mit binärem lesen lösen könnte, ist mir klar, aber ich möchte das Rad nicht neu erfinden müssen. Und ich bin faul.
Matthias Fischer
use DATEN
copy stru to HILFSDAT
use HILFSDAT new
append from DATEI.TXT sdf
Bringt nen fetten Fehler, weil DATEI.TXT und die Struktur von DATEN.DBF nicht übereinstimmen.
Bekanntes Problem, da gibt es im Forum einen link auf SDFDEL.ZIP,
runtergeladen,
SDF.CH ins include Verzeichnis,
ins Programm #include "SDF.CH" eingetragen,
compiliert,
und beim linken kommt dann die Meldung:
unresolved external symbol _XDBEXPORT
unresolved external symbol _XDBIMPORT
Was nun ? Vielleicht weils von 2003 ist ?
Und bitte für Anfänger !
Wie ich es mit binärem lesen lösen könnte, ist mir klar, aber ich möchte das Rad nicht neu erfinden müssen. Und ich bin faul.
Matthias Fischer
- brandelh
- Foren-Moderator
- Beiträge: 15697
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 66 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Hi,
mit der habe ich nie gearbeitet, aber die Meldung sagt eindeutig, dass ihm eine LIB oder eine OBJ Datei fehlt. Hast du PBUILD /G aufgerufen, nachdem du den include Befehl eingetragen hattest (bei VX geht es anders ...) ?
Braucht man für diesen Befehl eine neue DLL oder eine zusätzliche PRG Datei ? Beides muss man in der Projekt-Datei einbinden. Die DLL könnte man auch über PRAGMA in der PRG neben dem include definieren, aber immer nach solchen Änderungen PBUILD /G aufgerufen.
PS:
Xbase++ nimmt es übel, wenn die SDF Datei nicht wirklich eine feste Satzlänge hat.
mit der habe ich nie gearbeitet, aber die Meldung sagt eindeutig, dass ihm eine LIB oder eine OBJ Datei fehlt. Hast du PBUILD /G aufgerufen, nachdem du den include Befehl eingetragen hattest (bei VX geht es anders ...) ?
Braucht man für diesen Befehl eine neue DLL oder eine zusätzliche PRG Datei ? Beides muss man in der Projekt-Datei einbinden. Die DLL könnte man auch über PRAGMA in der PRG neben dem include definieren, aber immer nach solchen Änderungen PBUILD /G aufgerufen.
PS:
Xbase++ nimmt es übel, wenn die SDF Datei nicht wirklich eine feste Satzlänge hat.
Gruß
Hubert
Hubert
- Rolf Ramacher
- Der Entwickler von "Deep Thought"
- Beiträge: 1930
- Registriert: Do, 09. Nov 2006 10:33
- Wohnort: Bergheim
- Danksagung erhalten: 3 Mal
- Kontaktdaten:
Das geht ja fix hier. Ihr habt mich aber weit hinter Euch gelassen.
@rolf: Wieso Datenbanktreiber, wieso laden, ich habe hier ganz normale *.DBF und *.NTX Dateien ? Dann bin ich nicht mehr clipper kompatibel und das trau ich mich noch nicht, weil ich mich momentan noch von Fehler zu Fehler vorhangele. Ich kenne via nur aus dem Zusammenhang mit use.
@hubert: Habe das SDF.OBJ aus der SDFDEL.ZIP ins lib Verzeichnis geschoben und mit meinen Objekten verlinkt, keine Fehlermeldungen und läuft. Kapiert wieso habe ich allerdings nicht. Kann mir das jemand erklären ? Ich schaue wie Schwein in Uhrwerk.
Die vollmundige Aussage "funktioniert dann wie clipper" stimmt übrigens nicht. clipper nimmt auch nur chr(10) am Zeilenende und sowas habe ich hier, habe ich aber nie bemerkt, weils ja lief. Datei kommt von Unix, also bringt unixtodos abhilfe. Dann sind die geforderten chr(13) + chr(10) beisammen.
@rolf: Wieso Datenbanktreiber, wieso laden, ich habe hier ganz normale *.DBF und *.NTX Dateien ? Dann bin ich nicht mehr clipper kompatibel und das trau ich mich noch nicht, weil ich mich momentan noch von Fehler zu Fehler vorhangele. Ich kenne via nur aus dem Zusammenhang mit use.
@hubert: Habe das SDF.OBJ aus der SDFDEL.ZIP ins lib Verzeichnis geschoben und mit meinen Objekten verlinkt, keine Fehlermeldungen und läuft. Kapiert wieso habe ich allerdings nicht. Kann mir das jemand erklären ? Ich schaue wie Schwein in Uhrwerk.
Die vollmundige Aussage "funktioniert dann wie clipper" stimmt übrigens nicht. clipper nimmt auch nur chr(10) am Zeilenende und sowas habe ich hier, habe ich aber nie bemerkt, weils ja lief. Datei kommt von Unix, also bringt unixtodos abhilfe. Dann sind die geforderten chr(13) + chr(10) beisammen.
Gruß Matthias Fischer
- Manfred
- Foren-Administrator
- Beiträge: 21200
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Hi Matthias,
nur so als Einwurf, Du kannst nahezu wild mischen. Du must nur eben per VIA sagen, welchen Treiber Du benutzen willst.
Es geht Rolf wohl darum zu wissen, ob Du den SDF Treiber für die Textdatei eingebunden hast
nur so als Einwurf, Du kannst nahezu wild mischen. Du must nur eben per VIA sagen, welchen Treiber Du benutzen willst.
Es geht Rolf wohl darum zu wissen, ob Du den SDF Treiber für die Textdatei eingebunden hast
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- Jan
- Marvin
- Beiträge: 14658
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Manfred,
ich glaube Matthias hat noch nicht gemerkt, daß er eben DOCH einen Datenbanktreiber benutzt. Weil der eben in der Standard-DBESys drin steht. Und weil das standardmäßig die DBFNTX ist, damit Clipper-Kompatibel ist. Xbase++ ist in der Beziehung eben einfach super genial.
Matthias: Das ist ja das schöne an Xbase++. Man kann Clipper-Kompatibel bleiben, wenn man möchte. Und wenn man einfach einen anderen Treiber einbaut, dann kann man auch alles andere machen. Z. B. auch eine sdf als Datenbank einbinden. Das war das, was Rolf meinte. Du lädtst einfach beide Trieber, und kannst dann Daten zwischen beiden Systemen hin- und herschieben.
Jan
ich glaube Matthias hat noch nicht gemerkt, daß er eben DOCH einen Datenbanktreiber benutzt. Weil der eben in der Standard-DBESys drin steht. Und weil das standardmäßig die DBFNTX ist, damit Clipper-Kompatibel ist. Xbase++ ist in der Beziehung eben einfach super genial.
Matthias: Das ist ja das schöne an Xbase++. Man kann Clipper-Kompatibel bleiben, wenn man möchte. Und wenn man einfach einen anderen Treiber einbaut, dann kann man auch alles andere machen. Z. B. auch eine sdf als Datenbank einbinden. Das war das, was Rolf meinte. Du lädtst einfach beide Trieber, und kannst dann Daten zwischen beiden Systemen hin- und herschieben.
Jan
- brandelh
- Foren-Moderator
- Beiträge: 15697
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 66 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Hi,
nein, er hat keinen Dateitreiber aktiviert, sondern nutzt append from SDF.
Das das bei Xbase++ dabei ist, ist aber nicht zu Clipper kompatibel, da Clipper mit allem zurechtkommt was als Text in einer Zeile liegt (Satzlänge nahezu egal), Xbase++ aber eine Definitionsdatei braucht und auch nur gleiche Satzlängen verarbeiten kann.
Dann hat er wohl die Verbesserung von Alaska geladen und eingebunden um immer noch append from zu nutzen.
Die SDFDBE würde aber das Öffnen der Textdatei wie eine DBF ermöglichen, was laut hier veröffentichten Berichten sehr einfach sein soll, habe ich aber auch noch nicht gemacht.
Ich lade solche Dateien immer in den RAM und zerhacke dann in passende Stücke, das ist aber mehr Arbeit und nicht immer einfach
nein, er hat keinen Dateitreiber aktiviert, sondern nutzt append from SDF.
Das das bei Xbase++ dabei ist, ist aber nicht zu Clipper kompatibel, da Clipper mit allem zurechtkommt was als Text in einer Zeile liegt (Satzlänge nahezu egal), Xbase++ aber eine Definitionsdatei braucht und auch nur gleiche Satzlängen verarbeiten kann.
Dann hat er wohl die Verbesserung von Alaska geladen und eingebunden um immer noch append from zu nutzen.
Die SDFDBE würde aber das Öffnen der Textdatei wie eine DBF ermöglichen, was laut hier veröffentichten Berichten sehr einfach sein soll, habe ich aber auch noch nicht gemacht.
Ich lade solche Dateien immer in den RAM und zerhacke dann in passende Stücke, das ist aber mehr Arbeit und nicht immer einfach
Gruß
Hubert
Hubert
- Manfred
- Foren-Administrator
- Beiträge: 21200
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Hi Hubert,
also pauschal gesagt: Das ist genial einfach. Es muß nur halt vorher angegeben werden, was man für Feldtypen erwartet. Wenn man aber alles als "C" angibt und dann selbst umwandelt, dann kann mehr oder weniger kommen was will.
also pauschal gesagt: Das ist genial einfach. Es muß nur halt vorher angegeben werden, was man für Feldtypen erwartet. Wenn man aber alles als "C" angibt und dann selbst umwandelt, dann kann mehr oder weniger kommen was will.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- andreas
- Der Entwickler von "Deep Thought"
- Beiträge: 1902
- Registriert: Mi, 28. Sep 2005 10:53
- Wohnort: Osnabrück
- Hat sich bedankt: 4 Mal
- Kontaktdaten:
Hallo Matthias,
versuch mal mit DELDBE, wenn du diese zur Verfügung hast. Da kannst du mehr einstellen.
Oder du muss für SDFDBE eine Struktur-Datei anlegen.
z.B.
Sonst ist es in der Hilfe gut beschrieben.
versuch mal mit DELDBE, wenn du diese zur Verfügung hast. Da kannst du mehr einstellen.
Oder du muss für SDFDBE eine Struktur-Datei anlegen.
z.B.
Code: Alles auswählen
[INFO]
file=TEST.TXT
fieldcount=4
recsize=27
reccount=10
[FIELDS]
ZEICHEN=C,10,0
DATUM=D,8,0
LOGISCH=L,1,0
NUMERISCH=N,6,2
[END]
- brandelh
- Foren-Moderator
- Beiträge: 15697
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 66 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Hi,
ich habe gerade eines meiner älteren Umwandlungsprogramme mit Xbase++ compiliert und dabei festgestellt, dass die SDF Datei scheinbar automatisch generiert wird (???) - zumindest finde ich nichts in meinem Quellcode ...
Und nach dem APPEND ... SDF doch glatt 220 von 20000 Datensätzen fehlen .... warum und welche weiß ich jetzt gar nicht - sind schwer zu finden.
ALSO ICH LASS DIE FINGER VON APPEND ... SDF WEG !
ich habe gerade eines meiner älteren Umwandlungsprogramme mit Xbase++ compiliert und dabei festgestellt, dass die SDF Datei scheinbar automatisch generiert wird (???) - zumindest finde ich nichts in meinem Quellcode ...
Und nach dem APPEND ... SDF doch glatt 220 von 20000 Datensätzen fehlen .... warum und welche weiß ich jetzt gar nicht - sind schwer zu finden.
ALSO ICH LASS DIE FINGER VON APPEND ... SDF WEG !
Gruß
Hubert
Hubert