What I have found out about not firing at all is that in SQLFORM.smartgrid, ondelete and oncreate callbacks should not be dictionaries!
Although the book says: "All the arguments but the table, args, linked_table and user_signatures can be dictionaries ..'', and in my case e.g: deletable=dict(analyses=is_open, samples=is_open), works fine, if I declare: ondelete=dict( samples=my_sample_delete ) doesn't fire the event. Whereas, ondelete=my_sample_delete fires it, and prints a sample message... > > > --

