En el formulario de compra y en el de factura de proveedor, la grilla de líneas arranca desplazada a la derecha y deja un rectángulo blanco a su izquierda, con el botón visible debajo del hueco.
Causa: purchase_ux inserta los botones sueltos, sin contenedor, justo antes del campo one2many:
views/purchase_order_views.xml línea 29: update_prices y update_prices_with_supplier_cost antes de order_line.
views/account_move_views.xml línea 8: update_prices_with_supplier_cost antes de invoice_line_ids.
El es display: inline-block y el widget del one2many también, así que comparten línea de flujo y el botón empuja la tabla por su propio ancho. La tabla se alinea arriba en esa misma línea, por eso el botón aparece debajo del espacio vacío.
Medición (formulario de compra, Odoo 19): tabla en x=281 con el panel en x=41. Ocultando los botones con document.querySelectorAll('.tab-pane.active > button').forEach(b => b.style.display = 'none'), la tabla pasa a x=41. En estado purchase/done el desplazamiento es de ~240px (sólo queda visible el segundo botón); en borrador, ~376px.
Solución propuesta: agregar class="d-block" a los botones, o envolverlos en un
. Lo estamos aplicando por herencia en un módulo propio, pero corresponde arreglarlo en origen.
En el formulario de compra y en el de factura de proveedor, la grilla de líneas arranca desplazada a la derecha y deja un rectángulo blanco a su izquierda, con el botón visible debajo del hueco.
Causa: purchase_ux inserta los botones sueltos, sin contenedor, justo antes del campo one2many:
views/purchase_order_views.xml línea 29: update_prices y update_prices_with_supplier_cost antes de order_line.
views/account_move_views.xml línea 8: update_prices_with_supplier_cost antes de invoice_line_ids.
El es display: inline-block y el widget del one2many también, así que comparten línea de flujo y el botón empuja la tabla por su propio ancho. La tabla se alinea arriba en esa misma línea, por eso el botón aparece debajo del espacio vacío.
Medición (formulario de compra, Odoo 19): tabla en x=281 con el panel en x=41. Ocultando los botones con document.querySelectorAll('.tab-pane.active > button').forEach(b => b.style.display = 'none'), la tabla pasa a x=41. En estado purchase/done el desplazamiento es de ~240px (sólo queda visible el segundo botón); en borrador, ~376px.
Solución propuesta: agregar class="d-block" a los botones, o envolverlos en un