August 28, 2019 at 7:32 am
Hello everyone,
Please help!
I have a sql statement that creates the following output
<rsm:CrossIndustryDocument xmlns:udt="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:15" xmlns:ram="urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:12" xmlns:rsm="urn:ferd:CrossIndustryDocument:invoice:1p0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<rsm:SpecifiedExchangedDocumentContext xmlns:udt="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:15" xmlns:ram="urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:12" xmlns:rsm="urn:ferd:CrossIndustryDocument:invoice:1p0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<ram:GuidelineSpecifiedDocumentContextParameter xmlns:udt="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:15" xmlns:ram="urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:12" xmlns:rsm="urn:ferd:CrossIndustryDocument:invoice:1p0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<ram:ID>urn:ferd:CrossIndustryDocument:invoice:1p0:comfort</ram:ID>
</ram:GuidelineSpecifiedDocumentContextParameter>
</rsm:SpecifiedExchangedDocumentContext>
<rsm:HeaderExchangedDocument xmlns:udt="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:15" xmlns:ram="urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:12" xmlns:rsm="urn:ferd:CrossIndustryDocument:invoice:1p0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<ram:ID>123456789</ram:ID>
<ram:Name>INVOICE</ram:Name>
<ram:TypeCode>380</ram:TypeCode>
<ram:IssueDateTime xmlns:udt="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:15" xmlns:ram="urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:12" xmlns:rsm="urn:ferd:CrossIndustryDocument:invoice:1p0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<udt:DateTimeString xmlns:udt="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:15" xmlns:ram="urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:12" xmlns:rsm="urn:ferd:CrossIndustryDocument:invoice:1p0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" format="102">20190823</udt:DateTimeString>
</ram:IssueDateTime>
<ram:IncludedNote xmlns:udt="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:15" xmlns:ram="urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:12" xmlns:rsm="urn:ferd:CrossIndustryDocument:invoice:1p0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<ram:Content>Please pay on time</ram:Content>
</ram:IncludedNote>
</rsm:HeaderExchangedDocument>
</rsm:CrossIndustryDocument>
The namespaces are repeated in each parent element and I need that to only show once at the root so the output is like this
<rsm:CrossIndustryDocument xmlns:udt="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:15" xmlns:ram="urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:12" xmlns:rsm="urn:ferd:CrossIndustryDocument:invoice:1p0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<rsm:SpecifiedExchangedDocumentContext>
<ram:GuidelineSpecifiedDocumentContextParameter>
<ram:ID>urn:ferd:CrossIndustryDocument:invoice:1p0:comfort</ram:ID>
</ram:GuidelineSpecifiedDocumentContextParameter>
</rsm:SpecifiedExchangedDocumentContext>
<rsm:HeaderExchangedDocument>
<ram:ID>123456789</ram:ID>
<ram:Name>INVOICE</ram:Name>
<ram:TypeCode>380</ram:TypeCode>
<ram:IssueDateTime>
<udt:DateTimeString format="102">20190823</udt:DateTimeString>
</ram:IssueDateTime>
<ram:IncludedNote>
<ram:Content>Please pay on time</ram:Content>
</ram:IncludedNote>
</rsm:HeaderExchangedDocument>
</rsm:CrossIndustryDocument>
This is a small portion of my sql, I have several subqueries, how can I acomplish this within my sql? Thanks!
with XMLNAMESPACES (
'http://www.w3.org/2001/XMLSchema-instance' as xsi,
'urn:ferd:CrossIndustryDocument:invoice:1p0' as rsm,
'urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:12' as ram,
'urn:un:unece:uncefact:data:standard:UnqualifiedDataType:15' as udt)
Select
(SELECT
(select
'urn:ferd:CrossIndustryDocument:invoice:1p0:comfort' as 'ram:ID'
FOR xml path('ram:GuidelineSpecifiedDocumentContextParameter'), TYPE)
FOR xml path('rsm:SpecifiedExchangedDocumentContext'), TYPE),
(SELECT
ssarrechnung.intnr AS 'ram:ID',
'INVOICE' as 'ram:Name',
'380' as 'ram:TypeCode',
(
select
(Select
102 as "@format", convert(varchar(10), ssarrechnung.datum, 112)
for xml path('udt:DateTimeString'),type)
FOR xml path('ram:IssueDateTime'),TYPE),
(Select
'Please pay on time' as 'ram:Content'
FOR xml path('ram:IncludedNote'),TYPE)
FOR xml path('rsm:HeaderExchangedDocument'),TYPE)
FROM invoice
WHERE invoice.intnr in
(
123456789
)
FOR xml path(''), elements, root('rsm:CrossIndustryDocument')
August 29, 2019 at 8:10 am
Thanks for posting your issue and hopefully someone will answer soon.
This is an automated bump to increase visibility of your question.
Viewing 2 posts - 1 through 1 (of 1 total)
You must be logged in to reply to this topic. Login to reply
This website stores cookies on your computer.
These cookies are used to improve your website experience and provide more personalized services to you, both on this website and through other media.
To find out more about the cookies we use, see our Privacy Policy