У меня есть следующий формат, который мне нужен, чтобы получить мой формат XML при использовании SSMS
<ESBTimecardLoad xmlns="http://test.com/schemas">
<Initialize xmlns="http://test.com/schemas">
<Add>
<TimeCard>
<Attributes>
<Timekeeper AliasField="Number">C1235</Timekeeper>
<WorkDate>5/11/2018</WorkDate>
<WorkHrs>1.50</WorkHrs>
<Matter AliasField="Number">04420.3004</Matter>
<WorkType>Admin</WorkType>
<Phase AliasField="Code">rty</Phase>
<Task AliasField="Code">QEW</Task>
<Activity AliasField="Code">TTT</Activity>
</Attributes>
</TimeCardPending>
</Add>
<Add>
<TimeCardPending>
<Attributes>
<Timekeeper AliasField="Number">C888888</Timekeeper>
<WorkDate>7/6/2017</WorkDate>
<WorkHrs>0.25</WorkHrs>
<Matter AliasField="Number">01594.1009</Matter>
<WorkType>Enterprise</WorkType>
<Phase AliasField="Code">P3</Phase>
<Task AliasField="Code">QWE</Task>
<Activity AliasField="Code">YYY</Activity>
</Attributes>
</TimeCardPending>
</Add>
</Start>
</TimecardLoad>
У меня есть следующий запрос, чтобы получить XML.Обратите внимание, что Add, Timecard и атрибуты повторяются для каждой записи.Можно ли сгруппировать 3 тега вместе для каждой записи?У меня проблемы с созданием повторяющихся группировок и раздела Aliasfield для каждой записи.
WITH XMLNAMESPACES (DEFAULT 'http://Test.com/schemas')
SELECT
CAST ((SELECT TOP 2
[Team] "Timekeeper",
[Date] "WorkDate",
[WorkHrs],
[Matter] "Matter",
[WorkType] "WorkType",
[Phase], [task],
[Activity], [Notes] AS Narrative
FROM
view_review
FOR XML PATH('Attributes'), ROOT('Initialize')) AS XML)
FOR XML PATH('TimeCardLoad'), ELEMENTS
Это мой результат:
<ESBTimeCardLoad xmlns="http://test.com/schemas">
<Initialize xmlns="http://test.com/schemas">
<Attributes>
<Timekeeper>TEster, Monica</Timekeeper>
<WorkDate>05/25/15</WorkDate>
<WorkHrs>10.00</WorkHrs>
<Phase>P3</Phase>
<task>P3_Fsol</task>
<Activity>SETUPS3</Activity>
</Attributes>
<Attributes>
<Timekeeper>Mob, JOhn</Timekeeper>
<WorkDate>05/27/15</WorkDate>
<WorkHrs>8.00</WorkHrs>
<Phase>P3</Phase>
<task>P3_Fsol</task>
<Activity>SETUPS3</Activity>
</Attributes>
</Initialize>
</ESBTimeCardLoad>
Каким образом мне следует изменить запрос?