Je souhaite concaténer des xml que je converti en varbinary(max).
Mais lorsque j'exécute ma procédure, le premier bloc xml s'affiche correctement mais le reste des blocs sont concaténés sur une seule ligne, ce qui n'est pas tellement le but recherché.
Aussi j'aimerais qu'avant chaque concaténation se trouve un retour chariot.
Or ce dernier caractérisé par + CHAR(13) + ne peut se concaténer avec un varbinary
- Code: Tout sélectionner
Les types de données varbinary(max) et char sont incompatibles dans l'opérateur add.
Pour mieux vous faire comprendre, voilà le code correspondant :
- Code: Tout sélectionner
DECLARE @xml xml
DECLARE @generation_du_xml xml
DECLARE @generation_u_xml xml
DECLARE @generation_r_xml xml
DECLARE @generation_a_xml xml
SET @generation_unite_xml =
(SELECT [FCT_GENERATION_XML_U] (@code_unite))
SET @generation_risque_xml =
(SELECT [FCT_GENERATION_XML_R] (@code_unite))
SET @generation_action_xml =
(SELECT [FCT_GENERATION_XML_A] (@code_unite))
SET @generation_document_unique_xml =
(convert(varbinary(max),isnull(@generation_u_xml, ' ')) + CHAR(13) +
convert(varbinary(max),isnull(@generation_r_xml, ' ')) + CHAR(13) +
convert(varbinary(max),isnull(@generation_a_xml, ' ')))
SET @xml =(Select @generation_du_xml FOR XML PATH ('D_U'))
Si quelqu'un aurait une solution, merci de me la communiquer.
S.



