Sí, el uso de triggers y eventos InterBase lo hace más simple, pero el problema está en controlar el asunto.
Imagina que lanzas un evento por cada vez que se elimina un registro de una tabla, y desde tu aplicación cliente "refrescas" el Dataset (sea un TTable, TQuery, TIBTable, ...) asociado a esa tabla capturando ese evento. Ahora imagina que pasas una sentencia SQL al servidor que borre (DELETE FROM <tabla> WHERE <condición>) pongamos por ejemplo 10.000 registros de esa tabla ... el caos que puedes provocar en la red de ese sistema será grandioso, ya que por cada registro provocarás que se lance el evento y se refresque (¡10.000 veces!) el DataSet asociado en
todas las aplicaciones clientes que tengan ese DataSet abierto.
El uso de eventos+triggers puede ser adecuado si hay poco volumen de información y clientes, pero no como norma habitual.
Saludos.