Il tuo problema è che il tuo parametro di input ha lo stesso nome della tua colonna, quindi quando la query vede
WHERE SCOTT.EMP.DEPTNO = deptno
interpreta deptno come SCOTT.EMP.DEPTNO , il che significa che è vero per tutti i valori di deptno . Modifica il nome del parametro di input e la query funzionerà come previsto.
Dovresti anche usare NVL per garantire che il singolo SUM i valori non sono NULL , come se uno dei due fosse NULL che ne farà la somma NULL pure cioè
select NVL(SUM(SAL), 0) INTO SALSUM FROM SCOTT.EMP WHERE SCOTT.EMP.DEPTNO = numerdept;
select NVL(SUM(COMM), 0) INTO COMMSUM FROM SCOTT.EMP WHERE SCOTT.EMP.DEPTNO = numerdept;