[firebase-br] RES: Firebird 4.0 - Erro no comando sql utilizando somatória "SUM"

Mário Reis mariodosreyx em gmail.com
Terça Julho 26 06:45:14 -03 2022


Já agora,  seria interessante compartilhar connosco que compnente de acesso
está a usar. Eu estou a testar com ibx e firedac
E até agora  não dei por nada. Está tudo a correr como esperado. Vou testar
ainda com o ZeosDbo

A segunda, 25/07/2022, 13:28, José Mauricio Barbisan Zottis via lista <
lista em firebase.com.br> escreveu:

> olá.
> Se usar Delphi com Firedac, pode configura-lo para quando receber um tipo
> de dados, converter para outro, isso em âmbito geral o por componente
>
> Em seg., 25 de jul. de 2022 às 10:21, Carlos H. Cantu via lista <
> lista em firebase.com.br> escreveu:
>
> > Isso não é bug e o problema não é no Firebird, mas sim no aplicativo
> > (componente de
> > acesso) que está retornando o erro pra você, pois ele não está
> > reconhecendo os
> > novos tipos de dados de 128 bits usados no Firebird 4. Há poucos dias
> teve
> > mensagens aqui na lista sobre esse mesmo assunto.
> >
> > PS: Você pode usar o parâmetro DataTypeCompatibility no firebird.conf
> para
> > fazer com
> > que o FB 4 simule o comportamento da versão 3.0 ou 2.5. Sugiro que você
> > leia meu
> > guia de migração para o Firebird 4.
> >
> >
> > []s
> > Carlos H. Cantu
> > eBook Guia de Migração para o FB 4 - www.firebase.com.br/guiafb4.php
> > www.FireBase.com.br - www.firebirdnews.org - blog.firebase.com.br
> >
> > ORdOvl> Conseguimos descobrir que existe um "bug" na versão 4.0 do
> > Firebird, não é
> > ORdOvl> possível usar o comando sql de somatória "sum" sem utilizar o
> CAST
> > para
> > ORdOvl> especificar o tipo de dados, o que, não é obrigatório nas versões
> > anteriores
> > ORdOvl> do Firebird e nem em outros bancos de dados.
> > ORdOvl> Desta forma se for usado o comando SELECT SUM(VALOR) FROM TABELA
> > vai dar
> > ORdOvl> erro no Firebird 4.0, só funciona assim:  SELECT SUM(cast(VALOR
> as
> > numeric))
> > ORdOvl> FROM TABELA.
> >
> > ORdOvl> O problema é que temos cerca de 2.000 programas em nosso sistema,
> > é um
> > ORdOvl> trabalho insano verificar todos que usam o comando de somatória,
> > se alguém
> > ORdOvl> souber de outra solução mais prática favor avisar.
> >
> > ORdOvl> Grato.
> >
> > ORdOvl> Odir Rodrigues de Oliveira
> > ORdOvl> Clipp-net Informática
> > ORdOvl> Fone: +55 16 3307-7369
> > ORdOvl> Cel: +55 16 98137-2103
> > ORdOvl> Site: www.clippnet.com.br
> >
> > ORdOvl> -----Mensagem original-----
> > ORdOvl> De: lista <lista-bounces em firebase.com.br> Em nome de Odir
> > Rodrigues de
> > ORdOvl> Oliveira via lista
> > ORdOvl> Enviada em: sexta-feira, 22 de julho de 2022 16:29
> > ORdOvl> Para: 'FireBase' <lista em firebase.com.br>; 'Carlos H. Cantu'
> > ORdOvl> <listas em warmboot.com.br>
> > ORdOvl> Cc: Odir Rodrigues de Oliveira <odir em clippnet.com.br>
> > ORdOvl> Assunto: [firebase-br] Firebird 4.0 - Erro no comando sql CASE
> WHEN
> >
> > ORdOvl> Estamos fazendo os primeiros testes no Firebird 4.0 e ao executar
> > o comando
> > ORdOvl> sql abaixo que utilizamos normalmente na versão 2.5 e 3.0.7, está
> > retornando
> > ORdOvl> o seguinte erro no nosso programa:
> > ORdOvl>  [ODBC Firebird Driver]not yet implemented
> >
> > ORdOvl> Executando o mesmo comando sql no IbExpert retorna:
> > ORdOvl> An error was found in the application program input parameters
> for
> > the SQL
> > ORdOvl> statement.
> > ORdOvl> Incorrect values within SQLDA structure.
> > ORdOvl>
> >
> ----------------------------------------------------------------------------
> > ORdOvl> ---------
> > ORdOvl> SQLCODE: -804
> > ORdOvl> SQLSTATE: HY000
> > ORdOvl> GDSCODE: 335544713
> >
> > ORdOvl> Comando SQL:
> > ORdOvl> select sum(case when EntradaSaida='E' THEN QUANTIDADE else
> > -QUANTIDADE end)
> > ORdOvl> as mSaldo from CE_Movimento where Empresa=1 and Filial=1 and
> > Produto='1' and
> > ORdOvl> DEPOSITO=1 and DataMovimento<='07/22/2022'
> >
> > ORdOvl> Alguém saberia informar o que pode ser este problema?
> >
> > ORdOvl> Odir Rodrigues de Oliveira
> > ORdOvl> Clipp-net Informática
> > ORdOvl> Fone: +55 16 3307-7369
> > ORdOvl> Cel: +55 16 98137-2103
> > ORdOvl> Site: www.clippnet.com.br
> >
> >
> > ______________________________________________
> > 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://www.firebase.com.br/pesquisa_lista.html
> >
>
>
> --
> ______________________________________________
> 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://www.firebase.com.br/pesquisa_lista.html
>


Mais detalhes sobre a lista de discussão lista