2017-07-06 2 views
-1

J'essaie de créer une procédure stockée qui envoie une entrée de paramètre dans la table. Quand j'ai essayé de compiler ma procédure de magasin de SQL Developer il fonctionnait bien, mais je veux exécuter cette procédure de concurrente dans Oracle EBS 12.Exécution de la procédure plsql à partir de concurrent sur Oracle

Cependant, ceci est le message d'erreur:

Cause: FDPSTP échoué en raison de ORA-06550: ligne 1, colonne 7: PLS-00201: l'identificateur 'RUN_THIS_THING' doit être déclaré ORA-06550: ligne 1, colonne 7: PL/SQL: instruction ignorée .

Et voici mon 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; 

Il ne ressemble à la procédure ne compile pas et je l'ai déjà essayé d'accorder exécuter mon utilisateur des droits à ce paquet. Cela n'a pas fonctionné. Que puis-je regarder d'autre? Quoi d'autre pourrait causer cela? Merci!

Répondre

0

CRÉER ou REMPLACER SYNONYME PUBLIC RUN_THIS_THING POUR RUN_THIS_THING;

Essayez cette instruction ou modifiez-la au besoin. Synonyme manquant.