1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77
| unit Unit1;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs,
Db, Dbf, Dbf_Common, DBGrids;
type
{ TMain }
TMain = class(TForm)
Datasource1: TDatasource;
DBGrid1: TDBGrid;
procedure FormCreate(Sender: TObject);
private
{ private declarations }
public
{ public declarations }
end;
var
Main: TMain;
MyDbf: TDbf;
Source: String;
implementation
{ TMain }
procedure TMain.FormCreate(Sender: TObject);
begin
Source := ExtractFilePath(Application.Name);
MyDbf := Tdbf.Create(nil);
if not DirectoryExists(Source + 'data') then
if not CreateDir(Source + 'data') then
raise Exception.Create('Impossible de créer le répertoire pour la base de donnéé');
if not FileExists(Source + 'data\base.dbf') then
begin
MyDbf.FilePath := Source + 'data';
MyDbf.Active := False;
MyDbf.TableLevel := 7;
MyDbf.Exclusive := True;
MyDbf.TableName := 'base.dbf';
With MyDbf.FieldDefs do begin
Add('Titre', ftString, 50, True);
Add('SousTitre', ftString, 50, True);
Add('Auteur', ftString, 30, True);
Add('Editeur', ftString, 30, True);
Add('Genre', ftString, 30, True);
Add('ISBN', ftString, 10, True);
Add('Resume', ftMemo, 255, True);
Add('Commentaires', ftMemo, 255, True);
End;
MyDbf.CreateTable;
DataSource1.DataSet := MyDbf;
MyDbf.Open;
end
else
begin
MyDbf.FilePath := Source + 'data';
MyDbf.Active := False;
MyDbf.TableLevel := 7;
MyDbf.Exclusive := True;
MyDbf.TableName := 'base.dbf';
DataSource1.DataSet := MyDbf;
MyDbf.Open;
end;
end;
initialization
{$I Unit1.lrs}
end. |
Partager