Añadir cpprrp002, cpprrp003 y cpprrp004; corregir reportes XML y formulario cpfmrp002

- cpprgb000/msgrp000: restaurar getPreviewDevice con case correcto
  (ui.Interface.frontCall) y dejar configureOutput como stub, ya que la
  API fgl_report_* no existe en este FGL 6.00.01.
- cpprrp002/003/004: sustituir configureoutput()/handler roto por
  om.XmlWriter.createFileWriter escribiendo a FGLSPOOL, usando STRING
  para la ruta (CHAR(80) truncaba la ruta larga del proyecto).
- cpfmrp002.per: agregar campo faltante "Salida" (r_output) que el
  programa ya esperaba.
- mbsERP.4pw: registrar cpprrp002/003/004 con sus dependencias,
  entorno FGLSPOOL y configuracion de prueba.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Abel López
2026-08-24 17:04:18 -04:00
co-authored by Claude Sonnet 5
parent fd01d27119
commit fa1b51c33e
6 changed files with 50 additions and 30 deletions
+4 -17
View File
@@ -272,34 +272,21 @@ FUNCTION fdestino(p_destino,p_archivo,p_imprime)
END FUNCTION
{
FUNCTION configureOutput(tipo_file)
DEFINE tipo_file CHAR(3)
IF NOT fgl_report_loadCurrentSettings(NULL) THEN
RETURN NULL
END IF
# CALL fgl_report_selectLogicalPageMapping("multipage")
# CALL fgl_report_configureMultipageOutput(2, 4, TRUE)
CALL fgl_report_setPageMargins("0.5cm","0.5cm","0.5cm","0.5cm")
--CALL fgl_report_selectDevice("XLS")
# CALL fgl_report_selectDevice(getPreviewDevice())
# CALL fgl_report_configureCompatibilityOutput(1,'Franklin Gothic Heavy',false,'existencia',NULL,NULL)
CALL fgl_report_selectDevice(tipo_file)
CALL fgl_report_configurexlsxdevice(null,null,null,false,false,null,1)
CALL fgl_report_selectPreview(TRUE)
RETURN fgl_report_commitCurrentSettings()
-- La API fgl_report_* (Report Writer 2.0) no esta disponible en este
-- FGL 6.00.01. Esta salida (XML/XLS/PDF por handler) no esta soportada
-- en este entorno; usar r_output = 'MA' (impresion clasica) en su lugar.
RETURN NULL
END FUNCTION
FUNCTION getPreviewDevice()
DEFINE fename String
CALL ui.interface.frontcall("standard", "feinfo", ["fename"],[fename])
CALL ui.Interface.frontCall("standard", "feinfo", ["fename"],[fename])
IF fename == "Genero Desktop Client" THEN
RETURN "SVG"
ELSE
RETURN "PDF"
END IF
END FUNCTION
}