Access - Actualizar un campo

 
Vista:
Imágen de perfil de Rachid
Val: 41
Ha aumentado su posición en 4 puestos en Access (en relación al último mes)
Gráfica de Access

Actualizar un campo

Publicado por Rachid (23 intervenciones) el 14/01/2020 21:49:21
foto6

Buenas tardes,

Estoy teniendo problemas con mi base de datos.

En mi formulario, tengo un campo llamado "Cantidad_aportada" donde en su evento "antes de actualizar" creo una variable llamada "antes" en la que guardo el valor del campo, y luego en el evento "despues de actualizar" quiero que el campo Stock, que esta en el mismo formulario tenga ese mismo valor.
Haciendo lo que se ve en la foto me sorprendo que al abrir el formulario y actualizar el campo, stock toma el valor 0, ponga lo que ponga el el campo Cantidad_aportada

Digamos que mi problema es que no consigo captar y tener en una variable el valor del campo Cantidad_aportada,
y la variable "antes" toma el valor cero siempre.

Gracias de ante mano


Un saludo
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Actualizar un campo

Publicado por Anonimo (3312 intervenciones) el 15/01/2020 00:11:36
OldValue = Valor anterior

….. me sorprendo que al abrir el formulario y actualizar el campo,...…

Al abrir el formulario los controles toman por defecto el valor cero, al cargar los datos (si tiene un origen asociado) toman el valor que corresponda (en Value)

Si NO estan los controles asociados a un origen (tabla, consulta) o si es un nuevo registro el valor sera CERO para Value y OldValue ¿Qué valor tomara si se le indica que 'cargue la variable' con el valor anterior …¿anterior a que?.

Si quiero conservar el anterior valor en el evento ANTES de actualizar (BeforeUpdate) pues el valor estará en VALUE, es en el evento 'DESPUES' de actualizar cuando el valor que hubiere en el control pasa a OldValue y en Value aparecera el nuevo valor (que durante este proceso -la adquisición del dato- lo que se esta introduciendo esta en TEXT)

¿Por qué complicar lo sencillo? … la variable se reinicia cada vez que se entre en el objeto (Dim Antes ….) esto es: se pone a cero y solo sirve para asignársela posteriormente a otro objeto ¿Por qué no se le asigna al objeto directamente pero en el evento DESPUES de actualizar y no dilapidamos recursos caros?

En el evento DESPUES de actualizar (AfterUpdate):

1
Me.Stock =Me.Cantidad_aportada.OldValue
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar