Actualizar campo en una tabla

Mi situación es la siguiente:

Tengo una tabla inventario Id, descripción, ..., disponible (que es la candidata que tengo en stock)
Tengo un formulario con todos esos campos + uno que dice "cantidad a añadir"
Tengo un botón "cargar al inventario"

Lo que quiero es que al darle click al botón la "cantidad a añadir" se le sume al "disponible" y actualice la tabla con ese valor, si al campo "cantidad a añadir" no se le digitó ningún valor que me muestre un mensaje o que lo tome como cero.

3 Respuestas

Respuesta
1

En que esta cargada la tabla en varios texbox o en un grid haber pintame un poco el formulario

Respuesta
1

Supongo que el Id es el dato que identifica, única e inequívocamente el registro a modificar... Llamaré a los cuadros de texto del formulario: txtId, txtDisp y txtCant

En el código del botón:

if isnull(form!txtCant)=True then

form!txtCant.value=0

end if

docmd.runsql "update inventario set disponible=" & form!txtDisp.value & "+" & form!txtCant.value & " where id='" & form!txtId.value & "'"

Página supuestos y soluciones en access: http://angelessebas.es

Respuesta
1

Como base del formulario tienes la tabla inventario, eso es lo que entiendo

Entonces debes tener un cuadro de texto disponible y otro cantidad a añadir

En el evento al hacer clic del botón ( clic derecho en el botón propiedades, eventos

"al hacer clic", seleccionas procedimiento de evento y haces clic en los puntos suspensivos)

Veras algo como esto :

Private sub boton_click()

end sub

entre las dos lineas pones esto

disponible = disponible + agregar

quedaría así

-------------------------------------------------------

Private sub boton_click()

if nz( agregar,0)= 0 then

msgbox "no ha digitado nada para agregar al stock"

agregar.setfocus

else

disponible = disponible + agregar

disponible.refresh

msgbox "se ha añadido al stock"

end if
End sub

------------------------------------------

Disponible es el nombre del cuadro de texto donde aparece lo disponible y agregar es el nombre del cuadro donde pones la cantidad a agregar

Perfecto eres un genio!

Solo me ha dado el siguiente error:

En la linea

Disponible.Refresh

Compile error

Method or data member not found

Pero simplemente cambié Refresh por Requery

Muchas gracias.

Otra consulta que linea debo programar para que al cargar la cantidad y salir el mensaje me limpie el formulario para poder cargar otra cantidad a otro registro.

Ademas de esta consulta:

Que linea debo programar para que al cargar la cantidad y salir el mensaje me limpie el formulario para poder cargar otra cantidad a otro registro.

Tengo está otra:

Antes de que me lo anterior que me funcionó perfecto necesito que me de un mensaje de confirmación donde un msj "Esta seguro de continuar con la operación" "aceptar" realiza el procedimiento y "no" me devuelve para modificar lo que está incorrecto.

Para que la cantidad quede en cero después de agregar sería

agregar=0 luego de la linea agregar.requery

para preguntar antes de agregar seria

Elseif msgbox ("Sumar "& agregar & " unidades al stock ?",VbOKCancel+Vbquestion+ vbDefaultButton2 ,"Confirme la acción")=Vbok then

Donde dice else en lo que te indique anteriormente reemplazas por lo que te indico aqui

ElseIf ( va todo junto )

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas