LetoDBf rodando no Linux, conecta, acha, mas não abre o DBF.

Fórum sobre Banco de Dados e RDDs para Clipper/[x]Harbour.

Moderador: Moderadores

Avatar do usuário
Linguagemclipper
Usuário Nível 3
Usuário Nível 3
Mensagens: 240
Registrado em: 16 Abr 2016 17:33
Localização: Maceió/AL
Contato:

LetoDBf rodando no Linux, conecta, acha, mas não abre o DBF.

Mensagem por Linguagemclipper »

Eita, esse pequeno teste faltou mesmo definir o DBFCDX.

Enfim, hoje apaguei os DBFs da pasta databases para ver se o sistema instala eles do zero, e deu certo. Deu um erro de lock required pra lá, mas chegou a criar UNIDADE.DBF e abrir (mostrou no manage.exe). Portanto, creio que os arquivos DBFs cheio de dados criados no Windows não conseguem ser lidos quando copiados para o Linux...

Ninguém nunca passou por isso? Copiar DBFs do Windows para o Linux e não conseguir abrir eles lá?
Usando xHarbour v1.2.3 Rev. 10264 + BCC 5.8, Elchs' LetoDBf, DBFCDX e SIBRA para imprimir relatórios.
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

LetoDBf rodando no Linux, conecta, acha, mas não abre o DBF.

Mensagem por Itamar M. Lins Jr. »

Ola!
Portanto, creio que os arquivos DBFs cheio de dados criados no Windows não conseguem ser lidos quando copiados para o Linux...
Faço isso o tempo todo... Tem nada a ver. E os DOCs e PDFs FOTOS etc... ?

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
Linguagemclipper
Usuário Nível 3
Usuário Nível 3
Mensagens: 240
Registrado em: 16 Abr 2016 17:33
Localização: Maceió/AL
Contato:

LetoDBf rodando no Linux, conecta, acha, mas não abre o DBF.

Mensagem por Linguagemclipper »

Poxa, então qual pasta tenho que copiar esses DBFs? Como tenho que fazer essa cópia?
Eu compartilhei a pasta windows no VirtualBox onde estão os DBFs, criei uma pasta no raíz /databases, entrei na pasta compartilhada e dei um cp * /databases. Por que o computador diz que o arquivo está corrompido?
Usando xHarbour v1.2.3 Rev. 10264 + BCC 5.8, Elchs' LetoDBf, DBFCDX e SIBRA para imprimir relatórios.
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

LetoDBf rodando no Linux, conecta, acha, mas não abre o DBF.

Mensagem por Itamar M. Lins Jr. »

Olá!
Qual é o servidor de grande porte que usa windows ?
A maioria usa LINUX, se fosse da forma que vc acredita que é, TODOS os arquivos armazenados nos servidores LINUX estariam corrompidos.
A única coisa que tem é CARRIAGE RETURN + LINE FEED (isso no windows) nos arquivos texto puro, isso quando editados no Linux e no WIndows mas isso os mais modernos editores já resolvem, nem precisa do comando do Linux "dos2linux" para fazer o serviço.
O mesmo problema que tem em um texto com editor UTF8 e vc abre o mesmo texto usando, ANSI ou outro qualquer Windows...não sei das quantas...

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

LetoDBf rodando no Linux, conecta, acha, mas não abre o DBF.

Mensagem por JoséQuintas »

Princípio básico:
Já que um funciona e outro não, pode estar perto da solução

Verifique as permissões, e compare o dbf copiado com o que foi criado pelo letodb
É só usar o equivalente ao DIR do linux:

ls -la

Comece por aí
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
Linguagemclipper
Usuário Nível 3
Usuário Nível 3
Mensagens: 240
Registrado em: 16 Abr 2016 17:33
Localização: Maceió/AL
Contato:

LetoDBf rodando no Linux, conecta, acha, mas não abre o DBF.

Mensagem por Linguagemclipper »

Itamar M. Lins Jr. escreveu:Olá!
Qual é o servidor de grande porte que usa windows ?
A maioria usa LINUX, se fosse da forma que vc acredita que é, TODOS os arquivos armazenados nos servidores LINUX estariam corrompidos.
A única coisa que tem é CARRIAGE RETURN + LINE FEED (isso no windows) nos arquivos texto puro, isso quando editados no Linux e no WIndows mas isso os mais modernos editores já resolvem, nem precisa do comando do Linux "dos2linux" para fazer o serviço.
O mesmo problema que tem em um texto com editor UTF8 e vc abre o mesmo texto usando, ANSI ou outro qualquer Windows...não sei das quantas...

Saudações,
Itamar M. Lins Jr.
Estava lendo sobre isso, mas é bem verdade que só editando ele que daria problema...
Erro 1012 é de arquivo corrompido, né? Por que desse erro é que eu não sei.
Aqui usavam Windows, mas perderam a licença, é mole? Daí botaram um servidor Linux em uma máquina virtual para ficar com o backup da imagem... o que vocês acham disso?

Itamar, a pasta dos DBFs pode ser no raíz? Tipo /databases ou tenho que criar uma pasta /usr/shared/databases ? Estava lendo sobre essa pasta /usr/shared... Tem algo a ver?
Usando xHarbour v1.2.3 Rev. 10264 + BCC 5.8, Elchs' LetoDBf, DBFCDX e SIBRA para imprimir relatórios.
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

LetoDBf rodando no Linux, conecta, acha, mas não abre o DBF.

Mensagem por Itamar M. Lins Jr. »

Olá!
Itamar, a pasta dos DBFs pode ser no raíz? Tipo /databases ou tenho que criar uma pasta /usr/shared/databases ? Estava lendo sobre essa pasta /usr/shared... Tem algo a ver?
Tem nada a ver, pode ficar em qualquer lugar, o problema é que vc fica ai mexendo...
Testou os arquivos criando no LINUX ?
dbcreat...
Cria ai uns dois copia para o windows, edit, altera lá no windows, joga para o Linux de volta sem LetoDB.
Se no básico está engasgando imagina o resto.
Não use NADA set page, cdx, etc... Só o DBF puro e vai vendo ai...

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

LetoDBf rodando no Linux, conecta, acha, mas não abre o DBF.

Mensagem por JoséQuintas »

Linguagemclipper escreveu:Não estou entendendo porque o Windows conectou na porta 53055, não teria que ser a mesma porta 2812? O pior é que toda vez é uma porta aleatória entre 40000 e 69999.
Voltando a esta sua pergunta:
Toda conexão tem origem e destino.
Consulte no Windows, netstat -a | find "2812"
Provavelmente vai ver o inverso do linux, portas com destino a 2812

Veja do MySQL 3306
conexao.png
E NÃO PRECISA LIBERAR NO FIREWALL DO WINDOWS A PORTA 3306, porque firewall é pra ENTRADA e não pra saída.
A não ser no servidor aonde está o MySQL.

E letodb vai ser a mesma coisa, liberar porta do letodb aonde está o servidor Letodb, não no windows que está apenas fazendo acesso, senão está pondo em risco o windows.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
Linguagemclipper
Usuário Nível 3
Usuário Nível 3
Mensagens: 240
Registrado em: 16 Abr 2016 17:33
Localização: Maceió/AL
Contato:

LetoDBf rodando no Linux, conecta, acha, mas não abre o DBF.

Mensagem por Linguagemclipper »

Entendí, Quintas.
Comecei outra instalação do Debian 12 64bits desta vez e conseguí abrir os DBFs normalmente, o sistema abriu.
Não precisou abrir porta no Linux.
Usando xHarbour v1.2.3 Rev. 10264 + BCC 5.8, Elchs' LetoDBf, DBFCDX e SIBRA para imprimir relatórios.
Avatar do usuário
Linguagemclipper
Usuário Nível 3
Usuário Nível 3
Mensagens: 240
Registrado em: 16 Abr 2016 17:33
Localização: Maceió/AL
Contato:

LetoDBf rodando no Linux, conecta, acha, mas não abre o DBF.

Mensagem por Linguagemclipper »

Quero agradecer a todos que tentaram me ajudar nessa saga aí.
Felizmente conseguí, tudo certo!

Vou deixar aqui detalhadamente para quem não está acostumado com o Linux o meu tutorial completo mastigadíssimo para ajudar quem estiver precisando de uma mãozinha:
https://linguagemclipper.com.br/blogs/t ... f-no-linux
Usando xHarbour v1.2.3 Rev. 10264 + BCC 5.8, Elchs' LetoDBf, DBFCDX e SIBRA para imprimir relatórios.
Avatar do usuário
deividdjs
Usuário Nível 3
Usuário Nível 3
Mensagens: 377
Registrado em: 19 Set 2006 09:39
Localização: Foz do Iguaçu / Pr

LetoDBf rodando no Linux, conecta, acha, mas não abre o DBF.

Mensagem por deividdjs »

Tarde Prezados !!

Uma duvida .. como faço para apagar arquivos no servidor linux com o letodbf ??

tentei desta forma e não surgiu efeitos .. a pasta tem permissão 666.. no servidor windows funciona normalmente ...

Leto_FErase("tm*.*")
Leto_FErase("*.cdx")
Leto_FErase("erro*.*")

Saludos,

Deivid Souza
Windows 11 + Harbour 3.2 + MINGW64 gcc 14.1.0 + Visual Lib + GTWVG + LETODBF WINDOWNS/LINUX
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

LetoDBf rodando no Linux, conecta, acha, mas não abre o DBF.

Mensagem por JoséQuintas »

Olhou se tem mesmo.
As permissões do linux confundem.

QUALQUER USUÁRIO que criar arquivo pode criar protegido.
E isso não tem nada a ver com permissões na pasta.
Mas pode conferir no arquivo ls -la

o fErase() do harbour é pra arquivo único, confirmou se leto aceita máscara nessa função?
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

LetoDBf rodando no Linux, conecta, acha, mas não abre o DBF.

Mensagem por JoséQuintas »

Apenas pra dar uma idéia.... mas é flagship...

Código: Selecionar todos

#ifdef FlagShip
   IF File( cFile )
      aFiles := Directory( cFile )
      cAttrib := aFiles[ 1, F_ATTR ]
      IF Transform( cAttrib, "-xx-xx-xx-" ) != "-rw-rw-rw-"
         MsgExclamation( "Atencao! Permissoes " + cAttrib + " do arquivo " + cFile + " nao permitem gravacao e podem causar erro" )
      ENDIF
   ENDIF
   dbCreate( cFile, oStru, , FCREATE_RW )
#else
   dbCreate( cFile, oStru )
#endif
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

LetoDBf rodando no Linux, conecta, acha, mas não abre o DBF.

Mensagem por Itamar M. Lins Jr. »

Olá!
ferase() aceita coringa ?
No Linux aceita arquivo "*" no nome.

Use:

Código: Selecionar todos

AEval( Leto_Directory( "*.cdx" ), {| file | leto_FErase( file[ F_NAME ] ) } ) 
Atenção pq vc sabe que o LetoDb vê apartir de uma pasta e todas que estão dentro.
Atenção para colocar a subpastas

Código: Selecionar todos

AEval( Leto_Directory( "/subpasta/*.cdx" ), {| file | leto_FErase( file[ F_NAME ] ) } ) 
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
deividdjs
Usuário Nível 3
Usuário Nível 3
Mensagens: 377
Registrado em: 19 Set 2006 09:39
Localização: Foz do Iguaçu / Pr

LetoDBf rodando no Linux, conecta, acha, mas não abre o DBF.

Mensagem por deividdjs »

não funcionou !!

leto_FErase deve aceitar coringa porque no windows ele apagou os arquivos perfeitamente ...

AEval( Leto_Directory( "/controle_/*.cdx" ), {| file | leto_FErase( file[ F_NAME ] ) } )

e dessa forma no linux .. nem sinal de apagar os arquivos ...
Windows 11 + Harbour 3.2 + MINGW64 gcc 14.1.0 + Visual Lib + GTWVG + LETODBF WINDOWNS/LINUX
Responder