I have a new procedure I'm trying to get working on Oracle 11g, working with table FOO_TEST
CREATE TABLE FOO_TEST (
"HOLDING_ID" NUMBER(10,0) NOT NULL ENABLE,
"BATCH_ID" NUMBER(10,0) NOT NULL ENABLE
);


create or replace
PROCEDURE FOO_TEST_SP(
ID_LIST_IN IN DBMS_UTILITY.NUMBER_ARRAY
)
AS
TYPE a_typ IS TABLE OF FOO_TEST.BATCH_ID%TYPE;
BATCH_IDS a_typ;

BEGIN
SELECT DISTINCT BATCH_ID
BULK COLLECT INTO BATCH_IDS
FROM FOO_TEST
WHERE HOLDING_ID IN ID_LIST_IN;
END;

The "WHERE HOLDING_ID IN ID_LIST_IN" clause is blowing up.
How do I make this work?