Sharepoint 2010 + Infopath 2010: Limitante al exportar vista en PDF y agregarlo como adjunto en un correo

En mi post anterior Sharepoint 2010 – Aprobación de workflows para dispositivos móviles – Parte 3: Código para envío de correo electrónico de notificación, había publicado la siguiente porción de código:

/*Crea un document PDF con la vista actual*/
this.CurrentView.Export(@”c:\temp\” + OrdenCompra + “_MemoMetalicos.pdf”, ExportFormat
.Pdf); /*Importante detener al menos por 10 segundos mientras se crea el documento caso contrario genera un error*/
Thread
.Sleep(10000);

 

El problema resulta que el document PDF que se crea con la function CurrentView no aparace en el directorio destino hasta que toda la función o hilo de ejecución finaliza, por tal motive es que cuando al tartar de agregarlo como adjunto de un correo en el mismo paso (hilo de ejecución) se presenta un mensaje de error en relación a que el documento no existe. Al parecer el método Sleep detiene por complete todo el hilo de ejecución por lo que no da paso a que el documento aparezca en el path de destino.

He invertido ya un gran tiempo en internet buscando información al respecto pero solo encontré un enlace indicando el mismo problema pero sin una solución específica.

SOLUCIÓN: tomando en cuenta la limitante antes expuesta tuve que dividir en dos botones tanto la generación del documento como el envío del correo con el adjunto.

Actualización: este es el único URL que encontré donde se menciona el mismo problema: http://www.infopathdev.com/forums/t/22835.aspx

Leave a Reply

Your email address will not be published. Required fields are marked *