1. Verifique o tempo de uso do programa no servidor
2. Teste a pesquisa sem Ãndice - até agora não houve comentário sobre isso
Sobre CDX.... talvez a pergunta melhor seja:
Porque ainda está usando esse lixo de Ãndice NTX? usar lixo só deixa o programa um lixo.
CDX é compactado: reduz muito a quantidade de informação que precisa passar pela rede e pelo programa, melhor para o Clipper também.
CDX pode conter TODOS os NTX do arquivo, menos arquivos abertos, melhor para o Clipper também onde as limitações são maiores.
A princÃpio é alterar a rotina de indexação, e lógico, a abertura dos arquivos de Ãndice.
Não é nada tão radical assim, a não ser que o programador tenha complicado os fontes.
Se for esse o caso descomplique.
Que tal assim:
IF ! AbreArquivos( { "clientes", "fornecedores", "produtos" } )
RETURN
ENDIF
FUNCTION AbreArquivos( aList )
LOCAL lErro := .F.
FOR nCont = 1 TO Len( aList )
IF ! AbreUmArquivo( aList[ 1 ] )
lErro := .T.
EXIT
ENDIF
NEXT
IF lErro
CLOSE DATABASES
ENDIF
RETURN lErro
Pronto, agora crie AbreUmArquivo() com o jeito que preferir, pra abertura individual de cada arquivo, indicando as necessidades de cada um.
Em Harbour dá pra simplificar, mas se ainda usa Clipper, melhor criar de um jeito compatÃvel.
NÃO precisa fontes diferentes em Harbour. Se está migrando, mantenha sempre exatamente os mesmos fontes, pra ter sempre os mesmos fontes em uso, e sempre atualizados.
Principal diferença entre Clipper e Harbour: Clipper é DOS, Harbour é Windows.
Essa é a única parte que precisa se acostumar: o Windows acaba tendo certas particularidades que o DOS não tem.
Se tiver alguma mudança nos fontes, tem que ser por causa de ser ambiente Windows e não porque o Harbour precisa.
Ou... porque já deveria ter feito no Clipper e ainda não fez...
CDX?
Isso é do Clipper, de 20 anos atrás... não é nenhuma novidade. Se criaram isso, é porque é muito melhor que o NTX.
Já se passaram 20 anos, não tá usando ainda porque?
Se vai ter que fazer pro Harbour, é porque já se passaram 20 anos e ainda não fez.