Se aplica a
Objeto Form |
Objeto Report |
Puede usar la propiedad InputParameters para especificar o determinar los parámetros de entrada que se pasan a una instrucción SQL en la propiedad RecordSource de un formulario o informe, o un procedimiento almacenado cuando se usa como el origen de registros en un proyecto de Microsoft Access (.adp). Valor String de lectura y escritura.
expresión.InputParameters
expresión Requerido. Una expresión que devuelve uno de los objetos de la lista Se aplica a.
Observaciones
Puede establecer esta propiedad mediante la hoja de propiedades o código de Visual Basic para Aplicaciones (VBA).
Cuando se usa con una propiedad RecordSource:
Un cadena de ejemplo de la propiedad InputParameter que se usa con una instrucción SQL en la propiedad RecordSource usaría la sintaxis siguiente.
state char=[Forms]![nombre_formulario]![StateList], año_ventas smallint=[Forms]![nombre_formulario]![Escribir el año]
Como resultado, el parámetro de estado se establece en el valor actual del control StateList y se solicita al usuario el parámetro año_ventas. Si hubiera otros parámetros que no están en esta lista, se les asignarían valores predeterminados.
La consulta se debe ejecutar con un marcador ? para cada parámetro no predeterminado de la lista InputParameter.
Un comando de actualización o de nueva consulta de Microsoft Office Access 2007 debería desencadenar una nueva ejecución de la consulta. Los usuarios pueden hacerlo en código llamando al método Recordset.Requery. Si el valor de un parámetro está enlazado a un control del formulario, se usa el valor actual del control en el momento de la nueva consulta. La consulta no se vuelve a ejecutar de manera automática cuando cambia el valor del control.
Cuando se usa con un procedimiento almacenado:
Una cadena de ejemplo de la propiedad InputParameter que se usa con un procedimiento almacenado sería:
@state char=[Forms]![nombre_formulario]![StateList], @año_ventas smallint=[Forms]![nombre_formulario]![Escribir el año]
Como resultado, el parámetro @state se establece en el valor actual del control StateList y se solicita al usuario el parámetro @año_ventas. Si hubiera otros parámetros para el procedimiento almacenado que no están en esta lista, se les asignarían valores predeterminados.
El procedimiento almacenado debe ejecutarse mediante una cadena de comandos que contenga la sintaxis de {llamada} con un marcador ? para cada parámetro no predeterminado de la lista InputParameter.
Un comando de actualización o de nueva consulta de Access debería desencadenar una nueva ejecución del procedimiento almacenado. Los usuarios pueden hacerlo en código llamando al método Recordset.Requery. Si el valor de un parámetro está enlazado a un control del formulario, se usa el valor actual del control en el momento de la nueva consulta. El procedimiento almacenado no se vuelve a ejecutar de manera automática cuando cambia el valor del control.
Este cuadro de diálogo Generador se invoca cuando se selecciona primero un procedimiento almacenado como origen de registros de un formulario si el procedimiento almacenado tiene algún parámetro. Tras la creación inicial de la cadena InputParameters, este mismo cuadro de diálogo se usa como un generador para cambiar la cadena. Pero en este caso, la lista de parámetros procede de lo que ya existe en la cadena.
Los valores de parámetro también se pueden establecer en código mediante los objetos Command y Parameter de Objetos de datos ActiveX (ADO). Si el resultado es un conjunto de resultados, se le puede enlazar un formulario estableciendo la propiedad Recordset del formulario. El código de ADO es la única manera de administrar los procedimientos almacenados que devuelven conjuntos de resultados (como consultas de acción), los que devuelven parámetros de salida o los que devuelven varios conjuntos de resultados.