Bom dia,
Eu criei a seguinte procedure no SQL Server e ela funciona muito bem:
CREATE PROCEDURE [dbo].[RETURN_INVOICE]
@branch nvarchar(3),
@date date,
@numdoc nvarchar(9),
@return nvarchar(9) OUTPUT
AS
SELECT -@return = DocNumber
FROM [ABC].[dbo].[DocumentTable]
WHERE DocEstablishment = @branch
AND DocDate = @date
AND DocNumber = @numndoc
RETURN
GO
Agora eu preciso pegar o retorno desta função no oracle.
Estou tentando da seguinte forma:
DECLARE numdoc varchar2(9);
begin
numdoc := DBMS_HS_PASSTHROUGH.EXECUTE_IMMEDIATE@SQLServerDB(
'DECLARE @return nvarchar(9);
Execute RETURN_INVOICE
"001",
"2017-09-04",
"000100081",
-@return OUTPUT');
dbms_output.put_line(numdoc);
end;
Porém, o retorno sempre é 0.
Eu sei que a proc funciona no SQL Server, o problema parece ser apenas no oracle na hora de receber o valor que retorna da proc.
Eu tentei de outras formas, mas esta foi a que me pareceu chegar mais perto do que preciso.
Alguém pode me ajudar?
Obrigado!