Dear DBA's

To over come Mutating Trigger I have created package and PL/SQL table and written triggers in following way. It's giving me proper result as well. But the problem is after updating 3,4 times it gives me error, 'NO DATA FOUND'.

Update mass set status=15 where fallid=123;

But data is existing. When I issue update statement on mass table procedure propd get fired which checks mass table so I have taken following care to avoid mutataing.
this insert record into another table which is written in procedure.is it problem of PL/SQL table, trigger which I have written. Please help me.

Thanks
Shailesh

CREATE OR REPLACE Package PkgPD as
Type rec_Mass is record
(nFallid Mass.Fallid%Type,
sStartEreignis Mass.StartEreignis%type,
sStopEreignis Mass.StopEreignis%type,
sStornierer Mass.Stornierer%type,
nStatus Mass.Status%Type);
TYPE tab_Mass IS TABLE OF rec_Mass INDEX BY BINARY_INTEGER;
arr_Mass tab_Mass ;
nMassCounter NUMBER := 0 ;
END PkgPD ;

CREATE OR REPLACE TRIGGER trgSTMT_mass001U AFTER UPDATE ON Mass
BEGIN
/* Re-process the updated records.
For I in 1..pkgpd.nmassCounterLOOP
propd(pkgpd.arr_mass(I).nFallId,
pkgpd.arr_mass(I).sStartEreignis,
pkgpd.arr_mass(I).sStopEreignis,
pkgpd.arr_mass(I).sStornierer,
pkgpd.arr_mass(I).nStatus,'U');
END LOOP;
END ;
/

CREATE OR REPLACE TRIGGER TRGSTMT_mass002
BEFORE INSERT OR UPDATE OR DELETE ON Mass
Begin
-- Remember to reset the pl/sql table before each statement
pkgpd.nmassCounter:= 0;
END TRGmass002U;
/

CREATE OR REPLACE TRIGGER trgrow_mass001U
After UPDATE OF StartEreignis, StopEreignis, Stornierer, Status ON Mass fOR each row
Begin
-- Increment the counter which indicates the current row
pkgpd.nmassCounter:= pkgpd.nmassCounter+ 1;
-- Populate the PL/SQL table
pkgpd.arr_mass(pkgpd.nmassCounter).nFallid := :new.FallId;
pkgpd.arr_mass(pkgpd.nmassCounter).sStartEreignis := :new.StartEreignis;
pkgpd.arr_mass(pkgpd.nmassCounter).sStopEreignis := :new.StopEreignis;
pkgpd.arr_mass(pkgpd.nmassCounter).sStornierer := :new.Stornierer;
pkgpd.arr_mass(pkgpd.nmassCounter).nMassnahmeStatus := :new.Status;
End;
/