Mira te recomiendo usar un generador.
Y el su valor lo octienes asi
Código SQL
[-]Select gen_id(generador, 0) from rdb$database
.
Pero segun veo no te va a servir por que ya debes tener el registro en la tabla de facturas asi que debe usar un codigo temporal(osea un generadr que te lleve codigos temporales) por si hay qu eecha r algo hacia atras y de esta manera no alteras el generador de facturas y un avez que las cosa sea segura entonces si asignar el verdadero valor a al afactura y con la rspectiva integida referencia se actualiza al otra tabla