Witam.
Mam plik .dbf i poniższą procedurą dorabiam sobie indeks , powstaje plik .mdx- tu wszystko działa ok.
procedure TForm1.Button1Click(Sender: TObject);
var
ATable: TTable;
begin
Table1.Close;
ATable := TTable.Create(nil);
with ATable do
try
TableName := 'data\artykuly.dbf';
Exclusive := TRUE;
Open;
IndexDefs.Clear;
AddIndex('Katidx','Nr_katal',[ixExpression]);
finally
ATable.Close;
Exclusive:=False;
ATable.Free;
end;
end;
Pytanie : jak po wykasowaniu pliku .mdx skasować informacje w pliku .dbf ,że .mdx istnieje.
Prościej : kasuje .mdx uruchamiam ponownie procedurę tworzenia indeksów i w linii Open wywala mi:
'...Index does not exist. File c:...\artykuly.mdx'
Podstawiam nowy plik .dbf i znów raz mogę stworzyć dla niego plik indeksowy .mdx.
Czyli w dbf jest zapisana informacja że został utworzony mdx - jak ją skasować?
Przestawienie IndexDefs.Clear przed Open nic nie zmienia.
Na formie do eksperymetów mam tylko Table1 i Button1.
Pozdrawiam i dziękuję za wszelkie sugestie.
R.J.