Realmente no se lo que quiere decir con lo de que los datos obligatorios del nuevo empleado se reciben como parámetros. Y el mensaje que hay que mostrar al final al usuario que tiene que poner?
DECLARE
num_emp empleados.cempl%TYPE;
BEGIN
SELECT cempl
INTO num_emp
FROM empleados
WHERE cempl = (SELECT MAX(cempl)
FROM empleados);
num_emp := num_emp+10;
INSERT INTO empleados(cempl, nombre, salario, comision, dept)
VALUES (num_emp, 'Pepe', 500, 50, 10);
DBMS_OUTPUT.PUTLINE('Empleado num:' || num_emp);
END;
Realmente no se como es lo que pides. Ahí te pongo un script en PL/SQL que saca el mayor nº de clave de empleado (suponiendo que cempl sea la clave de empleado), lo meto en la variable num_emp y después le sumo 10.
A continuación inserto un nuevo empleado con ese numero de empleado, y los demás datos inventados...
Y al final para mostrar por pantalla los datos que quieras, pues ahí muestro el numero de empleado como ejemplo, pero puedes mostrar lo que quieras...
Si no van por ahí los tiros de lo que quieres, tendrías que especificar algo más.
Saludos.