CBRSample (exemple BizTalk Server)
L'exemple CBRSample présente l'application de filtres et d'un mappage sortant pour transformer et acheminer des messages d'instance sur la base de leur contenu.
Fonctions de l'exemple
Cet exemple montre l'acheminement d'un message contenant le nom, l'adresse et les informations de contact vers l'un des deux dossiers en fonction du code pays. Plus précisément, cet exemple effectue les opérations suivantes :
Définition d'un exemple de format de message contenant des informations de base sur une personne, notamment son identité avec l'ID d'utilisateur et le nom complet, son adresse avec le code pays et ses coordonnées téléphoniques.
Promeut la propriété CountryCode dans le document d’entrée afin qu’elle puisse être utilisée dans un filtre de port pour contrôler la transformation et le routage.
Transforme le message en une version canadienne lorsque CountryCode est égal à 200 ou une version américaine lorsque CountryCodeest égal à 100. Les deux transformations passent par toutes les données, à l’exception de l’initial intermédiaire (initial). La version canadienne mappe également État à Province et ZipCode à PinCode.
Acheminement des messages américains vers le répertoire US et des messages canadiens vers le répertoire CAN.
Comment cet exemple est conçu et pourquoi
La conception s’appuie sur les pipelines XML d’envoi et de réception par défaut, la promotion des propriétés, les filtres d’abonnement et les mappages sortants dans BizTalk Server pour acheminer les messages. Le tableau suivant répertorie les éléments de conception et leur justification.
Élément de conception | Raison(s) sélectionnée(s) |
---|---|
Pipeline XML de réception par défaut | - Le pipeline XMLReceive prend en charge la promotion de propriétés ; le pipeline PassThruReceive ne le fait pas. - Le message entrant est déjà au format XML et ne nécessite pas de traitement au-delà du désassemblement de base et de la résolution de partie. |
Promotion de la propriété | - BizTalk Serverdépend sur les champs de propriété pour effectuer le routage. Des champs distinctifs sont utilisés par les orchestrations et ne peuvent pas être utilisés à des fins de routage. |
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é. |
Mappage sortant | - Mappe les données d’un format à un autre. L'exemple mappe un message entrant à un format américain ou canadien. |
XMLTransmit | - Effectue l’assembly de base des messages XML sortants ; le pipeline PassThruTransmit n’offre aucune prise en charge supplémentaire. |
Ce modèle de base peut être étendu et utilisé pour des scénarios plus complexes.
Accès à l'exemple
Cet exemple se trouve dans <Samples Path>
\Messaging\CBRSample\.
Le tableau suivant présente les fichiers de cet exemple et décrit leur fonction.
Fichier(s) | Description |
---|---|
CBRDataCAN.Xml, CBRDataUS.Xml | Exemples de fichiers d'entrée conformes au schéma défini dans le fichier CBRInputSchema.xsd. |
CBRInput2CANMap.btm, CBRInput2USMap.btm | Fichiers de mappage pour les transformations de format canadien et américain, respectivement. |
CBRInputSchema.xsd, CBROutputSchemaCAN.xsd, CBROutputSchemaUS.xsd | Fichiers de schéma du format d'entrée, du format de sotie canadien et du format de sortie américain, respectivement. |
CBRPromotedPropertySchema.xsd | Fichier de schéma pour la propriété promue qui correspond à l’élément CountryCode dans les fichiers d’entrée XML. |
CBRSample.btproj, CBRSample.sln | Fichiers de projet et de solution BizTalk pour cet exemple. |
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 de Services Internet (IIS) si nécessaire. |
Setup.bat | Utilisé pour générer et initialiser cet exemple. |
Comment utiliser cet exemple
Utilisez cet exemple comme exemple de travail des actions requises pour acheminer un message sur la base de son contenu.
Génération et initialisation de cet exemple
Pour créer et initialiser l'exemple CBRSample, vous devez créer et déployer le projet BizTalk pour cet exemple, configurer le port et l'emplacement de réception et configurer deux ports d'envoi différents.
Pour créer et déployer le projet BizTalk pour cet exemple
Dans une fenêtre de commande, accédez au dossier suivant :
<Samples Path>
\Messaging\CBRSampleExécutez Setup.bat, qui effectue les actions suivantes :
Crée les dossiers d’entrée (In) et de sortie (US et CAN) pour cet exemple.
Compile et déploie le projet Microsoft 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 l’avertissement suivant lors de la création et de la liaison des ports :
Avertissement : Gestionnaire de réception non spécifié pour l’emplacement de réception « CBRReceiveLocation » ; mise à jour avec le premier gestionnaire de réception avec le type de transport correspondant.
Vous pouvez ignorer cet avertissement sans problème. (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.)
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.
Pour préparer la configuration du port et de l'emplacement de réception et des ports d'envoi
Dans Microsoft SQL Management Studio, sélectionnez la base de données de gestion BizTalk appropriée.
Notes
La base de données de gestion BizTalk est également appelée « base de données de configuration BizTalk ».
Pour configurer, inscrire et démarrer le port d'envoi américain
Dans la console Administration BizTalk Server, développez Envoyer des ports, cliquez avec le bouton droit sur CBRUSSendPort, puis cliquez sur Modifier.
Dans la boîte de dialogue Propriétés du port d’envoi statique One-Way , dans l’arborescence des dossiers à gauche de la boîte de dialogue, sélectionnez Filtres & mappage | Filtre, puis ajoutez une nouvelle ligne en définissant Propriété sur CBRSample.CountryCode, en laissant la colonne Opérateur définie sur ==, et en définissant la colonne Valeur sur 100.
Dans l’arborescence des dossiers à gauche de la boîte de dialogue, sélectionnez Filtres & Mappage | Cartes sortantes, définissez map pour appliquer la propriété à CBRSample.CBRInput2USMap, puis cliquez sur OK. Vous devrez peut-être cliquer sur le bouton de défilement pour afficher le mappage.
Pour configurer, inscrire et démarrer le port d'envoi canadien
Dans la console Administration BizTalk Server, développez Ports d’envoi, cliquez avec le bouton droit sur CBRCANSendPort, puis cliquez sur Modifier.
Dans la boîte de dialogue Propriétés du port d’envoi statique One-Way , dans l’arborescence des dossiers à gauche de la boîte de dialogue, sélectionnez Filtres & mappage | Filtre, puis ajoutez une nouvelle ligne en définissant Propriété sur CBRSample.CountryCode, en laissant la colonne Opérateur définie sur ==, et en définissant la colonne Valeur sur 200.
Dans l’arborescence des dossiers à gauche de la boîte de dialogue, sélectionnez Filtres & Mappage | Cartes sortantes, définissez la carte pour appliquer la propriété à CBRSample.CBRInput2CANMap, puis cliquez sur OK.
Ces étapes connectent le port d'envoi au port de réception. L'exemple utilise les propriétés promues pour acheminer les documents.
BizTalk Server est désormais prêt à opérer avec cet exemple.
Exécution de cet exemple
La procédure suivante permet d'exécuter l'exemple CBRSample.
Pour exécuter l'exemple
Copiez les fichiers d’entrée, CBRDataCAN.xml et CBRDataUS.xml, dans le dossier d’entrée suivant :
<Samples Path>
\Messaging\CBRSample\inObservez comment chacun de ces fichiers est transformé et routé vers l’un des deux dossiers de sortie suivants en fonction de la valeur de son élément CountryCode (100 contre 200) :
BizTalk Server transforme et achemine le fichier d’entrée CBRDataCAN.xml vers le dossier :
<Samples Path>
\Messaging\CBRSample\CANBizTalk Server transforme et achemine le fichier d’entrée CBRDataUS.xml vers le dossier :
<Samples Path>
\Messaging\CBRSample\US
Classes ou méthodes utilisées dans l'exemple
Aucun.
Voir aussi
Pipelines par défaut
Configuration des mappages sortants pour un port d'envoi
Messagerie (dossier d’exemples BizTalk Server)