FlatFileSend (exemple BizTalk Server)
L’exemple FlatFileSend montre comment utiliser BizTalk Server pour traiter un fichier XML dans le fichier plat équivalent.
Fonctions de l'exemple
Cet exemple permet de configurer le dossier FFInput en tant qu'emplacement de réception. Lorsque vous placez un fichier, tel que l’exemple de fichier FlatFileSend_in.xml, dans ce dossier, BizTalk Server traite le message dans ce fichier en procédant comme suit :
BizTalk Server lit le message du fichier d’entrée dans le dossier d’emplacement de réception FFInput.
Le message est transmis via un pipeline de réception XML.
Dans la base de données MessageBox, le message est acheminé vers un port d'envoi FILE qui dispose d'un pipeline d'envoi configuré avec un composant Assembleur de fichier plat. Ce dernier convertit le message XML en une représentation de fichier plat équivalente à l'aide d'un schéma de fichier plat.
BizTalk Server écrit le message converti dans un fichier texte dans le dossier d’adaptateur d’envoi FFOutput.
Comment cet exemple est conçu et pourquoi
Dans cet exemple, la plus grande partie de la conception de base est imposée par l'exemple de message. Les messages de fichier plat doivent être assemblés à l'aide de l'Assembleur de fichier plat et un schéma de fichier plat doit l'être au sein d'un pipeline d'envoi personnalisé. Ces critères de conception sont récapitulés dans le tableau suivant.
Élément de conception | Raison(s) sélectionnée(s) |
---|---|
Pipeline d'envoi personnalisé | - Le pipeline personnalisé utilise l’assembleur de fichiers plats et un schéma de fichier plat pour traduire les messages instance au format de fichier plat ; l’assembleur de fichiers plats n’est pas lui-même un pipeline et ne peut pas être utilisé lors de la configuration d’un pipeline d’envoi dans la console de gestion BizTalk Server. |
Schéma de fichier plat | - Définissez toutes les mêmes caractéristiques d’enregistrement et de champ (y compris la structure) en tant que schéma XML et fournit un mécanisme pour définir toutes les caractéristiques de fichier plat requises pour traduire un message de instance XML en message de fichier plat (ou vice versa). |
Filtre d’abonnement | - Le filtre d’abonnement effectue le routage réel en capturant les messages qui répondent à un ou plusieurs critères en fonction des champs de propriété. |
XMLReceive | - Effectue le traitement des messages XML entrants. Dans le cadre de cet exemple, une représentation XML d'un bon de commande est utilisée comme message source. |
Ces éléments sont combinés afin de générer une solution qui accepte les messages de bon de commande au format XML dans l'emplacement de réception et qui les convertisse en bon de commande de fichier plat dans l'emplacement d'envoi.
Accès à l'exemple
<Chemin d’accès> d’exemples\Pipelines\AssembleDisassembler\FlatFileSend
Le tableau suivant présente les fichiers de cet exemple et décrit leur fonction.
Fichier(s) | Description |
---|---|
Cleanup.bat | Permet d'annuler le déploiement des assemblys et de supprimer ceux-ci du Global Assembly Cache. Supprime les ports d'envoi et de réception. Supprime les répertoires virtuels Microsoft Internet Information Services (IIS) le cas échéant. |
FlatFileSend.btproj, FlatFileSend.sln | Fichiers projet et solution de l'exemple. |
FlatFileSendBinding.xml | Utilisé pour une configuration automatisée, telle que la liaison de port. |
FlatFileSend_in.xml | Exemple de fichier d'entrée. |
PO.xsd | Schéma pour le fichier plat sortant. |
SendPipeline.btp | BizTalk Server envoyer un fichier de pipeline avec le composant Assembleur de fichiers plats. |
Setup.bat | Utilisé pour générer et initialiser cet exemple. |
Guide pratique pour utiliser cet exemple
Utilisez cet exemple comme base de votre propre solution de traitement de fichier plat. Vous pouvez étendre un grand nombre des éléments de conception utilisés dans le cadre de cet exemple pour répondre à vos besoins spécifiques.
Génération et initialisation de cet exemple
Dans une fenêtre de commande, accédez au dossier suivant :
<Chemin d’accès> d’exemples\Pipelines\AssembleDisassembler\FlatFileSend
Exécutez le fichier Setup.bat, qui effectue les actions suivantes :
Création des dossiers d'entrée (FFInput) et de sortie (FFOutput) associés à cet exemple dans le dossier :
<Chemin d’accès> d’exemples\Pipelines\AssembleDisassembler\FlatFileSend
Compile le projet Visual Studio pour cet exemple.
Création et liaison de l'emplacement de réception de BizTalk Server, ainsi que des ports d'envoi et de réception.
Notes
Cet exemple affiche les avertissements suivants lors de la création et de la liaison des ports :
Warning: Receive handler not specified for receive location "FlatFileSend_RL"; updating with first receive handler with matching transport type. Warning: Host not specified for orchestration "FlatFileSend"; updating with first available host.
vous pouvez ignorer ces avertissements en toute sécurité. (Pour s'adapter aux éventuelles différences d'attribution de noms dans les installations utilisateur, le nom d'hôte et le gestionnaire de réception ont été omis dans le fichier de liaison.)Active l'emplacement de réception, et démarre le port d'envoi.
Notes
Avant d'essayer d'exécuter cet exemple, vous devez vous assurer que BizTalk Server n'a signalé aucune erreur lors du processus de création et d'initialisation.
Notes
Si vous décidez d'ouvrir et de créer le projet de cet exemple sans exécuter Setup.bat, vous devez commencer par créer une paire de clés de nom fort à l'aide de .NET Framework Strong Name Utility (sn.exe). Utilisez cette paire de clés pour signer l'assembly obtenu.
Notes
Pour annuler les modifications effectuées par Setup.bat, exécutez Cleanup.bat. Vous devez exécuter Cleanup.bat avant d'exécuter Cleanup.bat une seconde fois.
Exécution de cet exemple
Placez une copie du fichier FlatFileSend_in.xml dans le dossier FFInput.
Observez le fichier texte créé dans le dossier FFOutput. Le nom du fichier texte est basé sur le GUID de l’ID de message. Ce fichier contient le fichier plat équivalent au fichier d'entrée XML FlatFileSend_in.xml.
Classes ou méthodes utilisées dans l'exemple
Les scripts de configuration Setup.bat et Cleanup.bat dépendent des scripts Windows Management Instrumentation (WMI) d'administration suivants :
Démarrage du port d'envoi\StartSendPort.vbs
Activation de l'emplacement de réception\EnableRecLoc
Suppression du port d'envoi\RemoveSendPort
Les fichiers de commandes d'installation et de désinstallation utilisent BTSTask comme suit :
BTSTask ImportBindings pour appliquer le fichier de liaison et créer l’application, les ports et les liaisons
BTSTask RemoveApp pour supprimer flatFileSendApplication
Voir aussi
- Schémas de fichier plat
- Pipelines par défaut
- Pipelines\AssemblerDisassembler (dossier d’exemples BizTalk Server)
- Exemples de script WMI dans l’aide de l’interface utilisateur et informations de référence sur l’espace de noms d’API pour les développeurs
- Référence de la ligne de commande BTSTask
- FlatFileReceive (exemple BizTalk Server)