Actualizar el valor de un campo mediante código

Voy a la pregunta. Tengo un formulario para hacer facturas con detalle, "me explico varias lineas de diferentes productos" esas lineas están en un subformulario relacionado con el principal y cada un asociado a una tabla "CabFacturas" y "DetalleFacturas".
La Factura se crea perfectamente pero no me actualiza un campo del Formulario principal "BaseImponible" cada vez que modifico una linea en el subformulario". Para esto antes usaba la macro actualizarValor pero en OFFICCE2010 no viene.
Y lo tengo que hacer de la siguiente manera.
Me.TotalFactura = Forms!CabFactura.[DetFactura Subformulario]!SumaTotal
Donde TotalFactura es el campo al que me refiero anteriormente. Y SumaTotal es la suma del total de cada linea en el subformulario "DetFactura Subformulario" y este código lo tengo asiciado a un doble click de un objeto button.
Si esto lo pusiera un un evento de algún campo del subformulario me funcionaria pero no actualiza.

1 Respuesta

Respuesta
1
Ante todo indicarte que, si no guardaras el campo en la tabla de cabecera de facturas (TAL COMO SE INDICA EN TODOS LOS MANUALES) no tendrías ese problema.
Soluciones posibles:
1. Manejar el evento AfterUpdate de cualquiera de los controles que pueden influir en el cálculo (o sea: cantidad y precio) para que fuercen el recalculo de los importes de linea y, por extensión el del total en el subformulario y el del formulario de cabecera.
2. Creo que la versión 2010 admite campos calculados directamente en las tablas con lo que el problema se limitaría a hacer un buen diseño de la tabla dónde el campo TotalFactura simplemente sumara los importes de las lineas que tiene "por debajo"
Xavi

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas