Eu usei exclusivamente Clipper até este ano.
Os problemas que mencionei na Novell 3.12 aconteceram, e eram por manter o servidor muito tempo no ar.
Não que vá resolver seus problemas, mas pode aproveitar que mudou pra IDX e já alterar pra CDX.
A diferença é que vários IDX ficam dentro de um CDX, e conta como somente um arquivo aberto.
Isso ajuda a ter sempre todos os índices abertos, e na mesma ordem (parece que isso afeta atualização), já que vira tudo um arquivo só.
Uma coisa que me ajudou muito a descobrir problemas que os usuários não falavam foi criar um programa para enviar erros por email.
Mas não no sistema, fora dele. Uso até hoje.
Faço assim:
JPA.EXE
JPA.EXE /emailerro
copia@copia.com.br
A segunda chamada é exclusivamente para a rotina.
JPA.EXE sempre encerra limpando a tela.
Na segunda chamada, através de savescreen() vejo se tem algo na tela, e envio por email.
Há muitos erros onde o EXE simplesmente aborta, e a rotina de erros normal não pegaria, por isso em separado o resultado é melhor.
Os usuários nunca avisam.
Mais outra que lembrei hoje: WINDOWS 98.
Tem uma invenção da Microsoft no Windows 98, que é "suspender em segundo plano".
Quando acontece isto, o programa é congelado, e tudo que bloqueou continua bloqueado.
Outras máquinas não vão conseguir usar os registros que esse terminal bloqueou e vão acusar erro.
Já tive meu sistema usado em até 100 terminais, e os problemas que tive foram os que mencionei.
Era muito raro eu ter que fazer reindexação.
O sistema era pra pedidos e eram usados por quase todos da empresa, desde vendedores, até montadores e estoquistas.
Todos mexendo nos pedidos ao mesmo tempo.
Não sei o que roda nos seus terminais, mas uma coisa que sempre usei, e sempre ajudou, foi ajustar o sistema para uso máximo da OSLIB.
Também em rotinas de bloqueio de registro, e tudo mais.
O Windows realmente precisa tempo de CPU pra colocar as coisas em ordem, e o Clipper pode impedir isso se compilado sem nada extra.
Usei Clipper até julho deste ano, e não lembro quando foi a última vez que alguém precisou reindexar.
Mas minhas bases de dados tem menos de 1GB.
A transportadora que mencionei tinha bases com mais de 10GB, e por isso usava ADS, porque era mais do que o limite do Clipper.
Um dia tentei reindexar o backup aqui com Clipper, e travou tudo.
A propósito... Faz algum tempo tentei usar a Novell 3.12 aqui em máquina virtual e não deu certo. Não sei se o problema é HD Sata, ou tamanho de disco. Alguma dica?