[firebase-br] Store Procedure
Társis Francke Ferreira
tarsis em mithrandir.com.br
Qui Fev 26 18:59:26 -03 2009
Olá pessoal,
estou com uma dificuldade. Quando eu rodo o script de criação da minha SP no
IBExpert, dá tudo certo, mas, quando vou vou rodá-lo na minha aplicação, com
o IB_Cursor, por exemplo, ele dá um erro de coluna :0 não suportada e não
roda.
Vou mandar a minha SP aqui abaixo. Ela vai servir como uma View, mas não
pude criar uma View, porque o Firebird 1.5 não suporta o comando FIRST em
views. Poderiam me dar uma luz?
Abração!
CREATE PROCEDURE PROC_PRODMAISVENDIDOS
RETURNS (CdProd VARCHAR(15)
, TipoProd INTEGER
, NmProd VARCHAR(75)
, CdGrupo INTEGER
, NmGrupo VARCHAR(50)
, EstProd FLOAT
, QtdItens FLOAT
, VlrTotal NUMERIC(18,2))
AS
BEGIN
FOR SELECT FIRST 100
A.CdProd
, A.TipoProd
, C.NmProd
, C.CdGrupo
, E.NmGrupo
, C.EstProd
, SUM(A.QtdProd)
, SUM(A.QtdProd * VlrUnit)
FROM ItemNF A
INNER JOIN NotasFiscais B ON (B.NLancamentoNF = A.ID_NF)
INNER JOIN Produtos C ON (C.CdProd = A.CdProd AND C.TipoProd = A.TipoProd)
INNER JOIN Historicos D ON (D.CdHist = B.CdHist)
INNER JOIN Grupos E ON (E.CdGrupo = C.CdGrupo)
WHERE D.GeraFinanc = '1'
AND B.CanceladaNF = '0'
GROUP BY A.CdProd, A.TipoProd, C.NmProd, C.CdGrupo, E.NmGrupo, C.EstProd
INTO :CdProd
, :TipoProd
, :NmProd
, :CdGrupo
, :NmGrupo
, :EstProd
, :QtdItens
, :VlrTotal
DO
SUSPEND;
END
Mais detalhes sobre a lista de discussão lista