Error #¿Nombre? En cuadro de texto de formulario con subformulario

Tengo un formulario con subformulario para totalizar la cantidad de los productos. En el subformulario inserto un cuadro de texto calculado con la suma de las cantidades. Luego en el formulario principal inserto un cuadro de texto y con el generador de expresiones pongo el origen de datos en el anterior cuadro de texto del subformulario y me da el error de la pregunta. No se que estoy haciendo mal ya que otras veces lo he hecho así y me ha funcionado.

Respuesta

Sería conveniente adicionara una imagen para mejor información

Estoy de acuerdo con Julián no se necesita llevar el valor total en el subformulario si lo tiene en el formulario principal.

2 respuestas más de otros expertos

Respuesta
1

Silvia, eso es porque en la instrucción que pones de la suma estás haciendo referencia a un control que no se llama como lo has escrito. Revisa en el(los) cuadros de texto, en sus Propiedades-Otras-Nombre si realmente se llama así.

Por otro lado, no necesitas para nada un cuadro de texto en el subformulario. Si tengo la tabla Compras y DetalleCompra, relacionadas por el campo IdVenta, y con ella hago un formulario, al que le añadido un cuadro de texto llamado TotalProductos, con subformulario

Puedes ver que el cursor aún está en el control Cantidad del subformulario. Cuando pulso Enter

Si sigo rellenando productos

Cuando pulso Enter

Y basta con crear un procedimiento de evento en el evento Después de actualizar del cuadro de texto Cantidad del subformulario y poner

Docmd. Runcommand accmdsaverecord

me.parent!totalproductos=dsum("cantidad","detallecompra","idventa=" & me.idventa & "")

Gracias por contestar tan rápido.

He comprobado los nombres de los campos y esta todo correcto. Te adjunto pantallazos en modo diseño y en modo formulario. Estoy tratando de organizar una base de datos para control de almacén y la única forma que veo de controlar el stock de productos es en el formulario con subformularios para que me sume solo las cantidades por producto. En el formulario no se poner ese campo calculado. A mi me enseñaron a ponerlo en el subformulario y luego llamarlo desde el formulario pero me da el erro y no se por qué. Hice una prueba a parte y me salió bien y ahora no lo consigo. Muchas gracias

Precisamente es lo que hacen los cuadros de texto Antes y Después. En el caso de compras, en Antes te pone las existencias de ese producto( si las hay) hasta ese momento, y en Después las nuevas existencias después de comprar determinada Cantidad y modifica las existencias en la tabla.

En el caso de Ventas, en Antes te pone las que hay hasta ese momento y en Después las que te quedan después de vender esa cantidad y te modifica las existencias de la tabla al nuevo valor. Ahí es donde puedes usar cosas como Stock Mínimo de forma que no puedas vender una cantidad y quedarte por debajo de ese valor, o, por ejemplo, enviarle un email al proveedor para que reponga existencias hasta alcanzar ese nivel, o...

Si quieres, repito, si quieres, mándame un mensaje(sólo el mensaje) a [email protected] y te mando el ejemplo, que es como se ve mejor.

Si lo haces, en el asunto del mensaje pon tu alias Silvia Diez, ya que si no sé quien me escribe ni los abro.

Respuesta

Silvia: Evidentemente algo hay en la estructura de tus Objetos que hace saltar ese error.

Te adjunto una figura que funciona. Repasa que tengas los nombres adecuados, y que en la suma del Sub Formulario no haya resultados inadecuados:

Asegura que el Nombre del Sub Formulario y del Control, sean los adecuados.

En el Control SumIpeAlb >> =Suma(Nz([IpteLinea];0))

Para forzar un "Cero" en las líneas que tengan valor Nulo:. Saludos >> JTJ

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas