dopo diversi giorni di ricerca su Google, ho modificato il codice in questo modo:
CREATE OR REPLACE PACKAGE Support_Data_Types AS
TYPE ttDate IS TABLE OF DATE
END Support_Data_Types;
PROCEDURE GetData
(
tabDates IN SUPPORT_DATA_TYPES.TTDATE,
)
AS
v_temp SUPPORT_DATA_TYPES.TTDATE:= tabDates; -- assigned the parameter to a temporary variable
BEGIN
SELECT count(*) INTO n FROM table(v_temp);
END GetData;
l'unica cosa che ho fatto è usare un v_temp che sembra abbastanza ridondante. ma funziona. Ho apportato questa modifica perché ho cercato questo articolo qui ... ha menzionato:
Si noti, tuttavia, che a partire dalla versione 12.1, non è possibile chiamare la funzione tabella direttamente all'interno dell'operatore TABLE. Devi richiamarlo in PL/SQL, assegnare il risultato a una variabile e quindi fare riferimento alla variabile all'interno di TABLE.
sebbene la situazione sia diversa nel mio caso (sto usando 12.2), ha risolto il mio problema.