Nesse caso existem funções de banco que podem te auxiliar, não sou familiarizado com o SQL server nesse nível para te indicar alguma, mas no mais, pode fazer mais um Join e mudar as ordens de parametros conforme a seguir, tendo assim informações do evento A e informações do evento B:
SELECT DISTINCT PFUNC.CHAPA,
FUN.NOME,
FU.NOME AS FUNCAONOME,
FF.CODEVENTO CODEVENTOA,
FF.ANOCOMP ANOCOMPA,
FF.MESCOMP ANOCOMPA,
FF.NROPERIODO NROPERIODOA,
FF.VALOR VALORA,
FF.REF REFA,
FI.CODEVENTO CODEVENTOB,
FI.ANOCOMP ANOCOMPB,
FI.MESCOMP MESCOMPB,
FI.NROPERIODO NROPERIODOB,
FI.VALOR VALORB,
FI.REF REFB
FROM PFUNC FUN
INNER JOIN PFUNCAO FU ON (FUN.CODCOLIGADA=FU.CODCOLIGADA AND FUN.CODFUNCAO=FU.CODIGO)
LEFT JOIN PFFINANC FF ON (FF.CHAPA=FUN.CHAPA AND FF.CODCOLIGADA = FUN.CODCOLIGADA AND FF.MESCOMP = :MES_N AND FF.ANOCOMP = :ANO_N AND FF.NROPERIODO = :PERIODO_N AND FF.VALOR <> '0.00')
LEFT JOIN PFFINANC FI ON (FI.CHAPA=FUN.CHAPA AND FI.CODCOLIGADA = FUN.CODCOLIGADA AND FI.MESCOMP = :MES_N AND FI.ANOCOMP = :ANO_N AND FI.NROPERIODO = :PERIODO_N AND FI.VALOR <> '0.00')
LEFT JOIN PEVENTO EV ON (EV.CODCOLIGADA = FF.CODCOLIGADA AND EV.CODIGO = FF.CODEVENTO)
LEFT JOIN PEVENTO EVT ON (EVT.CODCOLIGADA = FI.CODCOLIGADA AND EVT.CODIGO = FI.CODEVENTO)
WHERE PFUNC.CODSITUACAO <> 'D'
AND FU.CODCOLIGADA = :$CODCOLIGADA
ORDER BY PFUNC.NOME