Holas, podrias usar la sintaxis del INSERT FIRST o INSERT ALL, por ejemplo:
Cita: INSERT FIRST
WHEN IdP > 0 THEN
INSERT trabajo (IdTrabajo,IdPersona,camp1, camp2)
VALUES (MAX(IdTrabajo)+1,IdP,'algun_valor1','algun_valor2 ')
SELECT MAX(IdPersona)+1 AS IdP, 'valor1' AS v1, 'valor2' AS v2
FROM persona;
Saludos
Gildus