Os dejo 2 ejemplos algo complejos, pero que permiten conocer de primera mano, cómo emplear el sistema de consultas en Microsoft Access desde el editor, para crear programaciones a medida. Son 2 consultas tipo SQL.
La primera de ellas es la siguiente:
Ejemplo para realizar una consulta de actualización paramétrica con acceso a un array de controles de un formulario.
DoCmd.SetWarnings False For i = 1 To 11 cadena = "UPDATE articulos set NumeroUnidadesAlmacen = NumeroUnidadesAlmacen -" & Str(Me.Controls("u" & i)) & " WHERE id_referencia = '" & Me.Controls("a" & i) & "' and NumeroUnidadesAlmacen >= " & Str(Me.Controls("u" & i)) DoCmd.RunSQL cadena Next DoCmd.SetWarnings True
Es necesario observar una función interesante en el ejemplo superior para desactivar los mensajes de alerta (SetWarnings) que el propio Microsoft Access realiza cuando se realizan modificaciones sobre los registros.
Podremos usar cualquier tipo de operación SQL DML o de manipulación. La operación sobre la base de datos se realiza sólamente con 1 sentencia RunSQL
En este otro ejemplo, la operación de añadir un registro a la base de datos se efectúa de la siguiente manera:
Set transaccion = DBEngine.Workspaces(0) Set base = CurrentDb() transaccion.BeginTrans Set factura = base.OpenRecordset("facturas") With factura .AddNew !id_cliente = ncliente !numero_factura = facturaactual !fecha_emision = fecha !realizada_por = realizadapor !estado_de_cobro = estado_de_cobro .Update End With factura.Close transaccion.Close base.close Set base = Nothing
En este otro ejemplo accedemos a los registros de forma individual. Se emplean transacciones.
Funciona para cualquier versión Access.
Eso es todo.