Commit Graph
100 Commits
Author SHA1 Message Date
GeorgeandClaude Sonnet 5.5 8ed44aa55b feat(web): la matrícula propone Dockey@ (layout de documento) como parámetro del documento y muestra a cuántos documentos se asocia
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 18:45:39 -05:00
GeorgeandClaude Sonnet 5.5 0f43e6cac7 feat: botón PDF de los documentos con los reportes del Gateway (formato por defecto y otros formatos, asociados en la matrícula)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 18:42:07 -05:00
GeorgeandClaude Sonnet 5.5 19c4a9013c docs: reportes sencillos con plantilla HTML por cliente (Nunjucks + Puppeteer), pendiente para las ramas de cliente
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 18:37:10 -05:00
GeorgeandClaude Sonnet 5.5 854ee58037 feat(web): Reportes Gateway (lista para ejecutar con parámetros y PDF, y matrícula de reportes) con los controles y ventanas de selección del proyecto
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 17:50:40 -05:00
George 03ccd97f99 feat: parámetros ocultos (títulos y separadores) de los reportes Crystal 2026-10-19 17:46:44 -05:00
GeorgeandClaude Sonnet 5.5 2a29c63e7d feat(api): módulo del API Gateway (reportes Crystal): sesión y cola propias, matrícula de reportes y ejecución con PDF
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 17:46:09 -05:00
GeorgeandClaude Sonnet 5.5 74743503f0 feat(web): ver documentos cancelados y sus documentos de cancelación (filtro, estado y botón para ir de uno al otro)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 15:15:03 -05:00
GeorgeandClaude Sonnet 5.5 57424432f9 feat(web): la cuenta asociada de los documentos de ventas ofrece solo las de activo y la de compras solo las de pasivo (listas locales en la ventana de selección)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 15:04:25 -05:00
GeorgeandClaude Sonnet 5.5 896fa25f2f feat(web): dirección del documento desde AddressExtension (texto y corrección con «…») y campos de lista que muestran el código con formato (cuenta asociada)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 14:58:30 -05:00
GeorgeandClaude Sonnet 5.5 c1f2cea1e1 feat: solicitudes de compra como documento de marketing (solicitante, válido hasta, fecha necesaria, proveedor y fecha por línea) y API de usuarios con campos limitados
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 14:53:59 -05:00
GeorgeandClaude Sonnet 5.5 a3bd976bbd feat(web): pestañas Contenido, Logística y Finanzas en los documentos de ventas y compras, con datos del socio (contacto, direcciones, condiciones y forma de pago)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 14:50:33 -05:00
GeorgeandClaude Sonnet 5.5 c002c2cf3e feat(web): transferencias de stock y solicitudes de traslado con socio de negocio, persona de contacto, destino, lista de precios y empleado
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 14:47:23 -05:00
GeorgeandClaude Sonnet 5.5 b85383dda1 feat: moneda y tipo de cambio del documento (debajo del Nº de referencia) y ajustes de moneda local de la empresa
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 14:40:14 -05:00
GeorgeandClaude Sonnet 5.5 a74c19a139 feat(web): Indicador, prefijo y número del folio juntos en una fila (documentos de facturación y asiento) y las tres fechas de la cabecera en orden
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 14:35:54 -05:00
GeorgeandClaude Sonnet 5.5 1bb8efa77e feat(web): columna Indicador también en las listas de notas de crédito
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 14:25:28 -05:00
GeorgeandClaude Sonnet 5.5 4cef62dc1a feat(web): columna Indicador en las listas de facturas y boletas
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 14:12:00 -05:00
GeorgeandClaude Sonnet 5.5 047c5a02be feat(web): el menú lateral se puede ocultar en pantallas anchas (se recuerda)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 13:23:43 -05:00
GeorgeandClaude Sonnet 5.5 0b988733f6 feat(web): anticipo total, importe aplicado y saldo pendiente en el pie de facturas y notas de crédito
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 13:03:32 -05:00
GeorgeandClaude Sonnet 5.5 c28207b0fa fix(web): el redondeo va después de los gastos adicionales y antes del impuesto, como en SAP
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 12:59:14 -05:00
GeorgeandClaude Sonnet 5.5 e9e3ba03e5 feat: redondeo en el pie de los documentos de ventas y compras (visible según OADM.RoundMthd) y endpoint /api/company/settings
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 12:53:23 -05:00
GeorgeandClaude Sonnet 5.5 6c2cb30d63 feat(web): gastos adicionales de los documentos de ventas y compras como tabla de varias filas (antes solo el flete)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 12:46:56 -05:00
GeorgeandClaude Sonnet 5.5 3c1d02a263 feat(web): columna «Nombre de la cuenta» en las líneas de servicio (solo lectura)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 12:36:10 -05:00
GeorgeandClaude Sonnet 5.5 80a65cbc62 feat(web): las listas de documentos de ventas y compras muestran el tipo (Artículo / Servicio) y lo ofrecen como filtro
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 12:31:31 -05:00
GeorgeandClaude Sonnet 5.5 773dd7ff6a feat(web): la cuenta elegida completa la descripción de la línea de servicio y elegir el socio agrega una línea
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 12:28:56 -05:00
GeorgeandClaude Sonnet 5.5 2e74bccd65 feat(web): documentos de ventas y compras con tipo Artículo / Servicio (columnas de línea, validación, guardado y copiado)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 12:19:18 -05:00
GeorgeandClaude Sonnet 5.5 68d2cfe6d0 test(web): celdas de cuenta de las líneas de documento (código con formato al cargar y al escribir)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 12:11:00 -05:00
GeorgeandClaude Sonnet 5.5 f923d98e87 docs: la base HANA se escribe solo preguntando antes (sin parámetro de solo lectura)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 12:03:34 -05:00
George 6faad95d6b Revert "feat(api): modo solo lectura (SAPB1_SL_READ_ONLY) que rechaza toda escritura hacia el Service Layer"
This reverts commit f9ee6b5d3b.
2026-10-19 12:03:26 -05:00
GeorgeandClaude Sonnet 5.5 37dcd1daab docs: restaura CLAUDE.md (un reemplazo lo había truncado) y actualiza Finanzas, solo lectura y líneas del asiento
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 12:02:46 -05:00
GeorgeandClaude Sonnet 5.5 9ec0bb0242 docs: restaura CLAUDE.md (un reemplazo lo había truncado), con las secciones de Finanzas, solo lectura y líneas del asiento
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 12:02:27 -05:00
GeorgeandClaude Sonnet 5.5 f9ee6b5d3b feat(api): modo solo lectura (SAPB1_SL_READ_ONLY) que rechaza toda escritura hacia el Service Layer
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 12:01:26 -05:00
GeorgeandClaude Sonnet 5.5 68077fdf99 feat(web): asiento: referencias 1 a 3 y comentarios de la cabecera se ofrecen a las líneas y las líneas nuevas los toman
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 11:59:58 -05:00
GeorgeandClaude Sonnet 5.5 ba0ab025de feat(web): asiento nuevo con todas las fechas de hoy y pregunta antes de pasar el vencimiento de la cabecera a las líneas
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 11:55:50 -05:00
GeorgeandClaude Sonnet 5.5 f9482bc884 feat(web): las ventanas de selección cargan 100 filas por página
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 11:35:06 -05:00
GeorgeandClaude Sonnet 5.5 09d05f7b16 feat(web): las ventanas de selección cargan 50 filas por página
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 11:32:48 -05:00
GeorgeandClaude Sonnet 5.5 77270d6909 feat(web): asiento con «Cuenta / socio», «Nombre» y «Cuenta» (solo asociadas para socios, repetida para cuentas)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 11:22:52 -05:00
GeorgeandClaude Sonnet 5.5 c567bc6836 feat(web): la «Cuenta / socio» del asiento se elige de cuentas, clientes o proveedores y completa la cuenta de control del socio
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 11:17:44 -05:00
GeorgeandClaude Sonnet 5.5 5dfe096c5d fix(web): lista de cuentas de título propia (sin FormatCode: su código visible es el Code)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 10:13:35 -05:00
GeorgeandClaude Sonnet 5.5 15dff47899 fix(web): la ventana de selección de cuentas muestra y busca el código con formato (no el interno)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 10:09:17 -05:00
GeorgeandClaude Sonnet 5.5 8880b40080 fix(web): las celdas de cuenta piden su código con formato; tabla de filas sin comprimir columnas; letra de cambio como origen de asiento
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 10:06:48 -05:00
GeorgeandClaude Sonnet 5.5 2733339c7f feat(web): celdas de cuenta con código con formato (asientos y documentos): se ven con separadores y se pueden escribir por FormatCode
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 10:05:55 -05:00
GeorgeandClaude Sonnet 5.5 a10de1ff29 feat(web): código de cuenta con separadores de segmento, ramas vacías sin flecha y Cuenta de mayor con formato
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 09:56:48 -05:00
GeorgeandClaude Sonnet 5.5 456b0f4ac0 feat(web): árbol del plan de cuentas por ramas y con código con formato (planes segmentados)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 09:46:46 -05:00
GeorgeandClaude Sonnet 5.5 bb19e499fe feat(web): plan de cuentas como SAP (árbol con grupos y nivel al lado del formulario; propiedades, costos e info detallada)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 09:06:12 -05:00
GeorgeandClaude Sonnet 5.5 89e25ad8e6 docs: README raíz, api y web al día (módulos, acciones del proxy, auditoría, extensiones, bancos y finanzas)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 15:05:26 -05:00
GeorgeandClaude Sonnet 5.5 99c0a9259c feat(web): plan de cuentas como árbol y casillas de grupo en el formulario
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 14:46:07 -05:00
GeorgeandClaude Sonnet 5.5 eb84d73719 feat(web): asiento con indicador, folio, referencias 1 a 3 (cabecera y línea), cuenta/socio y vencimiento por línea
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 14:44:15 -05:00
GeorgeandClaude Sonnet 5.5 8bbd05d07b feat: módulo Finanzas (plan de cuentas y asientos contables con cancelación)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 14:36:24 -05:00
GeorgeandClaude Sonnet 5.5 c9d1a714c9 feat: tarjetas de crédito en pagos recibidos (catálogo CreditCards, tabla en el formulario, validación y envío)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 14:26:42 -05:00
GeorgeandClaude Sonnet 5.5 a77995536b feat(web): los pagos guardados muestran totales y «A cuenta del socio de negocio»
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 14:22:07 -05:00
GeorgeandClaude Sonnet 5.5 3d6f76a1dd feat(web): formulario de pagos recibidos y efectuados (documentos abiertos, medios de pago, cheques, cuentas, anulación)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 13:28:55 -05:00
GeorgeandClaude Sonnet 5.5 369be317ab feat: base de bancos (recursos de pagos recibidos y efectuados, acción Cancel, menú Bancos, tabla con ventana de selección)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 13:23:27 -05:00
GeorgeandClaude Sonnet 5.5 08977741de fix(web): la columna de lotes y series va junto a la cantidad, a la vista
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 12:47:51 -05:00
GeorgeandClaude Sonnet 5.5 fe8c080471 feat: auditoría (audit_log en SQLite, endpoint /api/audit y pantalla /admin/auditoria)
Registra sesiones, creaciones y modificaciones en SAP (solo nombres de campos), denegados y cambios de permisos.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 12:35:46 -05:00
GeorgeandClaude Sonnet 5.5 4e9d6a757d feat(web): tablas en los maestros (direcciones, personas de contacto, precios por lista, stock por almacén)
sbo-rows-table reutilizable (también en la ventana de lotes). Direcciones y contactos se envían
completos con reemplazo; los precios solo por filas cambiadas. Probado contra SBODemoCL.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 12:31:27 -05:00
GeorgeandClaude Sonnet 5.5 e853b1b76c feat(web): más campos en los maestros (vendedor, contabilidad, unidades, proveedor principal, valoración)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 12:26:49 -05:00
GeorgeandClaude Sonnet 5.5 abc1cc4ac6 feat(web): lotes y series en las líneas de entradas, salidas y transferencias de stock
Una ventana por línea con tabla editable; validación de suma de lotes y una serie por unidad.
Probado contra SBODemoCL: entrada de inventario 156 con SU01 y su lote.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 12:25:01 -05:00
GeorgeandClaude Sonnet 5.5 a5592fac76 feat(web): copiar de / a entre movimientos de inventario (solicitud de traslado → transferencia de stock)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 12:20:26 -05:00
GeorgeandClaude Sonnet 5.5 fdc042ddcd feat(web): fecha del documento, referencia 2 y comentarios del asiento en los movimientos de inventario
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 12:18:09 -05:00
GeorgeandClaude Sonnet 5.5 35ba97bcde chore: comando dev:web:lan para probar con otra persona de la red
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 12:09:46 -05:00
GeorgeandClaude Sonnet 5.5 d1cafcd721 feat(web): el indicador del documento se elige de su ventana de selección (FactoringIndicators)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 11:57:42 -05:00
George 02c231a662 docs: alineación de columnas 2026-10-16 11:23:47 -05:00
GeorgeandClaude Sonnet 5.5 8a38bd0502 feat(web): alineación configurable (align) de las columnas del detalle de los documentos
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 11:23:44 -05:00
GeorgeandClaude Sonnet 5.5 f25037f651 fix(web): el formulario de documentos dibuja los campos Sí/No (checkbox) de las extensiones
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 11:18:03 -05:00
George 7da6663e4b docs: opciones de las extensiones de maestros 2026-10-16 11:14:58 -05:00
GeorgeandClaude Sonnet 5.5 8dc4a8eaab feat(web): las extensiones de cliente pueden ocultar campos y columnas y dejarlos de solo lectura (documentos y maestros)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 11:14:52 -05:00
GeorgeandClaude Sonnet 5.5 f077a61d08 fix(web): la grilla de líneas no aprieta las columnas (ancho mínimo = suma de anchos), el total va tras el impuesto y el proyecto de la cabecera abre su ventana
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 11:09:47 -05:00
GeorgeandClaude Sonnet 5.5 f66ef108cf feat(web): serie, indicador y proyecto en la cabecera; dimensiones, proyecto, cuenta, referencia base y precio con IVA en el detalle
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 11:07:38 -05:00
GeorgeandClaude Sonnet 5.5 9f003ee4bf feat(web): maestros de clientes, proveedores y artículos (lista, formulario con pestañas, extensiones por cliente)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 10:24:39 -05:00
GeorgeandClaude Sonnet 5.5 b759c7bce7 docs: decisión de DocumentSubType exacto en las pantallas de Invoices
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 10:08:47 -05:00
GeorgeandClaude Sonnet 5.5 751857d737 feat(web): facturas y boletas filtran y se crean por su DocumentSubType exacto (bod_None / bod_Bill)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 10:08:37 -05:00
GeorgeandClaude Sonnet 5.5 52dc1957b7 feat: facturas y boletas de reserva (ReserveInvoice); las facturas y boletas normales excluyen las de reserva
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-15 17:32:32 -05:00
GeorgeandClaude Sonnet 5.5 1834c64f6f feat: boletas de venta (Invoices con DocumentSubType bod_Bill); la lista de facturas las excluye
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-15 17:13:33 -05:00
GeorgeandClaude Sonnet 5.5 d926519f1b feat(web): referencia y RUT en las listas de ofertas y órdenes de venta y de compra
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-14 16:09:41 -05:00
GeorgeandClaude Sonnet 5.5 d6c127627f feat(web): fila del flete (gastos adicionales) y toolbar de ancho completo; la configuración de pantallas se carga en diferido
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-14 16:09:06 -05:00
GeorgeandClaude Sonnet 5.5 d3ab97cd2e fix(web): ventas y compras envían la unidad de medida del artículo (UoMEntry)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-14 16:05:25 -05:00
GeorgeandClaude Sonnet 5.5 0d5a3074c8 feat(web): columnas de las listas de valores (cliente, artículo, almacén, impuesto) configurables por documento
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-14 15:39:53 -05:00
GeorgeandClaude Sonnet 5.5 b3b47c34a3 feat(web): extensiones por cliente (campos estándar adicionales y U_*) por módulo, y campo de selección
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-14 15:28:03 -05:00
GeorgeandClaude Sonnet 5.5 1f212e2b30 feat(web): cada documento de ventas y compras puede elegir sus columnas de línea y su cabecera
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-14 15:16:22 -05:00
GeorgeandClaude Sonnet 5.5 c5368c7ad0 refactor(web): pantallas y formularios separados por módulo (ventas, compras, inventario)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-14 15:12:01 -05:00
GeorgeandClaude Sonnet 5.5 8b0b8afc87 refactor(web): el formulario base recibe de cada pantalla los campos de cabecera, pie y línea
Todas las pantallas declaran su DocumentLayout (catálogo FIELDS): ventas y compras dejan de tener la
cabecera escrita en el HTML; el folio solo lo llevan los documentos tributarios.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-14 15:10:40 -05:00
GeorgeandClaude Sonnet 5.5 c734dcbd0a feat(web): folio y RUT en los formularios de facturas, notas de crédito, entregas y recepciones; RUT en todos los de socio
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-14 14:48:50 -05:00
GeorgeandClaude Sonnet 5.5 49408de082 feat(web): folio, referencia y RUT en las listas de facturas de venta y de proveedor
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-14 14:43:36 -05:00
GeorgeandClaude Sonnet 5.5 43cba0cc3e feat(web): el almacén y el impuesto elegidos en la primera línea se copian a las de abajo
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-14 14:39:16 -05:00
GeorgeandClaude Sonnet 5.5 155d18fce4 feat(web): formularios de inventario y solicitudes de compra (entradas, salidas, transferencias, solicitudes de traslado)
Configuración declarativa en document-layouts.ts; las líneas de las transferencias van en
StockTransferLines y las de compra/inventario llevan UoMEntry si el artículo tiene grupo de unidades.
Probado contra SBODemoCL (solicitud de compra 2, solicitud de traslado 472, entrada 155).

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-14 14:37:01 -05:00
GeorgeandClaude Sonnet 5.5 45c0ca536e feat(web): el selector de artículo de una línea admite varios (el primero completa la línea, los demás se insertan debajo)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-14 14:27:36 -05:00
GeorgeandClaude Sonnet 5.5 1528f7cb96 feat(web): cambiar el ancho de las columnas de las tablas (arrastrar, doble clic ajusta, Mayús + doble clic ajusta todas)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-14 14:27:36 -05:00
GeorgeandClaude Sonnet 5.5 7842af0568 docs/fix(web): título del selector Copiar de y notas de la prueba contra SAP
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-14 12:00:58 -05:00
GeorgeandClaude Sonnet 5.5 29e80181fe feat(web): copiar de / a entre documentos de ventas y compras
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-14 11:59:07 -05:00
GeorgeandClaude Sonnet 5.5 cafe4bc035 feat(web): resolver al salir del campo el socio y los códigos de línea escritos a mano
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-14 11:42:51 -05:00
GeorgeandClaude Sonnet 5.5 4b35aa6bfd fix(web): el precio de una línea nueva queda vacío para que SAP aplique la lista de precios
Probado contra SBODemoCL: crear y actualizar órdenes de venta y de compra, reemplazo de líneas y 412 por conflicto.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-14 11:06:58 -05:00
GeorgeandClaude Sonnet 5.5 6978fed6fb fix(web): fechas de SAP con hora, enlaces como botones y un solo maestro de impuestos
Probado contra el SAP real (solo lectura): órdenes de venta y facturas de proveedor.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-14 09:13:53 -05:00
GeorgeandClaude Sonnet 5.5 4d4df17d07 feat(web): pantalla de permisos de menú (/admin/permisos)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-13 22:17:50 -05:00
GeorgeandClaude Sonnet 5.5 d900a96740 feat(web): formulario de documentos de ventas y compras (cargar, crear, actualizar con If-Match, navegar)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-13 22:00:54 -05:00
GeorgeandClaude Sonnet 5.5 51982fd3ab feat(web): lógica pura del documento (totales, payload, solo lectura, navegación)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-13 21:58:01 -05:00
GeorgeandClaude Sonnet 5.5 c66ad96e4a feat(api): permitir If-Match en PATCH del proxy para concurrencia optimista
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-13 21:57:01 -05:00
GeorgeandClaude Sonnet 5.5 d49b87a2ce docs: actualizar CLAUDE.md con el estado, las decisiones y los próximos pasos
Registra lo decidido (login, usuario SAP compartido, concurrencia 1 medida,
TLS, proxy con registro, TaxCode, listas de documentos), cómo verificar
cambios de interfaz con seguridad, el estado actual y el orden de lo
pendiente (paso 9: formulario de documentos).

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-13 20:19:24 -05:00
GeorgeandClaude Sonnet 5.5 0a7bfb850a feat(web): grilla de líneas editable y página de componentes de desarrollo
- sbo-lines-grid: columnas declarativas (texto / número con decimales /
  solo lectura / calculadas), celdas con lista de valores (botón "..." y
  F4) cuyo apply rellena la línea, añadir y quitar línea, y "Elegir
  artículos..." para agregar varias líneas a la vez.
- Teclado: Enter confirma y baja a la misma columna (crea línea en la
  última fila), flechas arriba/abajo cambian de fila. Las celdas se
  confirman al salir de ellas; un número inválido conserva el anterior.
- Documento cerrado: grilla de solo lectura, sin botones ni listas.
- Columnas estándar de línea de SAP (artículo, descripción, cantidad,
  almacén, precio, % dto., impuesto, total) con TaxCode / SalesTaxCodes,
  verificado en el Service Layer real; recalcLine (cantidad x precio x
  (1 - dto)).
- Corrige el foco al crear una línea con Enter: se pedía antes de que la
  fila existiera en el DOM (ahora espera al render).
- /dev/componentes: página de componentes solo para desarrollo
  (canMatch isDevMode), sin entrada en el menú y sin escribir en SAP.
- Verificado en Chrome contra SAP real: artículo elegido de la lista,
  5 x 10,000 con 10 % = 45,000.00, Enter/flechas, varios artículos a la
  vez, quitar línea y subtotal del pie.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-13 20:17:52 -05:00
GeorgeandClaude Sonnet 5.5 26f0649da9 feat(web): ventana de formulario SBO (toolbar, título con estado, pestañas, menús y barra de estado)
- sbo-window: título con insignia de estado, cuerpo, zona de acciones
  (sboActions / sboActionsEnd) y barra de estado ok / warn / err / info con
  role="status".
- sbo-toolbar con botones .tb y sbo-icon (SVG en línea).
- sbo-tabs / sbo-tab: paneles ocultos conservan su estado, [(selected)],
  flechas izquierda/derecha con foco, roles y aria-controls.
- sbo-menu-button: lista de acciones ("Copiar de/a") que abre hacia arriba o
  abajo; Esc y clic fuera la cierran; opciones deshabilitables.
- sbo-badge compartido con las listas (data-table lo usa); tono 'info'.
- Verificado en Chrome contra el mockup oferta_venta.html: misma estructura,
  pestañas por clic y teclado, menú hacia arriba, estados ok/err.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-13 20:09:41 -05:00
GeorgeandClaude Sonnet 5.5 fad66abec4 refactor(web): esquinas como variables del tema (--radius)
Los radios estaban escritos en cada componente. Ahora salen de --radius
(campos), --radius-lg (botones), --radius-pill (insignias) y --radius-panel
(tablas y ventanas, 0 por defecto). Sin cambio visual: un tema nuevo puede
redondear la interfaz sin tocar componentes.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-13 20:05:32 -05:00