Hola
Vamos por partes:
La sentencia sql que se ejecuta siempre sera la que este ligada al procedimiento, ninguna otra (cual podria ser?).
Usas estos parametros al final de tu sentencia (estaban en tu primera intervención):
Código Delphi
[-]
ibdataset1.open;
ibdataset1.Edit;
ibdataset1.UpdateRecord;
Lo que pense es que eran innecesarios en un update y por eso puse esta (que lo que hace es solamente ejecutar la sentencia sql, sin mostrar los resultados):
Para mi puedes usar los parametros que tenias (los primeros):
Código Delphi
[-]
bdataset1.open;
ibdataset1.Edit;
ibdataset1.UpdateRecord;
Veremos que pasa.
Saludos