Ayuda con un Trigger

tema enviado por DunkelBlume en ORACLE
tema iniciado el 18/03/2010
veran tengo un formulario en portals y de la info que inserta tengo que crear un index asi como creando ramas en un organigrama y ps para eso utilizo el id de la unidad padre, para sacar los de los hijos que ya estan, sacar el numero más grande de id del de los hijos para poder generar la del nuevo hijo. la cosa es que la mejor manera que se me ocurre es un trigger en la tabla, este seria el código para generar el index que necesito declare num number; txt varchar(10); id_uni varchar(10); begin if substr(PERTENECEA, 0,2)<>0 then if substr(PERTENECEA, 3,2)<>0 then if substr(PERTENECEA, 5,2)<>0 then if substr(PERTENECEA, 7,2)<>0 then if substr(PERTENECEA, 9,2)<>0 then select MAX(substr(id_unidad_admiva, 9,2))INTO num from unidades_admivas where id_dependencia=id_dependencia and substr(id_unidad_admiva,0,8)=substr(PERTENECEA,0,8); num:=num+1; txt:= substr(PERTENECEA,0,8); id_uni:=txt||num; else num:=TO_NUMBER(select MAX(substr(id_unidad_admiva, 9,2)) from unidades_admivas where id_dependencia=id_dependencia and substr(id_unidad_admiva,0,8)=substr(PERTENECEA,0,8)); num:=num+1; txt:= substr(PERTENECEA,0,8); id_uni:=txt||num; end if; else num:=TO_NUMBER(select MAX(substr(id_unidad_admiva, 7,2)) from unidades_admivas where id_dependencia=id_dependencia and substr(id_unidad_admiva,0,6)=substr(PERTENECEA,0,6)); num:=num+1; txt:= substr(PERTENECEA,0,6); id_uni:=txt||num||'00'; end if; else num:=TO_NUMBER(select MAX(substr(id_unidad_admiva, 5,2)) from unidades_admivas where id_dependencia=id_dependencia and substr(id_unidad_admiva,0,4)=substr(PERTENECEA,0,4)); num:=num+1; txt:= substr(PERTENECEA,0,4); id_uni:=txt||num||'0000'; end if; else num:=TO_NUMBER(select MAX(substr(id_unidad_admiva, 3,2)) from unidades_admivas where id_dependencia=id_dependencia and substr(id_unidad_admiva,0,2)=substr(PERTENECEA,0,2)); num:=num+1; txt:= substr(PERTENECEA,0,2); id_uni:=txt||num||'000000'; end if; else id_unidad_admviva:='0100000000'; end if; end; las variables PERTENECEA e id_dependencia pues son datos que vienen del formulario y se insertarian junto con el id_uni(el que genero), en la tabla. La cuestión aqui es que no se como tomar los datos del formulario entonces me parecio que quiza podria ser que el trigger fuera after insert each row, pero pues no se tampoco como tomar los valores de lo que se inserto y me parece que tampoco me dejara hacer los selects me podrían sugerir algo para hacer???