Según las normas de Ingeniería del Software, lo ideal es tener para todas las tablas una clave primaria única y autoincremental, y después las claves que tú quieras. No sé si lo tendrás así, pero te recomiendo que metas un generator para cada tabla. Si lo has hecho así, tendrás, por ejemplo, un campo CODIGO_INTERNO que mantenga el orden de introducción de datos, independientemente de otros códigos o referencias únicas que puedas tener. Para sacar el último registro introducido sería (firebird 2 ó 1.5):
Código SQL
[-]
SELECT Codigo, Nombre FROM Tabla ORDER BY Codigo_Interno DESC ROWS 1;
Saludos.