Jeux de caractères EDI
BizTalk Server utilise un jeu de caractères pour valider un échange EDI entier. Les jeux de caractères utilisés pour un message X12 et un message EDIFACT ou KEDIFACT sont déterminés de différentes façons.
Jeu de caractères EDIFACT
Un échange EDIFACT décrit lui-même son jeu de caractères. L'élément de données UNB1 est utilisé. EDIFACT requiert que les noms de balise et les délimiteurs/séparateurs soient de type ASCII. Par conséquent, il est possible d'identifier UNB1 pour appliquer la page de codes appropriée au reste de l'échange.
Lors du traitement d’un message EDIFACT entrant, BizTalk Server détermine le jeu de caractères à utiliser pour ce message à partir de l’élément de données UNB1. Aucun paramètre de l'accord de partenariat commercial n'est nécessaire.
Lors du traitement d’un message EDIFACT sortant, BizTalk Server utilise le jeu de caractères dans le contrat de partenaire commercial ou le contrat de secours. Vous définissez l’élément de données UNB1 dans la page Charset et Séparateurs dans les onglets d’accord bidirectionnel (si un accord est défini) ou la page Charset et Séparateurs dans l’onglet Contrat de la boîte de dialogue Paramètres de secours EDIFACT (si aucun accord n’est défini). UNB1.1 est un élément de données composites obligatoire appelé identificateur de syntaxe. UNB1.2 est la version du jeu de caractères EDIFACT. L'élément de données UNB1 est également utilisé pour valider les valeurs entrées pour les propriétés dans l'interface utilisateur de gestion des partenaires commerciaux, lorsque le jeu de propriétés entier est enregistré (ce n'est pas le cas lorsque vous changez de champ ou affichez une autre page).
Les jeux de caractères disponibles sont KECA, UNOA, UNOB, UNOC, UNOD, UNOE, UNOF, UNOG, UNOH, UNOI, UNOJ, UNOK, UNOX et UNOY. La valeur par défaut est UNOB. Le jeu de caractères complet pour ces niveaux est spécifié dans les règles de syntaxe EDIFACT ISO 9735.
Notes
Si le jeu de caractères UNOC est rencontré dans un échange entrant ou sortant, le Désassembleur EDI ou l'Assembleur EDI utilise la page de codes Latin-1, plutôt que la page de codes UTF-8. En effet, UTF-8 n'est pas un sur-ensemble d'UNOC. Certains caractères acceptables dans UNOC provoquent la suspension d'un échange si celui-ci est traité avec la page de codes UTF-8.
Les caractères des jeux de caractères EDIFACT peuvent être codés sur deux octets ou sur un octet. Pour cette raison, lorsque vous définissez les critères de déclenchement des lots sur la base du nombre de caractères dans l'échange, le nombre d'octets dans l'échange peut varier selon le jeu de caractères utilisé.
Le segment UNA et le nom de segment UNB sont limités aux valeurs du jeu de caractères ASCII.
Jeu de caractères KEDIFACT
Comme pour EDIFACT, le jeu de caractères d'un échange KEDIFACT est établi dans l'élément de données UNB1. Comme pour EDIFACT, le jeu de caractères à appliquer par BizTalk Server lors du traitement d’un échange KEDIFACT est établi dans l’élément de données UNB1 de la page Charset et Séparateurs dans les onglets de l’accord bidirectionnel (si un accord est défini) ou dans la page Charset et Séparateurs dans l’onglet Accord de la boîte de dialogue Paramètres de secours EDIFACT (si aucun accord n’est défini). La valeur de l’élément Identificateur (UNB1.1) doit être définie sur KECA.
Jeu de caractères X12
Lorsque le pipeline de réception ou le pipeline d'envoi BizTalk effectue la validation EDI d'un message X12, il utilise le jeu de caractères X12 sélectionné dans sa propriété CharacterSet. Pour définir cette propriété, ouvrez la boîte de dialogue Propriétés pour l'emplacement de réception ou le port d'envoi, cliquez sur le bouton représentant des points de suspension (...) en regard du pipeline d'envoi ou de réception, puis définissez la propriété CharacterSet du Désassembleur ou de l'Assembleur.
La propriété CharacterSet du pipeline est utilisée pour valider un échange X12 car, contrairement à EDIFACT ou KEDIFACT, un échange X12 ne décrit pas lui-même son jeu de caractères. Selon que l'en-tête ISA est lu avec le codage ISO ou UTF, la recherche de l'accord peut générer différentes valeurs. BizTalk doit donc connaître le jeu de caractères à utiliser pour le traitement du message avant de rechercher l'accord (qui lui permettrait d'obtenir le jeu de caractères applicable à l'accord).
Vous spécifiez le jeu de caractères X12 à utiliser pour la validation de l’accord dans la page Charset et Séparateurs des onglets d’accord bidirectionnel (si un accord est défini) ou dans la page Charset et Séparateurs dans l’onglet Contrat de secours de la boîte de dialogue Paramètres de secours X12 (si aucun accord n’est défini). BizTalk utilise uniquement ces paramètres pour valider les valeurs entrées pour les propriétés correspondantes lorsque le jeu de propriétés entier est enregistré (ce n'est pas le cas lorsque vous changez de champ ou affichez une autre page). Le pipeline de réception ou d'envoi ignore ces propriétés de jeu de caractères.
Notes
Si le jeu de caractères spécifié dans l'accord ou l'accord de secours ne correspond pas au jeu de caractères sélectionné pour le pipeline de réception ou d'envoi, des erreurs de validation du message peuvent survenir. C'est le cas par exemple si la propriété du jeu de caractères X12 dans l'accord est définie sur Extended alors qu'elle est définie sur Basic dans les propriétés du pipeline.
Les jeux de caractères disponibles sont Basic, Extended (comme décrit dans les guides de spécification/d'implémentation X12) et UTF8/Unicode. La valeur par défaut est UTF-8.
Notes
Les valeurs entrées pour le séparateur d'éléments de données, le séparateur d'éléments composites et le terminateur de segment dans l'accord bidirectionnel ou l'accord de secours sont limitées aux valeurs du jeu de caractères ASCII. Ces propriétés ne sont pas validées par rapport au jeu de caractères X12.
Le jeu de caractères De base comprend les lettres majuscules, les chiffres, l’espace et les caractères spéciaux suivants : A à Z, 0 à 9 , ! « & ' ( ) * + , - . / : ; ? = (espace).
Le jeu de caractères étendu comprend les caractères du jeu de caractères De base et les lettres minuscules, les caractères de langue sélectionnés et d’autres caractères spéciaux : a à z, % @ [ ] _ { } \ | <> ~ # $.