CREATE OR REPLACE Procedure p_test
as
  TYPE Fld IS RECORD (fid number(6):=0,fvalue number(6):=0);
  TYPE TBfld IS VARRAY(400) OF Fld;
  v_TBFLD TBFld :=TBFld(); --!!!
  v_num number(6):=0;
  cursor cid is
   select id from yb3tt_18d;
  v_id number(6);
begin
  v_TBFLD.extend(100); --!!!
  open cid;
  LOOP
   FETCH cid INTO v_id;
   EXIT WHEN cid%NOTFOUND;
     v_tbfld(v_num+1).fid:=v_id; --!!!
     v_num:=v_num+1;
     DBMS_OUTPUT.PUT_LINE('id='||to_char(v_TBfld(v_num).fid)||' values='||to_char(v_TBfld(v_num).fvalue));
  end loop;
  close cid;
end p_test;