- Registrar coprrp007 en mbsERP.4pw, usando cofmrp007.4fd (el .per
no define el combo de departamento que requiere busca_departamento())
- Enlazar la libreria FUNCIONES_IN (ya contiene departamento.4gl) en
vez de duplicar el archivo, evitando conflicto de salida .42m
- Agregar guarda NULL en departamento.4gl: ui.combobox.forname()
puede no encontrar el combo durante el CONSTRUCT y causaba
"Null pointer exception" al llamar .clear()
- Sustituir seleccionarsalida()/configureoutput() (no definidas,
API fgl_report_* no disponible) por om.XmlWriter.createFileWriter()
hacia FGLSPOOL
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
- Registrar coprrp019 en mbsERP.4pw
- Agregar CONNECT TO/ARG_VAL faltante en MAIN (el programa hacia
consultas SQL sin haberse conectado nunca a la base de datos)
- Sustituir seleccionarsalida()/configureoutput() (no definidas,
API fgl_report_* no disponible) por om.XmlWriter.createFileWriter()
hacia FGLSPOOL
- Corregir typo "database marmotech" -> "database smarmotech" en
cofmrp019.per
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
- Registrar coprrp004 (usando cofmrp004.4fd, el .per carece del
campo estado) en mbsERP.4pw
- Sustituir seleccionarsalida()/configureoutput() (no definidas en
este programa, misma API fgl_report_* no disponible) por
om.XmlWriter.createFileWriter() hacia FGLSPOOL
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
El CONSTRUCT del criterio de busqueda y un DISPLAY BY NAME en escoge()
referenciaban cotb00014.bodega/ordenes.bodega, que no existe como campo
visible en cofmmt009 (combo oculto, ya excluido en el INPUT BY NAME de
copcad009). Causaba "FORMS statement error -1102: Field (bodega) not
found in form" al usar Buscar Ordenes de Compras.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
- Registrar coprrp001/cofmrp001 en mbsERP.4pw
- Sustituir API fgl_report_* no disponible por XmlWriter en coprrp001.4gl
- Ampliar cs_ordena.codigo a CHAR(20) en coprgb000.4gl
- Corregir mascaras PICTURE de codigo en coprcs009.4gl
- Ampliar campo c1 en cofmcs009.per para igualar el ancho de codigo
- Corregir typo de base de datos en cofmwd016.per
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
- inprmt046: agrega columnas Maquina/Clasf.Bloque faltantes en la
tabla, ensancha combos para legibilidad, corrige formato de fecha
(CONVERT 103 requiere DBDATE=DMY4/ configurado). Saca la funcion
maquinaria() de un archivo local a una compartida (maquinaria.4gl)
para evitar duplicado.
- inprmt036 (Requisicion de Materiales): agrega formulario, campo
Impresion (MATRICIAL/PDF), corrige nombre_d y agrega columna
Existencia faltante en la tabla.
- Agrega funcion compartida configureOutput (stub, Report Writer 2.0
no disponible en FGL 6.00.01).
- Requiere variables de entorno DBDATE=DMY4/ y FGLSPOOL (carpeta
PROYECTO/spool) al abrir Genero Studio para reportes/fechas.
- coprmt010 (Paises): corregir condicion invertida en "Escoger" que
bloqueaba editar registros activos y solo permitia editar los ya
eliminados (status_t != "E" -> = "E").
- coprmt016 (Terminos de Pago): usar el formulario .4fd (el .per no tenia
el grid "Tabla" que el codigo espera); agregar columna "dias" faltante
al INSERT (la tabla real tiene 9 columnas, el INSERT solo daba 8 valores
sin lista de columnas explicita).
- coprmt025 (Requisicion Compras): agregar funciones faltantes
(busca_departamento2 en depto.4gl, enviaemail en FUNCIONESEMAIL);
sincronizar el RECORD "data" y la aridad de RETURNING de ApiMaintainC
con el fix de api_test.4gl; reemplazar fgl_report_* (no disponible) por
om.XmlWriter en las 3 rutas de impresion.
- coprmt015 y coprcs005: sin cambios de codigo, solo registro en el
proyecto.
- mbsERP.4pw: registrar los 5 programas; investigar/configurar Java para
coprmt025 (FGLJVMPATH/JAVA_HOME/CLASSPATH apuntando a un JRE Temurin
8u504 local). Pendiente: el puente Java de esta instalacion de Genero
sigue fallando ("Can not create java VM") incluso con el ejemplo oficial
de FGL: parece un problema de la instalacion misma, no de version de
Java. Se sugirio reparar via MsiExec /f {3B1E10F3-FBCC-4737-8BDF-284359029D70}
(Four Js Genero BDL with Web Services 6.00.02), pendiente de ejecutar.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
- Mueve todo el contenido de PROYECTOS/indir y varias funciones
compartidas de PROYECTOS/otrodir hacia PROYECTO, siguiendo
instruccion de Johnny (PROYECTOS se va a eliminar).
- inprmt002: agrega campo Desglose faltante, corrige typo "eLiminar".
- inprmt005: agrega formulario y 3 campos faltantes (Consumo,
Requiere Autorizacion, Requisiciones), corrige typo "eLiminar".
- inprmt013: agrega formulario, titulo, corrige typo "eLiminar".
- inprmt046: agrega formulario y varias funciones/dependencias
faltantes (cincodmov, clasf_bloque, medidas, defecto,
buscaEmp, consultaTransportista, busca_departamento);
corrige nombres de campo desalineados con el codigo
(depto_a, bodega) y los convierte a ComboBox donde el
codigo lo requiere.
- Corrige dependencia faltante de FORMULARIOS_IN a la libreria
Database (bloqueaba todo el modulo de MATERIA PRIMA).
- 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>