LetoDBf (fork) -> LetoDb com espinafre
Moderador: Moderadores
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 7928
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 1 vez
LetoDBf (fork) -> LetoDb com espinafre
Ola!
Mudei para o LETODBf um fork que o Rolf "Elch" fez do LetoDb(Alexander Kresin).
Estou gostando, ele corrigiu os erros do LETODB e aprimorou os comandos, adicionou mais opções.
Agora com o LetoDBf a conexão está mais rápida, pois ele chama 2 processo simultâneos no servidor na mesma conexão.
Esta funcionando com CDX/NTX...
Explicações "melhores" em inglês no readme.txt
https://github.com/elchs/LetoDBf
Saudações,
Itamar M. Lins Jr.
Mudei para o LETODBf um fork que o Rolf "Elch" fez do LetoDb(Alexander Kresin).
Estou gostando, ele corrigiu os erros do LETODB e aprimorou os comandos, adicionou mais opções.
Agora com o LetoDBf a conexão está mais rápida, pois ele chama 2 processo simultâneos no servidor na mesma conexão.
Esta funcionando com CDX/NTX...
Explicações "melhores" em inglês no readme.txt
https://github.com/elchs/LetoDBf
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 7928
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 1 vez
LetoDBf (fork) -> LetoDb com espinafre
Ola!
Na época que comecei a usar não tinha NetIO.
Mas mesmo assim o NetIO não faz a mesma coisa que o LetoDB faz. O NetIO não tinha o conceito na época de:
Tem umas diferenças que o Przmek explicou, o NetIO é mais para redes LOCAIS e não tinha o tal "transaction" e outros recursos do LetoDb.
Saudações,
Itamar M. Lins Jr.
Na época que comecei a usar não tinha NetIO.
Mas mesmo assim o NetIO não faz a mesma coisa que o LetoDB faz. O NetIO não tinha o conceito na época de:
Código: Selecionar todos
leto_connect( "\\loja2.ddns.net:2812\")
use clientes new shared
browse()
Código: Selecionar todos
Comparing HBNETIO with LetoDB does not make sense. HBNETIO for file IO
operations is only network redirector which uses TCP connections to
replace different native system network redirectors. It give some small
speed improvement (i.e. 20-30%) but the main goal is resolving problems
with local caches and incompatible locking which break concurrent file
access when different OS-es are used on client stations or some of them
use danger "speedup" mechanism like opportunistic locking or some others
does not have native network redirectors which allow to connect to the
server.
Nothing more. Pure HBNETIO file access does not reduce network
traffic. Only RPC in HBNETIO can noticeable reduce it and this will
give the best speed results but user has to add to the server code
for all time consuming operations he wants to optimize.
best regards,
Przemek
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 7928
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 1 vez
LetoDBf (fork) -> LetoDb com espinafre
Ola!
Algumas comparações do ADS com o LetoDBf.
https://groups.google.com/forum/#!topic ... xyjdpmMCNY
Com LetoDbf:
Itamar M. Lins Jr.
Algumas comparações do ADS com o LetoDBf.
https://groups.google.com/forum/#!topic ... xyjdpmMCNY
Com LetoDbf:
Com ADS:The two lines above indicate the timing to delete the 1,010 attribute tags that were created in the previous process. For LetoDBF the process took 22 seconds more or less.
Saudações,The attribute tag deletion process under ADS took 4 minutes and 1 second, more or less.
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.
LetoDBf (fork) -> LetoDb com espinafre
Agora pq não ajeitaram o projeto original? Meu receio é virar tipo q nem as libs gráficas... varias... e no caso das libs gráficas o esforço poderia ter sido concentrado em uma no maximo 2.
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
LetoDBf (fork) -> LetoDb com espinafre
Boa noite
Me fiz a mesma pergunta fladimir.
Por isso que os projetos deixam de crescer.
Me fiz a mesma pergunta fladimir.
Por isso que os projetos deixam de crescer.
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 7928
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 1 vez
LetoDBf (fork) -> LetoDb com espinafre
Ola!
Segundo Elch, não quis mexer nos códigos de compatibilidade, que tem no original, compatibilidade com o xHarbour principalmente.
O LetodbF não roda no xHarbour por exemplo e versões velhas do Harbour.
https://github.com/elchs/LetoDBf/blob/master/README.md
Saudações,
Itamar M. Lins Jr.
Segundo Elch, não quis mexer nos códigos de compatibilidade, que tem no original, compatibilidade com o xHarbour principalmente.
O LetodbF não roda no xHarbour por exemplo e versões velhas do Harbour.
Mais em:The cause of this fork was to get the freedom of removing over many years accumulated legacy technics, and to continue, to...
https://github.com/elchs/LetoDBf/blob/master/README.md
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.
LetoDBf (fork) -> LetoDb com espinafre
Realmente é um ótimo argumento
Agora esse novo fork pode desancar pq não fica preso as compatibilizações.
Agora esse novo fork pode desancar pq não fica preso as compatibilizações.
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
LetoDBf (fork) -> LetoDb com espinafre
Baixei do git e fui testar mas pelo q entendi tem BAT pra MSVC e BCC... como faço em MinGW?
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
LetoDBf (fork) -> LetoDb com espinafre
Desculpem... esqueçam o q falei tem os HBP na pasta... to dormindo na frente do computador... kkkk
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
- Nascimento
- Usuário Nível 4

- Mensagens: 763
- Registrado em: 19 Jul 2008 12:11
- Localização: OLINDA-PE
LetoDBf (fork) -> LetoDb com espinafre
uma das primeiras duvidas é a abertura e criação dos indices atualmente tenho uma função que faz isso vou colocar um trecho aqui , original
a duvida é como seria no Letodb
a duvida é como seria no Letodb
Código: Selecionar todos
// chamada da net_use()
* dbf alias indice
if (!net_use("MCOCUP", "MCO","MCOCUP"))
quit
endif
**********************************************************
function Net_use
parameters lfile, lalias, lindex, lexcl, lretry
private lforever, v_arq,nomearq
lretry:= iif(Type("lretry") != "N", 500, lretry)
lexcl:= iif(Type("lexcl") != "L", .F., lexcl)
lforever:= lretry == 0
v_arq:= lfile + ".dbf"
do while (lretry > 0 .or. lforever)
if (lexcl)
use (lfile) alias (lalias) new exclusive
else
use (lfile) alias (lalias) new
endif
if (used())
exit
endif
if (mens(24, 11, "Arquivo nao liberado... AGUARDE ", 1) == 27)
exit
endif
lretry:= lretry - 1
enddo
if (used())
if (lindex = p_bancos+"MCOCUP")
if (!file(p_bancos+"MCOCUP.CDX"))
nomearq:= lindex
* Criando arquivo de indice
index on sui tag sui to (lindex)
set index to (lindex)
else
set index to (lindex)
endif
endif
endif
*************************************
A arte de programar é simplesmente fazer seus pensamentos serem interpretados por uma maquina
clipper 5.3 /harbour/minigui
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 7928
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 1 vez
LetoDBf (fork) -> LetoDb com espinafre
Ola!
Isso não muda. Continua da mesma forma.
Saudações,
Itamar M. Lins Jr.
Isso não muda. Continua da mesma forma.
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.
- Nascimento
- Usuário Nível 4

- Mensagens: 763
- Registrado em: 19 Jul 2008 12:11
- Localização: OLINDA-PE
LetoDBf (fork) -> LetoDb com espinafre
na chamada nao tem que dizer onde ta o letodb?
A arte de programar é simplesmente fazer seus pensamentos serem interpretados por uma maquina
clipper 5.3 /harbour/minigui
LetoDBf (fork) -> LetoDb com espinafre
Se não testei errado... kkk, não, vc apenas define pra conectar em tal lugar e o path
Depois Use normal etc.
Depois Use normal etc.
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 7928
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 1 vez
LetoDBf (fork) -> LetoDb com espinafre
Ola!
Antes de suas funções, basta setar o AMBIENTE.
Se quer ver as coisas(arquivos) que estão lá no servidor use as funções "NOVAS" do LETO para isso.
LETO_FILE()
LETO_DIRECTORY... em muitas outras, mas o básico você não mexe.
Saudações,
Itamar M. Lins Jr.
Antes de suas funções, basta setar o AMBIENTE.
Código: Selecionar todos
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.
...Aqui suas funções.
LETO_FILE()
LETO_DIRECTORY... em muitas outras, mas o básico você não mexe.
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.
- Nascimento
- Usuário Nível 4

- Mensagens: 763
- Registrado em: 19 Jul 2008 12:11
- Localização: OLINDA-PE
LetoDBf (fork) -> LetoDb com espinafre
então pelo que compreendi fica exatamente dessa forma
Código: Selecionar todos
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.
// chamada da net_use()
* dbf alias indice
if (!net_use("MCOCUP", "MCO","MCOCUP"))
quit
endif
**********************************************************
function Net_use
parameters lfile, lalias, lindex, lexcl, lretry
private lforever, v_arq,nomearq
lretry:= iif(Type("lretry") != "N", 500, lretry)
lexcl:= iif(Type("lexcl") != "L", .F., lexcl)
lforever:= lretry == 0
v_arq:= lfile + ".dbf"
do while (lretry > 0 .or. lforever)
if (lexcl)
use (lfile) alias (lalias) new exclusive
else
use (lfile) alias (lalias) new
endif
if (used())
exit
endif
if (mens(24, 11, "Arquivo nao liberado... AGUARDE ", 1) == 27)
exit
endif
lretry:= lretry - 1
enddo
if (used())
if (lindex = p_bancos+"MCOCUP")
if (!file(p_bancos+"MCOCUP.CDX"))
nomearq:= lindex
* Criando arquivo de indice
index on sui tag sui to (lindex)
set index to (lindex)
else
set index to (lindex)
endif
endif
endif
*************************************
A arte de programar é simplesmente fazer seus pensamentos serem interpretados por uma maquina
clipper 5.3 /harbour/minigui

