aelena.com

29 July 2008

BizTalk Adapter Pack 2.0/WCF LOB Adapter SDK Poster

Filed under: adapter, Adapter Pack, BizTalk, Documentation, Posters, WCF, WCF:Adapter SDK — admin @ 17:31

Esto ya es viejo realmente, pero me lo perdí al estar de vacaciones. Se trata de un pdf en el que a modo de poster podemos ver todos los adaptadores de BizTalk. Interesante.
Lo publican desde el blog del equipo de BizTalk, con objeto de promocionar el Adapter SDK, y está en descarga directa aquí.

saludos

28 July 2008

Llamadas a servicios web desde formularios de InfoPath 2007

Filed under: General, Form Templates, Forms, InfoPath 2007, MOSS 2007, Office, Sharepoint, VSTO — admin @ 11:19

Una pequeña advertencia. En muchas ocasiones queremos llamar a una fuente de datos externa al abrir un formulario de InfoPath hospedado en MOSS, y puede ser que se nos ocurra hacer esta llamada desde dentro del evento InternalStartup del formulario.

En mi caso, se trata de un formulario diseñado originalmente en blanco y en el que las llamadas a los servicios web que actúan como fuentes externas de datos se realizan “manualmente” desde código en el proyecto VSTO asociado al formulario. No se trata de un formulario creado con conexión directa a servicios web ni nada.

Sin embargo, si hacemos uso del evento InternalStartup, tendremos problemas a la hora de subir el formulario a MOSS, que nos dará un par de mensajes de error, que aunque crípticos, como es habitual en MOSS, nos apunta un poco en la dirección correcta.

Los mensajes son:

No se admite esta operación en este momento, que no ayuda demasiado cuando no se sabe de qué se trata, y Error en el método InternalStartup del código del formulario, que si que apunta un poco mejor en la dirección de la naturaleza del error.

Así pues, la solución pasa por no hacer nada dentro de InternalStartup, cuya única función es enlazar controles con sus eventos, y hacer uso del evento Loading, manejado desde FormEvents_Loading para realizar nuestras llamadas manuales a fuentes externas de datos. Creamos el evento dentro del proyecto de código VSTO mediante el menú de Herramientas -> Programacion -> Evento Loading.

Dentro de ese evento, ya podemos realizar todas las llamadas que queramos a fuentes externas. Y si todo va bien, podremos subir el formulario a MOSS tranquilamente.

La curiosidad reside en que si lanzamos el formulario en local, es decir, lanzando en modo depuración el proyecto VSTO del formulario, el código residente en el evento InternalStartup se ejecutará sin problemas y sin advertencia alguna. El problema solamente se manifiesta a la hora de publicar en MOSS.

Saludos

9 July 2008

Nested Dictionaries en C#

Filed under: c# — admin @ 9:12

Aunque no con una sintaxis tan tersa como en Python, la forma de declarar diccionarios anidados en C# sería la siguiente:

  1. SortedDictionary<string, SortedDictionary<string, double>> _bandsAndAlbums3 =
  2. new SortedDictionary<string, SortedDictionary<string, double>>()
  3. {
  4.   {“Paradise Lost”, new SortedDictionary<string, double>()
  5.      {
  6.       {“Host”, 8.9},  {“Icon”, 9.9}, {“Draconian Times”, 9.9}, {“One Second”, 8.2}
  7.     }
  8.   },
  9.   {“Megadeth”, new SortedDictionary<string, double>()
  10.      {
  11.        {“Youthanasia”, 8.2},  {“Rest In Peace”, 10},
  12.        {“Cryptic Writings”, 9.4}, {“The System has Failed”, 9.5}
  13.      }
  14.   },
  15.   {“Judas Priest”, new SortedDictionary<string, double>()
  16.     {
  17.        {“Ram It Down”, 8.5},  {“Painkiller”, 9.5},
  18.        {“Point of Entry”, 7.5}, {“Sin After Sin”, 6.5}
  19.     }
  20.   }
  21. };