Partager via


Utilisation des propriétés du contexte de message

Les propriétés système sont essentiellement utilisées en interne par le moteur de messagerie de BizTalk Server et ses composants. En général, la modification des valeurs définies par le moteur pour ces propriétés n'est pas conseillée car elle peut affecter la logique d'exécution du moteur. Toutefois, un certain nombre de propriétés peuvent être modifiées.

Le tableau suivant contient une liste des propriétés du contexte de message que peut promouvoir le moteur de messagerie. Vous pouvez utiliser ces propriétés pour créer des expressions de filtre sur les ports d’envoi et les orchestrations dans Microsoft BizTalk Server. Par exemple,

PortName = MyMessage(BTS.ReceivePortName);  
MyFileName = MyMessage(FILE.ReceivedFileName);  
MySubject= MyMessage(POP3.Subject);  

Un tableau distinct répertorie les propriétés supplémentaires qui peuvent être utiles dans certaines applications BizTalk qui ne peuvent être promues.

Propriété Moment et emplacement de la promotion Type Description
BTS.AckFailureCategory Promue par le moteur de messagerie avant la publication d'un accusé de réception dans la base de données MessageBox. xs:int Identifie la Catégorie d’erreur, qui donne l’emplacement et la raison de la suspension.
BTS.AckFailureCode Promue par le moteur de messagerie avant la publication d'un accusé de réception dans la base de données MessageBox. xs:string Identifie le ErrorCode, qui donne l’emplacement et la raison de la suspension.
BTS.AckID Promue par le moteur de messagerie avant la publication d'un accusé de réception dans la base de données MessageBox. xs:string Identifie le MessageID du message d’origine.
BTS.AckInboundTransportLocation Promue par le moteur de messagerie avant la publication d'un accusé de réception dans la base de données MessageBox. xs:string Identifie inboundTransportLocation à partir du message d’origine.
BTS.AckOutboundTransportLocation Promue par le moteur de messagerie avant la publication d'un accusé de réception dans la base de données MessageBox. xs:string Identifie le OutboundTransportLocation à partir du message d’origine.
BTS.AckOwnerID Promue par le moteur de messagerie avant la publication d'un accusé de réception dans la base de données MessageBox. xs:string Identifie l’ID instance du message d’origine.
BTS.AckReceivePortID Promue par le moteur de messagerie avant la publication d'un accusé de réception dans la base de données MessageBox. xs:string Identifie le ReceivePortID du message d’origine.
BTS.AckReceivePortName Promue par le moteur de messagerie pour l'accusé de réception. xs:string Identifie le ReceivePortName du message d’origine.
BTS.AckSendPortID Promue par le moteur de messagerie avant la publication d'un accusé de réception dans la base de données MessageBox. xs:string Identifie le SendPortID du message d’origine.
BTS.AckSendPortName Promue par le moteur de messagerie avant la publication d'un accusé de réception dans la base de données MessageBox. xs:string Identifie le SendPortName du message d’origine.
BTS.AckType Promue par le moteur de messagerie avant la publication d'un accusé de réception dans la base de données MessageBox. xs:string Permet la surveillance des accusés de réception et accusés de réception négatifs par une orchestration. La valeur est ACK pour un accusé de réception et NACK pour un accusé de réception négatif.
BTS.ActionOnFailure Cette propriété peut être définie par un adaptateur avant d'appeler IBTTTransportBatch::SubmitMessage() API pour soumettre le message à BizTalk. xs:int Détermine le comportement du moteur de messagerie en cas de défaillance du pipeline de réception. En principe, le moteur de pessagerie suspend les messages ayant échoué, toutefois certains adaptateurs (comme HTTP) signalent l'échec au client au lieu de suspendre le message en cas de défaillance du pipeline de réception.

Valeurs valides :

- Par défaut. Si la propriété n'existe pas, le moteur de messagerie tente automatiquement de suspendre le message.
- 0. Indique que le moteur de messagerie ne doit pas suspendre automatiquement le message.

Les autres valeurs sont réservées pour un usage ultérieur.
BTS.CorrelationToken Si cette propriété est définie dans le contexte du message, elle est promue par le moteur de messagerie. Cette propriété est définie implicitement sur un contexte lorsque l'adaptateur de requête-réponse ou une orchestration soumet un message de requête dans la base de données MessageBox. xs:string Permet le routage de la réponse vers les ports de requête-réponse.
BTS.EpmRRCorrelationToken Promue par le moteur de messagerie lors de l'exécution du message de requête-réponse. Cette propriété est promue avant que les messages ne soient soumis dans la base de données MessageBox. xs:int Utilisée en interne par le moteur de messagerie. Spécifie le nom du serveur, l'ID du processus et un GUID unique pour un flux de requête-réponse de messages.
BTS.InboundTransportLocation Promue par le moteur de messagerie après la réception d'un message en provenance d'un adaptateur de réception et avant sa publication dans la base de données MessageBox. xs:string Spécifie l'emplacement (URI) sur lequel le message a été reçu par le gestionnaire.
BTS.InboundTransportType Promue par le moteur de messagerie après la réception d'un message en provenance d'un adaptateur de réception et avant sa publication dans la base de données MessageBox. xs:string Spécifie le type d’adaptateur qui a reçu ce message et l’a envoyé au serveur : FILE, HTTP, etc.
BTS.InterchangeSequenceNumber Promue par le moteur de messagerie après la réception d'un message en provenance de l'adaptateur de réception et avant sa publication dans la base de données MessageBox. xs:int Indique le numéro de séquence du document dans l'échange. Si le document ne fait pas partie d’un échange qui a été désassemblé en documents individuels, cette valeur est 1. La propriété peut être lue dans une orchestration, un pipeline d’envoi et un adaptateur d’envoi.
BTS.IsDynamicSend Cette propriété peut être définie dans le contexte de message. Elle ne sera pas promue et ne s'applique qu'aux opérations d'envoi. xs:boolean Elle est écrite dans le contexte de message par le moteur de messagerie avec une valeur true lorsque l'opération d'envoi se fait sur un port d'envoi dynamique. Pour définir de manière dynamique des propriétés pour les ports d'envoi statiques des pipelines d'envoi, vous devez définir cette valeur sur true.
BTS.MessageDestination Cette propriété peut être définie dans le pipeline de réception par un composant de pipeline Désassembleur lorsqu'il retourne un message en provenance de GetNext(). xs:string Utilisée essentiellement pour prendre en charge le traitement des échanges récupérables dans les désassembleurs, cette propriété détermine si un message est publié dans la boîte de message ou suspendu dans la file d'attente des messages interrompus. Si un pipeline rencontre un message défectueux dans un échange et qu'il souhaite le suspendre et continuer le traitement, il peut le faire en définissant MessageDestination = SuspendQueue et en retournant le message lorsque le moteur appelle GetNext() sur le désassembleur.

Valeurs valides :

- Par défaut. Si la propriété n'existe pas, le message est supposé correct et est publié dans la boîte de message.
- SuspendQueue. Indique au moteur de messagerie de suspendre le message. Note: Le message suspendu sera le message post-pipeline/mappage et non le message envoyé par l’adaptateur (c’est-à-dire le message filaire).
BTS.MessageType Promue par les composants du pipeline Désassembleur lors de l'analyse du message. xs:string Indique le type du message. Le type de message est défini comme une concaténation de l’espace de noms de schéma de document et du nœud racine du document : http://<MyNamespace>#<MyRoot>.
BTS.OutboundTransportLocation Si cette propriété est définie dans le contexte du message, elle est promue par le moteur de messagerie. Cette propriété est définie implicitement dans un contexte de message lorsqu'une orchestration envoie un message à un port d'envoi. Elle peut également être définie explicitement à partir d'un pipeline ou d'une orchestration. xs:string Indique l'URI de l'emplacement de destination auquel le message est envoyé. L’URI peut contenir le préfixe de l’adaptateur, tel que http://. Le préfixe d'adaptateur est utilisé par le moteur de messagerie pour déterminer le type d'adaptateur à utiliser lors de l'envoi du message. Si le préfixe de l’adaptateur et le BTS. La propriété OutboundTransportType est définie, le type d’adaptateur de BTS. OutboundTransportType est toujours prioritaire sur le type d’adaptateur déterminé à partir du préfixe.

Valeurs valides :

BizTalk Message Queuing : DIRECT=, PRIVATE=et PUBLIC=

FILE : file://

FTP : FTP://

HTTP : http:// et https://

SMTP : mailto :

SOAP : SOAP://

SQL : SQL://
BTS.OutboundTransportType Si cette propriété est définie dans le contexte du message, elle est promue par le moteur de messagerie. Cette propriété est définie implicitement dans un contexte lorsqu'une orchestration envoie un message à un port d'envoi. Cette propriété peut également être définie explicitement dans une orchestration ou dans un pipeline. xs:string Spécifie le type de l'adaptateur utilisé pour envoyer le message. Les types d’adaptateurs disponibles sont FILE, FTP, HTTP, SMTP, SOAP et SQL.

Les valeurs indiquées pour cette propriété, de même que les préfixes d'adaptateur spécifiés dans l'adresse ne respectent pas la casse.
BTS.PropertiesToUpdate Un adaptateur définit cette propriété lorsqu'il a besoin de préserver certaines valeurs de propriété d'un message ayant échoué qui est soumis à nouveau ou suspendu.

Cela signifie que lorsque le message sera à nouveau soumis ou repris, il sera doté des propriétés définies sur le contexte.
xs:string Contient une chaîne XML avec des éléments représentant les noms de propriété, les espaces de noms et les valeurs.
BTS.ReceivePortID Promue par le moteur de messagerie après la réception d'un message en provenance d'un adaptateur de réception et avant sa publication dans la base de données MessageBox. xs:int Identifie le port de réception sur lequel le message a été reçu.
BTS.ReceivePortName Promue par le moteur de messagerie après la réception d'un message en provenance d'un adaptateur de réception et avant sa publication dans la base de données MessageBox. xs:string Nom convivial du port de réception sur lequel le message a été reçu.
BTS.RouteDirectToTP Promue par le moteur de messagerie sur les messages de bouclage ou exécution de requête-réponse. Cette propriété est promue avant que les messages ne soient soumis dans la base de données MessageBox. xs:boolean Utilisée en interne par le moteur de messagerie pour activer les scénarios de bouclage et de requête-réponse.
BTS.SPGroupID Promue par le moteur de messagerie lorsque le message est envoyé à un port d'envoi à partir d'une orchestration. xs:string Spécifie l'ID du groupe de ports d'envoi.
BTS.SPID Promue par le moteur de messagerie lorsqu'un message est envoyé à un port d'envoi à partir d'une orchestration. xs:string Spécifie l'ID du port d'envoi.
BTS.SPName Promue par le moteur de messagerie lors de la publication d'une réponse à partir d'un port d'envoi de sollicitation-réponse. xs:string Permet de s'abonner aux réponses d'un port d'envoi de sollicitation-réponse. La valeur correspond au nom du port d'envoi.
BTS.SPTransportBackupID Promu par le moteur de messagerie lorsqu’un message est envoyé à un port d’envoi à partir d’une orchestration. xs:string Spécifie l'ID de l'adaptateur de secours dans le port d'envoi.
BTS.SPTransportID Promu par le moteur de messagerie lorsqu’un message est envoyé à un port d’envoi à partir d’une orchestration. xs:string Spécifie l'ID de l'adaptateur principal dans le port d'envoi.
BTS.SuspendAsNonResumable Cette propriété peut être définie par un adaptateur avant d'appeler SubmitMessage() ou dans une orchestration avant d'envoyer un message à un port d'envoi. Note: SubmitRequestMessage() ignore cette propriété ; les messages bidirectionnel sont toujours suspendus comme non pouvant être repris. xs:boolean Détermine si le moteur de messagerie doit suspendre un message comme ne pouvant être repris en cas d'échec du message. En général, les messages sont suspendus comme pouvant être repris mais cela est parfois inapproprié : par exemple, la reprise d'un message pour un port d'envoi ou de réception chronologique aurait pour effet de rompre la chronologie.

Valeurs valides :

-Faux. Le message est suspendu comme pouvant être repris (valeur par défaut).
-Vrai. Le message est suspendu comme ne pouvant être repris.
BTS.SuspendMessageOnRoutingFailure Promue par le moteur de messagerie après la réception d'un message en provenance d'un adaptateur de réception et avant sa publication dans la base de données MessageBox. xs:boolean Spécifie le comportement en cas d'échec du routage pour un message entrant.

Valeurs valides :

- Valeur par défaut /False. Si la propriété n'existe pas ou est définie sur False, le moteur signale l'erreur à l'adaptateur en cas d'échec du routage.
-Vrai. Le moteur de routage suspend automatiquement le message en cas d'échec du routage. Note: Le message suspendu sera le message post-pipeline/de mappage et non le message envoyé par l’adaptateur (c’est-à-dire le message filaire).

Un certain nombre d'autres propriétés de cet espace de noms transportent des informations qui peuvent être utiles pour certaines applications BizTalk.

Propriété Moment et emplacement de la promotion Type Description
BTS.AckDescription Définie par le moteur de messagerie avant la publication d'un accusé de réception dans la base de données MessageBox. xs:string Identifie le ErrorDescription, qui donne l’emplacement et la raison de la suspension.
BTS.EncryptionCert Ne peut être promue. xs:int Identifie l'empreinte correspondant au certificat de chiffrement. Définissez cette propriété dans une orchestration ou un composant de pipeline personnalisé placé avant le composant de pipeline Encodeur MIME/SMIME dans un pipeline afin de réaliser le chiffrement de la réponse sur un port de requête-réponse recevant un message chiffré et signé.
BTS.InterchangeID Défini par le moteur de messagerie pour chaque message arrivant sur le serveur. xs:string Définit l'ID unique utilisé pour grouper les documents provenant du même message d'échange.
BTS.Loopback Défini par un adaptateur lors de la soumission du message de requête pour l'exécution de la boucle. xs:boolean Détermine si le message doit être soumis au serveur pour l'exécution de la boucle. Lors de l'exécution de la boucle, le message de requête est publié dans la base de données MessageBox où il est acheminé directement vers l'adaptateur de réception sous forme de réponse.
BTS.SignatureCertificate Défini par certains adaptateurs lors de la soumission d'un message dans le serveur. Cette propriété est utilisée par le composant de pipeline Résolution du tiers. xs:string Identifie l'empreinte du certificat de signature utilisé pour signer le message reçu par BizTalk Server.
BTS.SourcePartyID Défini par le composant de pipeline Résolution du tiers une fois que le tiers a été identifié pour le message entrant. xs:string ID du tiers BizTalk.
BTS.SSOTicket Si l'adaptateur de réception prend en charge cette propriété, elle est définie lors de la publication du message sur un serveur. xs:string Un ticket contient des informations chiffrées sur le nom d'utilisateur et le domaine de l'utilisateur actuel, ainsi que sur le délai d'expiration du ticket. Le ticket est utilisé par les adaptateurs SSO afin d'obtenir les informations d'identification pour l'utilisateur lors de l'authentification auprès des points de terminaison de destination.
BTS.WindowsUser Défini par certains adaptateurs lors de la soumission d'un message dans le serveur. Cette propriété est utilisée par le composant de pipeline Résolution du tiers. xs:string Spécifie le compte d'un utilisateur au nom duquel le message est soumis au serveur.

Pour plus d'informations sur les propriétés et schémas de propriétés associés aux composants de pipeline et adaptateurs, voir les rubriques suivantes :

Voir aussi

À propos des propriétés de contexte de message BizTalk
Utilisation d'expressions pour attribuer des valeurs à des ports dynamiques