Extraire les pièces jointes par programmation de formulaires InfoPath (Y compris leurs noms!)

J'ai une solution d'entrée de frais pour les clients qui s'appuie sur InfoPath et workflow. À un moment donné au cours du processus d'approbation, J'ai besoin de générer un courriel a tous que de bonnes données InfoPath, ainsi que les pièces jointes se sorte que (soupir) quelqu'un peut prendre que les données et il cryptophonie manuellement dans une application de base de données Oracle.

Il n'est pas très difficile à obtenir à ou d'analyser le formulaire InfoPath. Je ne savais pas comment gérer les pièces jointes, Cependant. Après une heure ou deux de fouiller les Internets (une éternité!) J'ai trouvé cet article: http://support.microsoft.com/kb/892730

Il fournit un code de pratique pour extraire la pièce jointe d'un nœud sous la forme. (Vous devez toujours trouver le nœud et tout le reste, mais c'est juste l'analyse XML).

Je sais que la pièce jointe est codé en base64 et je suis allé à l'origine sur le chemin de tout extraire les données base64, décoder et enregistrer. Cependant, J'ai rapidement réalisé que je ne savais comment obtenir le nom du fichier lui-même, jusqu'à ce que j'ai trouvé l'article susmentionné.

J'avais effectivement conclu que très tôt, mais j'ai été rebuté par sa double personnalité. D'une part, l'article * dit * c'est bon pour InfoPath 2007. Encore, le code et les instructions sont tout à propos de Visual Studio 2003 et des références à InfoPath 2003.

Ligne de fond, le code de l'article fourni fonctionne bien pour moi (pour l'instant). Je peux obtenir mon formulaire InfoPath, Je peux analyser ce, Je peux trouver et décoder la pièce jointe et je sais pas son nom. Ce qui on peut demander de la vie?

</fin>

S'abonner à mon blog.

Me suivre sur Twitter à http://www.twitter.com/pagalvin

Tags Technorati: ,,

Si tu t'inquiètes que votre environnement SharePoint peut être un peu malsaine, Permettez-moi d'aide vous fixer que avec un bilan de santé.

Laisser une réponse

Votre adresse email ne sera pas publiée. les champs requis sont indiqués *