Difference between SavePreChanges and SavePostChanges w.r.t SAVEEDIT

Save edit validates data and gives messages or warnings.when no error/warnings exist then saveprechange fires.You can write the code to manipulate data in the SavePreChange so that the final data is inserted into the database. 

Save post change updates/inserts data into the records that have not been brought into to component buffer. it is recommended not to give error or warning messages in prechange and postchange events.