Oi Matheus, os arquivos de índices são exatamente para agilizar a pesquisa (com o comando SEEK). Sem eles, podemos localizar os registros de forma física (com o comando LOCATE) varrendo o arquivo todo e isso pode demorar muito tempo.
Então se você tem necessidade de procurar por:
código
nome
código de barras
Você vai precisar de 3 índices. O que é campo numérico transforme em STRING, seja com str() ou strzero()
Antonio Matheus escreveu:no mesmo campo de pesquisa.
Mas creio que pelo que você diz, você quer pesquisar tudo isso na mesma pesquisa. Só tem um porém. Com o código, você obtém o nome e o código de barras consequentemente. Portanto não vejo lógica nessa pesquisa. Poderia explicar melhor a sua necessidade ?
Para pesquisar tudo isso, o usuário vai ter que digitar os campos requerido. E terá que ser feito do jeito EXATO de como os dados foram armazenados para que a pesquise seja efetiva. Isto é, se o usuário ao digitar o nome do produto, errar um caracter apenas, não encontrará.
Você não disse como está exibindo os dados. É com o browse ou tipo ficha ? Melhor para localizar itens cadastrados, na minha opinião é com o BROWSE. E a medida que o usuário digitar, faz a pesquisa e a exibição dos produtos que atendam tal condição. Aqui no fórum na seção de Downloads tem rotinas e pelo fórum também tem outros exemplo. Utilize o recurso de pesquisa avançada.
mais uma duvida como fazer porcentagem no mesmo, meu cadastro tem o básico e mais uma opção para colocar o valor percentual do produto(como faço para o clipper reconhecer)
Você não explicou a qual informação pertence tal valor percentual que você quer. Seria percentual de lucro, percentual de quantidade minimo no estoque, percentual de venda, qual seria ?
E lembre, quando fazemos questões com relação a dados, seria sempre bom você listar a estrutura do seu banco de dados. Assim fica mais fácil auxiliá-lo nas nossas exemplificações e indicações. Para listar estrutura de dbfs, tem o STRU na seção de Downloads.