Página 1 de 1

letodb xharbour 1.2.3 + BCC72

Enviado: 24 Jul 2020 12:07
por paiva_dbdc
BOM dia

pode-se gerar a RDDLETO.LIB com eles ?

auguem usa ?

poderia explicar como gerar ?

desde já agradeço

Paiva

letodb xharbour 1.2.3 + BCC72

Enviado: 24 Jul 2020 17:52
por Itamar M. Lins Jr.
Ola!

Lendo o manual, vc gera a LIB.
O Servidor(LetoDbf.exe) tem que ser pelo Harbour.

Saudações,
Itamar M. Lins Jr.

letodb xharbour 1.2.3 + BCC72

Enviado: 24 Jul 2020 17:55
por Itamar M. Lins Jr.
Ola!
Baixe o LetoDbf pelo git e compile apenas a LIB pelo xbp.

Código: Selecionar todos

      2.5 xHarbour

 SERVER: the server itself must be build with Harbour, cannot be done with xHB.
 Same applies for utils like console monitor.

 CLIENT: client library (RDD) can be build with xHarbour, use the 'rddleto.lib.xbp' definition for
 xBuilder. For Windows ( but not for XCC ), it will by default use a second thread ( without HVM ),
 so the executable must be linked with a library containing '_beginthreadex()'.
 cFlag define: LETO_NO_THREAD=1 set for xHB will disable this and the need for threading function,
 [ C-compiler: note that xBuilder doesn't store used C-compiler -- change it on demand.
   XCC: can't compile 3rd party 'lz4.c', compile it with PellesC >= 4.5 manually,
        and replace it in list of files for xBuilder with resulting 'lz4.obj':
        pocc.exe -Fo"obj\lz4.obj" -Ot -I"include" -I"source\3rd\lz4\lib" -I%PATH_XHB%"\include"
                 -I%PATH_POCC%"\Include" -I%PATH_POCC%"\include\Win" "source\3rd\lz4\lib\lz4.c"
 ]

 DEMO: one single demo 'test_mem.exe.xbp' is designed and tested with PellesC ( POCC ) V8.0 [ >= 6.0 ]
 For this lib 'crtmt.lib' is in link list, other C-compiler may replace that "crtmt.lib" with one of
 their distribution ( cw32mt.lib, libcmt.lib .. )
 XCC, and RDD lib with disabled thread have to remove library from list.
 Same way you can build other examples "test_[func|filt|dbf|dbfe|var|file]"

 YOUR APP:
 like above demo: link a MultiThread C runtime lib,
 #include "rddleto.ch" for each '.prg' of a xHB LetoDBf project by xHB switch: "/u+rddleto.ch".
 One source file of your project, i suggest that with function main() and Leto_Connect(),
 should: REQUEST LETO
 (*) Codepage-names of xHB and server build with Harbour may be different, that needs to
 set up a 'name translation table' -- see LETO_ADDCDPTRANSLATE()
Saudações,
Itamar M. lIns Jr.

letodb xharbour 1.2.3 + BCC72

Enviado: 24 Jul 2020 18:09
por Itamar M. Lins Jr.
Ola!
Basta clonar no GIT.

Código: Selecionar todos

C:\>git clone https://github.com/elchs/LetoDBf.git letodbf
Cloning into 'letodbf'...
remote: Enumerating objects: 2652, done.
remote: Total 2652 (delta 0), reused 0 (delta 0), pack-reused 2652 eceiving objects:  98% (259
Receiving objects: 100% (2652/2652), 2.08 MiB | 3.00 MiB/s, done.
Resolving deltas: 100% (2086/2086), done.
E compilar.

Código: Selecionar todos

C:\letodbf>hbmk2 rddleto.hbp

C:\letodbf>dir lib
 O volume na unidade C não tem nome.
 O Número de Série do Volume é 906B-7B11

 Pasta de C:\letodbf\lib

24/07/2020  18:03    <DIR>          .
24/07/2020  18:03    <DIR>          ..
24/07/2020  18:03           456.576 librddleto.a
               1 arquivo(s)        456.576 bytes
Só isso, não inventar moda, com milhões de sets e bats.

A única coisa que tem no meu é colocar o GCC no PATH. No caso ai do seu é colocar o BCC7x
Não tem hbmk2.exe, então use o BAT para BCC.
make_b32.bat
Saudações,
Itamar M. Lins Jr.

letodb xharbour 1.2.3 + BCC72

Enviado: 24 Jul 2020 18:16
por Itamar M. Lins Jr.
Ola!
Servidor LetoDbf compilado em 64Bits.
letodb.rar
Servidor LetoDbf compilado com GCC 10.1 64Bits
(813.83 KiB) Baixado 138 vezes
Tanto faz a sua LIB ser Xharbour ou Harbour 32Bits, BCC/GCC etc que funciona.

Saudações,
Itamar M. Lins Jr.

letodb xharbour 1.2.3 + BCC72

Enviado: 27 Jul 2020 16:12
por paiva_dbdc
DUVIDA: rs

posso re-inder uma arquivo com um campo no indice vindo de outro arquivo ? relacionado ?

ex: index on empresa+filial+produto->nome+codigo ....

o letodb só funciona gerenciando PASTAS ? ou seja... Não posso mandar ele gerenciar C: ou D: por exemplo

paiva

letodb xharbour 1.2.3 + BCC72

Enviado: 27 Jul 2020 16:27
por Itamar M. Lins Jr.
Ola!
o letodb só funciona gerenciando PASTAS ? ou seja... Não posso mandar ele gerenciar C: ou D: por exemplo
C:,D: etc são pastas! Só que RAIZ.
Vai liberar a RAIZ da unidade ? para gravar os DBF na RAIZ ?
Nenhum servidor enxerga as variáveis do lado cliente.
quando for indexar:

Código: Selecionar todos

index on field->cliente...
Tudo da mesma forma não muda nada.

Saudações,
Itamar M. Lins Jr.

letodb xharbour 1.2.3 + BCC72

Enviado: 27 Jul 2020 20:18
por paiva_dbdc
Itamar, boa noite

deixa eu explicar melhor.

todos clientes tem \dbdc e uma pasta onde fica as bases de dados \usr\sfa (normalmente)
99% tem a pasta \paiva com um dbf sdata.dbf (data do sistema criptografada)

o \paiva poderia mudar para \dbdc por exemplo ++++++ mesmo assim tenho 2 pastas de trabalho \dbdc\ e \usr\sfa (que pode mudar ...)

pelo que entendi teria que ter DOIS letodb com 2 portas liberadas e cada UM dele apontando para uma determinada pasta.

então: se puder ser c: ou D: ou E: ou qq HD eu teria somente UM letodb uma Unica porta liberada e poderia acessar qq pasta

tipo : c:\dbdc c:\usr\sfa c:\paiva ou .... d:\...... se fosse outro HD

por ser a RAIZ do HD pesaria no processamento ?


assim que eu conseguir acessar as base vou ver se a re-indexação com campos relacionados funciona aqui.

se um terminal acessar o servidor pelo letodb outro terminal ou até mesmo servidor Não vai poder acessar a mesma base sem ser pelo letodb correto ?

se for assim se por acaso algum terminal Não conseguir se conectar ao letodb eu Não poderei deixar ele trabalhar com o DBF ?
ou seja teria que avisar que não conectou e sair do sistema ?

desde já agradeço

letodb xharbour 1.2.3 + BCC72

Enviado: 27 Jul 2020 22:00
por JoséQuintas
Se entendi direito... o acesso a DBF e índices vai ser pelo letodb, pela(s) RDD(s) existente(s) no letodb.

Caso use a versão Harbour do letodb, confirme se vai ser compatível com XHarbour, antes de usar simultâneo.
Por exemplo, o bloqueio no servidor poderia ser 64 bits, o que não seria compatível com os terminais pra acessar simultâneo sem o letodb.
Lembro de um que bloqueia acesso por terminais, não sei se é o letodb, provavelmente por isso.

Se for igual o hbnetio, seria por pasta relativa à raiz definida no servidor.
Se instalar/configurar o hbnetio pra trabalhar em c:\nomepasta, se tentar abrir \arquivo.dbf, será aberto o de c:\nomepasta\arquivo.dbf
De certa forma, como se fosse o mapeamento do Windows, que mapeia uma pasta pra Z:, mas o hbnetio mapeia como raiz.
Não tem acesso fora dela, mas pode criar subpastas normalmente.

Citei o hbnetio como exemplo, ele é inferior ao letodb, mas é o único que conheço/uso.
Talvez o letodb faça igual, e não precise de dois servidores.
E talvez ninguém tenha tentado usar assim, e pode ser que o letodb aceite.

letodb xharbour 1.2.3 + BCC72

Enviado: 28 Jul 2020 11:59
por Itamar M. Lins Jr.
Ola!
Isso fica a seu critério.
Melhor fazer uma reconfiguração e usar C:\BaseDados\Pasta_a e c:\BaseDados\Pasta_b...
Se colocar c:\ para o letodbf enxergar, vai funcionar também abrindo as subpastas, mesmo que não crie nada na raiz c:\
vou ver se a re-indexação com campos relacionados funciona aqui.
Qualquer comando e ou função do RDD_DBF do harbour funciona.
se um terminal acessar o servidor pelo letodb outro terminal ou até mesmo servidor Não vai poder acessar a mesma base sem ser pelo letodb correto ?
Vai poder acessar sim, vc pode liberar o acesso para outros programas. Vai depender da configuração do LetoDbf.
Tem programa em Delphi, etc, sem ser feito com o Harbour que acessa a base DBF ?
Porém pela suas perguntas, vejo que vc nem começou... Pq eu mesmo não consegui usar o xHarbour para gerar a rddletodb.lib usand o BCC7.3
O 7.2 nem achei para download. Melhor sair do xHarbour se deseja usar LetoDbf.

Saudações,
Itamar M. Lins Jr.

letodb xharbour 1.2.3 + BCC72

Enviado: 07 Set 2020 21:23
por adzdoni
Ola
Estou iniciando estudos no letodbf para xHarbour, peguei exemplos aqui no site, esta dando erro, ja pesquisei e nao encontrei solucao, peço ajuda aos colegas, estou usando o xHarbour 1.2.1 e bcc551.
Se alguem puder passar um link com o xharbour 1.2.1 + bcc551 + letodb compilado com .exe , .lib , .ch , agradeço.
Obrigado a todos que puderem ajudar.

O codigo é este:
#include "inkey.ch"
#include "rddleto.ch"
function main()
cls

RDDSETDEFAULT("LETO")
leto_Connect( '//localhost:2812/' ) // ou o IP onde está os DBF´s com o LETO 192.168.10.10 por exemplo, no lugar de localhost.

return(.t.)

O erro é este: