Iniciar sesión con Microsoft
Iniciar sesión o crear una cuenta
Hola:
Seleccione una cuenta diferente.
Tiene varias cuentas
Elija la cuenta con la que desea iniciar sesión.

Nota:  Nos gustaría proporcionarle el contenido de ayuda actual lo más rápido posible en su idioma. Esta página se ha traducido mediante un sistema automático y es posible que contenga imprecisiones o errores gramaticales. Nuestro objetivo es que este contenido sea útil para usted. ¿Puede informarnos sobre si la información le ha sido útil al final de la página? Aquí tiene el artículo en inglés para que pueda consultarlo fácilmente.

Si está familiarizado con la escritura de secuencias de comandos, puede agregar una secuencia de comandos a la plantilla de formulario de Microsoft Office InfoPath usando Microsoft JScript o el lenguaje de secuencias de comandos de Microsoft Visual Basic Scripting Edition (VBScript). Agregar secuencia de comandos le permite personalizar la plantilla de formulario más allá de lo que está disponible con reglas, fórmulas, validación de datos o formato condicional. Por ejemplo, puede agregar una secuencia de comandos que crea y envía un mensaje de correo electrónico cuando un usuario cambia una vista en un formulario basado en la plantilla de formulario. Puede configurar una plantilla de formulario para crear y enviar un mensaje de correo electrónico mediante un script.

En este artículo

Información general

Puede personalizar la plantilla de formulario de InfoPath usando reglas, fórmulas, validación de datos y formato condicional. Aunque estas características son muy flexibles y pueden controlar una amplia variedad de tareas, algunas tareas están más allá de las capacidades de estas características. Por ejemplo, no puede usar reglas para enviar un mensaje de correo electrónico cuando un usuario escribe un valor en un cuadro de texto en un formulario. Si necesita personalizar la plantilla de formulario de manera que sea más allá de las capacidades de estas características y está familiarizado con las secuencias de comandos mediante el lenguaje de secuencias de comandos JScript o VBScript, puede agregar una secuencia de comandos que se ejecuta cuando un usuario abre un formulario nuevo o modifica un ex formulario de istente que se basa en la plantilla de formulario.

Cuando agrega una secuencia de comandos para una plantilla de formulario, InfoPath inicia Microsoft Script Editor (MSE), que permite agregar, editar y depurar secuencias de comandos en una plantilla de formulario y coloca el cursor en el evento elegido. InfoPath agrega automáticamente un controlador de eventos a la secuencia de comandos. Un controlador de eventos es el código de función en una plantilla de formulario de InfoPath que responde a una acción del usuario o un cambio en los datos XML en un formulario. Por ejemplo, si desea que los usuarios guarden sus formularios en diversas ubicaciones de red, puede agregar una secuencia de comandos para el controlador de eventos OnSaveRequest . Cuando agrega una secuencia de comandos para que se ejecute cuando el usuario guarda un formulario basado en la plantilla de formulario, InfoPath inicia el editor de secuencias de comandos y agrega uno de los siguientes códigos en el script.

Nota: El código que agrega InfoPath depende de su lenguaje de secuencias de comandos elegido.

JScript

//=======
// The following function handler is created by Microsoft Office InfoPath.
// Do not modify the name of the function, or the name and number of arguments.
//=======
function XDocument::OnSaveRequest(eventObj)
{
// Write the code to be run before saving here.
eventObj.IsCancelled = eventObj.PerformSaveOperation();
// Write the code to be run after saving here.
eventObj.ReturnStatus = true;
}

VBScript

'=======
' The following function handler is created by Microsoft Office InfoPath.
' Do not modify the name of the function, or the name and number of arguments.
'=======
Sub XDocument_OnSaveRequest(eventObj)
' Write the code to be run before saving here.
eventObj.IsCancelled = eventObj.PerformSaveOperation
' Write the code to be run after saving here.
eventObj.ReturnStatus = True
End Sub

A continuación, puede agregar código en los lugares adecuados en el caso de controlador que guarda el formulario en la ubicación de red diferente. Cuando el usuario guarda un formulario basado en esta plantilla de formulario, InfoPath ejecuta el código en el controlador de eventos OnSaveRequest .

Nota: En este artículo se proporciona una visión general de la creación de secuencias de comandos en una plantilla de formulario. Para obtener más información acerca de Microsoft Script Editor y determinados objetos, métodos, eventos y propiedades que se usan en InfoPath, vea Referencia del programador de InfoPath.

InfoPath agrega automáticamente controladores de eventos para todos excepto uno de los siguientes eventos.

Controlador de eventos

Descripción

Pasos para crear

OnAfterChange

Este evento se ejecuta cuando un usuario cambia el valor en el control especificado enlazado a un campo. Por ejemplo, puede mostrar un panel de tareas personalizado HTML cuando un usuario selecciona un elemento en un control de cuadro de lista. Este evento se ejecuta el evento OnValidate .

Haga clic en un control en la plantilla de formulario o un campo en el panel de tareas Origen de datos, seleccione programación en el menú contextual y, a continuación, haga clic En evento después del cambio.

OnAfterImport

Este evento se ejecuta después de que el usuario correctamente combina varios formularios en uno solo.

Agregar manualmente la declaración directamente al archivo de script mediante MSE. Este controlador de eventos no pueden crearse en modo de diseño.

OnBeforeChange

Este evento se ejecuta cuando un usuario cambia el valor de un control y antes de que el valor se agrega al campo especificado enlazado a dicho control. Por ejemplo, puede impedir que un usuario agrega una fila adicional antes de rellenar la última fila de una tabla extensible.

Haga clic en un control en la plantilla de formulario o un campo en el panel de tareas Origen de datos, seleccione programación en el menú contextual y, a continuación, haga clic En evento antes del cambio.

OnClick

Este evento se ejecuta cuando el usuario hace clic en un botón asociado al evento. Este evento está disponible después de agregar un botón a la plantilla de formulario. Por ejemplo, puede realizar un cálculo complejo con los valores en los campos del origen de datos principal cuando un usuario hace clic en el botón.

Haga doble clic en el control de botón y, a continuación, en la ficha General del cuadro de diálogo Propiedades del botón, haga clic en Editar código del formulario.

OnContextChange

Este evento se ejecuta cuando cambie el foco en el formulario. Por ejemplo, este evento se ejecuta cuando un usuario se desplaza de un cuadro de texto a un selector de fecha, o cuando un usuario cambie las vistas. Este evento se produce después de han realizado todos los otros eventos.

En el menú Herramientas, elija programación y, a continuación, haga clic En el evento de cambio de contexto.

OnLoad

Este evento se ejecuta cuando un usuario crea un nuevo formulario o abre un formulario existente en función de la plantilla de formulario. Por ejemplo, puede copiar una lista de elementos de un origen de datos secundario al origen de datos principal cuando un usuario abre el formulario.

En el menú Herramientas, elija programación y, a continuación, haga clic En el evento de carga.

OnMergeRequest

Este evento se ejecuta cuando se combinan formularios basados en la plantilla de formulario. Por ejemplo, puede mostrar el número de formularios que se han combinado para dar a un usuario un estado durante la operación Combinar.

En el menú Herramientas, haga clic en Opciones de formulario. En la lista categoría, haga clic en Avanzadas. En Combinar formularios, active la casilla de verificación Combinar usando código personalizado y, a continuación, haga clic en Editar.

OnSaveRequest

Este evento se ejecuta cuando el usuario guarda un formulario basado en la plantilla de formulario. Por ejemplo, puede guardar el formulario basado en esta plantilla de formulario a más de una ubicación cuando el usuario guarda el formulario. InfoPath agrega dos líneas adicionales de código para este evento: una línea que guarda el formulario y otra línea que le indica si InfoPath guardado correctamente el formulario.

En el menú Herramientas, haga clic en Opciones de formulario. En la lista categoría, haga clic en Abrir y guardar. En Guardar comportamiento, active la casilla de verificación Guardar usando código personalizado y, a continuación, haga clic en Editar.

OnSign

Este evento se ejecuta cuando un usuario aplica una firma digital a un formulario. Por ejemplo, puede agregar datos adicionales a la firma digital de un formulario de informe de gastos cuando un usuario inicia sesión.

En el menú Herramientas, elija programación y, a continuación, haga clic En el evento de inicio de sesión.

OnSubmitRequest

Este evento se ejecuta cuando un usuario envía sus datos del formulario. Por ejemplo, puede enviar los datos del formulario a un servicio Web seguro cuando el usuario hace clic en Enviar en el menú archivo. Dado que InfoPath no admite una conexión de datos a un servicio Web seguro, debe agregar una conexión de datos personalizados que funciona con el servicio Web seguro.

En el menú Herramientas, haga clic en Opciones de envío. Active la casilla de verificación Permitir a los usuarios enviar este formulario, haga clic en realizar una acción personalizada utilizando código y, a continuación, haga clic en Editar código.

OnSwitchView

Este evento se ejecuta cuando un usuario abre un formulario basado en la plantilla de formulario o cambia a otra vista en el formulario. Por ejemplo, cuando un usuario cambia a una vista específica, puede crear un mensaje de correo electrónico que contiene datos de los campos de origen de datos principal del formulario.

En el menú Herramientas, haga clic en programación y, a continuación, haga clic En Cambiar vista evento.

OnValidate

Este evento se ejecuta cuando un usuario cambia el valor de un control enlazado a un campo. Por ejemplo, cuando el usuario cambia el valor de un control específico, puede calcular un nuevo valor para otro control mediante el número que el usuario especificado y un número que se encuentra en la secuencia de comandos. Este evento se produce cuando se ejecuta el controlador de eventos OnBeforeChange .

Haga clic en un control en la plantilla de formulario o un campo en el panel de tareas Origen de datos, seleccione programación en el menú contextual y, a continuación, haga clic En después de validar evento.

OnVersionUpgrade

Este evento se ejecuta cuando un usuario abre un formulario existente y el número de versión de la plantilla de formulario que se usa el formulario existente es más antiguo que el número de versión de la plantilla de formulario en la ubicación de publicación. Cuando un usuario abre un formulario existente, InfoPath comprueba el número de versión de la plantilla de formulario asociada con el formulario existente. Si la plantilla de formulario tiene un número de versión más reciente, InfoPath ejecuta el controlador de eventos de OnVersion cuando el usuario abre el formulario existente. Por ejemplo, suponga que agregar un nuevo campo a una plantilla de formulario y publicarlo y desea que el nuevo campo que se agregará al origen de datos principal si un usuario abre un formulario existente. Este evento agrega el campo nuevo al origen de datos principal cuando un usuario abre un formulario existente.

En el menú Herramientas, haga clic en Opciones de formulario. En la lista categoría, haga clic en control de versiones. En la lista al actualizar la versión, haga clic en Utilizar evento personalizado y, a continuación, haga clic en Editar.

Volver al principio

Consideraciones de compatibilidad

No puede agregar comandos a un plantilla de formulario compatible con el explorador. Puede agregar script solo a una plantilla de formulario cuyos formularios se rellenarán en InfoPath. Puede personalizar una plantilla de formulario compatible con el explorador mediante código administrado.

Volver al principio

Establecer el lenguaje de secuencias de comandos para una plantilla de formulario

Para personalizar una plantilla de formulario usando secuencias de comandos, puede usar Microsoft JScript o Microsoft Visual Basic Scripting Edition (VBScript). De forma predeterminada, InfoPath está configurado para agregar el script mediante JScript. Si la plantilla de formulario no contiene secuencias de comandos o código administrado, y prefiere usar VBScript como el lenguaje de secuencias de comandos, puede cambiar el lenguaje de secuencias de comandos para la plantilla de formulario a VBScript. No puede utilizar ambos lenguajes de secuencias de comandos en la misma plantilla de formulario.

Si la plantilla de formulario ya contiene secuencia de comandos en un idioma y desea utilizar el otro idioma, debe guardar la secuencia de comandos existente para que se puede convertir el script en el otro idioma, quitar la secuencia de comandos de la plantilla de formulario a través de las Opciones de formulario diálogo cuadro y, a continuación, agregue la secuencia de comandos convertida a la plantilla de formulario. InfoPath no puede convertir las secuencias de comandos a un nuevo lenguaje de secuencias de comandos. Cambiar el idioma de secuencia de comandos en el cuadro de diálogo Opciones de formulario solo afecta a esta plantilla de formulario. Otras plantillas de formulario tendrán JScript como lenguaje de secuencias de comandos predeterminado.

  1. En el menú Herramientas, haga clic en Opciones de formulario.

  2. En la lista categoría, en el cuadro de diálogo Opciones de formulario, haga clic en programación.

  3. En la lista lenguaje del código de plantilla de formulario, en el lenguaje de programación, haga clic en VBScript.

    Notas: 

    • Después de establecer el lenguaje de secuencias de comandos y crear uno o varios controladores de eventos para una plantilla de formulario, no puede cambiar el lenguaje de la plantilla de formulario.

    • Si ha instalado Microsoft Visual Studio 2005 Tools para aplicaciones, el idioma predeterminado es Microsoft Visual Basic .NET. Aún puede usar este procedimiento para cambiar el idioma de scripting VBScript.

Volver al principio

Mostrar un mensaje cada vez que se produce un evento

Si desea saber qué controladores de eventos que se ejecutan en respuesta a una acción u otro evento, puede agregar código temporal para mostrar un cuadro de mensaje siempre que se ejecuta el controlador de eventos. Debe utilizar este código para determinar cuándo se ejecuta un controlador de eventos. Después de agregar este código, puede usar la vista previa para ver un formulario basado en esta plantilla de formulario o para publicar la plantilla de formulario y, a continuación, crear una nueva plantilla de formulario. Algunos controladores de eventos sólo se ejecutan al crear un formulario después de publicar la plantilla de formulario. A continuación, puede realizar una acción que cree podría ejecutar el controlador de eventos. Cuando se ejecuta el controlador de eventos, verá un cuadro de mensaje.

Después de determinar qué acciones o eventos ejecutan el controlador de eventos, quite el código y reanude el diseño de la plantilla de formulario. Si no quita este código y, a continuación, publicar la plantilla de formulario, los usuarios verán este cuadro de mensaje cuando se ejecuta el controlador de eventos.

  1. Agregue el controlador de eventos.

  2. Para agregar código en JScript, escriba XDocument.UI.Alert ("el evento nombre acaba de ejecutar"); Reemplazar por el nombre del controlador de eventos. Por ejemplo, si agrega este código al controlador de eventos OnValidate , podría escribir XDocument.UI.Alert ("el OnValidate solo ha encontrado el controlador de eventos");

  3. Para agregar código en VBScript, escriba XDocument.UI.Alert ("el evento nombre acaba de ejecutar") , por ejemplo, si agrega este código al controlador de eventos OnSaveRequest , podría escribir XDocument.UI.Alert ("el OnSaveRequest solo ha encontrado el controlador de eventos")

  4. Para probar el código, haga clic en vista previa en el menú archivo, o presione CTRL + MAYÚS + B y, a continuación, realice una acción del usuario que puede iniciar el evento. Cuando se produce el evento con la línea de código, un cuadro de mensaje debe mostrar el mensaje.

    Nota: Algunos eventos requieren publicar la plantilla de formulario y, a continuación, crear un formulario basado en esta plantilla de formulario antes de realizar una acción del usuario para iniciar el evento.

  5. Antes de publicar la plantilla de formulario y permitir a los usuarios a rellenar formularios basados en esta plantilla de formulario, elimine el código que ha usado para mostrar el cuadro de mensaje.

Volver al principio

Agregar una secuencia de comandos que se ejecuta cuando el usuario guarda los datos del formulario

  1. En el menú Herramientas, haga clic en Opciones de formulario.

  2. En la lista categoría, en el cuadro de diálogo Opciones de formulario, haga clic en Abrir y guardar.

  3. En Guardar comportamiento, active la casilla de verificación Guardar usando código personalizado y, a continuación, haga clic en Editar. Microsoft Script Editor comienza con el cursor en el controlador de eventos OnSaveRequest .

    JScript

    //=======
    // The following function handler is created by Microsoft Office InfoPath.
    // Do not modify the name of the function, or the name and number of arguments.
    //=======
    function XDocument::OnSaveRequest(eventObj)
    {
    // Write the code to be run before saving here.
    eventObj.IsCancelled = eventObj.PerformSaveOperation();
    // Write the code to be run after saving here.
    eventObj.ReturnStatus = true;
    }

    VBScript

    '=======
    ' The following function handler is created by Microsoft Office InfoPath.
    ' Do not modify the name of the function, or the name and number of arguments.
    '=======
    Sub XDocument_OnSaveRequest(eventObj)
    ' Write the code to be run before saving here.
    eventObj.IsCancelled = eventObj.PerformSaveOperation
    ' Write the code to be run after saving here.
    eventObj.ReturnStatus = True
    End Sub
  4. Siga uno de los siguientes procedimientos o ambos:

    • Para agregar una secuencia de comandos que se ejecuta antes de que InfoPath guarde el formulario, reemplace el comentario Write the code to be run before saving here.por el código.

    • Para agregar una secuencia de comandos que se ejecuta después de que InfoPath guarde el formulario, reemplace el comentario Write the code to be run after saving here. por el código.

  5. Para probar sus cambios, haga clic en Vista previa en la barra Estándar, o presione CTRL+MAYÚS+B.

    Nota: Si el controlador de eventos se ejecuta sólo después de crear un formulario basado en la plantilla de formulario, publicar la plantilla de formulario haciendo clic en Publicar en el menú archivo y, a continuación, complete el Asistente para la publicación. Después de publicar la plantilla de formulario, cree un formulario y, a continuación, realice una acción para ejecutar el controlador de eventos.

Volver al principio

Agregar una secuencia de comandos que se ejecuta cuando un usuario envía los datos del formulario

  1. En el menú Herramientas, haga clic en Opciones de envío.

  2. En el cuadro de diálogo Opciones de envío, seleccione la casilla de verificación Permitir a los usuarios enviar este formulario.

  3. Haga clic en realizar una acción personalizada utilizando código y, a continuación, haga clic en Editar código. Microsoft Script Editor comienza con el cursor en el controlador de eventos OnSubmitRequest .

    JScript

    //=======
    // The following function handler is created by Microsoft Office InfoPath.
    // Do not modify the name of the function, or the name and number of arguments.
    //=======
    function XDocument::OnSubmitRequest(eventObj)
    {
    // If the submit operation is successful, set
    // eventObj.ReturnStatus = true;
    // Write your code here
    }

    VBScript

    '=======
    ' The following function handler is created by Microsoft Office InfoPath.
    ' Do not modify the name of the function, or the name and number of arguments.
    '=======
    Sub XDocument_OnSubmitRequest(eventObj)
    ' If the submit operation is successful, set
    ' eventObj.ReturnStatus = True
    ' Write your code here
    End Sub
  4. Reemplace el comentario If the submit operation is successful, set eventObj.ReturnStatus = true Write your code here por el código.

  5. Para probar sus cambios, haga clic en Vista previa en la barra Estándar, o presione CTRL+MAYÚS+B.

Volver al principio

Agregar una secuencia de comandos que se ejecuta cuando el usuario hace clic en un botón

  1. Agregar un nuevo botón a una vista en la plantilla de formulario y, a continuación, haga doble clic en el botón.

    Nota: Si va a agregar comandos a un botón existente, haga doble clic en su lugar en el botón existente.

  2. Haga clic en la pestaña General.

  3. Haga clic en Editar código del formulario. El Editor de secuencias de comandos de Microsoft comienza con el cursor en el controlador de eventos OnClick para el botón.

    JScript

    //=======
    // The following function handler is created by Microsoft Office InfoPath.
    // Do not modify the name of the function, or the name and number of arguments.
    //=======
    function Button Name::OnClick(eventObj)
    {
    // Write your code here
    }

    VBScript

    '=======
    ' The following function handler is created by Microsoft Office InfoPath.
    ' Do not modify the name of the function, or the name and number of arguments.
    '=======
    Sub Button Name_OnClick(eventObj)
    ' Write your code here
    End Sub
  4. Reemplace el comentario Write your code here por el código.

  5. Para probar sus cambios, haga clic en Vista previa en la barra Estándar, o presione CTRL+MAYÚS+B.

Volver al principio

Agregar una secuencia de comandos que se ejecuta cuando se combinan formularios existentes

  1. En el menú Herramientas, haga clic en Opciones de formulario.

  2. En la lista categoría, en el cuadro de diálogo Opciones de formulario, haga clic en Avanzadas.

  3. En Combinar formularios, active la casilla de verificación Habilitar la combinación de formularios.

  4. Active la casilla de verificación Combinar usando código personalizado y, a continuación, haga clic en Editar. Microsoft Script Editor comienza con el cursor en el controlador de eventos OnMergeRequest .

    JScript

    //=======
    // The following function handler is created by Microsoft Office InfoPath.
    // Do not modify the name of the function, or the name and number of arguments.
    //=======
    function XDocument::OnMergeRequest(eventObj)
    {
    // Write the code that handles each form being merged here.
    XDocument.ImportDOM(eventObj.DOM);
    eventObj.ReturnStatus = true;
    }

    VBScript

    '=======
    ' The following function handler is created by Microsoft Office InfoPath.
    ' Do not modify the name of the function, or the name and number of arguments.
    '=======
    Sub XDocument_OnMergeRequest(eventObj)
    ' Write the code that handles each form being merged here.
    XDocument.ImportDOM(eventObj.DOM)
    eventObj.ReturnStatus = True
    End Sub
  5. Reemplace el comentario Write the code that handles each form being merged here. por el código.

  6. Para probar el código en este caso, publicar la plantilla de formulario, cree varios formularios basados en esta plantilla de formulario y, posteriormente, combinar las plantillas de formulario.

    Nota: Buscar vínculos a más información acerca de cómo publicar la plantilla de formulario en la sección Vea también.

Volver al principio

Agregar una secuencia de comandos para actualizar los formularios existentes

Si actualiza una plantilla de formulario publicada anteriormente y que desea actualizar los formularios existentes basados en esa plantilla de formulario, puede agregar comandos a la plantilla de formulario actualizada que se ejecute cuando un usuario abre uno de los formularios existentes. Cuando un usuario abre un formulario existente, InfoPath comprueba el número de versión de su plantilla de formulario asociada en la ubicación de publicación. Si el número de versión de la plantilla de formulario en la ubicación de publicación es más reciente que el número de versión del formulario existente, que indica que se ha actualizado, InfoPath ejecuta el código de este evento para actualizar el formulario existente.

  1. En el menú Herramientas, haga clic en Opciones de formulario.

  2. En la lista categoría, en el cuadro de diálogo Opciones de formulario, haga clic en control de versiones.

  3. En la lista al actualizar la versión, haga clic en Utilizar evento personalizado y, a continuación, haga clic en Editar. Microsoft Script Editor comienza con el cursor en el controlador de eventos OnVersionUpgrade .

    JScript

    //=======
    // The following function handler is created by Microsoft Office InfoPath.
    // Do not modify the name of the function, or the name and number of arguments.
    //=======
    function XDocument::OnVersionUpgrade(eventObj)
    {
    // Write your code here
    }

    VBScript

    '=======
    ' The following function handler is created by Microsoft Office InfoPath.
    ' Do not modify the name of the function, or the name and number of arguments.
    '=======
    Sub XDocument_OnVersionUpgrade(eventObj)
    ' Write your code here
    End Sub
  4. Reemplace el comentario Write your code here por el código.

  5. Para probar el código de este evento, publique la plantilla de formulario, cree varios formularios basados en esta plantilla de formulario, modificar y publicar una versión actualizada de la plantilla de formulario y, a continuación, abra un formulario existente en función de la versión anterior de esta plantilla de formulario.

    Nota: Buscar vínculos a más información acerca de cómo publicar la plantilla de formulario en la sección Vea también.

Volver al principio

Agregar una secuencia de comandos para otros eventos

Este procedimiento se puede utilizar para agregar los siguientes controladores de eventos a la plantilla de formulario:

  • OnAfterChange

  • OnBeforeChange

  • OnContextChange

  • OnLoad

  • OnSwitchView

  • OnSign

  • OnValidate

  • En el menú Herramientas, elija programación y, a continuación, haga clic en el evento para agregarlo al controlador de eventos. El Editor de secuencias de comandos de Microsoft comienza con el cursor en el controlador de eventos que haya seleccionado.

  • Reemplace el comentario Write your code here por el código.

Volver al principio

¿Necesita más ayuda?

¿Quiere más opciones?

Explore las ventajas de las suscripciones, examine los cursos de aprendizaje, aprenda a proteger su dispositivo y mucho más.

Las comunidades le ayudan a formular y responder preguntas, enviar comentarios y leer a expertos con conocimientos extensos.

¿Le ha sido útil esta información?

¿Cuál es tu grado de satisfacción con la calidad del lenguaje?
¿Qué ha afectado a su experiencia?
Si presiona Enviar, sus comentarios se usarán para mejorar los productos y servicios de Microsoft. El administrador de TI podrá recopilar estos datos. Declaración de privacidad.

¡Gracias por sus comentarios!

×