[firebase-br] soma na view
W O
sistemas2000profesional em gmail.com
Ter Jan 28 22:59:41 -03 2014
En tu último COALESCE() no pongas 0, pon 1.
No se puede dividir por 0 pero sí se puede dividir por 1.
Como alternativa puedes usar la función IIF()
IIF(ip.qtde_vendido > 0, sum(coalesce(ip.qtde_separado,0)) /
sum(coalesce(ip.qtde_vendido,0)) * 100, 0) AS Percentual
Saludos.
Walter.
2014-01-28 Jose Luiz de Medeiros <joseluiz em digitoneletronica.com.br>
> boa noite.
>
> preciso nessa view retornar o percentual de uma determinada consulta:
>
> CREATE VIEW VW_PROD_PEDIDO(
> PEDV,
> DATA_OPERACAO,
> NOME_CLI,
> CIDADE,
> UF_CLI,
> COD_PROD,
> DESC_PROD,
> idcarga,
> VENDIDO,
> SEPARADO,
> PERCENTUAL)
> AS
> select
> p.pedv,p.data_operacao,p.nome_cli,p.cidade,p.uf_cli,ip.cod_prod,ip.desc_prod,ic.id_carga,
> sum(coalesce(ip.qtde_vendido,0)) as vendido,
> sum(coalesce(ip.qtde_separado,0)) as separado,
> sum(coalesce(ip.qtde_separado,0)) /
> sum(coalesce(ip.qtde_vendido,0)) * 100 AS Percentual -------> erro aqui
>
> from pedido p
> inner join item_pedido ip on(ip.pedv = p.pedv)
> inner join item_carga ic on(ic.id_pedido = p.pedv)
>
> group by
>
> p.pedv,p.data_operacao,p.nome_cli,p.cidade,p.uf_cli,ip.cod_prod,ip.desc_prod,ic.id_carga
>
> no ultimo sum tenho que pegar o % de cada item separado, só que quando
> estiver qtde_vendido = 0 e qtde_separado = 0 recebo o erro :
> arithmetic overflow or divison by zero has occurred com certeza sei que
> não posso dividir 0 por 0.
>
> mas como posso contornar esse problema?
>
> grato:
>
>
>
>
>
> Jose Luiz de Medeiros
>
> -----------------------------------
>
>
> Programmer & TI Professional
>
> :: delphi - php - firebird - mysql ::
>
> (31)9628-4764
>
>
>
>
>
> ______________________________________________
> 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
>
Mais detalhes sobre a lista de discussão lista