- coprmt001 (Suplidores): agregar campos faltantes (tipo_doc,rnc,cuenta_no)
al RECORD interno de ApiMaintainC() en api_test.4gl, y unificar la
aridad de RETURNING en las 3 llamadas (POST/PATCH/DELETE) - el
enlazador exige el mismo numero de valores de retorno en todo el modulo.
- coprmt009 (Ordenes de Compra): reemplazar fgl_report_loadCurrentSettings/
selectDevice/selectPreview/commitCurrentSettings (no disponibles en este
FGL) por om.XmlWriter.createFileWriter en coprorden.4gl; agregar
verificacion defensiva en lugarentrega.4gl (ui.combobox.forname puede
devolver NULL si el formulario actual no tiene el combo "bodega"); quitar
"ordenes.bodega" de los INPUT BY NAME (campo oculto, no se puede enlazar).
Pendiente: probar el flujo completo de creacion de orden (se corto por
una caida de conexion transitoria durante la prueba).
- coprmt016 (Terminos de Pago): CRUD simple, sin cambios de codigo.
- mbsERP.4pw: crear modulo COMPRAS (estaba vacio) con librerias
FUNCIONES_CO y FORMULARIOS_CO, y registrar los 3 programas.
- otrodir/smarmotech.sch: diccionario de esquema completo (antes faltaba
en este directorio, causaba fallos de link en api_test.4gl).
- .gitignore: excluir logs de STARTLOG() (bin/*.TXT) y archivos .err de
compilacion.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
- cpprrp011: agregar INTO explicito a SELECT de validacion de referencia
duplicada, y lineas de diagnostico temporales (pendiente: el campo ref
sigue llegando NULL al INSERT en cgtb00004, falta investigar mas).
- cpprrp017: agregar bloque MAIN faltante, quitar CALL PANTALLA() redundante,
cambiar rutas hardcodeadas C:\archivo y %USPRINT% (sin permisos/no
definida) por FGLSPOOL, y reemplazar a.rowid (pseudo-columna de Informix
inexistente en SQL Server) por ROW_NUMBER() OVER(...).
- cpfmrp017.per: corregir typo "database marmotech" -> "database smarmotech"
que rompia la resolucion del esquema.
- mbsERP.4pw: registrar cpprrp011 y cpprrp017 con sus dependencias y
configuracion de prueba.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
- 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>
Los archivos en PROYECTO/spool/ son salida temporal generada al
ejecutar reportes (cpprrp001), no codigo fuente.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>