October 2007 - Artículos

Cambiar las propiedades WSSTemplateID y WSSFieldID de una tabla y sus campos para hacerla compatible con Contactos de Outlook y Sharepoint.

 

Mirando en plantillas y ejemplos de Access 2007, nos encontramos en algunos formularios con opciones como "Guardar como contacto de Outlook"; si miramos en el código del botón nos encontramos con que tan sólo tiene un par de líneas, casi siempre en una macro, que lo que hacen es EjecutarComando GuardarComoContactoDeOutlook o EjecutarComando AgregarDesdeOutlook, o sus equivalentes en VBA,  DoCmd.RunCommand acCmdSaveAsOutlookContactDoCmd.RunCommand acCmdAddFromOutlook.

También nos encontramos con "Etiquetas inteligentes" (SmartTag) que, para un determinado control, muestran esas opciones y, además, "Enviar Correo" y "Programar una reunión". En este caso, añadir la etiqueta inteligente, es aun más sencillo; basta con elegir la etiqueta adecuada en el desplegable que nos muestra la propiedad "Etiquetas inteligentes" del control.

Parece sencillísimo, pero si creamos nuestra propia tabla no funciona. Si importamos la tabla desde el ejemplo y modificamos el nombre de algún campo, éste tampoco vale. Si vinculamos, tampoco ¿Qué está pasando? Ocurre que de alguna manera debemos indicar que esa tabla se corresponde con una plantilla de Contactos y qué campos se corresponden con cada uno de los campos de los contactos de Outlook, y la forma de hacerlo es creando, si no existen, las propiedades WSSTemplateID y WSSFieldID de nuestra tabla y de sus campos, respectivamente, y asignándoles el valor adecuado.

Cómo se hace no es ningún secreto de estado, en Integrating Access Contacts with SharePoint and Outlook , lo explican claramente con un ejemplo de código completo. Está bien para una vez, pero vamos a tener tablas de contactos en muchas aplicaciones y, en algunas, más de una (clientes, proveedores,vendedores...) de manera que acaba resultando pesado, sobre todo si tenemos en cuenta que el código es tan sencillo que resulta muy fácil crear un complemento para seleccionar tablas y campos y cambiar las propiedades con unos pocos clics de ratón.

O sea, que he hecho un complemento para integrar fácilmente los contactos de Access con Outlook y Sharepoint y se puede descargar en mi página: http://jbengoechea.com/jbwzmakecontact.htm

 

Instalar un complemento de Access en 2007

Instalar un complemento en Access 2007 es aún más sencillo que en versiones anteriores, pues no es necesario colocar el archivo en una ubicación específica, sino que el mismo Access se encargará de hacer una copia en la carpeta Complementos cuando seleccionemos como tal el archivo en cualquier ubicación.

La extensión apropiada para un complemento de Access en 2007 es ACCDA, pero también admite ACCDB, ACCDE, MDA, MDB y MDA. En realidad, de manera parecida a lo que sucedía con los MDA, un archivo ACCDA es un archivo ACCDB o ACCDE renombrado y su única finalidad, que no es poca cosa, es que no se muestre en el explorador al abrir una aplicación desde Access, pues está pensado como complemento y no para abrir directamente.

Tenemos dos vías para instalar un complemento de Access:

  • Desde opciones de Access, pulsando en el | Botón de Office | Opciones de Access | Complementos | Administrar | Complementos de Access | Ir ...

image

  • Desde la cinta de opciones | Tag Herramientas de Access | Grupo Herramientas de Access | Botón Complementos | Opción Administrador de complementos

image

En cualquiera de ambas opciones se muestra la ventana del Administrador de complementos, idéntica a la de versiones anteriores. Se muestran disponibles para instalar los complementos que se encuentran en la carpeta Complementos, pero, si pulsamos "Agregar nuevo...", se abre el explorador y podemos elegir nuestro archivo en la ubicación en que se encuentre y, al instalarlo, Access lo copiará a la ubicación Complementos.

jbwzma4

Instalar un complemento de Access en Windows Vista

En Windows Vista es necesario tener permisos de administrador para poder instalar un complemento de Access.

Un truco sencillo para tener permisos de administrador es crearse un acceso directo que abra Access  como administrador:

Creamos un acceso directo a nuestra aplicación Access 2007, por ejemplo a "C:\Program Files\Microsoft Office\Office12\MSACCESS.EXE"

Luego, editamos el acceso directo y pulsamos en "Opciones avanzadas". Ya no nos queda más que marcar "Ejecutar como administrador". Entrando en Access desde este nuevo acceso directo, tendremos permisos de administrador y, por tanto, añadir o quitar complementos sin ninguna dificultad.

image

Evitar mensajes de seguridad con la Runtime de Access 2007

Al abrir una aplicación de Access 2007 utilizando la Runtime, nos encontramos con un mensaje de seguridad parecido a éste de más abajo. Es lógico, Office 2007 basa su seguridad en ubicaciones de confianza (trusted locations), muy fáciles de establecer si disponemos de Office 2007, pero, evidentemente, si necesitamos la Runtime es justo porque no disponemos de ella.

image

La solución está en modificar determinadas claves del registro de windows para añadir nuestras ubicaciones de confianza.

En su página, Gunter Avenius nos indica cuáles, pero, mucho mejor aún, proporciona para su descarga un pequeño ejecutable, AddPath.Exe, que basta con situarlo en una carpeta y hacer doble clic en él para que ésta se transforme en una ubicación de confianza. AddPath.exe admite además parámetros para indicarle la carpeta que queramos y si también las subcarpetas de confianza.

Por cierto, la página de Gunter Avenius es imprescindible para todos los que quieran aventurarse en la personalización de la cinta de opciones (Ribbon) de Access 2007.

 

 

 

Publicado por Chea con 8 comment(s)

Office Live Workspace

Microsoft ha abierto el registro previo para la beta de Office Live Workspace: http://office.microsoft.com/en-us/officelive/FX102394081033.aspx

 
Hay que preinscribirse para disfrutar de este servicio en un plazo de, quizás, un mes. Será gratuito y, a diferencia de otros servicios de Office Live estará dirigido a particulares en vez de a empresas.
 
¿Y qué pinta este anuncio en un blog sobre Access 2007?
 
Pues que se trata de un Workspace de Sharepoint y, aunque en lo publicado hasta ahora no hacen ninguna mención a ello, a lo mejor para no mostrarlo como algo complejo, podría resultar un Backend en la red adecuado para Access 2007.
 
En la actualidad es posible vincular a Access 2007 a listas de Sharepoint en algunas soluciones de Office Live Smallbussines, también beta, pero están dirigidas a empresas y sólo en unos pocos paises entre los que no se incluye ninguno que hable español.
 
Usar internet como BackEnd de nuestra aplicación en Access 2007 resulta muy lento,  pero sin duda tiene algunas utilidades muy interesantes, por ejemplo, para gente que sólo puede trabajar en desconectado y sincronizar de vez en cuando, o para tener vinculadas permanente algunas tablas, por ejemplo, para control de versiones del Frontend.
 
En versión beta es interesante sobre todo para experimentar con las listas de Sharepoint vinculadas, que WSS sólo funciona en servidores y no todo el mundo puede disponer para pruebas de un servidor Sharepoint en una intranet.
Publicado por Chea con 3 comment(s)
Archivado en: ,

Nuevas vistas de informe en Access 2007

Access 2007 añade dos nuevas vistas a los informes.  Además de la “Vista diseño” y “Vista preliimageminar”, ya conocidas, ahora tenimageemos “Vista presentación” y “Vista informes”.

 

Podemos pasar de una a otra sencillamente eligiendo la que queramos bien en el menú “Ver” de la cinta de opciones, bien en el menú contextual.

 

 

 

 

También tenemos esas posibilidades de apertura desdimagee VBA

 

 

 

 

 

Vista informes

En una primera ojeada parece una “Vista preliminar” un poco rara. No hay saltos de página, ni la cinta de opciones muestra la pestaña de Vista preliminar; ha desaparecido el zoom y no parece que haya manera de imprimir directamente; además, si pinchas con el ratón, el cursor seimage posiciona en un registro como si fuera un formulario. ¿Qué utilidad tiene esto?

En mucho sentidos, esta vista se comporta como si fuera un formulario con todos los campos bloqueados; no podemos editar ni añadir, pero podemos ordenar, buscar, filtrar… sin necesidad de más herramientas que las que tenemos en la cinta de opciones o en el menú contextual

 

En los listados de la base de datos de ejemplo NorthWind se pueden ver cosas interesantes usando la “Vista Informes”. Moviendo el cursor sobre algunos campos, se muestra el signo de admiración de las “etiquetas inteligentes” y, pulsando sobre él, se muestra el menú contextual correspondienimagete a esa etiqueta.

 

 

 

 

Añadir una etiqueta inteligente es tan fácil como elegir en un desplegable en la propiedad ”Etiquetas inteligentes” del control que queramos.

 

imageEl resultado es de lo más lucido en el ejemplo de NorthWind, sin embargo, se trata de etiquetas inteligentes pero no adivinas, así que, para que puedan hacer cosas como “Agregar a contactos”, es necesario cambiar unas cuantas propiedades de la definición de la tabla, indicando qué campo se corresponde con qué campo de Outloolk. Aunque no es tan difícil; está todo explicado en el Access Team Bblog.

 

 

 

 

Más sencillo y más interesante desde mi punto de vista es usar el evento clic, o doble clic, del control del informe para abrir un formulario filtrado por ese registro. Sí, sí, abrir un formulario con un clic en un informe, no al revés ;-)

image

image Los controles de los informes tienen ahora eventos. No tantos como los de los formularios, pues falta todo lo relacionado con la edición, pero sí disponemos de unos cuantos.

En uno de estos eventos podemos lanzar un formulario filtrado por el valor del registro actual, exactamente igual que lo haríamos desde un formulario. Si usamos el asistente para este fin, en vez de crearnos un procedimiento, como ocurría en versiones anteriores, ahora nos crea una macro incrustada (lo mismo que en los formularios) pero si queremos seguir haciéndolo escribiendo con VBA, no hay ningún problema, todo sigue funcionando igual.

Estas funcionalidades de la Vista Informes la vi hace tiempo en el ejemplo de NorthWind,  pero no les encontraba utilidad, al fin y al cabo eso se puede hacer con un formulario. Sin embargo, hace poco he tenido que repasar un informe que había emitido y, en vez de hacer para lo mismo un nuevo formulario, me fue muy pasar a esta vista y poder filtrar, ordenar, saltar al formulario, refrescar..

 

Vista presentación

Con la vista presentación podemos estar diseñando el informe al tiempo que vemos una representación de los datos.

 En el video de “Office Online” Demo: Use control layouts on forms and reports , que es una demostración impresionante de las nuevas posibilidades de diseño de los informes de Access 2007, se utiliza precisamente esta vista.

Cuando creamos un informe automáticamente por el procedimiento de seleccionar la tabla en el panel de exploración y pinchar en la cinta de opciones en Crear->Informe, es la vista que se muestra.

image

 

Podemos estar usando todas las herramientas de diseño al tiempo que vemos el resultado final. Parecerá una nimiedad, pero, por ejemplo, resulta comodísimo tener a la vista los márgenes mientras cambiamos el ancho o la disposición de los controles.

 

Las ventajas se entienden a simple vista, es sólo cuestión de ensayar un poco.

 

 

Publicado por Chea con 8 comment(s)