Ну, SSRS любит работать с наборами данных. Но он может запросить источник данных XML и сделать его набором данных.
То, что я сделал раньше, это запрос веб-службы из SSRS и отображение результата. Например, веб-служба сервера отчетов (http://localhost/ReportServer/ReportService2005.asmx). Например, запрос метода listChildren будет выглядеть примерно так:
<Query>
<Method Name="ListChildren"
Namespace="http://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices">
<Parameters>
<Parameter Name="Item">
<DefaultValue>/Reports</DefaultValue>
</Parameter>
<Parameter Name="Recursive">
<DefaultValue>true</DefaultValue>
</Parameter>
</Parameters>
</Method>
<ElementPath IgnoreNamespaces="true">*</ElementPath>
</Query>
Использование источника данных типа XML.
Но в вашем случае у вас есть хранимая процедура, которая возвращает данные XML ... Один из способов - опубликовать хранимую процедуру в виде веб-службы и выполнить такой вызов.
Или создайте новую хранимую процедуру, которая обертывает хранимую процедуру xml и преобразует данные xml в обычный набор данных на лету.