PL / SQL: Błąd „PLS-00306: błędna liczba lub typy argumentów w wywołaniu” wywołany dla tabeli liczb
Próbuję wywołać interfejs API przy użyciu dokładnego podpisu procedury, ale w jakiś sposób tabela liczb, które moim zdaniem nie są poprawnie rozpoznawane.
Definicja API:
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
);
Moje wezwanie 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;
Po uruchomieniu wywołania API otrzymałem: PLS-00306: zła liczba typów argumentów w wywołaniu funkcji „GETSERVICE_API
Jakiś pomysł dlaczego? Dzięki