след няколко дни в гугъл, промених кода по следния начин:
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;
единственото нещо, което направих, е да използвам v_temp, който изглежда доста излишен. но работи. Направих тази промяна, защото потърсих тази статия тук... в нея се споменава:
Имайте предвид обаче, че от 12.1 не можете да извикате функцията на таблицата директно в оператора TABLE. Трябва да го извикате в PL/SQL, да присвоите резултат на променлива и след това да препратите променливата в TABLE.
въпреки че ситуацията е различна в моя случай (използвам 12.2), това реши проблема ми.