Procedure retornando valor máximo entre 2 tabelas

Firebird

19/06/2006

Pessoal,

Fiz uma sp pra retornar o valor mais alto entre 2 tabelas, mas a sp esta retornando valor nulo:

[color=blue:99016c9ef9]CREATE PROCEDURE PROC_MAXCODITEM
RETURNS (
MAXCOD INTEGER)
AS
DECLARE VARIABLE MAXVEN INTEGER;
DECLARE VARIABLE MAXEST INTEGER;
begin
select Max(COD) from ESTOQUE into :Maxest;

select MAX(COD) FROM VENDA into :MaxVen;

if (MAxEST > MAXVEN) then
MaxCod = Maxest;
else
maxcod = MaxVen;

end[/color:99016c9ef9]

Obrigado.


Ozelo

Ozelo

Curtidas 0

Respostas

Jonas_giron

Jonas_giron

19/06/2006

Tenta usar o Coalesce

CREATE PROCEDURE PROC_MAXCODITEM
RETURNS (
MAXCOD INTEGER)
AS
DECLARE VARIABLE MAXVEN INTEGER;
DECLARE VARIABLE MAXEST INTEGER;
Begin
Select Coalesce(Max(COD),0) From ESTOQUE Into :MAXEST;

Select Coalesce(Max(COD),0) From VENDA Into :MAXVEN;

If (MAXEST > MAXVEN) Then
MAXCOD = MAXEST;
Else
MAXCOD = MAXVEN;

End


GOSTEI 0
POSTAR