O servidor e a estação de trabalho rodam com o Windows 7
Quando inicio o executável na estação, surge a mensagem de erro de abertura do DBF logo na primeira rotina:
use USUARIO index iUSUARIO new ("Error DBFNTX/1001 - Open error: usurario.dbf")
A mensagem acusa a inesistência dos arquivos, que na verdade estão lá, pois o programa é executado sem erros no servidor.
Abri o DBU.exe na estação, e o mesmo também não mostra nenhum arquivo .dbf ou .ntx.
No servidor a pasta c:\ está compartilhada com acesso total.
Erro ao abrir um DBF em rede
Moderador: Moderadores
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
Erro ao abrir um DBF em rede
Seja bem vindo ao fórum !
Pelo que parece esse erro é porque não conseguiu abrir o usuario.dbf (notar se o nome não foi errado). Quando se trata de abrir dbfs em rede, deve ser feito o tratamento de insistência e erro. Pois se o seu dbf por ventura foi aberto em modo exclusivo (sem o parâmetro SHARED, isto é, modo compartilhado) ele não vai permitir abrir por outra estação e eis o erro.
Pelo que parece esse erro é porque não conseguiu abrir o usuario.dbf (notar se o nome não foi errado). Quando se trata de abrir dbfs em rede, deve ser feito o tratamento de insistência e erro. Pois se o seu dbf por ventura foi aberto em modo exclusivo (sem o parâmetro SHARED, isto é, modo compartilhado) ele não vai permitir abrir por outra estação e eis o erro.
Um clip-abraço !
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Erro ao abrir um DBF em rede
Vc diz que no servidor funciona e na estação, não. Bem, o comando USE, isolado, faz o Clipper procurar pelo DBF na mesma pasta onde o EXE foi iniciado.
Então, pelo que parece, o DBF está no servidor, por isso lá funciona e na estação, não. A solução é (sempre) indicar ao Clipper onde o DBF está:
SET DEFAULT TO \\nomeservidor\pastadbf
use USUARIO index iUSUARIO new
Além disso, verifique cada passo da abertura. Exemplo:
Então, pelo que parece, o DBF está no servidor, por isso lá funciona e na estação, não. A solução é (sempre) indicar ao Clipper onde o DBF está:
SET DEFAULT TO \\nomeservidor\pastadbf
use USUARIO index iUSUARIO new
Além disso, verifique cada passo da abertura. Exemplo:
Código: Selecionar todos
set defa to \\servidor\pasta
erro=.t.
do whil .t.
if !file(\\servidor\pasta\usuario.dbf) // arquivo DBF não existe
exit
endi
use usuario new
if neterr()=.t. // comando USE não foi bem sucedido
exit
endi
if !file(\\servidor\pasta\iusuario.ntx) // se indice não existir, criar
index on ... // cria o indice
endi
set index to iusuario // abre o indice
erro=.f.
exit
endd
if erro=.t.
* erro
quit
endi

