Je ces données (tous les éléments sont en option):BizTalk 2006 problème de cartographie R2
<data>
<optionalElement1>...</optionalElement1>
<optionalElement2>...</optionalElement2>
<optionalElement3>...</optionalElement3>
</data>
Je dois carte cela à un autre schéma (tous les éléments sont requis):
<request>
<Element1>...</Element1>
<Element2>...</Element2>
<Element3>...</Element3>
</request>
Étant donné que les éléments de la demande initiale sont facultatifs, la mise en correspondance génère uniquement les éléments correspondants pour les éléments initialement inclus . Mais la validation de la demande échouera.
Exemple:
<data>
<optionalElement3>
<value1>1</value1>
<value2>2</value2>
</optionalElement3>
</data>
seront mis en correspondance
<request>
<Element3>
<subelement1>1</subelement1>
<subelement2>2</subelement2>
</Element3>
</request>
Et la validation échouera parce que je suis absent Element1 et Element2. La réponse devrait être (je pense):
<request>
<Element1 xsi:nil="true" />
<Element2 xsi:nil="true" />
<Element3>
<subelement1>1</subelement1>
<subelement2>2<subelement2>
</Element3>
</request>
Comment puis-je faire dans la cartographie? Comment puis-je m'assurer que l'élément est créé dans le message de sortie?
Et, en passant, si un sous-élément est pas présent (disons « données/optionalElement1/valeur1 » comment puis-je faire en sorte que la destination sous-élément « demande/Element1/subelement1 » est créé?
Oui. Tant que je sais.Le problème n'est pas avec les éléments de troisième niveau ("request/Element1/subelement1") mais ceux de deuxième niveau ("request/Element1"). Quelle valeur par défaut puis-je donner à ces éléments puisque ce sont des types complexes? Je veux créer ces éléments même s'il n'y a pas d'éléments enfants. –