SELECT DISTINCT SERIAL_NUM,EMP_NAME,NOTESID FROM DB2INST1.EMP_HC WHERE FUNC_VP ='Bob ' AND VICE_PRES ='Bob' AND DIRECTOR ='Michael' AND THIRD_LINE ='Linda '
Your first example (you might want to format your code in the future so that it becomes easier to read) is wrong because having is evaluated after group by. That is, there is no VICE_PRES column that you can use in the having clause. You can however put that in the where clause instead:
WHERE FUNC_VP ='Bob '
AND VICE_PRES ='Bob'
AND DIRECTOR ='Michael'
AND THIRD_LINE ='Linda '
GROUP BY SERIAL_NUM,EMP_NAME,NOTESID
What error message did you get from your second example?