Witam!
Właśnie piszę baze danych i napotkałem taki problem:
Table.DatabaseName := 'MyDatabase';
Table.TableType := ttParadox;
Table.TableName := 'MainTable';
if not Table.Exists then
begin
with Table.FieldDefs do
begin
with AddFieldDef do
begin
Name := 'Grupa'; // nazwa parametru Grupa
DataType := ftString; // typ parametru String
Required := True; // pole jest wymagane
end;
with AddFieldDef do
begin
Name := 'Podgrupa'; // nazwa parametru
DataType := ftString; // typ parametru String
Required := True; // pole jest wymagane
end;
with AddFieldDef do
begin
Name := 'Producent'; // nazwa parametru
DataType := ftString; // typ parametru string
Required := True; // pole jest wymagane
end;
with AddFieldDef do
begin
Name := 'Nazwa'; // nazwa parametru
DataType := ftString; // typ parametru
Required := True; // pole jest wymagane
end;
with AddFieldDef do
begin
Name := 'Cena'; // nazwa parametru
DataType := ftString; // typ parametru
Required := True; // pole jest wymagane
end;
with AddFieldDef do
begin
Name := 'Marża'; // nazwa parametru
DataType := ftString; // typ parametru
Required := True; // pole jest wymagane
end;
with AddFieldDef do
begin
Name := 'Kod'; // nazwa parametru
DataType := ftString; // typ parametru
Required := True; // pole jest wymagane
end;
with AddFieldDef do
begin
Name := 'Gwarancja'; // nazwa parametru
DataType := ftString; // typ parametru
Required := false; // pole jest wymagane
end;
with AddFieldDef do
begin
Name := 'Opis'; // nazwa parametru
DataType := ftString; // typ parametru
Required := true; // pole nie jest wymagane
end;
with AddFieldDef do
begin
Name := 'Stan'; // nazwa parametru
DataType := ftString; // typ parametru
Required := True; // pole jest wymagane
end;
end;
{ utwórz tabele }
Table.CreateTable;
end;
Table.Active:=true;
ShowMessage(IntToStr(max));
For i:=1 to max do
begin
Grupa := StringGrid1.Cells[0,i];
Podgrupa := StringGrid1.Cells[1,i];
Producent:= StringGrid1.Cells[2,i];
Nazwa := StringGrid1.Cells[3,i];
Cena := StringGrid1.Cells[4,i];
Marza := StringGrid1.Cells[5,i];
Kod := StringGrid1.Cells[6,i];
Gwarancja:= StringGrid1.Cells[7,i];
Opis := StringGrid1.Cells[8,i];
Stan := StringGrid1.Cells[9,i];
Table.Append;
Table.FieldValues['Grupa'] := Grupa;
Table.FieldValues['Podgrupa'] := Podgrupa;
Table.FieldValues['Producent'] := Producent;
Table.FieldValues['Nazwa'] := Nazwa;
Table.FieldValues['Cena'] := Cena;
Table.FieldValues['Marża'] := Marza;
Table.FieldValues['Kod'] := Kod;
Table.FieldValues['Gwarancja'] := Gwarancja;//w tym miejscu sie zatrzymuje
Table.FieldValues['Opis'] := Opis;
Table.FieldValues['Stan'] := Stan;
Table.Post;
end;
W string gridzie Gwarancja jest normalnym stringiem, a w tym miejscu sie zatrzymuje i wywala błąd:raised exception class EVariantError with message:Invalid variant type conversion. itd. Prosze, przeanalizujcie ten kod i podpowiedzcie mi jak mam to naprawic :/ Musze to zrobić jak najszybciej...
Z góry dziękuje za odpowiedzi!