[firebase-br] RES: RES: RES: RES: RES: Invalid Cursor

Rodrigo A. de Freitas rodrigo em solucoeseinformatica.com.br
Seg Ago 31 13:39:08 -03 2009


Você instalou um banco de dados alpha em produção nos clientes ? Deusdocéu,
não faça isso nunca!

Creio que o único jeito de você voltar atrás será gerando uma base no 2.1 à
partir do script do metadata no banco e usar um IBPump da vida para
preencher o banco de dados. 

[]'s

Rodrigo A. de Freitas
Análise & Desenvolvimento

Soluções & Informática

-----Mensagem original-----
De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em
nome de Dominio Informatica
Enviada em: 31 de agosto de 2009 11:00
Para: FireBase
Assunto: Re: [firebase-br] RES: RES: RES: RES: Invalid Cursor

Bom dia Rodrigo,

Como gostaria de voltar atraz, o problema é que em todos os meus clientes ja

estao com o 2.5 e
fui tentar instalar o FB2.1 deu erro dizendo que a base era incompativel.

Grato.
Rodrigo

----- Original Message ----- 
From: "Rodrigo A. de Freitas" <rodrigo em solucoeseinformatica.com.br>
To: "'FireBase'" <lista em firebase.com.br>
Sent: Monday, August 31, 2009 10:13 AM
Subject: [firebase-br] RES: RES: RES: RES: Invalid Cursor


Rodrigo,

Antes de "apanhar" com um erro de invalid cursor, eu abandonaria o firebird
2.5 alpha que você está usando, eu jamais usaria versões pré-produção mesmo
em ambientes de teste.

Desinstale o alpha, instale a versão 2.1.2 e refaça os seus testes.

[]'s


Rodrigo A. de Freitas

Análise & Desenvolvimento
Soluções & Informática

-----Mensagem original-----
De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em
nome de Dominio Informatica
Enviada em: 31 de agosto de 2009 09:42
Para: FireBase
Assunto: Re: [firebase-br] RES: RES: RES: Invalid Cursor

Bom dia, Rodrigo,

Gostaria de saber o que gera o Invalid Cursor reference, e como posso
resolver
isso no meu sistema. Não da o problema só no Max, mas sim em outras
operações tb, como append ou Edit. Uso IBO.

Grato.
Rodrigo

----- Original Message ----- 
From: "Rodrigo A. de Freitas" <rodrigo em solucoeseinformatica.com.br>
To: "'FireBase'" <lista em firebase.com.br>
Sent: Monday, August 31, 2009 9:35 AM
Subject: [firebase-br] RES: RES: RES: Invalid Cursor


Luis,

Eu já tive problemas assim num sistema que gerava um seqüencial para números
de controle de lançamentos contábeis e fiscais. Frequentemente eu tive
problema de numeração duplicada.

Sempre que eu tenho uma situação como a sua, o que costumo fazer é controlar
a numeração seqüencial num campo à parte, dentro de uma constraint unique. A
chave primária da tabela sempre é um campo inteiro, utilizando-se um
generator.


[]'s

Rodrigo A. de Freitas
Análise & Desenvolvimento

Soluções & Informática

-----Mensagem original-----
De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em
nome de Luis
Enviada em: 31 de agosto de 2009 08:19
Para: 'FireBase'
Assunto: [firebase-br] RES: RES: Invalid Cursor

Só para seu conhecimento, o primeiro software que fiz e ainda é meu carro
chefe é um sistema de normas técnicas onde a rastreabilidade é primordial,
então a sequência é um indicador de que não houve exclusão de registros,
por isso meu ID não é autonumeração, mas sim seqüencial real.

Como o sistema é multiusuário, claro que há verificação de erros para esse
caso, então se soma + 1 e tenta novamente até conseguir. Claro que
dificilmente terá duas ou três tentativas seguidas, mesmo porque o sistema
não é uma frente de caixa.

Obrigado.
Luis

-----Mensagem original-----
De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em
nome de Sérgio Alexandre Gianezini
Enviada em: domingo, 30 de agosto de 2009 19:10
Para: lista em firebase.com.br
Assunto: Re: [firebase-br] RES: Invalid Cursor

"Luis" <luisfirevb em gmail.com> escreveu na mensagem
news:002301ca298d$301f36c0$905da440$@com...
Sérgio mas quando não pode haver quebra seqüencial na numeração, não digo na
ID da tabela, mas no código seqüencial de um tipo de registro que deve ser
sempre 1,2,3,4 etc... e se abordar uma inclusão, não se perca esse número
como acontece no gererator?

O único caso desse, que já vi acontecer, é em relação ao NSU catarinense,
nesse caso, a tabela é preenchida ANTES com um range de números, e quando
ela está chegando no limite, é re-preenchida com mais um range...
Acho extremamente dificil ter uma necessidade de numeros que não pode
quebrar ordem, tenho mais de 12 anos trabalhando com software comercial, em
áreas diversas, e só vi o caso do NSU mesmo... que já tem solução,
diga-se...

Max() não funciona corretamente se a tabela recebe inclusões por mais de um
usuário, vai dar chave duplicada mais cedo ou mais tarde... mas pode tentar
via forceps, pega max, tenta salvar, se deu erro, pega max, tenta salvar...

Pseudo codigo pascal:

Repeat
  FlagOK := True;
  TabDado.Edit;
  TabDadoCHAVE.AsInteger = PegaMax('Tabela','Chave') + 1;
  TabDado.Post;
  Try
    TabDado.ApplyUpdate;
   Except
     FlagOK := False; // Verificar a mensagem, se é chave duplicada...
  End;
Until FlagOK;






______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para saber como gerenciar/excluir seu cadastro na lista, use:
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa
Nenhum vírus encontrado nessa mensagem recebida.
Verificado por AVG - www.avgbrasil.com.br
Versão: 8.5.409 / Banco de dados de vírus: 270.13.72/2337 - Data de
Lançamento: 08/31/09 05:50:00


______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para saber como gerenciar/excluir seu cadastro na lista, use:
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa

__________ NOD32 4383 (20090831) Information __________

This message was checked by NOD32 antivirus system.
http://www.eset.com



______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para saber como gerenciar/excluir seu cadastro na lista, use:
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa
Nenhum vírus encontrado nessa mensagem recebida.
Verificado por AVG - www.avgbrasil.com.br
Versão: 8.5.409 / Banco de dados de vírus: 270.13.72/2337 - Data de
Lançamento: 08/31/09 05:50:00


______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para saber como gerenciar/excluir seu cadastro na lista, use: 
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa

__________ NOD32 4383 (20090831) Information __________

This message was checked by NOD32 antivirus system.
http://www.eset.com



______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para saber como gerenciar/excluir seu cadastro na lista, use:
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa
Nenhum vírus encontrado nessa mensagem recebida.
Verificado por AVG - www.avgbrasil.com.br 
Versão: 8.5.409 / Banco de dados de vírus: 270.13.72/2337 - Data de
Lançamento: 08/31/09 05:50:00





Mais detalhes sobre a lista de discussão lista