El mdotransaction ¿o era el mdoconnection? tiene una propiedad Autocommit para realizar automáticamente el commit, así no tienes que hacerlo manualmente.
Quizás puedas usar CommitRetaining para mantener la transacción y poder ver los datos recién agregados en el grid.
De todas formas, deberías estudiar el tema de transacciones en los pdf de interbase/ firebird desde
www.ibphoenix.com para entender al 100 % como funcionan.
Saludos