Ordenar Procedure
Tenho a Seguinte Procedure
Que me retornar os pedidos e em seguida me retorna os pedidos a faturar, gostaria de saber se tem alguma forma de ordenar pela notafiscal, mas independente da tabela, ou seja depois que executou a procedure o resultado deverá ser ordenado, tem alguma forma de fazer isto?
msn: bruno_solucao@hotmail.com
CREATE PROCEDURE PROC_NOTASFISCAISPED ( DATAINI DATE, DATAFIM DATE) RETURNS ( DATA DATE, NOTAFISCAL BIGINT, CLIENTE INTEGER, NOME VARCHAR(60), TOTAL NUMERIC(15,2), FRETE NUMERIC(15,2)) AS DECLARE VARIABLE PEDIDO BIGINT; DECLARE VARIABLE NUMERO SMALLINT; begin BEGIN FOR SELECT PEDIDOS.EMISSAO, PEDIDOS.ID_PEDIDO, PEDIDOS.NOTAFISCAL, PEDIDOS.CLIENTE, CLIENTES.NOME, PEDIDOS.VALOR_FRETE FROM PEDIDOS INNER JOIN CLIENTES ON CLIENTES.ID_CLIENTE = PEDIDOS.CLIENTE WHERE PEDIDOS.EMISSAO BETWEEN :DATAINI AND :DATAFIM AND (PEDIDOS.TRANSPORTADORA = 1 AND (PEDIDOS.situacao = 1 and PEDIDOS.controle =1) or (PEDIDOS.situacao in(2,3,4,5)) AND PEDIDOS.TIPO NOT IN(2,4,6) AND PEDIDOS.TPFRETE = 1) INTO :DATA, :PEDIDO, :NOTAFISCAL, :CLIENTE, :NOME, :FRETE DO FOR Select Sum((Itens_Ped.Preco / Itens_Ped.Divisor) * (Itens_Ped.Quantidade * Itens_Ped.Divisor)) as valor From itens_ped WHERE ITENS_PED.PEDIDO = :PEDIDO INTO :TOTAL DO SUSPEND; END BEGIN FOR SELECT PED_FATURAR.EMISSAO, PED_FATURAR.PEDIDO, PED_FATURAR.NUMERO, PED_FATURAR.NOTAFISCAL, PED_FATURAR.CLIENTE, CLIENTES.NOME, PED_FATURAR.VALOR_FRETE FROM PED_FATURAR INNER JOIN CLIENTES ON CLIENTES.ID_CLIENTE = PED_FATURAR.CLIENTE WHERE PED_FATURAR.EMISSAO BETWEEN :DATAINI AND :DATAFIM AND (PED_FATURAR.TRANSPORTADORA = 1 AND (PED_FATURAR.situacao = 1 and PED_FATURAR.controle =1) or (PED_FATURAR.situacao in(2,3,4,5)) AND (PED_FATURAR.TPFRETE =1)) INTO :DATA, :PEDIDO, :NUMERO, :NOTAFISCAL, :CLIENTE, :NOME, :FRETE DO FOR Select Sum((Itens_PedFaturar.Preco / Itens_PedFaturar.Divisor) * (Itens_PedFaturar.Quantidade * Itens_PedFaturar.Divisor)) as valor From itens_pedfaturar WHERE ITENS_PEDFATURAR.PEDIDO = :PEDIDO AND ITENS_PEDFATURAR.NUMERO = :NUMERO INTO :TOTAL DO SUSPEND; END end
Que me retornar os pedidos e em seguida me retorna os pedidos a faturar, gostaria de saber se tem alguma forma de ordenar pela notafiscal, mas independente da tabela, ou seja depois que executou a procedure o resultado deverá ser ordenado, tem alguma forma de fazer isto?
msn: bruno_solucao@hotmail.com
Bruno_solucao
Curtidas 0
Respostas
Emerson Nascimento
17/11/2004
que componente vc está utilizando para executar essa SP?
se for um TQuery ou TSQLQuery, faça a ordenação nele. ou no ClientDataset que receberá o resultset.
se for um TQuery ou TSQLQuery, faça a ordenação nele. ou no ClientDataset que receberá o resultset.
GOSTEI 0
Gandalf.nho
17/11/2004
SELECT * FROM nome_procedure ORDER BY lista_campos
GOSTEI 0
Bruno_solucao
17/11/2004
Ok. obrigado deu certo.
Eu não sabia que dava para dar um select em Stored Procedure com parametros de entrada.
Como ficou
Eu não sabia que dava para dar um select em Stored Procedure com parametros de entrada.
Como ficou
select * from proc_notasfiscaisped (´01/01/2000´,´01/01/2005´) order by notafiscal
GOSTEI 0
Gandalf.nho
17/11/2004
Desde que a procedure seja do tipo selecionável, você pode usar tratá-la como uma tabela.
GOSTEI 0