Icon View Incident Report

Serious Serious
Reported By: Per
Reported On: 3/18/1999
For: Version 1.13 Build 1
# 373 Restructuring an In-Memory Table Does Not Work

Can you restructure an InMemory table ? I seem to get an error when I try to restructure an InMemory Table in order to add a new index. The error I get when trying to restructure an inmemory table is:

DBISAM Engine Error # 10022 Invalid secondary index name NEWIX specified for file test.dat

procedure TForm1.Button1Click(Sender: TObject);
begin
  with Table1 do begin
    DatabaseName:='';
    TableName:='test.dat';
    InMemory:=true;
    with FieldDefs do begin
      Clear;
      Add('RecordID',ftAutoInc,0,False);
      Add('Doknr',ftString,25,false);
      Add('Rev',ftString,3,false);
      Add('Timestamp',ftDateTime,0,false);
      Add('User',ftString,3,false);
    end;
    IndexDefs.Clear;
    IndexDefs.Add('','RecordID',[ixPrimary]);
    IndexDefs.Add('DoknumIx','Doknr;Rev',[]);
    CreateTable;
  end;

  Table1.IndexName:='DOKNUMIX';
  Table1.Open;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  Table1.Close;
  with Table1 do begin
    with RestructureFieldDefs do begin
      Clear;
      Add('RecordID',ftAutoInc,0,False,'','','','',1);
      Add('Doknr',ftString,25,false,'','','','',2);
      Add('Rev',ftString,3,false,'','','','',3);
      Add('Timestamp',ftDateTime,0,false,'','','','',4);
      Add('User',ftString,3,false,'','','','',5);
    end;
    IndexDefs.Clear;
    IndexDefs.Add('','RecordID',[ixPrimary]);
    IndexDefs.Add('DoknumIx','Doknr;Rev',[]);
    IndexDefs.Add('NEWIX','Rev;DokNr',[]);
    RestructureTable(1053,0,1,0,False,'','',512);
  end;
  Table1.IndexName:='NEWIX';
  Table1.Open;
end;



Resolution Resolution
Fixed Problem on 4/12/1999 in version 1.14 build 1
Image