Delphi-PRAXiS
Seite 2 von 4     12 34      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi dBase-Datenbanken mit Topaz-Erweiterung (https://www.delphipraxis.net/151524-dbase-datenbanken-mit-topaz-erweiterung.html)

FriendOfDelphi 25. Mai 2010 16:08

Re: dBase-Datenbanken mit Topaz-Erweiterung
 
Zitat:

Zitat von hoika
Hallo,

Delphi-Quellcode:
DB: TTzVFile
Bei mir in #6 heisst das aber anders ...
wie komst du jetzt auf TTzVFile ???

Das Typ "TTzVFile" steht so im vorhandenen Quellcode, der mit den grafischen Komponenten erstellt wurde.
Da dieser fehlerfrei funktioniert, gehe ich mal davon aus, dass das so richtig ist.
Ich habe diesen daher so übernommen.
Der Compiler meckert diesen Typen auch nicht an.

Zitat:

Zitat von hoika
Zitat:

gibt es denn hier wirklich keinen Fachmann
Fachmann für DBase ???
Glaube ich nicht, dass es noch was was gibt.

Heiko

Ein Fachmann für dBase ist hier gar nicht so wichtig.
Es geht vielmehr um den Umgang mit dBase-Dateien von Delphi aus.
Wenn Du mir dafür einen Beispiel-Quellcode mit den grundsätzlichen Zugriffen wie Öffnen, Editieren, Schreiben posten kannst, dann hilft mir das schon weiter.

mkinzler 25. Mai 2010 16:10

Re: dBase-Datenbanken mit Topaz-Erweiterung
 
dBase ist schon längst veraltet. Wenn du dein Programm schon umbaust, nimm lieber ein aktuelles DBMS. Hierfür findest du auch fachleute, die dir dann helfen können.

FriendOfDelphi 25. Mai 2010 16:48

Re: dBase-Datenbanken mit Topaz-Erweiterung
 
Zitat:

Zitat von mkinzler
dBase ist schon längst veraltet. Wenn du dein Programm schon umbaust, nimm lieber ein aktuelles DBMS. Hierfür findest du auch fachleute, die dir dann helfen können.

Grundsätzlich würde ich Dir da zustimmen.
Nur:
- das Programm läuft in einer Umgebung zusammen mit anderen Programmen, die ebenfalls auf diese dBase-Datei zugreifen.
- so antiquiert dBase-Dateien auch sein mögen; sie lassen sich (fast) mit einem einfachen Doppelklick in Excel laden.
Das sind die Gründe.

hoika 25. Mai 2010 17:02

Re: dBase-Datenbanken mit Topaz-Erweiterung
 
Hallo,

Zitat:

Es geht vielmehr um den Umgang mit dBase-Dateien von Delphi aus.
Wenn Du mir dafür einen Beispiel-Quellcode mit den grundsätzlichen Zugriffen wie Öffnen, Editieren, Schreiben posten kannst, dann hilft mir das schon weiter.
Nun ja, wenn du hier nach TDbf suchst,
hatte ch auch ein paar Bsp.-e drin gehabt.


Heiko

exilant 25. Mai 2010 18:20

Re: dBase-Datenbanken mit Topaz-Erweiterung
 
Zitat:

Zitat von FriendOfDelphi

- so antiquiert dBase-Dateien auch sein mögen; sie lassen sich (fast) mit einem einfachen Doppelklick in Excel laden.

Mir würde es den Schweiss auf die Stirn treiben wenn ein Anwender mal eben eine Tabelle aus einer Datenbank in Excel
öffnen und auch noch zurückschreiben könnte...
Solche Anforderungen löst man mit entsprechenden Exportfunktionen. Eine Routine zu schreiben die den Inhalt eines beliebigen Querys/Datasets in eine CSV Datei ausgibt (kann von Excel genauso einfach geöffnet werden) ist ein triviales Unterfangen.
Die Nachteile von DBFs sind dagegen enorm. Alles hat/hatte seine Zeit. Die von DBF ist vorbei.

Alfredo 25. Mai 2010 22:46

Re: dBase-Datenbanken mit Topaz-Erweiterung
 
Wenn Du Hilfe möchtest, dann sage doch bitte was passiert,
wenn Du in der IDE DB.active := True setzt.

Zuerst solltest Du einfach ein Formular mit Dataset, Datasource
und Datagrid anlegen.

Besorge Dir einen Hexeditor und prüfe was im ersten Byte steht,
da dbf nicht gleich dbf ist.

Gruß
Alfred

FriendOfDelphi 26. Mai 2010 11:45

Re: dBase-Datenbanken mit Topaz-Erweiterung
 
Zitat:

Zitat von Alfredo
Wenn Du Hilfe möchtest, dann sage doch bitte was passiert,
wenn Du in der IDE DB.active := True setzt.
Alfred

Wenn ich im Quellcode nur das "DB.Open" gegen das "DB.active := True;" ergeben sich keine Änderung.
Der Compiler meldet keinen Fehler.
Wenn ich das Programm aber laufen lasse, erhalte ich dieselben Fehlermeldungen (Fehler tritt nun in der Zeile mit dem DB.active auf):
"FieldList.Count ist <=0 beim Versuch, eine Datenbank zu erzeugen"
Und nach Bestätigung des OK-Buttons:
"Im Projekt PdBase.exe ist eine Exception der Klasse Exception aufgetreten. Meldung: 'Dataset error: 1401'. Prozeß wurde angehalten. Mit Einzelne Anweisung oder Start fortsetzen."

Zitat:

Zitat von Alfredo
Zuerst solltest Du einfach ein Formular mit Dataset, Datasource
und Datagrid anlegen.
Alfred

Mit den Grafikkomponenten oder als "Runtime-Quellcode"?

Zitat:

Zitat von Alfredo
Besorge Dir einen Hexeditor und prüfe was im ersten Byte steht,
da dbf nicht gleich dbf ist.

Gruß
Alfred

Im ersten Byte steht: "03 6E 05 15 00 00 00 00"

exilant 26. Mai 2010 12:12

Re: dBase-Datenbanken mit Topaz-Erweiterung
 
Zitat:

Alfred: Im ersten Byte steht: "03 6E 05 15 00 00 00 00"
Plain dBase III, Ohne Memo (dbt), letztes Update am 21.05.2010, Tabelle enthält keine Records.

Ist das korrekt?


Edit: Dokumentation der dBase Formate

Neutral General 26. Mai 2010 12:14

Re: dBase-Datenbanken mit Topaz-Erweiterung
 
Kleine Anmerkung: Euch ist klar, dass das die ersten 8 Bytes sind? :wink:

exilant 26. Mai 2010 12:17

Re: dBase-Datenbanken mit Topaz-Erweiterung
 
Zitat:

Zitat von Neutral General
Kleine Anmerkung: Euch ist klar, dass das die ersten 8 Bytes sind? :wink:

Erbsen - Ähh - Bytezähler! :lol: :lol:


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:01 Uhr.
Seite 2 von 4     12 34      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz