Hola a todos,
spy novato con sql más alla de lo que son sentencias sencillitas, en este caso necesito generar un fichero xml. usando "for xml explicit"
La sentencia que he creado es esta:
SELECT 1 as Tag,
NULL as Parent,
NIF as [CUSTOMER!1!CustomerID!element],
CIF as [CUSTOMER!1!CustomerTaxID!element],
NOMBRE as [CUSTOMER!1!CompanyName!element],
CONTACTO as [CUSTOMER!1!Contact!element],
NULL as [Billingaddress!2!AddressDetail!element],
NULL as [Billingaddress!2!City!element],
NULL as [Billingaddress!2!PostalCode!element],
NULL as [Billingaddress!2!Region!element],
NULL as [Billingaddress!2!Country!element],
TELEFONO1 as [CUSTOMER!1!Telephone!element],
FAX as [CUSTOMER!1!Fax!element],
INTERNET as [CUSTOMER!1!Email!element]
FROM tablaclientes
UNION ALL
SELECT 2 as Tag,
1 as Parent,
NIF,
NULL,
NULL,
NULL,
DIRECCION,
LOCALIDAD,
PROVINCIA,
CPOSTAL,
PAIS,
NULL,
NULL,
NULL
FROM tablaclientes
ORDER BY [CUSTOMER!1!CustomerID!element]
FOR XML EXPLICIT
Obtengo estos datos, si os fijáis los datos de telefono, fax e internet en la sentencia están al final de la misma, pero en los resultados me sale inmediatamente antes de los elementos obtenidos en la segunda consulta, tal y como aparece a continuación
<CUSTOMER>
<CustomerID>102 </CustomerID>
<CustomerTaxID>5555555</CustomerTaxID>
<CompanyName>nombrecte</CompanyName>
<Contact> </Contact>
<Telephone>911111111</Telephone>
<Fax>911111111</Fax>
<Email> </Email>
<Billingaddress>
<AddressDetail>calle Entre Muros, 32 </AddressDetail>
<City>Madrid</City>
<PostalCode>28000</PostalCode>
<Region>madrid</Region>
<Country> </Country>
</Billingaddress>
</CUSTOMER>
Sabéis si es posible que el fichero generado sea con el orden adecuado?
Muchas gracias por vuestro interés de antemano y saludos