Sto provando a chiamare un'API utilizzando la firma della procedura esatta, ma in qualche modo la tabella dei numeri che indosso Penso che sia riconosciuto correttamente.PL/SQL: errore "PLS-00306: numero errato o tipi di argomenti nella chiamata a" attivato per la tabella dei numeri
definizioneAPI:
TYPE NUMLIST IS TABLE OF NUMBER INDEX BY VARCHAR2(50);
PROCEDURE GETSERVICES_API
(
I_DIMOBJID IN NUMBER, I_OBJECTID IN NUMBER, I_FILTER IN NUMBER,
O_ERRORCODE OUT NUMBER, O_ERRORTEXT OUT VARCHAR2, O_SERVICELIST OUT NUMLIST
);
La mia chiamata di API:
DECLARE
TYPE NUMLIST IS TABLE OF NUMBER INDEX BY VARCHAR2(50);
lt_SERVICELIST NUMLIST;
ls_errortext varchar2(100);
ln_errorcode number;
BEGIN
PKGCOMSUPPORT_SERVICE.GETSERVICES_API(I_DIMOBJID => 6,
I_OBJECTID => 5263,
I_FILTER => 3,
O_ERRORCODE => ln_errorcode,
O_ERRORTEXT => ls_errortext,
O_SERVICELIST => lt_SERVICELIST);
END;
Quando eseguo la mia chiamata di API che ho ottenuto: PLS-00306: numero errato di tipi di argomenti nella chiamata a ' GETSERVICE_API
Qualche idea sul perché? Grazie
hai provato a mettere la tua dichiarazione di tipo NUMLIST al di fuori del tuo blocco pl/sql? – mucio
No, non ho provato, ma dovrebbe essere la stessa cosa. – Alin
Non penso che sia possibile creare tipi in un blocco pl/sql, sono oggetti di database – mucio