create or replace procedure testProc (topId in number,priId in number,flowType in varchar2)
as 
declare
pri_id integer;
fieldtitle varchar2(20);
fieldname varchar2(20);
fieldvalue varchar2(4000);
old_priid number;
lorder integer;
begin
   cursor mycursor is
     select a.PRI_ID,c.fieldtitle ,d.FIELDNAME,d.fieldvalue,0 as old_priid ,
 c.lorder  from oaflowinstance a,flow b,flowfield c,oaflowfield d 
 where a.TOPORGID = b.COMPANYID and a.FLOWTYPE = b.FLOWTYPE 
 and b.flowid = c.flowid and a.PRI_ID  = d.PRI_ID and a.TOPORGID = topId
 and b.FLOWTYPE = flowType   and c.FIELDNAME  = d.FIELDNAME 
 and d.PRI_ID = priId order by c.lorder;
 begin 
for c_mycursor in  mycursor loop
pri_id := c_mycursor.pri_id;
fieldtitle := c_mycursor.fieldtitle;
fieldname := c_mycursor.fieldname;
fieldvalue := c_mycursor.fieldvalue;
old_priid := c_mycursor.old_priid;
lorder := c_mycursor.lorder;
insert into oafilefield (id,pri_id,fieldtitle,fieldname,fieldvalue,old_priid,lorder) values (seq_id_law.nextval,pri_id,fieldtitle,fieldname,fieldvalue,old_priid,lorder);
end loop;
   end;
end testProc;