- Registra adfmmt027.per (FORMULARIOS_AD) y la aplicacion adprmt027 en
ADMINISTRACION PERSONAL.
- MAIN: se quitan el usuario y la clave escritos en el fuente (kpolanco);
vuelve a usar los argumentos de la linea de comandos.
- adpcmf027: CONVERT(CHAR(10),fecha,103) hacia variables DATE -> columna
directa (-1205).
- La tabla vacaciones no existia en marmotech (.250); se creo con
adprmt027_vacaciones.sql (14 columnas del esquema viejo).
Verificado contra la BD .250: Nuevo, Buscar, Escoger y eLiminar con la
ficha 110 (el registro de prueba se elimino).
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
- Registra adprmt017 y sus formularios (adfmmt017, adfmwd007/008/017/018/019)
en ADMINISTRACION PERSONAL. adfmwd009.per no se registra: solo lo abre
busca_movi(), que nadie llama.
- adfunciones.4gl pasa a la libreria FUNCIONES_ADF (el mismo archivo no puede
estar en dos aplicaciones); noprcs004 y adprmt017 dependen de ella.
- adfmwd008.per: DATABASE rayovac -> smarmotech (-6601).
- adprmt017.4gl: CONVERT(CHAR(10),fecha,103/101) hacia variables DATE -> se
lee la columna fecha directa (-1205); sexo del titular con
ISNULL(cod_par,0)=0 (adtb00021 tiene cod_par/sec_par NULL); un tipo_mov
vacio (AUMENTO SALARIAL, CONTRATACION) ya no se atora en cod_sol.
Verificado contra la BD .250: Nuevo de AUMENTO SALARIAL (accion 5387, empleado
110) graba adtb00020 sin cambiar adtb00003. Capacitacion/Desvinculacion no
probadas: las tablas adtb00059-62 no existen en la .250.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
- lqprrp009: se quita la copia local de defecto(); msgrp000 (restaurado por
Johnny el 16/10) ya la trae y duplicaba (-6203).
- prprmt006: se anulan las dos llamadas a pantalla() (encabezado de la
pantalla de texto antigua, no existe en el proyecto y los demas programas
de PRODUCCION no la usan) y se pone titulo de ventana.
- ipprmt044: fotos.4gl ahora incluye ctramo() y cseccion() (copiadas de
otrodir/tramos.4gl y secciones.4gl) porque importar FUNCIONES_IR completa
mete modulos de Repuestos que chocan.
- ipdir/ipautorizareq.4gl: IMPORT FGL greruntime. msgrp000 importa ese
paquete y libgre.42m tambien define fgl_report_*, por lo que cualquier
modulo de libreria que los llamara sin importar quedaba ambiguo (-8401)
cuando el programa lo usaba (solo ipprmt044). Verificado: las 34
aplicaciones que usan FUNCIONES_IP enlazan, salvo ipprmt002 e ipprrp052
que siguen con el problema conocido de columnas de iptb00002 en el
esquema.
Pendiente: probar funcionalmente estos programas.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
lqprrp009 (Liquidacion Repuestos):
- Dependencia FUNCIONESREPORT (msgrp000, seleccionarsalida).
- defecto() copiada al programa (vive en indir/defecto.4gl junto con
msgrp000 duplicado, importarla chocaba -6203); configureOutput ya la
aporta msgrp000.
- Quita Convert(...,103) que llenaba variables DATE (fecha_inicial/final).
- Titulo de ventana "Liquidacion Repuestos".
prprmt006 (Orden Produccion):
- El programa usa prtb08[idx].cod_n_c... como arreglo, pero el global
prtb08 es RECORD LIKE prtb00012.* y el arreglo arrprtb08 se quito de
prprgb000.4gl el 24/08 (68b73cf): 52 errores "Subscripting cannot be
applied". Se define arrprtb08 dentro del propio programa (mismos 7
campos que el form prfmmt006 s_orden) y se renombran 54 referencias.
Nadie mas usa arrprtb08, no hay choque con globales.
ipprmt044 (Transacciones Inventario):
- Faltaba la funcion fotos() de 12 parametros: existe en el respaldo
PROYECTOS/otrodir/fotos.4gl (version de 2017) y la llamada del programa
coincide exactamente. Se agrega a la aplicacion junto con el form
ipfmwd015.4fd. Las llamadas de ipprcs004/_1 a fotos() estan comentadas,
no se afectan. cc_avisadespacho es un procedimiento almacenado, no una
funcion 4GL.
Los tres compilan con fglcomp (esquema smarmotech); falta enlazar y
probar cuando se active la licencia de Genero (FLM-51 vencida).
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
- Registra adfmmt001.4fd (FORMULARIOS_AD), adprgb000.4gl (FUNCIONES_AD) y
la aplicacion adprmt001 en el subgrupo ADMINISTRACION PERSONAL.
- INSERT en adtb00001 (14 cols) y adtb00029 (10 cols) con lista de
columnas (error 213 por columnas nuevas en el esquema).
- INPUT/DISPLAY BY NAME limitados a los 7 campos del formulario (-1102
tipo_departamento no existe en el form).
- Escoger ya no actualiza estado_a/estado_m con variables nunca cargadas
(los dejaba en NULL); se quitan del INPUT BY NAME (no estan en el form).
- SELECT UNIQUE -> SELECT DISTINCT (SQL Server).
Verificado contra la BD .250 con el depto 9990: Nuevo, Escoger y eLiminar
en adtb00001/00029/00033.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Se ignoran *.jks, *.keystore, *.p12, *.pfx, *.pem, *.key, *.crt y *.cer, y se sacan del
repo los 38 que estaban versionados (keystores de Android, certificados de firma, llave
TLS de WEBSERVICES, llaves APNs, etc.). Los archivos siguen en disco.
OJO: al hacer pull, git borra esos archivos de la copia de cada desarrollador; quien los
necesite (firma e-CF, WEBSERVICES, build del APK) debe recibirlos por un medio seguro.
Siguen en el historial de git: se recomienda renovar las llaves expuestas.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- *.gar: los paquetes se generan en el build (gsmake -t mbs mbsERP.4pw); se sacan del
repo PROYECTO/distbin/mbs.gar y PROYECTO/seguridad2.0/distbin/Application_GAR.gar.
- PROYECTO/bin/IMAGENES: solo se versionan las imagenes que usan programas y reportes
(Logo.png, Logo_DCM.png, genero_logo.png, LOGO.JPG, logo1.png y EMPLEADOS/.gitkeep).
Se sacan del repo fotos personales, temporales (tmpfile.jpg) y archivos subidos en
ejecucion (imagenessistema/, p.ej. comprobantes de cobro). Los archivos siguen en disco.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Se quita la aplicacion cgprmt005 (Cheques Administrativos RD$) y sus formularios
cgfmmt005/cgfmwd007: pertenece al proyecto EXTERIOR (conecta a la BD exterior, usa
funciones de sus librerias y los cheques solo estan vivos en exterior; en marmotech
el ultimo es de 2018). Las fuentes quedan en cgdir.
- Paquete mbs: el directorio IMAGENES solo incluye los logos que usan los .4rp
(Logo.png, Logo_DCM.png, genero_logo.png, LOGO.JPG). Con *.png/*.jpg se empaquetaban
fotos personales, temporales y comprobantes de cobro de bin/IMAGENES.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- acprmt001_alter_actb00001.sql: crea en actb00001 las columnas cod_sp, cod_sp_sec,
tipo_activo y activo_padre (NULL). Las usa la version ene-2025 del programa
(integracion MaintainX) y nunca se habian creado en ninguna base. Aplicado en la .250;
pendiente en produccion.
- Si MaintainX falla (Adicionar/Modificar con la casilla marcada, Eliminar con
id_maintainx) se cancela la operacion; antes hacia ROLLBACK y seguia grabando fuera de
la transaccion (COMMIT -255).
- Eliminar: parametros de ApiMaintainX en el orden de la firma (infoArray, maquinaria).
- Lista: se quita la fila vacia final; getdata usa el codigo como parametro (antes
"WHERE a.codigo = " sin valor daba -201) y filtra la maquina inactiva en el ON del
LEFT JOIN.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Registra en FORMULARIOS_PR los formularios que el programa y sus
librerias abren y no estaban en el proyecto: prfmmt011b, prfmmt011c,
prfmwd015, prfmcs002, prfmmt021b/c/d, prfmwd002, prfmwd012, prfmwd013.
- prfmmt012 registrado era el de ccdir (otro formulario con el mismo
nombre); se reemplaza por PRDIR/prfmmt012.4fd (campos iguales al 42f de
produccion).
- Rescata otrodir/existenciaalmacenes.4fd del respaldo PROYECTOS y lo
registra en FUNCIONES_PR junto a existenciaalmacenes.4gl.
- prfmwd014.per: s_llegada[9] -> [5]; la pantalla dibuja 5 filas y el
formulario no compilaba (-2029). Tampoco existia compilado en produccion.
- Quita CONVERT(...,103) en 8 lecturas que llenan campos DATE (consulta
principal, fecha_llegada, parciales y datos de cotizacion); con dias >12
el programa terminaba con error al buscar. Se dejan los CONVERT que
llenan campos CHAR(10).
- Titulo de ventana "Administracion Ordenes".
Verificado: busqueda 01/07/2026-02/07/2026 trae 189 lineas con colores;
botones transacciones y Requisicion funcionan. Pendiente probar
Existencia, flujo, Documentos, fllegada, parciales, visualiza_log,
Reporte Data e Informe. Nota: un mes completo (3,105 lineas) tarda
varios minutos por las consultas por linea (diseno original).
Pendiente Johnny: FORMULARIOS_PR no compila completo por prfmmt006
(columna prtb00007.orden_pedido inexistente) y msgfmwd001 (msgrp000) no
tiene fuente en ningun lado.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
cgprmt022 (actualizacion de tasa mensual, cgtb00084; la usa edprrp116):
- La fuente era la version de EXTERIOR, donde vetb00060/vetb00061 estan invertidas
respecto a marmotech: el combo de moneda ahora sale de vetb00061 y los tipos de
cliente de vetb00060.
- SELECT INTO tenia 5 columnas para 4 variables.
- Se quita la segunda escritura a marmotech.dbo.cgtb00084 (en marmotech es la misma tabla).
- cgfmmt022.4fd: formulario de EXTERIOR (campo Replicar y tabla de tipos de cliente);
el de MARMOTECH (2022) no tenia esos campos (-1102).
mbsERP.4pw: se quita la aplicacion cgprmt037 y sus formularios cgfmmt037/cgfmwd006
(solo los usaba ese programa). Pertenece al proyecto EXTERIOR (sistema de tablas de la
BD exterior, aun no iniciado); las fuentes quedan en cgdir.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Alta y modificacion ahora graban cod_inv (Inventario); antes se leia en
la consulta pero nunca se guardaba (igual en el 42m de produccion 3.20).
- La consulta excluye las clases con status_t = 'E' (eliminadas) y lee
status_t, para que al consultar una eliminada salga REGISTRO NO EXISTE y
funcione el control de Escoger sobre registros anulados.
- Impresora se deja sin tocar, como en 3.20: el combo no tiene opciones
(tampoco en produccion) y guardarlo borraria valores existentes (80-83)
que usa veconvierteorden para rutear impresion de ordenes.
- Configuracion de ejecucion con el usuario de la responsable (antes usaba
el de jsoto, por eso grababa ese usuario como creador/modificador).
Verificado: consulta de clase eliminada (211) da REGISTRO NO EXISTE; alta
(212) graba Inventario y usuario jpeguero. Pendiente: probar Escoger y
eLiminar con la nueva version y confirmar en produccion que cod_inv solo
usa los valores del combo.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
El grupo estaba vacio (despues de MATERIA PRIMA) y no se usara; los
programas de nomina viven en RECURSOS HUMANOS > NOMINA.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Repuestos (irdir):
- irprrp002: cod_sec USING '&&&&' (con '&&&' salia *** en sec >= 1000); encabezado
con companias.nombre (estaba fijo "EUROSTONE").
- irprrp003: filtro de fecha real con parametros (antes CONVERT(...,103) BETWEEN texto:
traia movimientos de cualquier ano); codigo CHAR(8)/'&&&&' (los sec >= 1000 se
mezclaban en un mismo grupo y saldo); RIGHT MARGIN 170 (saldo y balance cortados).
- irprrp004: CONSTRUCT sobre irtb00005.cod_mov (antes intb00005: fallaba con filtro).
- irprrp006: JOIN b.cod_n = c.cod_n (antes c.cod_n = c.cod_n).
- irprrp009: CONSTRUCT calificado con b. (columnas ambiguas en el JOIN).
- irprrp045: sin departamento solo muestra los departamentos del usuario (adtb00056).
Contabilidad (cgdir):
- cgprrp014: saldo de apertura acreedor va positivo a la columna CR (restaba en totales).
- cgprrp009: ya no modifica cgtb00004 (UPDATE departamento=0 y reversion); el NULL se
trata como 0 en las consultas; corrige idx1 (START REPORT se repetia por fila).
- cgprcs024: el acumulado anterior termina el dia antes de "desde" (se contaba doble).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Registra nofmmt026.4fd y la aplicacion noprmt026 (con FGLSPOOL) en el
subgrupo NOMINA.
- GDC 6.00 ya no incluye el modulo WINDDE (error -6331): enviaDDE() guarda
las celdas en memoria y escribeCSV() genera FGLSPOOL/noprmt026_<tipo>_
<periodo>.csv con las mismas filas/columnas de la plantilla TSS.
- SQL: se quitan los CONVERT(...,103) sobre variables DATE (-1205), la
comparacion de fechas como texto (101) y el date+int dentro del SQL
(-206); rango con fecha_sig = fecha_final+1. FOREACH con THRU (10 cols).
Verificado contra la BD .250: Normal 2026/7 = 636 filas / 33,933,711.43;
Bonificacion cancelados 2026/4 = 229 filas / 1,596,887.98.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
- Registra nofmrp041.4fd y la aplicacion noprrp041 en el subgrupo NOMINA.
- nofmrp041.4fd: el del repo no era el de este programa; se usa el de 3.20
(fecha_inicial, fecha_final, cod_sup, num_emp) con format dd/mm/yyyy.
- noprrp041.4gl: el JOIN comparaba notb00028.supervisor (texto
'(cod) NOMBRE') con adtb00003.num_emp -> error 245; ahora une por
notb00028.num_emp. El filtro Empleado filtra b.num_emp. Fechas del SQL
en yyyymmdd con fecha_final+1 (sin BETWEEN).
Verificado contra la BD .250 (dic-2019: 3,552 horas / 544,076.97).
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Programas (bugs encontrados en las pruebas funcionales en la .250):
- acprmt004/acprmt005: MIN/MAX sobre la fecha real (no sobre texto CONVERT 103); acprmt004 alinea rowid.
- cgprrp008: lee cgtb00004 (no la copia cgtb00004_tmp del 14-mar-2026) y solo regenera
cgtb00016 cuando se corre sin filtro de cuenta.
- cgprrp014: CONSTRUCT con los nombres de campo del form (cod_sp_sc).
- cgfmrp013: defaultValue del combo = cgprrp012.4rp.
- cgprrp022/edprrp029: salida getPreviewDevice() en lugar de SVG fijo.
- edprrp080: no consume numero ED con afecta = NO.
- cgprmt004/022/037, segprmt0001: sin CONNECT "IFMX" (-6366); EXTERIOR via cross-DB.
- irprcs001: agrega CONNECT; irprmt021: columna idestado; irprmt066: la anulacion sin
MaintainX ya no se deshace (-255); otrodir/bodegas: rama '2' llena origen y destino.
- teprmt001: ajustes G6.
Despliegue G6:
- DBDATE=dmy4 en config/Application.xcf, config/Main_prg.xcf, resources/Application.xcf
y en el grupo MODULOS del .4pw (los programas lanzados por el menu heredan el entorno).
- 31 .4rp: IMAGEBOX con rutas absolutas file:///E:|F:|C: -> relativas IMAGENES/...;
se agregan IMAGENES/LOGO.JPG y genero_logo.png.
- Paquete mbs: incluye bin/*.4rp y bin/IMAGENES (antes el GAR no llevaba los reportes).
- resources/TopMenu.4st (irprcs008 daba -8014); bin/cgprcs024.4rp.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Con Tipo Reporte Local (sin liquidaciones con liquidada='L' en cgtb00017,
ni en pruebas ni en produccion) el programa se cerraba sin avisar. En 3.20
muestra INFO "NO ENCONTRE INFORMACION CON ESOS PARAMETROS" y vuelve al
menu; se replica el mismo texto.
Verificado contra Genero 3.20 y 6.00.03 con Productos Terminados, 03/2024,
Local.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
- bin/lqprrp004.4rp del repo era un archivo binario ilegible (motor de
reportes: "Content is not allowed in prolog"). Se reemplaza por el XML de
produccion (\192.168.40.4\MARMOTECHC$\BIN320, report name liquida1,
formato 6.00).
- Si la consulta no devuelve filas ahora muestra "NO EXISTEN REGISTROS PARA
ESTOS PARAMETROS" en vez de cerrarse sin avisar.
Verificado: Productos Terminados, 03/2024, tipo Importacion: 2 paginas en
pantalla y PDF con totales por orden. Tipo Local sin datos en el periodo.
Excel no probado.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
lqprrp004:
- El .4gl tenia saltos de linea CR (Mac antiguo): en Genero 6 el comentario
'######' de la linea 2 se tragaba todo el programa (modulo de 181 bytes,
"main not defined"). Convertido a CRLF (el diff grande es solo eso).
- numero_ent se usaba en REPORT entrada271 sin definirse (solo existia en
edprrp0271); definida y asignada = 27 como en la funcion hermana.
- Agrega dependencia FUNCIONESREPORT.
prprmt011 / prprmt021:
- primpresion.impresion(pnumoc) chocaba con impresion(...) de 5 parametros
de FUNCIONESREPORT (veprrp049_1.4gl). Renombrada a impresion_oc y su unico
llamador (prprmt021) actualizado. prprmt011 recibe FUNCIONESREPORT.
Verificado con gsmake: lqprrp004, lqprmt002, ipprmt005, prprmt011 y
prprmt021 compilan y enlazan. lqprrp004 consulta datos de 03/2024 pero el
reporte no se genera: bin/lqprrp004.4rp es un archivo binario (no XML) y no
existe version XML en el repo. Pendiente que Johnny lo entregue.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
El stub RETURN NULL dejaba sin handler a los ~90 programas que usan
configureOutput(): todos caian con -8083 en START REPORT ... TO XML HANDLER.
Se vuelve a la version de 3.20 y se agrega IMPORT FGL greruntime para que
las funciones fgl_report_* resuelvan aunque la app no declare libgre.42x.
Verificado con gsmake (fgl602) sobre las 79 apps que dependen de
FUNCIONESREPORT: ninguna empeora; las de CxP, Compras y Nomina siguen
compilando y 8 reportes de Ventas pasan a compilar.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Merge de main (ipprrp013/014/046/053) con conflictos resueltos:
- mbsERP.4pw: ipprrp014 conserva ambos 4rp y su 4fd.
- bin/ipprrp014.4rp: columnas MARGEN/CLASIF. + titulo IPPRRP014.
Programas agregados a mbsERP.4pw (53 compilan y enlazan con fgl602):
- CONTABILIDAD GENERAL, ACTIVOS FIJOS, REPUESTOS; grupos nuevos TESORERIA,
CHEQUES e INFORMATICA (segprmt001 = seguridad2.0/segprmt0001.4gl).
- irdir copiado de 3.20 PROYECTOS/irdir a PROYECTO/irdir; helpers de
PROYECTOS/otrodir en FUNCIONES_IR (departamento -> irdepartamento.4gl).
- Fuentes mas nuevos de 3.20: edprrp118, edprrp080, acprrp010, cgprmt022.
- FUNCIONES: GeneraEntradaDiario.4gl a la version 3.20 + costoLiquidacion.4gl.
- Ajustes G6: existe duplicado en irprgb000, fakeData de 22 campos y
answer2 en irprmt036/020 (ApiMaintainC), selectOutputSimple en irprcs008,
schemas de forms a smarmotech, referencia declarada en cgprmt005.
- cgprmt005 sigue sin enlazar: requiere funciones de EXTERIOR.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Titulo de ventana corregido
- START REPORT se ejecuta con la primera fila; si la consulta no devuelve
datos avisa "NO EXISTEN REGISTROS PARA ESTOS PARAMETROS" en vez de
generar un reporte en blanco
Verificado con ano 2024 (la BD de pruebas no tiene produccion posterior a
agosto de 2025): 1 pagina con 9 semielaborados por mes y total, en pantalla,
PDF y Excel.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
- Titulo de ventana corregido (mostraba "screen")
- START REPORT se ejecuta con la primera fila; si la consulta no devuelve
datos avisa "NO EXISTEN REGISTROS PARA ESTOS PARAMETROS" en vez de
generar un reporte en blanco
Verificado con 01/01/2024 a 12/31/2024: detallado 166 paginas en pantalla,
resumen 57 paginas en PDF. En la BD de pruebas (.40.250) cttb00003 no tiene
produccion posterior a agosto de 2025, por eso rangos de 2026 salen vacios.
Excel no probado.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
- Registra ipfmrp054.4fd y la dependencia FUNCIONESREPORT en mbsERP.4pw
- seleccionarsalida() -> selectOutputSimple()
- Rescata ipprrp054.4rp del respaldo PROYECTOS/bin (ipdir/ y bin/)
- El reporte arrancaba aunque la consulta no devolviera filas y el motor
fallaba (Failed to find value for the look ahead input-variables);
ahora START REPORT se ejecuta con la primera fila y, si no hay datos,
muestra "NO EXISTEN REGISTROS"
- Titulo de ventana corregido
Verificado: 05/01/2026 a 10/15/2026 genera 100 paginas en pantalla y PDF.
Nota: las fechas de este formulario se capturan en formato mm/dd/yyyy
(campo Edit sin selector), comportamiento original del programa.
Excel no probado.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
- Registra ipfmrp051.4fd y la dependencia FUNCIONESREPORT en mbsERP.4pw
(resuelve msgrp000 y seleccionarSalida)
- busca_departamento() definida localmente (igual que ipprrp047/048)
- seleccionarsalida() -> selectOutputSimple()
- Rescata ipprrp051.4rp del respaldo PROYECTOS/bin (ipdir/ y bin/)
- Titulo de ventana corregido
Verificado: 01/08/2026 a hoy, movimiento 30, 8 paginas en pantalla y PDF.
Excel no probado.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
- Registra ipfmrp048.4fd y la dependencia FUNCIONESREPORT en mbsERP.4pw
(resuelve msgrp000 y seleccionarSalida)
- busca_departamento() definida localmente (igual que ipprrp035/036/047)
- seleccionarsalida() -> selectOutputSimple()
- Rescata ipprrp048.4rp del respaldo PROYECTOS/bin (ipdir/ y bin/)
- Titulo de ventana corregido
Verificado: 01/08/2026 a hoy, movimiento 30, 4 paginas en pantalla y PDF.
Excel no probado.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
- Registra ipfmrp047.4fd y la dependencia FUNCIONESREPORT en mbsERP.4pw
(resuelve msgrp000 y seleccionarSalida)
- busca_departamento() definida localmente (igual que ipprrp035/036)
- seleccionarsalida() -> selectOutputSimple()
- Rescata ipprrp047.4rp del respaldo PROYECTOS/bin (ipdir/ y bin/)
- Titulo de ventana corregido
Verificado en pantalla: 01/05/2026 a hoy, 113+ paginas agrupadas por
movimiento y departamento con totales. PDF y Excel no probados.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
- Registra ipfmrp046.per y la dependencia FUNCIONESREPORT en mbsERP.4pw
- seleccionarsalida()/configureoutput() -> selectOutputSimple() y funcion
local configurarSalidaClasica(): el configureOutput de msgrp000 es un stub
que devuelve NULL; el reporte clasico PRINT COLUMN necesita el modo
compatibilidad (monoespaciado) como el de indir/defecto.4gl
- Titulo de ventana corregido
Verificado: 01/05/2026 a hoy genera 299 paginas en pantalla y PDF.
Excel no probado por el volumen de datos.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
- Registra ipfmrp014.4fd y la dependencia FUNCIONESREPORT en mbsERP.4pw
- Quita convert(char(10),...,103) de fecha_v y fecha_oc (el campo es DATE)
- Titulo de ventana corregido
- Rescata ipprrp014.4rp del respaldo PROYECTOS/bin; el encabezado decia
IPPRRP013 (texto fijo copiado del otro diseno), corregido a IPPRRP014
Verificado: pantalla, PDF y Excel con el gerente Adolfo Santelises (prueba
con usuario temporal, no incluido en este commit). Pendiente: Resumen por
clase, ipprrp014r.4rp no existe en el repo ni en el respaldo.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
- Programas y librerias de nomina (FORMULARIOS_NO, FUNCIONES_NO y las
aplicaciones noprmt/noprcs/noprrp) pasan al subgrupo NOMINA.
- FORMULARIOS_AD y FUNCIONES_AD pasan al subgrupo ADMINISTRACION PERSONAL.
Solo cambia la ubicacion en mbsERP.4pw; ids, dependencias y fuentes sin
cambios.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
- Registra ipfmrp053.4fd y la dependencia FUNCIONESREPORT en mbsERP.4pw
- selectoutput() inexistente -> selectOutputSimple()
- Rescata ipprrp053.4rp del respaldo PROYECTOS/bin (ipdir/ y bin/)
- Titulo de ventana corregido (mostraba "form")
Verificado: rango 05/01/2026 a hoy genera 911 paginas; pantalla, PDF y Excel OK.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Quita espacios dentro de las expresiones RTL de bgColor/fontBold, que el
parser rechazaba al cargar el reporte. Datos verificados contra la BD
(monto y cantidad por mes y sexo, ano 2025).
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
- Registra ipfmrp013.4fd y la libreria FUNCIONESREPORT en mbsERP.4pw
- Quita CONVERT(...,103) en fecha_factura y fech_oc (error -1205)
- Titulo de ventana corregido
- ipprrp013.4rp: formato 7.00, diseno plano con rtl:input-variable
(los grupos anidados no coincidian con el flujo del REPORT), encabezado
con compania/fecha/hora y FECHA VENTA enlazada a fecha_v
- Resumen usa ipprrp013r.4rp (agregado por Johnny)
Verificado: Detallado sin filtros (3 paginas) y Resumen clase 124.
Pendiente: alineacion visual de columnas del Detallado.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
- Registra nofmrp045.per y la aplicacion noprrp045 en mbsERP.4pw.
- Mueve noprrp045.4rp a bin/ (igual que los demas reportes).
- Diseno: el gris/negrita de columnas aplica solo a filas mensuales
(A/M/C); las secciones 4-8 se ven planas. Declara x.tipo como
input-variable.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Solo cambia la ubicacion en mbsERP.4pw (ids, dependencias y fuentes
sin cambios). El grupo NOMINA queda vacio.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>