Commit Graph
92 Commits
Author SHA1 Message Date
jpegueroandClaude Sonnet 5 e33dad06b8 Registrar formularios de ipprrp002/ipprrp002_1 (Catalogo Productos Terminados)
ipfmrp002.4fd e ipfmrp002_1.4fd existian en el repo pero nunca se habian
agregado a mbsERP.4pw, mismo patron visto en ipprcs004_1/ipprcs042.

Pendiente aparte: los reportes ipprrp002.4rp e ipprrp002_2.4rp (usados
por fgl_report_loadCurrentSettings) no existen en el repo ni en su
historial, el programa no puede completar la generacion del reporte
hasta que se consigan o se rehagan en Report Studio. Consultado con
Johnny, sin respuesta aun.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-21 17:01:21 -04:00
jpegueroandClaude Sonnet 5 1647848fec Corregir ipprcs042 (Hoja Vida Producto): form no registrado y crash de fecha
- Registrar ipfmcs042.4fd en el proyecto, no estaba agregado a mbsERP.4pw
  y el runtime daba "Form file not found" al abrir el programa.
- Quitar CONVERT(CHAR(10),b.fech_oc,103) en la busqueda de ordenes de
  compra a proveedores, causaba "Invalid month in date" (-1205) igual
  que en mercancia_transito.4gl/funciones_ip.4gl.

Verificado con producto 1-119-2-56 (272 ordenes de compra 2008-2026):
grilla de proveedores, inventarios y precios cargan correctamente.

Nota aparte (sin corregir): los campos "Almacen" y "Rank" del formulario
existen mas nunca se usan en el codigo, no filtran nada.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-21 15:15:37 -04:00
jpegueroandClaude Sonnet 5 5f1c3b6e3b Corregir ipprcs004/ipprcs004_1 (Consulta Existencias): crashes al probar botones migrados
- mercancia_transito.4gl y funciones_ip.4gl: quitar CONVERT(...,103) al
  traer fechas de SQL Server, causaba "Invalid month in date" (-1205) en
  ambiente de pruebas por ambiguedad de formato dd/mm/yyyy vs mm/dd/yyyy.
- ipprcs004_1: agregar dependencia faltante FUNCIONES_PR (no linkeaba,
  llamaba mercancia_transito/fechas_llegadas sin tener el modulo).
- Registrar en el proyecto tres formularios que existian en el repo pero
  nunca se agregaron a mbsERP.4pw (ipfmwd017.4fd, almacenes.4fd,
  cofmfu009.4fd), causaban "Form file not found" en los botones
  Ordenes/Almacenes/Fecha Llegada.

Verificado botón por botón contra produccion (Genero 3.20, .40.8) con el
mismo codigo de producto: Foto, Ordenes, Reservados, Ubicacion, Almacenes
y Reporte (PDF/pantalla/Excel) dan resultados consistentes.

Pendiente aparte: el patron CONVERT(...,103) aparece en ~132 archivos del
proyecto, riesgo sistemico a evaluar por separado.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-21 12:56:39 -04:00
Abel López 64f5e612d9 Merge branch 'main' of https://git.fulldetord.com/jsoto/mbs 2026-09-16 16:49:29 -04:00
Abel LópezandClaude Sonnet 5 7638c1046b Corregir noprmt008 (Generacion de Nomina): checkbox no aplicaba su
valor por defecto

El checkbox "GENERO NOMINA ACTIVOS" (opt1) y los demas checkboxes de
la pantalla inicial no entregaban su defaultValue a la variable si el
usuario no los tocaba explicitamente, quedando en "N". Como el codigo
hace "IF opt1 != 'S' THEN RETURN" sin ningun mensaje, el programa
generaba 0 registros y se cerraba en silencio pareciendo exitoso.

Se inicializan opt1/opt2/opt3/regalia/vacaciones explicitamente antes
del INPUT BY NAME para que coincidan con los defaults del formulario,
sin depender de esa interaccion.

Se retiro tambien la funcion debuglog() (y su entrada FGLSPOOL) usada
solo para diagnosticar este problema.

Verificado generando la nomina 2701/Q completa: 4798 registros para
628 empleados, con calculo correcto de sueldo quincenal (50% primera
quincena) y descuentos de TSS/ARS.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-15 12:16:53 -04:00
jsoto c52fce4cb8 Merge branch 'main' of https://git.fulldetord.com/jsoto/mbs 2026-09-15 12:15:37 -04:00
jpegueroandClaude Sonnet 5 5667c1e508 Registrar formularios y libreria nueva para ipprcs004
- Registrar ipfmcs004.4fd, coloca_ubicacion.4fd, ipfmcs004b.per e
  ipfmcs004_1.4fd (faltaban)
- Crear libreria UBICACIONDH_IP para ubicacionDH.4gl (funcion
  InsertaUbicacionDH), separada de FUNCIONES_IP porque su otra funcion
  buscardata() choca con la ya existente en ipprmt020.4gl
- Agregar dependencia de FUNCIONESREPORT a ipprcs004 (para
  seleccionarSalida, ya registrada ahi para ipprmt044)

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-15 12:17:35 -04:00
jsoto 61195adc75 JSOTO Arreglo programa ipprmt005, quitando la conexion IFMX 2026-09-15 12:14:15 -04:00
jpegueroandClaude Sonnet 5 3d293561d2 Registrar formulario ipfmcs006.4fd para ipprcs006 (Consulta Balances)
Probado: filtros de busqueda (producto, bodega, rango de fechas) con
opcion "Actual" - resultados correctos comparados contra la BD.

Opcion "Historico" (consulta base separada historicomtech) confirmada
como bug preexistente: falla con "Invalid column name num_oc" tanto en
el ambiente de pruebas (se restauro un backup fresco de produccion del
40.8 para poder probar) como en produccion Genero 3.20 - la tabla
historicomtech.dbo.iptb00006 nunca tuvo la columna num_oc que si tiene
la tabla en vivo. No es un bug de la migracion, no se toca.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-14 16:15:26 -04:00
jpegueroandClaude Sonnet 5 d4eb103454 Registrar y corregir ipprcs002 (Consulta Maestra de Productos)
- Registrar formulario ipfmcs002.per (faltaba)
- Extraer la funcion pantalla() de ipmn00000.4gl (programa de menu con su
  propio MAIN) a un archivo compartido nuevo (otrodir/pantalla_ip.4gl)
  para poder reutilizarla sin conflicto de MAIN duplicado
- Bug corregido: el programa nunca tenia CONNECT TO, dependia de heredar
  una conexion de otro programa que nunca lo invoca en este contexto de
  prueba - se agrego ARG_VAL + CONNECT TO "smarmotech" como en el resto
  de los programas
- Bug corregido: el arreglo global "prod" (usado solo por este programa)
  era de tamaño fijo ARRAY[200], causaba error -1326 con mas de 200
  resultados - convertido a DYNAMIC ARRAY, y se agrego prod.clear() antes
  de repoblarlo
- Agregado titulo a la ventana (usaba "screen size" clasico sin TITLE)

Pendiente de decision de Johnny: la pantalla no exige ningun filtro de
busqueda y hace una consulta SQL adicional por cada producto encontrado
(calculo de existencia) - sin filtro intenta traer todo el catalogo y
tarda mas de una hora antes de fallar. Se probo exitosamente usando
siempre un codigo de producto completo (clase-grupo-tipo-secuencia).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-14 15:03:03 -04:00
jpegueroandClaude Sonnet 5 866778edfe Avanzar en registro y correccion de ipprmt017 (Precio por Cliente)
- Registrar ipfmmt017.4fd e ipfmwd008.per (faltaban)
- Corregir esquema viejo "marmotech" -> "smarmotech" en ipfmwd008.per
- Copiar vefmwd002.4fd a ipdir (renombrado vefmwd002_ip.4fd) para evitar
  depender de la libreria FORMULARIOS_PR (de Compras), que tiene errores
  propios sin relacion (prfmmt006.4fd con columna inexistente,
  prfmwd014.per con problema estructural) que bloqueaban la compilacion
- Corregir 3 columnas de la lista de precios sin titulo (idrow, unidadmed,
  moneda): idrow se oculta (es un campo interno), unidadmed y moneda
  reciben titulo visible

Pendiente: falta recompilar y probar el flujo completo (alta, consulta,
eliminacion) de ipprmt017.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-11 13:23:21 -04:00
jpegueroandClaude Sonnet 5 4ce1e7a03d Registrar y corregir ipprmt014 (Administracion Medidas)
- Registrar formulario ipfmmt014.per (faltaba)
- Corregir refresco de pantalla al eliminar (no mostraba estado 'E' hasta
  volver a consultar), confirmado por Johnny que debe verse al instante
- Agregar validacion para no permitir eliminar un registro ya eliminado
  (mostraba "REGISTRO ELIMINADO" de nuevo sin avisar)

Nota: el aviso de "ya eliminado" no sale centrado en pantalla - limitacion
del cliente grafico de Genero para dialogos lanzados desde pantallas tipo
MENU clasico (no aplica en pantallas DIALOG modernas). Aceptado por la
usuaria, no es bloqueante.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-11 12:28:56 -04:00
jpeguero f163516115 Merge branch 'main' of https://git.fulldetord.com/jsoto/mbs 2026-09-11 11:55:22 -04:00
jpegueroandClaude Sonnet 5 189c582eee Registrar formulario ipfmmt010.per para ipprmt010 (Tipos de Productos)
Probado completo: alta, consulta-modificacion y eliminacion (confirmado
en BD que status_t queda en 'E') - todo funciona correctamente.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-11 11:38:45 -04:00
jpegueroandClaude Sonnet 5 ecdd770632 Registrar formulario ipfmmt012.per para ipprmt012 (Administracion Grupos)
Probado completo: alta, consulta-modificacion y eliminacion - todo
funciona correctamente.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-11 10:29:39 -04:00
Abel López 79eff57d70 Merge branch 'main' of https://git.fulldetord.com/jsoto/mbs 2026-09-10 17:02:44 -04:00
Abel LópezandClaude Sonnet 5 9ac3f70a13 WIP: Agregar noprmt008 (Generacion de Nomina) - en diagnostico
- Registrar noprmt008 en mbsERP.4pw junto con sus 3 formularios
  (nofmmt008.4fd, nofmmt108.per, nofmmt208.per)
- Corregir bug en nofmmt008.4fd: el checkbox opt3 tenia colName="opt2"
  duplicado por error de copiar/pegar, causando "Field (opt3) not
  found in form"
- Quitar CONVERT(CHAR(10),...,103) en 5 SELECTs que alimentaban
  variables DATE (mismo patron de bug ya visto en noprmt003):
  causaba "-1205 Invalid month in date" de forma intermitente
- Agregar funcion debuglog() (escribe a archivo en FGLSPOOL) para
  diagnosticar por que la generacion terminaba sin insertar ningun
  registro; diagnostico aun en curso

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-10 17:02:39 -04:00
jpeguero 972f2f1f47 Registrar formularios y funciones faltantes para ipprmt005 y ipprmt013
- Registrar ipfmmt019.4fd (formulario real que usa ipprmt005.4gl)
- Migrar categorias.4gl desde PROYECTOS y registrarlo (usaba
  formonly.cod_cat, coincide con ipprmt005; la copia existente en
  PUNTO VENTAS VER2 usaba un nombre de campo distinto)

Pendiente: ipprmt005 (como ipprmt064) requiere una segunda conexion a una
base "marmotech" (alias IFMX) no mapeada en el ambiente, resto de la
epoca Informix. Consultado con Johnny como patron general.
2026-09-10 16:52:45 -04:00
jpeguero d43f2729bd Registrar y corregir ipprmt013 (Costos Estandares Producto Terminado)
- Registrar formulario ipfmmt013.4fd en el proyecto (faltaba)
- Corregir databaseName del formulario (marmotech -> smarmotech, esquema
  viejo que impedia resolver la tabla iptb00004)
- Agregar titulo de ventana (formulario no tenia atributo text, mostraba
  "screen" generico)
2026-09-10 16:42:48 -04:00
jpeguero 987c2c1122 Avanzar en registro y correccion de ipprmt044 (Productos Terminados)
- Registrar 8 archivos faltantes en FUNCIONES_IP (ipautorizareq, codigoModificacion,
  piking, conduces, ubicacionH, ipactualizareqtrx, loadDespiece, LlenarUbicaciones)
- Agregar dependencias FUNCIONESREPORT y FUNCIONESEMAIL a ipprmt044 (defecto,
  configureOutput, enviaemail ya existian en el proyecto)
- Resolver colision de nombres: renombrar REPORT/FUNCTION duplicados en
  ipautorizareq.4gl (requiere->requiereAutoriza, buscadoc->buscadocAutoriza,
  impdocumento->impdocumentoAutoriza) que chocaban con imprequisiciones.4gl
  y buscarequisicion.4gl
- Sincronizar registros locales desactualizados: x RECORD en ipautorizareq.4gl
  (faltaba us_crea) y x/z RECORD del REPORT formu4 en ipprgb000.4gl (faltaban
  bodega_destino, factura, area, descripcion_area, existencia, disponible,
  codigo_bloque, id_kit) respecto a los registros globales reales
- Migrar ipprmt020_1.4rp desde PROYECTOS y corregir su RWFglReportName

Pendiente: funcion 'fotos' (12 parametros) no existe en ningun archivo del
proyecto, consultado con Johnny
2026-09-10 14:15:49 -04:00
jpeguero e414e52523 Registrar y corregir ipprmt021 (Autorizaciones Requisiciones Almacenes)
- Registrar estadosprocesos.4gl y formulario ipfmmt021.4fd en el proyecto
- Corregir columna estado_proceso inexistente por idestado (error SQL -6372)
- Corregir desfase de columnas en SELECT/INTO de buscadoc() que dejaba
  usuario, bodega origen y tipo de movimiento vacios en el reporte impreso,
  y filtraba la descripcion del estado hacia el campo de observacion
2026-09-10 13:03:01 -04:00
jpeguero a3e88776a9 Registrar y corregir ipprmt020 (Requisiciones Productos Almacenes)
- Registrar funciones compartidas faltantes (buscarequisicion, imprequisiciones, funciones_ip) y formularios ipfmmt003/ipfmmt020 en el proyecto
- Agregar usuarioSistema a seg000.4gl
- Ampliar combos Codigo Mov/Bodega/Bodega Destino en ipfmmt020.4fd (texto ilegible)
- Refrescar lista de requisiciones al anular (buscarData + clear del arreglo)
2026-09-09 16:30:34 -04:00
jpeguero 9e70c46451 Merge branch 'main' of http://192.168.40.251:3000/jsoto/MBS 2026-09-05 12:03:31 -04:00
jpegueroandClaude Sonnet 5 adf5224440 Agrega ipprmt003 (Productos Terminados) y actualiza esquema de BD
- Registra formulario ipfmmt003 en FORMULARIOS_IP con dependencia a
  Database
- Corrige dos bugs reales en ipprmt003.4gl: campo
  control_ubicacion_almacen duplicado en INPUT BY NAME (error -8090),
  y columnas control_produccion/control_ubicacion_almacen duplicadas
  en el INSERT INTO (error SQL -6372). Probado completo: alta,
  consulta, eliminacion, validacion de duplicados
- Actualiza DATABASE/smarmotech.4db con el esquema actual de SQL
  Server (agrega columnas nuevas de iptb00002 y otras tablas)
- ipprmt002 queda pendiente: 5 columnas de iptb00002 no son
  reconocidas por el compilador pese a existir en la BD real,
  requiere revision en vivo con Johnny

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-05 12:03:13 -04:00
Abel López 888a36553e Merge branch 'main' of http://192.168.40.251:3000/jsoto/MBS 2026-09-04 16:48:33 -04:00
Abel López 97ef961e13 Revert "Agregar noprmt020 al proyecto (identidad real pendiente de confirmar)"
This reverts commit 77e844390e.
2026-09-04 16:46:09 -04:00
Abel LópezandClaude Sonnet 5 77e844390e Agregar noprmt020 al proyecto (identidad real pendiente de confirmar)
- Registrar noprmt020 en mbsERP.4pw
- Agregar MAIN (faltaba, el archivo era solo funciones para ser
  llamadas desde el menu nomnmt000.4gl) y una funcion pantalla()
  local para el encabezado
- Corregir typo "database marmotech" -> "smarmotech" en nofmmt021.per

NOTA: el usuario identifico este programa como "Calcular Horas
Extras", pero tanto el contenido del .4gl como su propio menu
(nomnmt000.4gl: "19-Porc. Accidente Trabajo noprmt020") indican que
en realidad es la maestra de % de Accidente de Trabajo. Build y
compilacion verificados, prueba funcional pendiente hasta confirmar
el programa correcto para "Calcular Horas Extras" (candidatos:
noprmt030.4gl, noprmt038.4gl, o los reportes noprrp007/011/018/026/034/035).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-04 16:22:45 -04:00
Abel LópezandClaude Sonnet 5 81182e5ded Agregar noprmt007 (Novedades de la Nomina) al modulo NOMINA
Registrar noprmt007 en mbsERP.4pw usando nofmmt007.4fd (el .per
carece de departamento_afecta, num_trx, sueldo_act y los campos
titulo_dep_act/titulo_dep_afecta que usa el programa). El .4gl
compilo limpio sin cambios de codigo.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-04 13:45:56 -04:00
Abel LópezandClaude Sonnet 5 60e392c033 Agregar noprmt001 (Codigos de Movimientos) al modulo NOMINA
- Registrar noprmt001 en mbsERP.4pw (usa cofmmt001... nofmmt001.4fd,
  el .per carece del grid smovimientos y los campos modifica/vacaciones)
- Reemplazar smarmotech.sch/.42d de nodir por la copia canonica ya
  generada en MBS/DATABASE (orden de columnas correcto, incluye
  telefonoCorporativo/numeroOficina/extension) en vez de regenerar

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-04 12:12:24 -04:00
jpegueroandClaude Sonnet 5 367f0c4340 Agrega los 34 programas de Productos Terminados al proyecto
Registra las Applications de Productos Terminados (ipprmt/ipprcs/ipprrp)
con dependencias a FUNCIONES_IP, Database y FUNCIONES, y agrega
ipprgb000.4gl como archivo compartido de FUNCIONES_IP. Listo para
compilar/probar programa por programa, igual que se hizo con Materia
Prima.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-04 09:39:19 -04:00
jpeguero 43aa1c809d Merge branch 'main' of http://192.168.40.251:3000/jsoto/MBS 2026-09-04 09:31:18 -04:00
jpegueroandClaude Sonnet 5 4532d51e4b Prueba inprrp011 (completo) e inprrp028 (matricial completo, PDF pendiente)
- Corrige selectOutput()/seleccionarSalida()/configureOutput() en
  defecto.4gl para usar la API real fgl_report_* (Report Writer 2.0),
  reemplazando los stubs previos. Reutiliza el formulario Configuration
  ya existente en el proyecto (FUNCIONESREPORT)
- inprrp011: quita el START REPORT forzado a XML roto (media migracion
  abandonada), probado completo: filtros, totales/subtotales vs
  produccion, exportacion PDF/Excel/Pantalla funcionando
- inprrp028: mismo patron, restaura Sietesalida) - No/matricial
  como respaldo. Crea bin/inprrp028.4rp (diseno de reporte, no existia)
  para la salida grafica; carga sin error de formato pero la
  generacion no completa en este entorno - pendiente de revisar
  rendimiento/recursos

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-03 16:52:39 -04:00
Abel LópezandClaude Sonnet 5 ee27da0669 Agregar noprmt003 (Maestra de Empleados) al modulo NOMINA
- Registrar noprmt003 en mbsERP.4pw (FUNCIONES_NO: noprfu000.4gl,
  nocarnet.4gl; FORMULARIOS_NO: nofmmt003.4fd); reutiliza
  otrodir/departamentos.4gl ya presente en FUNCIONES
- Actualizar el diccionario de esquema smarmotech.sch: faltaban las
  columnas telefonoCorporativo/numeroOficina/extension de adtb00003
  (existen en la BD real pero no estaban en el diccionario, .42d se
  regenera solo al recompilar); propagado a todos los directorios
- Desactivar el CONNECT TO "marmotech" AS "IFMX" (Informix ya no
  existe, todo migro a SQL Server) y el INSERT duplicado hacia esa
  conexion en el alta de empleados; sin esto el programa se colgaba
  al iniciar
- Quitar CONVERT(...,103) de fechas en el SELECT/FETCH de empleados:
  se convertian a texto dd/mm/yyyy y luego se reasignaban a variables
  DATE, causando "-1205 Invalid month in date" con dias > 12
- Agregar BEFORE CONSTRUCT/END CONSTRUCT para poblar el combo de
  Departamento en la busqueda (faltaba, quedaba vacio)
- Corregir foto de empleado que no se limpiaba al navegar
  Siguiente/Anterior hacia un empleado sin foto
- nocarnet.4gl: sustituir fgl_report_* (API no disponible) por
  om.XmlWriter.createFileWriter() hacia FGLSPOOL

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-03 16:51:11 -04:00
Abel LópezandClaude Sonnet 5 b27b20d42d Agregar noprmt002 (Movimientos Fijos Emp.) al modulo NOMINA
- Registrar noprmt002 en mbsERP.4pw junto con noprgb000.4gl
  (FUNCIONES_NO), nofmmt002.per/nofmwd001.per (FORMULARIOS_NO) y
  adfmwd004.per (FORMULARIOS_AD, compartido con ADMINISTRACION)
- Copiar el diccionario de esquema smarmotech.sch a nodir/addir
  (faltaba, igual que en otros directorios ya corregidos)
- Corregir typo "database marmotech" -> "smarmotech" en nofmwd001.per

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-03 12:12:06 -04:00
Abel López 4cb8d4c71b Merge branch 'main' of http://192.168.40.251:3000/jsoto/MBS 2026-09-01 16:48:54 -04:00
Abel LópezandClaude Sonnet 5 f216a7acfa Agregar coprrp007 (Cronologico de Requisiciones) al proyecto
- 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>
2026-09-01 16:48:46 -04:00
jpegueroandClaude Sonnet 5 f140ab917e Agrega y corrige inprrp008, inprrp028, inprrp009 e inprrp011 (Materia Prima)
- inprrp008: agrega CONNECT faltante en MAIN, corrige ruta de impresion
  hardcodeada (C:\archivo -> FGLSPOOL) y comando RUN sin comillas,
  reconstruye infmrp008 como .4fd (el campo Ordenamiento se compilaba
  como checkbox en vez de texto)
- inprrp028: restaura la rama matricial (Si/No Reporte Grafico) que
  habia quedado comentada, dejando el programa forzado a la via XML
  rota; agrega funcion compartida seleccionarSalida() a defecto.4gl
- inprrp009: agrega notNull al combo de Bodega para quitar los items
  <blank>/<not blank>, agrega titulo a la ventana
- Registra formularios infmrp008, infmrp028 e infmrp011 en el proyecto
- Todos probados: corren completos sin error de FGL (Exit code: 0) via
  matricial; la salida grafica/PDF sigue siendo la limitacion conocida
  de entorno (Report Writer 2.0 no disponible)

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-01 16:48:20 -04:00
jpeguero cda8053d90 Merge branch 'main' of http://192.168.40.251:3000/jsoto/MBS 2026-08-31 16:46:34 -04:00
jpegueroandClaude Sonnet 5 7f789181cf Agrega inprrp003 e inprrp005 (reportes de Materia Prima) al proyecto
- Registra formularios infmrp003.per e infmrp005.per en FORMULARIOS_IN
- Agrega funciones compartidas msgrp000() y selectOutput() a defecto.4gl
  (selectOutput como stub, mismo limite conocido de Report Writer 2.0
  que configureOutput)
- inprrp003 probado: reporte de movimientos corre completo sin error
  de FGL (impresion fisica no disponible en entorno de desarrollo)
- inprrp005 pendiente: error SQL -1262 "Non-numeric character in
  datetime" al filtrar por Fecha del Dia, en investigacion

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-31 16:44:13 -04:00
Abel López 26961ddd81 Merge branch 'main' of http://192.168.40.251:3000/jsoto/MBS 2026-08-31 16:43:06 -04:00
Abel LópezandClaude Sonnet 5 3284ae0de9 Agregar coprrp019 (Validacion Ordenes) al proyecto
- 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>
2026-08-31 16:42:59 -04:00
jpegueroandClaude Sonnet 5 ea1493db43 Prueba y corrige inprcs006 (Movimiento Materia Prima)
- Proyecto ahora referencia infmcs006.4fd en vez de .per (el .per
  clasico no puede declarar las columnas del Tree de filas hijas)
- Corrige conflicto de campo "bodega" entre INPUT y CONSTRUCT dentro
  del mismo DIALOG (error -8090), moviendo la busqueda a ON ACTION
- Corrige binding de ComboBox Bodega y campo mensaje_ini (faltaba
  colName/sqlTabName, causaba Null pointer exception)
- Agrega titulo "MOVIMIENTO MATERIA PRIMA" y ensancha combo de bodega
- Corrige tabIndex del combo de bodega para navegacion con teclado

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-30 12:21:46 -04:00
jpeguero 7b1b414629 Agrega formulario infmcs006 para inprcs006
Compilo correctamente; pendiente probar por caida del servidor
de base de datos (192.168.40.250).
2026-08-28 19:39:54 -04:00
jpeguero 0d17478789 Merge branch 'main' of http://192.168.40.251:3000/jsoto/MBS 2026-08-28 19:22:35 -04:00
jpeguero 6f50812bb1 Completa Buscar Documentos en inprmt036 y agrega inprmt066
- inprfu000.4gl: corrige reimprime()/busca_info() para que branchen
  correctamente segun el programa llamante (inprmt046 vs otros).
  Antes usaban siempre las variables de inprmt046 (otros_mov),
  causando errores en inprmt036. Se activa y corrige la logica que
  estaba comentada para el caso generico (Johnny autorizo completarla,
  confirmado que tampoco funcionaba en produccion).
- inprmt066 (Anular Documentos): agrega formulario faltante y el
  campo Bodega (combo) que no existia. Ensancha el combo para
  legibilidad. Probado: anulacion de documento real, funciona.
2026-08-28 19:21:13 -04:00
Abel LópezandClaude Sonnet 5 052b80de34 Configurar FGLSPOOL en coprmt009 para que Imprime genere el reporte
El Application node de coprmt009 no tenia la variable de entorno
FGLSPOOL configurada (a diferencia de coprrp001/coprrp004/coprmt025).
FGL_GETENV("FGLSPOOL") devolvia NULL, el handler de XmlWriter en
orden() (coprorden.4gl) nunca se creaba, y "Imprime" fallaba
silenciosamente sin generar el reporte ni mostrar error.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-28 16:56:29 -04:00
Abel LópezandClaude Sonnet 5 cc4964af5e Merge remote-tracking branch 'origin/main'
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-28 16:48:38 -04:00
Abel LópezandClaude Sonnet 5 3df53ba483 Agregar coprrp004 (Cronologico de Ordenes) al proyecto
- 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>
2026-08-28 16:48:04 -04:00
Abel LópezandClaude Sonnet 5 91eeef199e Corregir campo bodega oculto en busqueda de coprmt009
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>
2026-08-28 16:06:50 -04:00
jpeguero f230a3002d Merge branch 'main' of http://192.168.40.251:3000/jsoto/MBS 2026-08-28 15:06:25 -04:00