martes, 11 de noviembre de 2008

Custom Field Types en Sharepoint

Hoy, segundo día del Tech-ed developers EMEA 2008, he decidido asistir a una sesión que parecía ser de un nivel muy elevado, a juzgar por su nivel 400 y por el título que tenía: Extreme Sharepoint customization: building custom field types. En líneas generales la presentación ha sido buena, y aquí dejo un post del ponente en el que habla de la presentación en cuestión que, como podréis observar, ha tenido una buena aceptación. De todas maneras, y sin ánimo de hacer una crítica, he echado en falta algo más de profundidad. Teniendo en cuenta que ya hace bastante tiempo que Sharepoint 2007 está en el mercado y la cantidad de documentación que se puede encontrar en internet, no he visto nada que no se pueda hacer siguiento la documentación existente en MSDN. Aún así, un excelente resumen de lo que son los field types y lo que se puede hacer con ellos.

Quizá el motivo por el cual he echado en falta algo de profundidad es la profundidad que ya hemos alcanzado en esta ámbito. Algunos de los tipos de campo personalizados que nosotros hemos desarrollado a día de hoy son:

  • LocalizableChoice: permite mostrar desplegables en sitios multiidioma que utilicen variaciones.
  • LocalizableMultiChoice: igual que el anterior, pero con la posibilidad de elegir múltiples opciones.
  • GeoLocalization (Google Maps & Virtual Earth compatible): permite seleccionar una latitud y una longitud mediante un mapa clickable.
  • CascadingChoice: permite seleccionar un elemento de una serie de listas enlazadas las unas con las otras a modo de maestro - detalle, con N niveles de profundidad configurables.

La parte que no hemos visto hoy, y con la que nosotros nos hemos tenido que pelear en el pasado tiene que ver con el despliegue de estos artefactos. Como podréis comprobar por la lista que he descrito, los campos personalizados que desarrollamos habitualmente tienen un nivel de genericidad bastante elevado. Esto se puede aprovechar únicamente si se consigue un despliegue limpio.

La mejor parte de la sesión de hoy, ha sido darse cuenta de que las cosas se están haciendo bien. Ver que has hecho las cosas de la misma manera que se explican en una sesión de nivel 400 del tech-ed es gratificante. La peor, no haber podido aprender la manera de resolver el único aspecto sobre el cual aún tenemos algún tipo de duda. Próximamente publicaré una entrada resumiendo el proceso de creación y despliegue de un custom field type pero, a diferencia de la sesión de hoy, llegando al final del proceso:

... desplegar un tipo de contenido con una columna de tipo personalizado con propiedades ...

-------------------------------------

Por cierto... aunque había que buscar y luchar, hoy he sido capaz de encontrar una magdalena y una bolsa de patatas fritas que me ha cedido amablemente un compañero. Gracias ANSU!!!

0 comentarios: