Ich versuche, eine gespeicherte Prozedur zu erstellen, die Parametereingabe in Tabelle senden. Als ich versuchte, zu meinem Speicher Prozedur von SQL Developer zu kompilieren gut es lief, aber ich möchte 12.Run Plsql-Prozedur von gleichzeitig auf Oracle
jedoch dieses Verfahren von Concurrent in Oracle EBS laufen, das ist die Fehlermeldung:
Ursache: FDPSTP konnte aufgrund ORA-06550: Zeile 1, Spalte 7: PLS-00201: Bezeichner 'RUN_THIS_THING' muss ORA-06550 deklariert werden: Zeile 1, Spalte 7: PL/SQL: Statement ignoriert .
Und dies ist mein Code:
create or replace PROCEDURE RUN_THIS_THING
(errbuf out varchar2,retcode out varchar2, P_RUN_FROM IN NUMBER, P_RUN_TO IN NUMBER, P_USER IN VARCHAR2) IS
BEGIN
declare cursor c_header is
select
aia.party_id,
aia.INVOICE_ID,
aia.INVOICE_NUM,
AIA.VENDOR_ID,
AIA.INVOICE_CURRENCY_CODE,
aia.INVOICE_AMOUNT,
aia.DESCRIPTION,
aia.INVOICE_DATE,
aia.INVOICE_RECEIVED_DATE,
AIA.GL_DATE,
AIA.DOC_SEQUENCE_VALUE
from
AP.ap_invoices_all aiA
where
AIA.DOC_SEQUENCE_VALUE BETWEEN P_RUN_FROM AND P_RUN_TO;
h_rec c_header%rowtype;
begin
open c_header;
loop
fetch c_header into h_rec;
exit when c_header%notfound;
BEGIN
insert into RUN_TEMP
(
INVOICE_ID ,
LAST_UPDATE_DATE ,
LAST_UPDATED_BY ,
VENDOR_ID ,
PARTY_ID ,
INVOICE_NUM ,
TTDV_NUM ,
CURRENCY ,
INVOICE_AMOUNT ,
INVOICE_DATE ,
INVOICE_RECEIVED_DATE ,
GL_DATE ,
DESCRIPTION
)
values
(
h_rec.INVOICE_ID,
sysdate,
p_user,
h_rec.VENDOR_ID,
h_rec.party_id,
h_rec.INVOICE_NUM,
h_rec.DOC_SEQUENCE_VALUE,
h_rec.INVOICE_CURRENCY_CODE,
h_rec.INVOICE_AMOUNT,
h_rec.INVOICE_DATE,
h_rec.INVOICE_RECEIVED_DATE,
h_rec.GL_DATE ,
h_rec.DESCRIPTION
);
END;
end loop;
close c_header;
commit;
end;
END;
Es scheitert aussehen wie das Verfahren nicht kompiliert und ich habe bereits versucht, meine Benutzer ausführen Rechte an diesem Paket zu gewähren. Es hat nicht funktioniert. Was kann ich sonst noch sehen? Was könnte das sonst noch verursachen? Vielen Dank!