GuilleSQL :: Microsoft SQL Server, SSIS, y más !!

Contact Selector en InfoPaht 2007


Un Control que podemos necesitar al desarrollar una Plantilla de Formulario InfoPath 2007, es el Contact Selector, para de este modo, facilitar al usuario la selección de personas y grupos dentro de nuestro Formulario InfoPath. Sin embargo, este Control no está disponible por defecto en la barra de herramientas de InfoPath 2007. El presente artículo describe como añadir el Contact Selector a nuestra Barra de Herramientas, y como utilizarlo en una Plantilla de Formulario InfoPath 2007 diseñada para la Web.

El Control Contact Selector nos puede resultar de gran utilidad durante el desarrollo de Plantillas de Formulario de InfoPath 2007. El presente artículo describe su configuración, ya que se trata de un Control que por defecto no está disponible en la barra de herramientas de InfoPath 2007, aunque aun así, sí es posible utilizarlo siguiendo las instrucciones descritas a continuación.

Básicamente, deberemos seguir los siguientes pasos, para poder utilizar el Contact Selector en un Formulario de InfoPath 2007.

  • Añadir el Contact Selector a la Barra de Herramientas de InfoPath 2007.
  • Crear una Conexión secundaria al Contexto del Servidor.
  • Utilizar el Contact Selector en un Formulario InfoPath 2007.

A continuación se describe paso a paso todas estas tareas de configuración. Empezamos.

Añadir el Contact Selector a la Barra de Herramientas

Lo primero, es conseguir que el Control Contact Selector aparezca en nuestra barra de herramientas en InfoPath 2007. Para ello, mostraremos la barra de herramientas de InfoPath, y seguidamente, click en Add or Remove Custom Controls.

Lo primero, es conseguir que el Control Contact Selector aparezca en nuestra barra de herramientas en InfoPath 2007. Para ello, mostraremos la barra de herramientas de InfoPath, y seguidamente, click en Add or Remove Custom Controls.

En el diálogo Add or Remove Custom Controls, click Add.

En el diálogo Add or Remove Custom Controls, click Add.

En el diálogo Add Custom Control Wizard, en la pantalla Select a Control Type, seleccionaremos la opción ActiveX Control. Click Next.

En el diálogo Add Custom Control Wizard, en la pantalla Select a Control Type, seleccionaremos la opción ActiveX Control. Click Next.

En el diálogo Add Custom Control Wizard, en la pantalla Select an ActiveX Control, seleccionaremos la opción Contact Selector. Click Next.

En el diálogo Add Custom Control Wizard, en la pantalla Select an ActiveX Control, seleccionaremos la opción Contact Selector. Click Next.

En el diálogo Add Custom Control Wizard, en la pantalla Specify Installation Options, seleccionaremos la opción Don’t include a .cab file. Click Next.

En el diálogo Add Custom Control Wizard, en la pantalla Specify Installation Options, seleccionaremos la opción Don’t include a .cab file. Click Next.

En el diálogo Add Custom Control Wizard, en la pantalla Specify a Binding Property, seleccionaremos la opción Value. Click Next.

En el diálogo Add Custom Control Wizard, en la pantalla Specify a Binding Property, seleccionaremos la opción Value. Click Next.

En el diálogo Add Custom Control Wizard, en la pantalla Specify Data Type Options, seleccionaremos la opción Field or Group (any data type). Click Finish.

En el diálogo Add Custom Control Wizard, en la pantalla Specify Data Type Options, seleccionaremos la opción Field or Group (any data type). Click Finish.

En el diálogo Add Custom Control Wizard, en la pantalla Custom Control Added, click Close.

En el diálogo Add Custom Control Wizard, en la pantalla Custom Control Added, click Close.

Realizado esto, de nuevo en el diálogo Add or Remove Custom Controls, click OK para continuar.

Realizado esto, de nuevo en el diálogo Add or Remove Custom Controls, click OK para continuar.

Realizado esto, ya tendremos disponible el Control Contact Selector en nuestra barra de herramientas de InfoPath 2007, dentro de la sección Custom.

Realizado esto, ya tendremos disponible el Control Contact Selector en nuestra barra de herramientas de InfoPath 2007, dentro de la sección Custom.

Téngase en cuenta, que una vez que hemos realizado esto una única vez, no será necesario volver a repetirlo para los futuros Formularios de InfoPath. Para próximas ocasiones que volvamos a abrir InfoPath, el control Contact Selector ya estará disponible, sin necesidad de volver a repetir todos estos pasos.

Crear una Conexión secundaria al Contexto del Servidor

La segunda tarea que tenemos que realizar es crear una Conexión secundaria al Contexto del Servidor. Es importante no olvidarnos de este paso, ya que si no lo hacemos, obtendremos un mensaje de error "Search failed" al intentar realizar una búsqueda de usuarios o grupos utilizando el Contact Selector.

Por lo demás, se trata de una tarea bastante sencilla. Lo primero crearemos un fichero que llamaremos context.xml, con un contenido como el que se muestra en la siguiente pantalla capturada, especificando la URL de nuestro servidor de MOSS.

Por lo demás, se trata de una tarea bastante sencilla. Lo primero crearemos un fichero que llamaremos context.xml, con un contenido como el que se muestra en la siguiente pantalla capturada, especificando la URL de nuestro servidor de MOSS.

Seguidamente, mostraremos el diálogo Data Connections de InfoPath (Tools -> Data Connections), y haremos click en el botón Add.

Seguidamente, mostraremos el diálogo Data Connections de InfoPath (Tools -> Data Connections), y haremos click en el botón Add.

En el diálogo Data Connection Wizard, seleccionaremos la opción Create a new connection to, y seguidamente seleccionaremos Receive data. Click Next para continuar.

En el diálogo Data Connection Wizard, seleccionaremos la opción Create a new connection to, y seguidamente seleccionaremos Receive data. Click Next para continuar.

En la siguiente pantalla del Data Connection Wizard, seleccionaremos que deseamos recibir los datos desde un documento XML (opción XML document). Click Next para continuar.

En la siguiente pantalla del Data Connection Wizard, seleccionaremos que deseamos recibir los datos desde un documento XML (opción XML document). Click Next para continuar.

En la siguiente pantalla del Data Connection Wizard, utilizaremos el botón Resource Files para, a través del diálogo Resource Files, añadir (Add) el fichero Context.xml que creamos antes. Hecho esto, click Next para continuar.

En la siguiente pantalla del Data Connection Wizard, utilizaremos el botón Resource Files para, a través del diálogo Resource Files, añadir (Add) el fichero Context.xml que creamos antes. Hecho esto, click Next para continuar.

En la siguiente pantalla del Data Connection Wizard, deberemos especificar un nombre para la Conexión. Deberemos especificar textualmente Context, respetando mayúsculas y minúsculas. Click Finish para continuar.

En la siguiente pantalla del Data Connection Wizard, deberemos especificar un nombre para la Conexión. Deberemos especificar textualmente Context, respetando mayúsculas y minúsculas. Click Finish para continuar.

De vuelta al diálogo Data Connections, click Close.

De vuelta al diálogo Data Connections, click Close.

Realizado esto, ya habremos finalizado esta tarea de configuración. Vamos a por lo siguiente.

Utilizar el Contact Selector en un Formulario InfoPath

Con el Control Contact Selector disponible en la barra de herramientas de InfoPath 2007, y un Formulario InfoPath con la correspondiente Conexión secundaria creada (conforme los pasos antes indicados), ya sólo nos queda empezar a utilizar el Contact Selector.

En el siguiente ejemplo vamos a agregar dos controles Contact Selector a un Formulario InfoPath 2007. Para empezar, vamos a arrastrarlos a nuestro Formulario InfoPath, lo cual nos creará dos Grupos vacíos en nuestro Origen de Datos Principal, con los que enlazará dichos controles.

En el siguiente ejemplo vamos a agregar dos controles Contact Selector a un Formulario InfoPath 2007. Para empezar, vamos a arrastrarlos a nuestro Formulario InfoPath, lo cual nos creará dos Grupos vacíos en nuestro Origen de Datos Principal, con los que enlazará dichos controles.

Si mostramos las propiedades de un Control Contact Selector, en la pestaña Items podremos obtener un poco de información de ayuda, cara a la configuración que tenemos que realizar en nuestro Origen de Datos Principal.

Si mostramos las propiedades de un Control Contact Selector, en la pestaña Items podremos obtener un poco de información de ayuda, cara a la configuración que tenemos que realizar en nuestro Origen de Datos Principal.

En nuestro caso de ejemplo, queremos utilizar DOS controles Contact Selector en el mismo Formulario InfoPath, lo cual tiene una dificultad adicional. Básicamente, el problema es que cada control Contact Selector, debe estar asociado a una Grupo de nuestro Origen de Datos Principal, el cual debe contener Grupo denominado Person que permita repeticiones (opción Repeating activada), el cual a su vez debe contener tres campos de texto, denominados DisplayName, AccountId, y AccountType. Pero claro, si intentamos crear esta estructura de datos dos veces, una para cada Contact Selector, obtendremos el siguiente mensaje de error: A field or group with that name already exists. If you want to créate a field with the same name as an existing field, right-click the existing field, click Reference, and select a location for the new field.

A field or group with that name already exists. If you want to créate a field with the same name as an existing field, right-click the existing field, click Reference, and select a location for the new field

Así que, crearemos un grupo que llamaremos grpContactSelector, por debajo del cual, crearemos la estructura de datos que hemos comentado, tal y como se muestra en la siguiente pantalla capturada (ojo con las mayúsculas, minúsculas y demás detalles).

Así que, crearemos un grupo que llamaremos grpContactSelector, por debajo del cual, crearemos la estructura de datos que hemos comentado, tal y como se muestra en la siguiente pantalla capturada (ojo con las mayúsculas, minúsculas y demás detalles).

Seguidamente, seleccionaremos este nuevo Grupo que hemos creado, y haremos click en la opción Reference del menú contextual.

Seguidamente, seleccionaremos este nuevo Grupo que hemos creado, y haremos click en la opción Reference del menú contextual

En el diálogo Reference Field or Group, seleccionaremos el Grupo correspondiente al primero de nuestros controles Contact Selector.

En el diálogo Reference Field or Group, seleccionaremos el Grupo correspondiente al primero de nuestros controles Contact Selector.

Volveremos a repetir esta operación para el segundo de los controles Contact Selector, tras lo cual, nuestro Origen de Datos Principal quedará como sigue.

Volveremos a repetir esta operación para el segundo de los controles Contact Selector, tras lo cual, nuestro Origen de Datos Principal quedará como sigue.

Realizado todo esto, ya estaremos en situación de poder visualizar nuestro Formulario InfoPath en modo Preview, y de realizar búsquedas de usuarios.

Realizado todo esto, ya estaremos en situación de poder visualizar nuestro Formulario InfoPath en modo Preview, y de realizar búsquedas de usuarios.

Poco más por hoy. Como siempre, confío que la lectura resulte de interés.

 


Miembros de
Miembros de GITCA (Global IT Community Association)

Menu de Usuario
  Iniciar Sesión
  Registrarse
  Restablecer Contraseña
  Ventajas de Registrarse

Acerca de
  Contigo desde Oct 2007
  771 usuarios registrados
  86146 pageloads/mes
  Ranking Alexa 498160

Social Networks
Sigue a Portal GuilleSQL en Linkedin !!
Sigue a Portal GuilleSQL en Twitter !!



Archivo

Junio de 2017 (3)
Mayo de 2017 (1)
Marzo de 2017 (3)
Enero de 2017 (4)
Junio de 2016 (1)
Mayo de 2016 (2)
Abril de 2016 (2)
Septiembre de 2015 (2)
Agosto de 2015 (2)
Junio de 2015 (10)
Mayo de 2015 (4)
Abril de 2015 (8)
Marzo de 2015 (11)
Octubre de 2014 (3)
Septiembre de 2014 (7)
Agosto de 2014 (5)
Julio de 2014 (2)
Mayo de 2014 (4)
Abril de 2014 (4)
Marzo de 2014 (4)
Febrero de 2014 (1)
Enero de 2014 (5)
Diciembre de 2013 (8)
Noviembre de 2013 (2)
Octubre de 2013 (7)
Septiembre de 2013 (6)
Agosto de 2013 (1)
Julio de 2013 (6)
Junio de 2013 (11)
Mayo de 2013 (7)
Abril de 2013 (6)
Febrero de 2013 (5)
Enero de 2013 (7)
Diciembre de 2012 (12)
Noviembre de 2012 (13)
Octubre de 2012 (5)
Septiembre de 2012 (3)
Agosto de 2012 (6)
Julio de 2012 (4)
Junio de 2012 (1)
Mayo de 2012 (2)
Abril de 2012 (7)
Marzo de 2012 (16)
Febrero de 2012 (9)
Enero de 2012 (5)
Diciembre de 2011 (10)
Noviembre de 2011 (10)
Octubre de 2011 (4)
Septiembre de 2011 (5)
Agosto de 2011 (2)
Julio de 2011 (2)
Junio de 2011 (4)
Mayo de 2011 (2)
Abril de 2011 (6)
Marzo de 2011 (4)
Febrero de 2011 (10)
Enero de 2011 (5)
Diciembre de 2010 (6)
Noviembre de 2010 (4)
Octubre de 2010 (8)
Septiembre de 2010 (4)
Agosto de 2010 (1)
Julio de 2010 (3)
Mayo de 2010 (5)
Abril de 2010 (6)
Marzo de 2010 (8)
Febrero de 2010 (3)
Enero de 2010 (1)
Diciembre de 2009 (9)
Noviembre de 2009 (14)
Octubre de 2009 (2)
Septiembre de 2009 (8)
Agosto de 2009 (2)
Julio de 2009 (10)
Junio de 2009 (9)
Mayo de 2009 (10)
Abril de 2009 (9)
Marzo de 2009 (3)
Febrero de 2009 (2)
Enero de 2009 (3)
Noviembre de 2008 (2)
Octubre de 2008 (2)
Septiembre de 2008 (2)
Agosto de 2008 (5)
Julio de 2008 (5)
Junio de 2008 (1)
Mayo de 2008 (3)
Abril de 2008 (2)
Marzo de 2008 (2)
Febrero de 2008 (2)
Enero de 2008 (5)
Noviembre de 2007 (2)
Octubre de 2007 (2)






Copyright © 2007 GuilleSQL, todos los derechos reservados.