Traer datos de un campo calculado de una consulta a un cuadro de texto independiente de un formulario

Tengo un subformulario con vista "Hoja de datos" en el cual diligecio productos para darles salidas de almacén, también tengo dos tablas, una llamada "Entradas" y la otra llamada "Salidas" las cuales traigo en una consulta para sacar el saldo de almacén con un campo calculado en la misma.

Mi problema consiste en que quiero que en el subformulario halla un cuadro de texto independiente que me traiga desde la consulta el saldo del producto de manera informativa.

Lo que he hecho hasta el momento es que en las propiedades del subformulario abrí "Origen del registro" lo cual me llevó a una consulta, en esta le agregué la tabla de la consulta de saldos.

Imagen1

Luego en el subformulario en el cuadro de texto independiente llamado "Stock" en sus propiedades "origen del registro" escogí "Saldo".

Este procedimiento efectivamente me trae el valor del saldo, pero me bloquea el subformulario, de tal forma que no me deja seguir agregando registros tal como se muestra en las siguientes imágenes.

Imagen2

Esta imagen (Imagen2) es antes de hacer el procedimiento anterior, se ve en la parte inferior de la misma imagen que se pueden seguir añadiendo registros.

En la imagen3 ya se hizo todo el procedimiento y se ve en la parte inferior de la misma que no se pueden añadir registros. Cabe resaltar que el error se genera a partir de agregar a la consulta la tabla de la consulta "Saldos" (Imagen1).

Imagen3

Estaría muy agradecido si alguien me hace saber alguna solución del problema. O alguna otra forma de hacer lo que estoy intentando.

1 Respuesta

Respuesta
1

Es mucho más sencillo que todo eso. Vamos a suponer que tienes una tabla Productos con IdProducto, Nombre,... Existencias donde pones la existencias iniciales de los productos(ya que no se puede vender lo que no se tiene, luego me explico). Vamos a suponer que tienes una tabla Entradas con FechaEntrada, idProducto, Antes, Entrada,..., Después

Y otra Salidas con lo mismo, pero Antes, Salida..,.Después

Y haces un formulario con cada una de ellas. En el evento Después de actualizar del cuadro de texto IdProducto(que puede ser un combinado) puedes poner

Antes=Dlookup("Existencias","productos","idproducto=" & me.idproducto & "")

Con lo cual, cuando elijas un producto, en Antes te aparecerán las que tienes hasta ese momento.

En el evento después de actualizar del cuadro de texto Entrada puedes poner

docmd.setwarnings false

Despues=Antes+entrada

docmd.runcommand accmdsaverecord

docmd.runsql"update productos set existencias=" & me.despues & ""

Me explico, una vez que hayas anotado la entrada, le decimos que el cuadro de texto Después sea igual a las que había más las que han entrado y que actualice el campo existencias de la tabla producto a el nuevo valor.

En el caso de salidas es lo mismo pero poniendo

Después= Antes-salida

Lo demás igual

Y así siempre sabrás lo que tenías antes, lo que ha salido, lo que te queda

En el caso tuyo es que dependiendo de como se haga la consulta puede ser no actualizable.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas