LetoDb e Harbour, como usar.

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

Moderador: Moderadores

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

LetoDb e Harbour, como usar.

Mensagem por Itamar M. Lins Jr. »

Ola!
O LetoDb é um motor "DAEMON" que funciona com características similares aos bancos de dados MySQL, Postgree SQL, MSSQL...
Em outras palavras, ele serve de ponte (ligação) entre seu aplicativo e o banco de dados. É para ele que fazemos a requisição dos dados, solicitamos ao DAEMON (motor), os dados, assim sendo não existe mais o tráfego de todos os arquivos pela rede, não precisamos mapear tão pouco compartilhar a pasta, e os perigos dos travamentos(rlock(),flock()) são minimizados. Aumentando assim a velocidade da aplicação que usa DBF.

Baixe o LetoDb da sessão de download aqui do forum.
https://pctoledo.org/forum/fileba ... t=c&page=1

Primeiro verificar(editar) o arquivo letodb.ini e colocar o DATAPATH de acordo onde se encontra os seus arquivos DBF´s, pode conter subpastas não precisa direcionar para as subpastas apenas para pasta raiz.

Código: Selecionar todos

Port = 2812              
Logfile = "letodb.log"   
DEFAULT_DRIVER = CDX     
DATAPATH = c:\dados\
ENABLEFILEFUNC = 1
CRYPT_TRAFFIC = 0
PASS_FOR_LOGIN = 0
PASS_FOR_MANAGE = 0
PASS_FOR_DATA = 0
Share_Tables  = 0
Cache_Records = 50
[DATABASE]
DataPath = c:\dados\
Driver = CDX
Para instalar o serviço no windows XP ou 7 ou 8 use:

Código: Selecionar todos

c:>\pasta_com_letodb\letodb install //minusculo mesmo
net start letodb_service
Pronto o letodb está rodando e "apontado" para a pasta onde estão os seus DBF´s apenas faça os ajustes se for CDX ou NTX.
Dica firewall!
Não esquecer de liberar pelo firewall a porta 2812.
1)Dica para acesso externo!
No modem ADSL na opção NAT direcionar a PORTA 2812 para o IP do servidor que está instalado o LetoDB
2)Dica, use um programa gratuito p/ acesso externo!
Use o serviço(programa) www.no-ip.com ou outro melhor para achar seu computador em uma rede WAN.

Testando:

Código: Selecionar todos

#require "sddodbc" //opcional se for usar MySql com LetoDb
#require "sddfb"  //opcional se for usar Firebird com Letodb 
#include "rddleto.ch" 

REQUEST DBFCDX, DBFFPT, DBFDBT, LETO
REQUEST HB_LANG_PT, HB_CODEPAGE_PTISO, HB_CODEPAGE_PT850

REQUEST  SQLMIX, SDDODBC //opcional se for usar MySQL ou Firebird etc...

Function Main
Local cPATH := "//localhost:2812/" //não precisa informar o caminho dos DBF´s porque já foi informado(configurado) no arquivo leotdb.ini 

//Conectando com o servidor LetoDb.

      nConect := leto_Connect( cPath)
      IF nConect == -1
          nRes := leto_Connect_Err()
         IF nRes == LETO_ERR_LOGIN
            alert( "Falha ao Logar" )
         ELSEIF nRes == LETO_ERR_RECV
           alert( "Error ao conectar" )
         ELSEIF nRes == LETO_ERR_SEND
            alert( "Erro de envio" )
         ELSE
            alert( "Não connectado ao servidor: " + cPath )
         ENDIF
         Return .F.
      ENDIF

cIndex  := cPATH+"meu_arquivo.cdx"

cDbf := cPATH+"meu_aquivo.dbf"

DbUseArea(.t.,'LETO',cDbf,"alias_xyz",.T.,.F.,'PTISO')
If leto_file(cIndex) 
   DBSETINDEX( cIndex )
Else
   index on ...//seu código
   index on ... //seu código
EndIf

E quando compilar sua aplicação, não esquecer de ligar a lib!
Colocar em um arquivo com a extensão letodb.hbc

Código: Selecionar todos

{win}incpaths=c:\pasta_com_letodb\include;
{win}libpaths=c:\pasta_com_letodb\lib;

{win}libs=rddleto
E no arquivo "seu_projeto.hbp" adicionar a linha:

Código: Selecionar todos

letodb.hbc 
Depois compilar:

Código: Selecionar todos

:>hbmk2 seu_projeto.hbp
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
Duda 'Sgluber'
Usuário Nível 3
Usuário Nível 3
Mensagens: 148
Registrado em: 11 Mar 2013 21:57
Localização: Interior de São Paulo

LetoDb e Harbour, como usar.

Mensagem por Duda 'Sgluber' »

Estas informações serão muito úteis pra mim, em breve.

Muito obrigado, Itamar! Imagem
Comecei pra valer nos tempos do MSX e nunca mais parei... grande caminhada! :-)
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

LetoDb e Harbour, como usar.

Mensagem por Itamar M. Lins Jr. »

Ps.
Esqueci de agradecer ao Alexander Kresin e ao Pavel Tsarenko por terem feito o LetoDb!

t+
Saudações,
Itamar M. Lins Jr.
lugab
Colaborador
Colaborador
Mensagens: 843
Registrado em: 19 Mai 2009 15:58

LetoDb e Harbour, como usar.

Mensagem por lugab »

Obrigado, Itamar...

Estou cheio de esperança de fazer funcionar essa sua contribuição no meu aplicativo Dbf/CDX

Tentei antes usar o LetoDB baseado em postagens de outros tópicos e não consegui sequer compilar...
lugab
Maurício Elias
Usuário Nível 3
Usuário Nível 3
Mensagens: 304
Registrado em: 12 Mai 2005 08:48

LetoDb e Harbour, como usar.

Mensagem por Maurício Elias »

Grande Itamar, esse é o cara...
Fechou a questão, amanhã mesmo já começo os estudos.
Valew cara, muito obrigado.
Só me fala uma coisa: Para o caso do servidor Linux e teminais Win XP e 7, estou tendo travamentos no ato dos "Confirma Gravação?" ( HB32+DBF+NTX )
Será que o LetoDB resolve essa questão tb? Ou é outro problema ?
Abraços.
_______
Maurício
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

LetoDb e Harbour, como usar.

Mensagem por Itamar M. Lins Jr. »

Teste ai antes. Depois, pode remover o Linux+SAMBA e usar o win7 mesmo. Lembrando que essa compilação é 32Bits!

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
janio
Colaborador
Colaborador
Mensagens: 1846
Registrado em: 06 Jul 2004 07:43
Localização: UBAJARA - CE

LetoDb e Harbour, como usar.

Mensagem por janio »

Preciso do leto compilado para xharbour 1.2

Alguem?????
fui...
e-mail:janioaguiar@yahoo.com.br
msn: janio_aguiar@hotmail.com
xHarbour1.2.1/Harbour3.2 + wvg + hwgui + Mediator + MySql
Avatar do usuário
Toledo
Administrador
Administrador
Mensagens: 3133
Registrado em: 22 Jul 2003 18:39
Localização: Araçatuba - SP
Contato:

LetoDb e Harbour, como usar.

Mensagem por Toledo »

Janio, faça você mesmo a compilação, copie os códigos fontes do LetoDb e veja os arquivos Readme.txt e readme_pt_br.txt (obrigado Leonardo - sygecom pela tradução).

http://letodb.cvs.sourceforge.net/viewv ... v=rel-1-mt

Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
Avatar do usuário
janio
Colaborador
Colaborador
Mensagens: 1846
Registrado em: 06 Jul 2004 07:43
Localização: UBAJARA - CE

LetoDb e Harbour, como usar.

Mensagem por janio »

Ok,
- baixei o leto
- fiz os ajustes necessários
- executei sem erros o arquivo make_b32.bat
- foram geradas as lib's leto.lib e rddleto.lib

Mas o executavel num gerado em lugar nenhum! Como gero o executavel letodb.exe????
fui...
e-mail:janioaguiar@yahoo.com.br
msn: janio_aguiar@hotmail.com
xHarbour1.2.1/Harbour3.2 + wvg + hwgui + Mediator + MySql
Avatar do usuário
janio
Colaborador
Colaborador
Mensagens: 1846
Registrado em: 06 Jul 2004 07:43
Localização: UBAJARA - CE

LetoDb e Harbour, como usar.

Mensagem por janio »

Vi um negocio estranho aqui no makefile.bc

Código: Selecionar todos

#
# Our default target
#

!if $d(XHARBOUR)
PROJECT = \
   $(CLIENT_RDD_LIB) \
   $(CLIENT_LIB) 
!else
PROJECT = \
   $(CLIENT_RDD_LIB) \
   $(CLIENT_LIB) \
   $(SERVER_EXE)
!endif
Quando é para xHarbour o executado do leto (letodb.exe) não é gerado??? Somente as lib's????
Estou sem entender...
como gero esse executavel no xharbour, meu Deus?
fui...
e-mail:janioaguiar@yahoo.com.br
msn: janio_aguiar@hotmail.com
xHarbour1.2.1/Harbour3.2 + wvg + hwgui + Mediator + MySql
Avatar do usuário
Toledo
Administrador
Administrador
Mensagens: 3133
Registrado em: 22 Jul 2003 18:39
Localização: Araçatuba - SP
Contato:

LetoDb e Harbour, como usar.

Mensagem por Toledo »

janio escreveu:como gero esse executavel no xharbour, meu Deus?
Janio, pelo jeito você não leu o arquivo readme_pt_br.txt completo.
2.3 xHarbour Builder(Comercial)

Execute o make_xhb.bat para construir binários com este compilador.
Provavelmente, você precisará alterar o caminho para sua cópia Construtor
de expressões na make_xhb.bat xHarbour. O valor padrão é:

set XHB_PATH=c:\xhb
Então se o seu xHarbour estiver em outra pasta (c:\xhb), basta editar o arquivo make_xhb.bat e procurar a linha set XHB_PATH=c:\xhb e informar a pasta correta. Depois é só executar o make_xhb.bat.

Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
Avatar do usuário
janio
Colaborador
Colaborador
Mensagens: 1846
Registrado em: 06 Jul 2004 07:43
Localização: UBAJARA - CE

LetoDb e Harbour, como usar.

Mensagem por janio »

Toledo,

Eu li o arquivo readme_pt_br.txt. Ocorre que esse item refere-se ao xHarbour COMERCIAL, que não é o meu caso, por isso ignorei-o!

Vou fazer os testes que vc sugeriu!
fui...
e-mail:janioaguiar@yahoo.com.br
msn: janio_aguiar@hotmail.com
xHarbour1.2.1/Harbour3.2 + wvg + hwgui + Mediator + MySql
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

LetoDb e Harbour, como usar.

Mensagem por Itamar M. Lins Jr. »

Janio, você pode usar o executável que postei mesmo.
Use somente a lib p/ xHb.


Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
janio
Colaborador
Colaborador
Mensagens: 1846
Registrado em: 06 Jul 2004 07:43
Localização: UBAJARA - CE

LetoDb e Harbour, como usar.

Mensagem por janio »

Hummmmm é mesmo! Como não pensei nisso!!!

#-) :%

Executável é executavel e não importa em que linguagem foi compilado!
:-´

Janio
fui...
e-mail:janioaguiar@yahoo.com.br
msn: janio_aguiar@hotmail.com
xHarbour1.2.1/Harbour3.2 + wvg + hwgui + Mediator + MySql
Minduim
Usuário Nível 2
Usuário Nível 2
Mensagens: 59
Registrado em: 06 Abr 2011 13:02
Localização: Santo andré - SP

LetoDb e Harbour, como usar.

Mensagem por Minduim »

bom dia senhores;

estou testando as informações deste tópico e esta aparecendo a mensagem abaixo no arquivo letodb.log;

Código: Selecionar todos

06/05/14 11:01:16: Error BASE/1001  Undefined function: DESCRIPT Arguments: ( [ 1] = Type: C Val:       )
no mesmo momento, o executável também retorna o erro abaixo, na função:
dbUseArea( .T., "LETO", "//localhost:2812/ARQ20670.DBF", "ARQ20270", .F.)

Código: Selecionar todos

Subsystem Call......: LETO
System Code.........: 1021
Default Status......: .F.
Description.........: Tipo incorreto de dado
Operation...........: 
Arguments...........: 
Involved File.......: //localhost:2812/ARQ20670.DBF
Dos Error Code......: 0
todos os arquivos de banco de dados estão criptografados pelas rotinas: cript/descript (função de usuário), mas o arquivo de banco de dados e index não chegam serem abertos;

DEFAULT_DRIVER = CDX

o sistema funciona perfeitamente em "DBFNTX" ou "DBFCDX"

alguma luz?

em tempo, baixei o letodb pelo caminho indicado pelo TOLEDO
http://letodb.cvs.sourceforge.net/viewv ... v=rel-1-mt

e utilizando o arquivo bat abaixo:

Código: Selecionar todos

set path=c:\hb32\bin

hbmk2 letodb.hbp

hbmk2 rddleto.hbp

hbmk2 leto.hbp

hbmk2 letodyn.hbp
aparecem os erros abaixo:
Anexos
2014-06-05_141852.jpg
Responder