That error means "an INTO clause is expected in this SELECT"
You need to put the results of your
select
"into" a variable so that you can access the return value from the procedure.
Have a look at the solutions
here[
^] which was literally the first link displayed when I googled for "error pls 00428"
E.g. (untested)
select
NVL(sum( case when yr=2017 and mon=3 then :param end),0) INTO MARCH17
from sales
The code you have posted bears only the slightest resemblance to the problem as you described it though ... I don't understand why you are attempting to get two return values nor why you would hard code the year and month ... they should be parameters that are passed in.
[EDIT] - I missed the use of SUM so the OP is now getting ORA-00934.
If I was approaching this problem from scratch I would probably do something like the following (again untested sorry, I don't have an Oracle instance here)
select sum(colA) totA, sum(colB) totB, sum(colA + colB) totC
into totA, totB, totC
FROM ... etc
rather than attempting to do some clever dynamic sql. That should move the group function SUM "out of the way" of the INTO.