Disculpen tal vez hable de mas, en alguna ocasión tuve el mismo problema y fue la explicación que obtuve aquí, esto era que al igual que FelipeDiaz después de hacer un commit mis tablas y base de datos se desactivaban, como al probar la solución que me dieron funciono bien la verdad es que ya no investigue mas.
Ahora bien con respecto al pFIBDataSet.CloseOpen(True) lo que entendí que tienes (y que yo también pongo) es una forma con un dbgrid en la cual muestras los datos y otra forma para capturarlos, el pFIBDataSet.CloseOpen(True) lo pongo antes de cerrar la ventana de captura y esto provoca que en el dbgrid se actualicen mis datos y quede seleccionado el registro que halla insertado o editado.

espero estar bien en mi recomendación sino ya tendré que ponerme a investigar mas