Hola Rocío,
el tema de los formatos que señalás de las fechas y el ordenamiento tiene que ver con la SQL propiamente dicha y no con jasper, podés probar los resultados de las diferentes queries directamente en postgres para ir viendo si obtenés lo que deseás.
Con respecto a lo que decís, el campo fecha que retorna la función f_certificado_actividades es de tipo CHAR, se está retornando de esa forma para utilizarlo directamente en su formato visual y no con el tipo DATE de postgres, por lo que no podrás utilizar ese campo para ordenar comparando por las fechas si no por el texto del formato dd/mm/aaaa (el campo fecha de la vista vw_regularidades, en cambio, si es de tipo DATE).
Si deseás obtener el campo con el tipo DATE para el ORDER BY, deberías agregarlo a la query. Estimo que te conviene mantener ambos, ya que para mostrarlo en el reporte seguirás necesitando el formato visual. Podés modificar la query agregando algo así:
SELECT COALESCE(p.actividad_codigo || ' - ', '') || p.actividad_nombre as actividad_descr,
to_date(p.fecha, 'DD/MM/YYYY') as fecha,
p.fecha as fecha_visual,
p.nota || ' (' || p.nota_descripcion || ')' as nota_completa,
p.origen as origen,
p.tipo,
p.actividad_documento,
p.folio_fisico as folio_fisico
FROM
f_certificado_actividades($P{alumno},'T','T','T') as p
UNION
SELECT COALESCE(vw.actividad_codigo || ' - ', '') || vw.actividad_nombre as actividad_descr,
vw.fecha,
to_char(vw.fecha, 'DD/MM/YYYY') as fecha_visual,
vw.resultado || ' (' || vw.resultado_descripcion || ')' as nota_completa,
vw.origen as origen,
vw.tipo,
vw.nro_acta as actividad_documento,
0 as folio_fisico
FROM
vw_regularidades as vw
WHERE
vw.alumno = $P{alumno}
ORDER BY fecha
(el order by puede ser ascendente o descendente).
Saludos,
Gabriela.