Página 1 de 7
Uso de letodb
Enviado: 31 Out 2023 07:51
por Mario Mesquita
Bom dia a todos.
Itamar, claro que se vcs estão usando com sucesso o Leto é uma boa opção. Talvez tenha lido algo e imagino que tenha sido questão de adaptação.
Ter performance similar ao SQL é muito interessante. Disso eu não sabia. Embora nem precise disso com bases de pequeno tamanho. Mas isso de reindexar realmente é chato, mesmo sendo pouco necessário quando se usa CDX.
Saudações,
Mario.
Lentidão ao abrir formulários em rede.
Enviado: 31 Out 2023 08:39
por Itamar M. Lins Jr.
Olá!
Ter performance similar ao SQL é muito interessante.
Similar não, melhor.
SQL precisa ENCHER uma ARRAY com o RESULTADO(para manipular). E depois separar o que foi modificado e enviar para o servidor, DBF não precisa.
Tudo que vc alterar nos BROWSERs por exemplo vai precisar marcar a linha modificada e reenviar para o servidor para gravar... Eu uso muito esse recurso. DBF(letodbf) não precisa.
SQL(a linguagem) é melhor por conta de muitos fatores, mas não todos.
SQL é melhor, mas não é por conta da velocidade e nem é por conta da segurança se comparado com LetoDBf.
Saudações,
Itamar M. Lins Jr.
Lentidão ao abrir formulários em rede.
Enviado: 01 Nov 2023 09:17
por paiva
BOM dia
Desculpe a ignorancia.
tentei usar letodb ou uma outra versao (parece que tem 2 )
uso o XHB comercial ANTIGAO
com
REQUEST RMDBFCDX // Utilize essa linha para utilizar a rotina para filtros rapidos
RddSetDefault("RMDBFCDX") // Utilize esse linha para definir CDX como padrao usando fitros otimizados
fica MUITO rápido
a uns 15 anos rs quando passei a usar tive um ganho de 30% em performance sobre o CDX
para usar o LE... ele é em harbour e achei que ficou +++ lento que o XHB em rede 2 pcs BONS
pode ser que NAO tenha usado corretamente.
Lentidão ao abrir formulários em rede.
Enviado: 21 Fev 2024 18:23
por marcosLP
Isso acontecia muito com o bom e velho clipper, que o Ramalho o tenha.
Porém era problema memso de estrutura de iniciante e a rede do cliente era ruim e os pcs mais ainda.
Agora na minigui melhoru um bocado e como não uso mais browse e só grid nem se nota a velocidade caindo, agora se usar o LetoDB e usar algo que fique pesquisando de forma convencional ele demora mais ainda seja NTX, CDX, SDX e outros.
Abre-se o banco de dados for ada janela da aplicação pois separar dados de telas é o segredo para quem veio do clipper para HMG e ai migrou de vez para a HMGS.
Espero ter sido claro e ajudado!
Lentidão ao abrir formulários em rede.
Enviado: 22 Fev 2024 13:53
por Itamar M. Lins Jr.
Olá!
agora se usar o LetoDB e usar algo que fique pesquisando de forma convencional ele demora mais ainda seja NTX, CDX, SDX e outros.
Não entendi nada.
Tem como colocar os códigos aqui para demonstrar o problema ?
O pessoal fala, mas não demostra o problema seja com LetoDb ou com LetoDbf.
Eu e muita gente usa e não temos problema nenhum de espera é tudo instantâneo.
O que é pesquisar de forma convencional com LetoDbf ?
Saudações,
Itamar M. Lins Jr.
Lentidão ao abrir formulários em rede.
Enviado: 22 Fev 2024 13:57
por Itamar M. Lins Jr.
Olá!
Abre-se o banco de dados for ada janela da aplicação pois separar dados de telas é o segredo para quem veio do clipper para HMG
Aqui entendi menos ainda.
Qual é o segredo ?
O que é separar dados de telas ? pq é diferente do clipper ?
Saudações,
Itamar M. Lins Jr.
Lentidão ao abrir formulários em rede.
Enviado: 22 Fev 2024 14:49
por Itamar M. Lins Jr.
Olá!
E que bobagem é essa de acesso ao HD ?
Abre ai o CHROME num CPU com 4Gib, vê se sobra alguma coisa para outras aplicações, como vc sabe se o windows não faz swap em disco ? Tá desligado isso no Windows ?
Observe o tamanho de um arquivo no SPOOL de impressão com 20 páginas por exemplo, vc acha que isso não pesa como um todo na ora que está tudo em funcionamento ?
Etc, etc, etc e é claro etc!
Quando pedimos em SQL algum resultado ele lê do além do CÉU, da varanda, do jardim as informações... DBF lê do banheiro, da cozinha só pode rsrsrsr!
Tudo irá depende de MÚLTIPLOS fatores.
Saudações,
Itamar M. Lins Jr.
Uso de letodb
Enviado: 22 Fev 2024 21:46
por JoséQuintas
Movido para banco de dados.
Uso de letodb
Enviado: 03 Abr 2024 12:52
por paiva
boa tarde
TENTANDO testar denovo o letodb
a BARRA esta correta ? / ou \
preciso referenciar o \dbdc ?
estou TESTANDO no Proprio pc (servidor)
sera o meu letodb.exe do servidor ? ele tem que ser executado em alguma pasta específica ?
estou executando ele a partir do: C:\letodbtray\bin\letodb.exe
o arquivo..: \dbdc\paiva\sdata.dbf
fala conectado ao servidor: //192.168.0.85:2812 ++ nao acho com o FFile (depois vejo isso) e da esse erro ao abrir o arquivo
Error DBFCDX/1001 Erro de abertura: //192.168.0.85:2812\paiva\sdata.dbf (DOS Error 53)
Called from BARRA.PRG->LOCKERRHAN(1774)
Called from BARRA.PRG->(b)INITHANDL$(1765)
Called from barcode.prg->LOCKERRHAN(1251)
Called from barcode.prg->(b)INITHANDL$(1242)
Called from ->DBUSEAREA(0)
Called from PROMULT.PRG->PROUSE(236)
Called from gdata.prg->GDATA(21)
Called from seletor.prg->MAIN(3491)
HwGUI 2.17 xHarbour 1.2.3 Intl. (SimpLex) (Build 20150224)
Date:03/04/24
Time:12:46:30
INI do letoDB
[MAIN]
Port = 2812
DataPath = c:\dbdc
Default_Driver = CDX
Lower_Path = 0 ; 1, converter todos os caminhos para minúsculas
EnableFileFunc = 1 ; 1, Ativa leto_file(), leto_ferase(), leto_frename()
EnableAnyExt = 0 ; 1, é Ativado a criação de arquivos de dados (DBF)
Pass_for_Login = 0 ; 1, autenticação do usuário é necessária p/ acessar
Pass_for_Manage = 0 ; 1, a autenticação necessária p/ func Leto_mggetinfo()
Pass_for_Data = 0 ; 1, a autenticação necessária acesso aos dados
Pass_File = "leto_users" ; caminho, arquivo de informações dos usuários
Crypt_Traffic = 0 ; 1, passa os dados pela a rede cripitografado
Share_Tables = 1 ; 1, uso das bases compartilhado com outras aplicacoes
[DATABASE]
DataPath = c:\dbdc
Driver = CDX
Uso de letodb
Enviado: 03 Abr 2024 14:10
por Itamar M. Lins Jr.
Olá!
Como está o comando USE ou dbUseArea() ??
Saudações,
Itamar M. Lins Jr.
Uso de letodb
Enviado: 03 Abr 2024 14:59
por paiva
Obrigado Itamar
if select( parquivo ) == 0
*msgstop("use plocalarq = "+plocalarq)
use (plocalarq) NEW
else
select (parquivo)
*msgstop("ja existia aberto "+parquivo)
endif
if neterr() ...
Uso de letodb
Enviado: 03 Abr 2024 15:07
por Itamar M. Lins Jr.
Olá!
Ta parecendo que não está ativando(usando) o letodb
Tá conectando ?
Código: Selecionar todos
REQUEST DBFCDX, DBFFPT, DBFDBT, LETO
Function main
LOCAL cServidor := "\\192.168.0.85:2812\"
RDDSetDefault("LETO")
nConect := leto_Connect( cServidor )
use paiva\sdata new shared
browse()
Teste assim, com PRG bem pequeno. Não tem como saber ai seu código como está.
E vc usa link qual LIB no .exe ? Pq eu não sei como vc fez para criar a LIB do letodbf com xHarbour.
Saudações,
Itamar M. Lins Jr.
Uso de letodb
Enviado: 03 Abr 2024 19:03
por paiva
Aleluia MUITO Obrigado
um passo de cada vez
estou conseguindo abrir os arquivos...
estrutura física: \dbdc ugempr.dbf
\dbdc\paiva sdata.dbf
\dbdc\usr\sfa crloja.dbf
abriu arquivo: //192.168.0.85:2812\ugempr
abriu arquivo: //192.168.0.85:2812\paiva\sdata
abriu arquivo: //192.168.0.85:2812\usr\sfa\crloja
AGORA estou tentando fazer o if File() usando o comando leto_file() Tem que ser com ele correto ?
xfile = [//192.168.0.85:2812\paiva\sdata.dbf]
if leto_file(xfile)
NAO encontra o arquivo
endif
xfile = [\paiva\sdata.dbf]
if leto_file(xfile)
NAO encontra o arquivo
endif
IF LETO_FILE("//192.168.0.49:2812\usr\sfa\crloja.dbf")
NAO encontra o arquivo
endif
IF LETO_FILE("\usr\sfa\crloja.dbf")
NAO encontra o arquivo
endif
qual seria a forma CORRETA ?
EU TAMBEM uso MUITO: copy file, USE , etc
use \dbdc\ugmenu
copy file \dbdc\wcrpeda.dbf to &pdir\crpedad.dbf
xarqe = pdir+[\crcori1.cdx]
erase &xarqe
index on empresa+filial+usuario to &pdir\crcori1
quero fazer funcionar cada comando para poder ver a DIFICULDADE para Converter
acredito que o EXE deve funcionar com DBF e com o LETO
através de um parâmetro de configuração no meu caso a variável psql = [leto] ou [dbf]
Paiva
Uso de letodb
Enviado: 03 Abr 2024 20:35
por Itamar M. Lins Jr.
Olá!
Não coloque o endereço. //192...
xfile = [//192.168.0.85:2812\paiva\sdata.dbf] //<- assim tá errado!
Código: Selecionar todos
xFile := "paiva\sdata.dbf" //<- use assim
if leto_file(xfile)
Não precisa ficar usando //192... O leto já sabe disso é desnecessário, vai ficar \\192.168.0.85:2812\ \\192.168.0.85:2812\paiva\sdata.dbf DUAS VEZES! Pq já foi definido.
Saudações,
Itamar M. Lins Jr.
Uso de letodb
Enviado: 04 Abr 2024 15:40
por paiva
Itamar.
estou testando no servidor.
estou apanhando no file() e no erase
no file seto \paiva\sdata.dbf ++ dentro da funcao tiro a 1 barra
+++ mesmo passando a variavel ou a constante "\paiva\sdata.cdx" nao funciona
leto_ferase("\usr\sfa\leto.cdx") NAO deleta
leto_ferase("usr\sfa\leto.cdx") NAO deleta
* seta data a partir do arq \paiva\sdata ( do servidor)
xarq = [\paiva\sdata.dbf]
if Ffile(xarq)
function ffile(xfile)
if at(".DBF", upper(xfile)) > 0
xfile = alltrim(substr(xfile,2,70))
IF LETO_FILE(xfile)
msgstop("leto_file encontrou: "+xfile)
return(.t.)
ELSE
msgstop("leto_file NAO encontrou: "+xfile)
return(.f.)
endif
else
if file(xfile)
return .t.
else
return .f.
endif
ENDIF
return(.f.)