Clipper On Line • Ver Tópico - LETO ERROR 1001: ERROR OPENING TABLE.DBF - LetoDBf no Linux

LETO ERROR 1001: ERROR OPENING TABLE.DBF - LetoDBf no Linux

Discussão sobre Banco de Dados e RDDs para Clipper/[x]Harbour.

Moderador: Moderadores

 

LETO ERROR 1001: ERROR OPENING TABLE.DBF - LetoDBf no Linux

Mensagempor Cisino Junior » 16 Out 2017 14:31

Boa tarde!

Estou testando o LetoDb(fork). Já fiz as alterações necessárias no sistema pra poder utilizar, testei com o servidor compilado para windows e funcionou legal, abre as tabelas, fecha, lista os dados, etc... Mas no Ubuntu 16.04 não funciona! Alguns de nossos clientes utilizam servidores linux, eu compilei para linux, configurei o letodb.ini e o sistema conecta ao servidor, mas ao tentar abrir uma tabela acontece erro de abertura. Então, criei um modulo de teste que verifica a existência da tabela e caso a mesma não exista, ele cria. Nesse programa exemplo eu utilizei as mesma rotinas usadas pelo nosso sistema comercial para tratar as tabelas, e funcionou legal.

É possível que o letodb não esteja conseguindo abrir as tabelas pois as mesmas foram criadas no Windows, ou algo do tipo que esteja causando esse erro?

O erro acontece na função abaixo:

// ===========================================================
FUNCTION NET_USE()
// ===========================================================
PARAMETERS file, ex_use, wait
PRIVATE forever

forever = (wait = 0)
DO WHILE (forever .OR. wait > 0)
   IF ex_use                    && exclusive
     USE (file) EXCLUSIVE ALIAS &ARQALIAS // erro ao abrir tabela
     //DbUseArea(.T., "LETO", file, ARQALIAS, .F., .F., 'PTISO')
   ELSE
     USE (file) ALIAS &ARQALIAS  && shared // erro ao abrir tabela
     //DbUseArea(.T., "LETO", file, ARQALIAS, .T., .F., 'PTISO')
   ENDIF

   IF ! NETERR()           && USE succeeds
      RETURN (.T.)
   ENDIF

   INKEY(1)                        && wait 1 second
   wait = wait - 1
ENDDO           
RETURN (.F.)     


Print do erro:

Imagem

Agradeço desde já qualquer ajuda. Obrigado!

Atenciosamente,
Cisino Junior.
HMG 3.4.3 + DBF, Java, MySQL, PostgreSQL, PHP, JavaScript + HTML5 + CSS3, Bootstrap, Spring, Thymeleaf.
Cisino Junior
Usuário Nível 2

Usuário Nível 2
 
Mensagens: 67
Data de registro: 14 Abr 2016 13:12
Cidade/Estado: Rio de Janeiro
Curtiu: 12 vezes
Mens.Curtidas: 5 vezes

LETO ERROR 1001: ERROR OPENING TABLE.DBF - LetoDBf no Linux

Mensagempor sygecom » 21 Out 2017 15:17

No linux inverte as barra do caminho do dbf
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
leonardodemachado@hotmail.com
Avatar de usuário

sygecom
Usuário Nível 7

Usuário Nível 7
 
Mensagens: 6637
Data de registro: 21 Jul 2006 10:12
Cidade/Estado: Alvorada-RS
Curtiu: 1 vez
Mens.Curtidas: 75 vezes

LETO ERROR 1001: ERROR OPENING TABLE.DBF - LetoDBf no Linux

Mensagempor Cisino Junior » 03 Nov 2017 12:17

sygecom escreveu:No linux inverte as barra do caminho do dbf


Fiz isso e não adiantou, continua acontecendo o mesmo erro.. Será que é algo relacionado a charset?

Atenciosamente,
Cisino Junior.
HMG 3.4.3 + DBF, Java, MySQL, PostgreSQL, PHP, JavaScript + HTML5 + CSS3, Bootstrap, Spring, Thymeleaf.
Cisino Junior
Usuário Nível 2

Usuário Nível 2
 
Mensagens: 67
Data de registro: 14 Abr 2016 13:12
Cidade/Estado: Rio de Janeiro
Curtiu: 12 vezes
Mens.Curtidas: 5 vezes

LETO ERROR 1001: ERROR OPENING TABLE.DBF - LetoDBf no Linux

Mensagempor Cisino Junior » 03 Nov 2017 15:50

Eu consegui abrir a tabela citada a cima, abrindo-a pelo libreoffice e mudando o charset para utf-8, agora o sistema consegue abri-la. Mas ao tentar abrir outra tabela, acontece o mesmo error de abertura...

// Log do letodb rodando no ubuntu 16.04
11.03 16:40:02.679       Error DBFCDX/1001  Open error: /home/user/LetoDBf/DADOS/LOGSIGA.dbf (DOS Error 2)


Sendo que na maquina com windows ele retorna em tempo de execução o seguinte error -> ERROR LETO/1021 Error de Sintaxe

Imagem

Alguém sabe dizer o motivo desses errors?
HMG 3.4.3 + DBF, Java, MySQL, PostgreSQL, PHP, JavaScript + HTML5 + CSS3, Bootstrap, Spring, Thymeleaf.
Cisino Junior
Usuário Nível 2

Usuário Nível 2
 
Mensagens: 67
Data de registro: 14 Abr 2016 13:12
Cidade/Estado: Rio de Janeiro
Curtiu: 12 vezes
Mens.Curtidas: 5 vezes

LETO ERROR 1001: ERROR OPENING TABLE.DBF - LetoDBf no Linux

Mensagempor janio » 06 Nov 2017 14:00

Nao uso mais Leto, mas quando usava fazia assim e funcionava:

PathServ := "//" + Servidor + ":" + Porta + "/"

******************************************
Function AbreDB( cArquivo, cAlias, lModo )
Local lRet := .t.
Local xArq := cArquivo
Local aTenta

**
lModo := IIf( lModo == nil , .t. , .f. )
cArquivo := IIf( At( ".", xArq ) > 0 , cArquivo, cArquivo + ".dbf" )

If Leto_File( PathServ + cArquivo )
DbUseArea(.t.,'LETO', PathServ + cArquivo,cAlias,lModo )
Endif
fui...
e-mail:janioaguiar@yahoo.com.br
msn: janio_aguiar@hotmail.com
xHarbour1.2.1/Harbour3.2 + wvg + hwgui + Mediator + MySql
Avatar de usuário

janio
Colaborador

Colaborador
 
Mensagens: 1809
Data de registro: 06 Jul 2004 07:43
Cidade/Estado: UBAJARA - CE
Curtiu: 7 vezes
Mens.Curtidas: 56 vezes

LETO ERROR 1001: ERROR OPENING TABLE.DBF - LetoDBf no Linux

Mensagempor Cisino Junior » 06 Nov 2017 14:15

Olá janio, obrigado pela sua resposta. O que está difícil para entender aqui é que com o banco de dados e servidor no windows, funciona perfeitamente(mesmo tendo alguns detalhes para mudar ainda), as tabelas abrem normal, consigo fazer consultas, etc... Agora, o problema relatado está ocorrendo no Ubuntu. Eu fiz uma cópia do banco de dados e compilei o leto no ubuntu. Até aqui tudo bem.

Eu executo o letodb no Ubuntu, roda normal... De um pc windows na mesma rede, eu executo um dos módulos do sistema, ele conecta ao letodb que está rodando no Ubuntu, mas quando o programa solicita ao letodb a abertura de uma tabela, o erro de abertura ocorre. Eu estou achando que é por conta do charset das tabelas, ou talvez por terem sido criadas no windows e copiadas para o linux, mas isso não acho que isso faça muito sentido.

Ou faz???

De qualquer jeito, obrigado novamente. Vou testar seu código!

Atenciosamente,
Cisino Junior.
HMG 3.4.3 + DBF, Java, MySQL, PostgreSQL, PHP, JavaScript + HTML5 + CSS3, Bootstrap, Spring, Thymeleaf.
Cisino Junior
Usuário Nível 2

Usuário Nível 2
 
Mensagens: 67
Data de registro: 14 Abr 2016 13:12
Cidade/Estado: Rio de Janeiro
Curtiu: 12 vezes
Mens.Curtidas: 5 vezes

LETO ERROR 1001: ERROR OPENING TABLE.DBF - LetoDBf no Linux

Mensagempor Itamar M. Lins Jr. » 08 Nov 2017 18:38

Ola!
Vc está abrindo uma tabela, mas não sabe como esta a tabela. "STATUS do DBF"
Verifique como esta a tabela. Se já está aberta, etc...

Vc não usa a flag NEW no comando USE.
No Windows erros de abertura e fechamento de arquivo passa mas no Linux esses absurdos não passam.
Se quer mandar esse problema para o Elch, faça um programa que demonstre o problema o Elch usa Linux.
Muita gente no forum esta com problemas, porque não sabe como conversar com o desenvolvedor da ferramenta ai ficam dependendo de alguém para fazer essa ponte, eu não sei ler nem escrever em Inglês na maioria das vezes uso o google como tradutor, mas tento...
Por isso o Harbour aqui no Brasil está cheio de atravessadores, que largam o desenvolvedor a ver navios, com pseudo soluções.
O Pritpal Bedi tem soluções para Android, etc... mas não tem ninguém lá questionando ele sobre os insucessos e desventuras de usar a Qtcontribs, HBIDE etc...
Mas ele usa Android, Windows, OS... comercialmente com harbour, QT e as ferramentas que ele faz e disponibiliza para comunidade, mas ai o brasileiro já gosta de um LIDER, e sempre vai criando mais, e mais, para depois ficar na mão.
Open SOURCE não tem isso, é COLABORAÇÃO o tempo todo, não ficam formando PANELINHA, disso e daquilo para depois com o tempo tudo está esquecido.
Harbour(xBase) é igual a qualquer linguagem velha, mas está ai para fazer muita coisa, Pascal a mesma coisa. Basic, etc.. As principais já tem sua versão Open Source.

Saudações,
Itamar M. Lins Jr.
Avatar de usuário

Itamar M. Lins Jr.
Colaborador

Colaborador
 
Mensagens: 3676
Data de registro: 30 Mai 2007 11:31
Cidade/Estado: Ilheus Bahia
Curtiu: 125 vezes
Mens.Curtidas: 191 vezes

LETO ERROR 1001: ERROR OPENING TABLE.DBF - LetoDBf no Linux

Mensagempor Miro » 29 Mai 2018 00:57

Olá Cisino, vc já encontrou alcuna resposta? Tenho o mesmo problema, error leto 1001 DOS error 2, file not found quando abro a tabela con uma funcao idéntica a la primeira que vc postou.

Obrigadíssimo pela ajuda, compartimos doencas Linux/LetoDbf

Saludos de Buenos Aires
Miro Della Bitta
Harbour 3.2 / LetoDbf / Minigui Ex
Miro
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 1
Data de registro: 29 Mai 2018 00:50
Cidade/Estado: Buenos Aires
Curtiu: 0 vez
Mens.Curtidas: 0 vez

LETO ERROR 1001: ERROR OPENING TABLE.DBF - LetoDBf no Linux

Mensagempor Jairo Maia » 30 Mai 2018 10:23

Olá Miro,

Não uso Linux, mas porque você está usando:
USE (file) EXCLUSIVE ALIAS &ARQALIAS

Ao invés de:
DbUseArea(.T., "LETO", file, ARQALIAS, .F.) // abre em modo exclusivo. Se .T. no 5o parametro abre compartilhado
Abraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
Avatar de usuário

Jairo Maia
Colaborador

Colaborador
 
Mensagens: 2428
Data de registro: 16 Ago 2010 13:46
Cidade/Estado: Campinas-SP
Curtiu: 293 vezes
Mens.Curtidas: 260 vezes

LETO ERROR 1001: ERROR OPENING TABLE.DBF - LetoDBf no Linux

Mensagempor Itamar M. Lins Jr. » 05 Jun 2018 17:16

Ola!

Yes, true story.

Sorry for the delay, i was moving the whole thing to linux ( and learning a new OS), recompiling harbour and letodbf on debian 8 and trying to run it on a linux cloud server. It runs as a daemon, but throwing letodbf error 1001 (file not found, dos error 2) when trying to access any dbf. Such dbfs were build on a windows pc and were granted with r/w/x permissions.
How can i solve this issue?

Sorry again for the thread disruption, but some times are overwhelming.

Best Regards



Resumindo, o LINUX não aceita as letras dos arquivos de qualquer forma. Deve estar tudo minúsculo ou tudo maiúsculo.
No fonte if file("MEU.DBF") não acha o arquivo "meu.dbf".

Yes it´s mandatory, and indexes extensions are lowercase (.cdx)
It´s working now, finally.
Thank´s everyone, specially to Rolf


Saudações,
Itamar M. Lins Jr.
Avatar de usuário

Itamar M. Lins Jr.
Colaborador

Colaborador
 
Mensagens: 3676
Data de registro: 30 Mai 2007 11:31
Cidade/Estado: Ilheus Bahia
Curtiu: 125 vezes
Mens.Curtidas: 191 vezes

LETO ERROR 1001: ERROR OPENING TABLE.DBF - LetoDBf no Linux

Mensagempor Itamar M. Lins Jr. » 05 Jun 2018 17:40

Ola!
Uma coisa que já foi dita n vezes... Linux é "case sensitive". "X.dbf" é um arquivo e "x.DBF" é outro arquivo... Maiúsculas e minúsculas importam.

Saudações,
Itamar M. Lins Jr.
Avatar de usuário

Itamar M. Lins Jr.
Colaborador

Colaborador
 
Mensagens: 3676
Data de registro: 30 Mai 2007 11:31
Cidade/Estado: Ilheus Bahia
Curtiu: 125 vezes
Mens.Curtidas: 191 vezes




Retornar para Banco de Dados

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 1 visitante


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro