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
| procedure TMain.CreationTable(NomDB: String);
begin
Table_Vide := True; // À priori la table ne contient pas d'enregistrements.
TableNouvelle := TTable.Create(Self);
TableNouvelle.TableName := NomDB;
try
try
{ Ne pas écraser une table existante }
TableNouvelle.Open; // Si elle existe, on continue ...
{ On en profite pour vérifier le nombre d'enregistrements,
cela permettra de moduler l'annonce lors du lancement de l'application.}
If TableNouvelle.RecordCount <> 0 then Table_Vide := False;
except // Sinon, on crée la table ...
with TableNouvelle do
begin
{ Le composant Table ne doit pas être actif. }
Active := False;
{ En premier, description de la table qui est déjà nommée. }
TableType := ttParadox;
{ Ensuite description des champs. }
with FieldDefs do
begin
Clear;
Add('Titre',ftString,56,False);
Add('PEA',ftBoolean,0,False);
Add('CT',ftBoolean,0,False);
Add('Radié',ftBoolean,0,False);
Add('SICOVAM',ftInteger,0,False);
Add('ISIN',ftString,12,False);
end;
{ Puis description des index. }
{ Le premier index n'a pas de nom, }
{ il s'agit d'une clé primaire Paradox. }
with IndexDefs do
begin
Clear;
Add('','Titre',[ixPrimary]);
end;
{ Appel de la méthode CreateTable pour créer réellement la table. }
CreateTable;
end;
end;
finally
TableNouvelle.Close;
TableNouvelle.Free;
end;
end; |
Partager