Fórum Divisão no select não funciona, só retorna zero #520709
23/05/2015
0
Galera, estou tentando fazer uma divisão entre dois resultados,mas só está me retornando zero, já testei as outras operações (+,-,*), todas funcionam, exceto a "/" Divisão.
Estou utilizando Firebird 2.5.
Segue abaixo o codigo:
Estou utilizando Firebird 2.5.
Segue abaixo o codigo:
CREATE OR ALTER PROCEDURE SP_POSITIVACAO (
loja integer,
dt_ini date,
dt_fim date)
returns (
fun_id integer,
set_id integer,
qtde_clientes integer,
positivacao integer,
n_positivo integer,
perc numeric(9,4))
as
BEGIN
FOR
SELECT fun_id,
set_id,
qtde_clientes,
positivacao,
qtde_clientes - positivacao AS N_positivo
FROM (SELECT pedidos.fun_id,
funcionarios.set_id,
(SELECT Count(cli_id)
FROM (SELECT (SELECT set_id
FROM Sp_getsetor(clientes.rot_id)) AS setor,
clientes.cli_id
FROM clientes
WHERE clientes.loj_id = :loja)
WHERE setor = funcionarios.set_id) AS Qtde_Clientes,
Count(pedidos.ped_id) AS Positivacao
FROM pedidos
INNER JOIN funcionarios
ON ( pedidos.fun_id = funcionarios.fun_id )
WHERE Cast(pedidos.data_emissao AS DATE) BETWEEN :dt_ini AND :dt_fim
AND pedidos.loj_id = :loja
AND pedidos.status = 1
AND pedidos.tipo_id < 5
GROUP BY pedidos.fun_id,
funcionarios.set_id)
INTO :FUN_ID,
:SET_ID,
:QTDE_CLIENTES,
:POSITIVACAO,
:N_POSITIVO
DO
BEGIN
if (QTDE_CLIENTES > 0) then
perc = (:POSITIVACAO / :QTDE_CLIENTES);
SUSPEND;
END
END
Sidney Abreu
Curtir tópico
+ 0
Responder
Posts
23/05/2015
Sidney Abreu
Galera, era só o campo que estava como inteiro. Valeu
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)