Zitat von
Alfredo:
Nächster Schritt:
den Tabellennamen im Objektinspector löschen
Ist erledigt.
Zitat von
Alfredo:
und im Activ-Button vor dem Active folgendes eingeben:
TzDbf2.TableName := 'Pfad\DateiName.dbf';
Das klappt nicht. Der Compiler meldet: "Undefinierter Bezeichner: 'TableName'"
Ich habe daher stattdessen folgende Eigenschaft verwendet:
TzDbf2.DbfFileName := 'Pfad\DateiName.dbf';
Ist das identisch, oder verwechsle ich hier wieder Datei und Tabelle?
Zitat von
Alfredo:
Damit bist Du in der Lage eine beliebige Datei zu öffnen und zu schliessen.
Die fest im Quellcode verankert ist. Aber das war sie ja mit der grafischen Komponete (TTzDbf) vorher auch.
Zitat von
Alfredo:
Beim Versuch eine Tabelle per Programm anzulegen bin ich auf
einen Fehler aufgelaufen und ich denke ich weiss warum Dein
Programm abstürzt. Lösung habe ich aber noch nicht.
Bitte hänge die von Dir erstellte *.dbf an den nächsten Post
mit an.
Gruß
Alfred
Das Anlegen einer dBase-Datei ist kein Problem. Das habe ich schon geschafft:
Delphi-Quellcode:
unit Ubaue_dBaseDB;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Db, tzprimds, ucommon, utzcds, utzfds, utzmds;
type
TForm1 =
class(TForm)
procedure FormCreate(Sender: TObject);
private
{ Private-Deklarationen }
dbf: TTzVFile;
public
{ Public-Deklarationen }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.FormCreate(Sender: TObject);
begin
dbf := TTzVFile.Create(Application);
{ create an instance of TTzDbf }
try
dbf.DbfFields.Clear;
{ clear the list of fields }
dbf.DbfFields.Add('
name,C,30,0');
{ add desired fields }
dbf.DbfFields.Add('
age,N,3,0');
dbf.DbfFields.Add('
amount,N,10,2');
dbf.DbfFilename := '
junk.dbf';
{specify the database name}
dbf.Active := TRUE;
{ set active to true }
dbf.WriteToDisk;
dbf.Active := FALSE;
{ we are done creating the database }
finally
dbf.Free;
{ do not forget to free the instance }
end;
end;
end.
Das ist der leicht veränderte Beispiel-Quellcode von der Topaz-Web-Seite
Topaz-FAQs.
Hier habe ich nur den Variablentyp ausgetauscht, dann wird die dBase-Datei erstellt:
VAR dbf: TTzDbf;
gegen
Delphi-Quellcode:
{ Private-Deklarationen }
dbf: TTzVFile;