Hola.
Que yo sepa, Firebird no permite el paso de parámetros en sus trigger, puesto que responden a un evento y no se ejecutan explícitamente.
Por otra parte, los generadores normalmente se usan para dar valores únicos y correlativos
y la instrucción
devuelve el valor actual del generador y lo incrementa en 1,
y lo que pretendes podría dar conflictos (coincidencia en los valores) si CLAVE esta definido con una Primary Key o está definido como UNIQUE.
EJP:
Valor inicial del generador = 1
Quiero incrementar en 12
Código SQL
[-] new.clave = gen_id(GEN_ENTIDADES,1) + 12;
El generador tiene como valor 2 y NEW.Clave tendría como valor 13...
¿qué pasaría si ahora lo quiero incrementar en 9?
Código SQL
[-] new.clave = gen_id(GEN_ENTIDADES,1) + 9;
Pues que el generador tiene como valor 3 y NEW.Clave tendría como valor 13 también...
¿Para qué necesitas que el campo CLAVE pegue esos saltos en la numeración?