Erro ao gravar registro novo - dbappend()
Moderador: Moderadores
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Erro ao gravar registro novo - dbappend()
Quanto ao erro citado do Windows 95:
Aconteceu com WIndows 95 e Windows 98, problemas com drivers de rede realtek que vinham com eles.
Não sei dizer se eram as versões normais, ou as OSR2, que seguiram as duas.
Só sei que o problema veio nas duas versões, veio, foi embora, e retornou na outra.
Se não me engano, depois também retornou no Windows 2000.
O driver retornava tamanho inválido, o que fazia com que o sistema tentasse acessar um tamanho maior do que o verdadeiro.
Também acontecia com rede novell 3.11, quando ficava vários dias no ar.
O DBF acusava um registro a mais, o que causava erro em append.
Aconteceu com WIndows 95 e Windows 98, problemas com drivers de rede realtek que vinham com eles.
Não sei dizer se eram as versões normais, ou as OSR2, que seguiram as duas.
Só sei que o problema veio nas duas versões, veio, foi embora, e retornou na outra.
Se não me engano, depois também retornou no Windows 2000.
O driver retornava tamanho inválido, o que fazia com que o sistema tentasse acessar um tamanho maior do que o verdadeiro.
Também acontecia com rede novell 3.11, quando ficava vários dias no ar.
O DBF acusava um registro a mais, o que causava erro em append.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Erro ao gravar registro novo - dbappend()
Quando os terminais eram XP funcionavam perfeitamente!Itamar M. Lins Jr. escreveu:Olá!
Isso não irá resolver em definitivo.
Se antes funcionava ?
Erro ao gravar registro novo - dbappend()
Não José, estou dizendo é ALIAS->(dbappend()) mesmo, sem usar sua função no momento, entendeu ?JoséQuintas escreveu:Acho melhor não complicar.
Quando chama alias->( fAppend() ), a função já vai ser executada no alias indicado, não precisa complicar a função, além do mais, elimina parâmetro a mais, e evita esquecer dele.
Erro ao gravar registro novo - dbappend()
Então José, a vida inteira uso dbcommit(), como já disse, enquanto era XP com o WINDOWS SERVER 2012(que ainda utilizo) nunca tive problemas, com os terminais windows 7 que estou tendo problemas.JoséQuintas escreveu:Quanto ao Skip 0, testado também numa época usando Clipper+Sixcdx e VB6 com ADS Local, e não se trata nem de ficar visível na rede, mas também na mesma máquina em uso simultâneo.
NÃO SEI dizer sobre COMMIT, nunca usei, nunca precisei, e nunca testei.
Erro ao gravar registro novo - dbappend()
Então, no meu caso ele não grava nada, se gerasse pelo menos registro em branco, o caso seria outro, não deixa nem rastro.JoséQuintas escreveu:O DBF acusava um registro a mais, o que causava erro em append.
Erro ao gravar registro novo - dbappend()
Então Itamar, preciso tomar uma atitude, os problemas estão ocorrendo com frequência, com isso os usuários(vendedores) estão perdendo a credibilidade no sistema.Itamar M. Lins Jr. escreveu:Só vai resolver usando Terminal Service, LetoDbf. Nem usando Harbour com rede mapeada resolve, vira e mexe dá um problema de corromper indices, precisando no mínimo de reindexar.
LetoDBF, nunca estudei nada a respeito.
Se puder me contatar, por email ou zap, segue meus dados:
josadac@terra.com.br
34 9 9978 1974
Erro ao gravar registro novo - dbappend()
Itamar, vi conversas nesse link, algo sobre os terminais logarem com usuários diferentes, no final, falaram tbem em desativar SMB2, já tentou uma dessas experiencias ?Itamar M. Lins Jr. escreveu:https://comp.lang.clipper.visual-object ... on-network
Leia aqui tem alguma coisa explicando. O Harbour tem umas funções para desligar, mas não está atualizado para as novas versões do SMB. Talvez funcione, mas não evita os antivirus de atrapalhar. O Norton antivirus mesmo, pode sobrepor um arquivo DBF/CDX/NTX, achando que foi infectado.
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Erro ao gravar registro novo - dbappend()
Vai continuar sem teste se append funcionou.JSystem escreveu:Não José, estou dizendo é ALIAS->(dbappend()) mesmo, sem usar sua função no momento, entendeu ?
Tem que ser pelo menos isto:
Código: Selecionar todos
lOk := .F.
nCont := 0
DO WHILE nCont >= 20
IF dbAppend()
lOk := .T.
EXIT
ENDIF
OL_Yield() // OSLIB
nCont += 1
Inkey(0.1)
ENDDO
RETURN lOk
No fonte:
Código: Selecionar todos
IF ! alias->( FuncaoAppend() )
.....
ENDIF
Porque OSLIB?
Precisa liberar tempo para o Windows, principalmente pra ele conversar com o servidor.
O DOS é mais lerdo, talvez por isso não teve problemas com Clipper.
Ao mesmo tempo, detecção de teclado e mouse no Clipper causa 100% de uso de CPU, mesmo parado, por isso a OSLIB.
Nunca tive problema de rede com Clipper.
Com Harbour precisei fazer alguns ajustes, mas tudo bem.
Coloque o teste de append, ou nunca vai resolver seu problema.
Se falha, precisa tentar de novo, não apenas abandonar.
Sempre procurei usar o default do Windows.
Quando mencionam problemas aqui no fórum, nem sei do que estão falando, porque nunca tive nenhum, salvo exceções, como por exemplo testar se arquivo existe em determinadas versões do Windows.
Reindexava o aplicativo quando queria, as vezes demorava um ano ou mais.
Sempre default do Windows.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
-
Softwhouse
- Usuário Nível 3

- Mensagens: 324
- Registrado em: 07 Dez 2011 18:44
- Localização: Porto Alegre/RS
Erro ao gravar registro novo - dbappend()
Se for em Harbour, esse código não vai funcionar:
(ALIAS)->(DbAppend())
Por:
ALIAS->(DbAppend())
Troque:(ALIAS)->(dbappend())
if (ALIAS)->(dbrlock())
replace ...
(ALIAS)->(dbcommit(),dbunlock())
else
Alert()
Endif
(ALIAS)->(DbAppend())
Por:
ALIAS->(DbAppend())
Fernando
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Erro ao gravar registro novo - dbappend()
Meu recorde com DBF foram mais de 100 terminais simultâneos.
TODOS acessando o DBF de pedidos ao mesmo tempo.
Não sei o que é índice corrompido, a não ser aqueles problemas de Windows 95/98/2000 que citei.
Não sei o que é falhar append, a não ser aquele problema da rede novell 3.11, talvez há 30 anos atrás.
Essas funções que postei vém desde os tempos do Clipper.
TODOS acessando o DBF de pedidos ao mesmo tempo.
Não sei o que é índice corrompido, a não ser aqueles problemas de Windows 95/98/2000 que citei.
Não sei o que é falhar append, a não ser aquele problema da rede novell 3.11, talvez há 30 anos atrás.
Essas funções que postei vém desde os tempos do Clipper.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Erro ao gravar registro novo - dbappend()
Já utilizo faz tempo.JoséQuintas escreveu:Use pelo menos o OL_AutoYield(.T.) no início do aplicativo, e a OSLIB.
Beleza, entendi, vou seguir sua orientação e passar a testar o dbappend().
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Erro ao gravar registro novo - dbappend()
Meu backup mais antigo, de 2008.
Está aí a função da época.
Na época gravava o nome do usuário, pra mostrar aonde estava bloqueado.
Está aí a função da época.
Na época gravava o nome do usuário, pra mostrar aonde estava bloqueado.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Erro ao gravar registro novo - dbappend()
Tinha problema com indices corrompidos quando utilizava NTX e linkeditava com RTLINK, há uns 10 anos atrás, depois que passei trabalhar com CDX e BLINKER, não tive mais problema, estou tendo esse agora, com terminais WINDOWS 7.JoséQuintas escreveu:Meu recorde com DBF foram mais de 100 terminais simultâneos.
TODOS acessando o DBF de pedidos ao mesmo tempo.
Não sei o que é índice corrompido, a não ser aqueles problemas de Windows 95/98/2000 que citei.
Não sei o que é falhar append, a não ser aquele problema da rede novell 3.11, talvez há 30 anos atrás.
Essas funções que postei vém desde os tempos do Clipper.
Erro ao gravar registro novo - dbappend()
Valeu José!JoséQuintas escreveu: Meu backup mais antigo, de 2008.
Está aí a função da época.
Na época gravava o nome do usuário, pra mostrar aonde estava bloqueado.
Vou aplicar aqui.
Muito obrigado pela sua atenção!
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Erro ao gravar registro novo - dbappend()
Não faz tanto tempo assim que deixei de usar DBF.
Aliás, ainda tenho alguns.
Como nunca tive problemas, sem pressa de terminar os que restaram.
Aliás ....
Na imobiliária ainda tem muitos DBFs.
Talvez 30 ou mais usuários.
Como eu disse na minha migração pra MySQL, não tinha problema nenhum.
O que usam lá?
Desde o começo era muito Windows XP e Windows 7, e Windows Server.
E era limitado a 32 bits.
Depois de migrar pra Harbour, começaram a entrar Windows 7 64 bits, e Windows 10.
Continua tudo funcionando, nunca mexi na configuração de nenhuma máquina, nem das máquinas novas, que com certeza várias já foram trocadas.
Índice corrompido... nunca.
Lentidão por excluir muita coisa... isso acontecia, e só por esse motivo era feita a reindexação depois de meses.
Aliás, ainda tenho alguns.
Como nunca tive problemas, sem pressa de terminar os que restaram.
Aliás ....
Na imobiliária ainda tem muitos DBFs.
Talvez 30 ou mais usuários.
Como eu disse na minha migração pra MySQL, não tinha problema nenhum.
O que usam lá?
Desde o começo era muito Windows XP e Windows 7, e Windows Server.
E era limitado a 32 bits.
Depois de migrar pra Harbour, começaram a entrar Windows 7 64 bits, e Windows 10.
Continua tudo funcionando, nunca mexi na configuração de nenhuma máquina, nem das máquinas novas, que com certeza várias já foram trocadas.
Índice corrompido... nunca.
Lentidão por excluir muita coisa... isso acontecia, e só por esse motivo era feita a reindexação depois de meses.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/