Página 6 de 13

LetoDBf (fork) -> LetoDb com espinafre

Enviado: 30 Out 2018 11:01
por Jairo Maia
Olá porter,

Eu consegui entender como usar o LetoDBf com esses exemplos postados pelo Toledo. Dê uma estudada no .Prg.

Nota: A conexão remota com o domínio pctoledo.noip.me não vai funcionar, ela funcionou na época e foi só para exemplo.
LetoTeste.rar
(1.01 MiB) Baixado 383 vezes

LetoDBf (fork) -> LetoDb com espinafre

Enviado: 30 Out 2018 17:48
por porter
Olá pessoal,
Quando tento inicializar o serviço LetoDbf, no log está retornando essa mensagem de erro, diz que letoudf.hrb não está presente em c:\letodbf\bin, como encontro esse arquivo, ele tem que ser copiado de algum lugar ou gerado, no letodb.ini já fiz a correção do DataPath apontando para \estoque, que é a pasta onde estão os arquivos DBF, se alguém puder me dar uma luz agradeço.

10.30.2018 17:29:56 UDF file: C:\LETODBF\bin\letoudf.hrb not present.
10.30.2018 17:29:56 INFO: LetoDBf Server 3.00, will run at port :2812 ( internal also used :2813 )
10.30.2018 17:29:56 INFO: DataPath=\estoque, ShareTables=0, NoSaveWA=1, max database=999
10.30.2018 17:29:56 INFO: LoginPassword=0, CacheRecords=21, LockExtended=0
10.30.2018 17:29:56 DEBUG second socket: 136 for errors established
10.30.2018 17:29:56 DEBUG thread3() with pipe handle: 144 started ..

LetoDBf (fork) -> LetoDb com espinafre

Enviado: 30 Out 2018 17:58
por Itamar M. Lins Jr.
Ola!
É um aviso. Eu não uso letoudf.hrb também.
Se der erro vai estar no arquivo .log posta ele e o letodb.ini

Saudações,
Itamar M. Lins Jr.

LetoDBf (fork) -> LetoDb com espinafre

Enviado: 30 Out 2018 18:19
por porter
boa tarde Itamar, obrigado por sua atenção.

C:\LetoDbf\bin\letodbf.log

Código: Selecionar todos

10.30.2018 17:29:56       UDF file: C:\LETODBF\bin\letoudf.hrb not present.
10.30.2018 17:29:56 INFO: LetoDBf Server 3.00, will run at port :2812 ( internal also used :2813 )
10.30.2018 17:29:56 INFO: DataPath=\estoque, ShareTables=0, NoSaveWA=1, max database=999
10.30.2018 17:29:56 INFO: LoginPassword=0, CacheRecords=21, LockExtended=0
10.30.2018 17:29:56 DEBUG second socket: 136 for errors established
10.30.2018 17:29:56 DEBUG thread3() with pipe handle: 144 started .. 
C:\LetoDbf\bin\letodb.ini

Código: Selecionar todos

;Server = 192.168.2.47
;IP = 192.168.2.47
Port = 2812
DataPath = /estoque/
;LogPath = /tmp
Default_Driver = CDX
;Lock_Scheme = 6
;Memo_Type = FPT
Share_Tables = 0
No_Save_WA = 1
Lower_Path = 0
EnableFileFunc = 1
EnableAnyExt = 1
Allow_UDF = 1
Pass_for_Login = 0
Pass_for_Manage = 0
Pass_for_Data = 0
;Pass_File = leto_users
Cache_Records = 21
;Max_Vars_Number = 1000
;Max_Var_Size = 67108864
;Tables_Max  = 999
;Users_Max = 99
Debug = 1
Optimize = 1
;AutOrder = 0
;ForceOpt = 0
;TimeOut = 360
;Zombie_Check = 0
;Server_User = advantage
;Server_UID = 1000
;Server_GID = 4
;BC_Services = letodb;
;BC_Interface = eth2
;BC_Port = 2812
;SMB_SERVER = 1
DataBase = /
Backup = /tmp/backup
Mask = *.dbf,*.dbt,*.ntx
Lock = 1
Seconds = 30
Wait = 1
ArcCmd = tar -cvzf /tmp/backup/leto.tar.gz /tmp/backup/*

LetoDBf (fork) -> LetoDb com espinafre

Enviado: 30 Out 2018 20:25
por Itamar M. Lins Jr.
Ola!
Sim qual é o problema ?
Dá erro onde ?
Em todo caso, use /estoque. Não use /estoque/
Veja se é isso.

Saudações,
Itamar M. Lins Jr.

LetoDBf (fork) -> LetoDb com espinafre

Enviado: 31 Out 2018 09:29
por porter
Olá,
Sim qual é o problema ?
Dá erro onde ?
Em todo caso, use /estoque. Não use /estoque/
O LetoDb eu consigo iniciar, mas o LetoDbf, dá esse erro quando tento iniciar em serviços.
Em serviços tento iniciar o LetoDbf Service

O Windows não pôde iniciar o serviço LetoDBf Service em Computador local.
Erro:1053: O Serviço não respondeu à requisição de inicio ou controle em tempo hábil.

LetoDBf (fork) -> LetoDb com espinafre

Enviado: 31 Out 2018 10:01
por Itamar M. Lins Jr.
Ola!
Não está misturando os letos ai não ?
Tem que remover um com o comando do windows.

Código: Selecionar todos

sc delete letodb_service
Se já tem um não vai rodar o outro, a porta TCP é a mesma. 2812 ai vai dar "PAU" mesmo.
O nome do serviço do LetoDb é "letodb_service" e do LetoDbf é "letodbf_service". Ou um ou outro os dois não vai não.
Para parar o serviço, ficar testando A ou B use:

Código: Selecionar todos

net stop letodb_service ou net stop letodbf_service
Mas quando reiniciar a maquina o windows vai rodar eles e vai ter problemas com o "letodbf_service" rodadando na mesma porta 2812. Melhor remover com o comando "sc".
Lembrem-se que "letodbf install" "instala ele como serviço" e sempre que ligar o computador ele vai rodar. Só faz uma vez!

Saudações,
Itamar M. Lins Jr.

LetoDBf (fork) -> LetoDb com espinafre

Enviado: 31 Out 2018 10:26
por Itamar M. Lins Jr.
Ola!
Teve essa pergunta para quem usa LINUX.
Infelizmente o erro de abertura nos módulos do sistema ainda persistem, mas hoje irei verificar as rotinas novamente.
Esse erro provavelmente é problema de nomes de DBF's com MAIÚSCULAS e minúsculas. Mudar tudo para minúsculas, inclusive dentro do PRG.
Não adianta o PRG abrir com "use CLIENTES.DBF" e o dbf ser clientes.dbf

Saudações,
Itamar M. Lins Jr.

LetoDBf (fork) -> LetoDb com espinafre

Enviado: 31 Out 2018 12:35
por porter
Olá Itamar, obrigado por sua paciência e atenção

Agora deu certo, o LetoDbf Service está Iniciado
Em C:\LETODBF executei o hbmk2 letodbsvc.hbp e hbmk2 rddleto.hbp
Em C:\LETODBF\BIN letodb install,

Agora vou testar no sistema, com certeza terei que fazer muitos ajustes.

LetoDBf (fork) -> LetoDb com espinafre

Enviado: 31 Out 2018 13:47
por Itamar M. Lins Jr.
Ola!
Agora vou testar no sistema, com certeza terei que fazer muitos ajustes.
Faça seus testes e depois se puder informar os resultados, seremos gratos.
Não vai se arrepender. Eu já ia sair do DBF, parar de usar, mas ai com LetoDb tô aqui usando DBF e irei usar por um bom tempo.

Saudações,
Itamar M. Lins Jr.

LetoDBf (fork) -> LetoDb com espinafre

Enviado: 01 Nov 2018 13:36
por rossine
Olá,

Compilei e executei o exemplo acima e achei bem interessante e também pelo fato de se ter que fazer pouca mudança no código que já uso para RDDCDX.

Me corrijam se eu estiver errado, mas pelo pouco que entendi, toda a manipulação do DBF ocorrem no servidor através do servidor do "LetoDBF" e com isto
o banco de dados danifica menos e os índices corrompem menos também quando ocorre por exemplo um pique de luz.
E parece que também à um ganho de velocidade na operações e outros benefícios tipo, acesso remoto/local via TcpIP, etc...

Seria isto ?

Obrigado,

LetoDBf (fork) -> LetoDb com espinafre

Enviado: 01 Nov 2018 15:04
por fladimir
Pessoal q esta testando, façam testes com Índices ADDITIVE MEMORY (temporários) e tais indices com clausulas FOR veja como se comporta se ocorre tudo ok...

Tipo :

Código: Selecionar todos

DBUseArea( .T., 'LETO', 'Clientes', 'Clientes', .T.)
DBSetIndex('Clientes.CDX')
Index On Clientes->Campo  TAG Clientes1 to Clientes ADDITIVE MEMORY
Index On Clientes->Campo2 TAG Clientes2 to Clientes ADDITIVE MEMORY
Index On Clientes->Campo3 TAG Clientes3 to Clientes ADDITIVE MEMORY
Index On Clientes->Campo4 TAG Clientes4 to Clientes FOR  Clientes->Ativo == 'S'  ADDITIVE MEMORY
Eu não recordo agora como foi um teste q fiz e deu um erro, vou tentar simular novamente, mas como já tem colegas testando já façam testes tb com indices temporarios e vejam como se comportam, talvez já tenha solucionado o problema q tive ou eu q fiz errado.

Abraço.

LetoDBf (fork) -> LetoDb com espinafre

Enviado: 01 Nov 2018 15:13
por Jairo Maia
Itamar M. Lins Jr. escreveu:Esse erro provavelmente é problema de nomes de DBF's com MAIÚSCULAS e minúsculas. Mudar tudo para minúsculas, inclusive dentro do PRG.
Itamar, não uso Linux, mas não seria apenas colocar no .INI do LetoDbf o comando: Lower_Path = 1?

LetoDBf (fork) -> LetoDb com espinafre

Enviado: 01 Nov 2018 15:30
por rossine
Olá,

Rodando o exemplo postado, estou tentando acessar de 2 computadores e está ocorrendo o erro:

Error LETO/1006 Erro de abertura: nomes.cdx in use by other

Teria que configurar algo ?

LetoDBf (fork) -> LetoDb com espinafre

Enviado: 01 Nov 2018 17:02
por porter
Olá,
Com o LetoDbf, se for abrir um arquivo, dessa forma:

Código: Selecionar todos

USE C:\ESTOQUE\PRODUTOS.DBF EXCLUSIVE
erro: Error LETO/1001 Erro de abertura: \estoque\\produtos.dbf

Com o LetoDbf, como seria esse comando ?

Harbour 3.2.0 dev