Se agrega noprrp009 al proyecto usando nofmrp009.per.
Se corrige conversion CONVERT(CHAR,fecha,103) hacia variables DATE en
3 consultas (mismo patron de error -1205 "Invalid month in date" visto
en otros programas).
Se corrige salida del reporte: REPORT list_cooper usa el estilo
clasico PRINT COLUMN (no PRINTX/.4rp), incompatible con el motor de
reportes moderno (fgl_report_*); configureOutput() en msgrp000.4gl es
un stub que siempre retorna NULL para este caso (documentado en su
propio comentario). Se cambia a escribir un archivo de texto plano en
FGLSPOOL, igual que noprrp038.
Se corrige comparacion de fechas como texto (CONVERT a CHAR en formato
dd/mm/yyyy comparado alfabeticamente) en el modo "Vacaciones Pagadas",
que fallaba al usar un rango de fechas que cruza meses/anos distintos;
se cambia a comparacion real de fechas (>= y < dia_siguiente).
Se corrige formato de fecha faltante en los campos de rango de fecha
del formulario (.per), causando "Invalid month in date" al capturar
un dia mayor a 12 como mes.
Se corrige perdida del valor de fecha final en el encabezado del modo
"Vacaciones Pagadas" (el campo se reutilizaba en el record de fetch y
se sobreescribia con un valor en blanco); se guarda en una variable
separada antes del ciclo.
Se corrige formato de impresion de montos y totales sin signo
(mascaras "#,###,###.##" sin caracter de signo), que ocultaba
silenciosamente los valores negativos mostrandolos como positivos.
Probado en ambos modos (por nomina/movimiento, y por vacaciones
pagadas con rango de fechas cruzando meses), verificado contra BD.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>