Eduardo, segue uma rotina para indexar os arquivos paradox a partir de um arquivo contendo o nome do arquivo, nome do indice e uma campo lógico para indexação. Estrutura do arquivo: ARQUIVO A 20 * NOMEINDICE A 70 * INDEXAR L
Eu tenho um form com um dbgrid que utiliza este arquivo, marco os arquivos a serem indexados pelo campo lógico e executo a rotina abaixo. Vc pode enfeitar o pavão, fazendo um form mais detalhado, com botoes para atualizar o arquivo de indices, fazer um relatório pra documentar, pode fazer o que quiser. Note que o primeiro registro para cada arquivo é o indice primario, os registros seguintes para o mesmo arquivo são referentes aos indices secundarios, não tendo limites. procedure TFRMindexar.BitBtn3Click(Sender: TObject); var Warquivo: String; begin BDindices.First; while not BDindices.Eof do begin if BDindices.FieldByName('Indexar').asBoolean = True then begin Try TBLindices.TableName := BDindices.FieldByName('Arquivo').asString; TBLindices.IndexDefs.Clear; TBLindices.AddIndex(' ',BDindices.FieldByName('ChavePrimaria').asString,[ixPrimary, ixUnique]); Warquivo := BDindices.FieldByName('Arquivo').asString; BDindices.Next; if BDindices.FieldByName('Arquivo').asString = Warquivo then while (BDindices.FieldByName('Arquivo').asString = Warquivo) and (not BDindices.Eof) do begin if Length(Trim(BDindices.FieldByName('NomeIndice').asString)) > 0 then TBLindices.AddIndex('S'+IntToStr(BDindices.Recno), BDindices.FieldByName('NomeIndice').asS tring,[ixCaseInsensitive]); BDindices.Next; end; except ShowMessage('Não consegui criar indice para a tabela: ' + BDindices.FieldByName('Arquivo').asString); end; // Try end; // if end; // begin BDindices.Close; TBLindices.Close; ShowMessage('Todos os arquivos que foram marcados já estão indexados.'); Application.Terminate; end; -----Mensagem original----- De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] nome de Eduardo Silva ® Enviada em: sexta-feira, 15 de abril de 2005 14:50 Para: delphi-br@yahoogrupos.com.br Assunto: RES: [delphi-br] Problemas em Indices em Tabelas Paradox Eu uso uma rotina para recriar os índices na mão mesmo. Eu tb gosto muito do paradox, pra dizer a verdade ainda não peguei firme em outro banco, então fico fazendo as coisas no paradox mesmo. Vc poderia me explicar como é esse lance seu de colocar os indices na tabela ? Poderia me mandar as linhas pra eu ver como é ? Obrigado. -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html