2016-06-21 3 views
1

Есть несколько серверов для каждого country.We хотят создать отчет, который отображает количество каждой страны, как нижеSSRS 2008 R2 Report: Каждая строка с другого сервера

enter image description here

Select 'UK' as Region,Pending Cards,Active Cards 
from Cardorder where month='June' 

Как получать результаты с разных серверов для каждой строки в SSRS?

+0

Вы можете объединить данные в один запрос, используя оператор накидной? –

+0

Каждый регион имеет разные серверы. У нас также нет связанного сервера. Поэтому я не могу использовать оператор union в sqlserver. – Mani

+0

Если вы не можете решить эту проблему с помощью SQL, попробуйте этот подход http://social.technet.microsoft. com/wiki/contents/articles/31414.ssrs-merge-data-from-different-datasources-in-one-dataset-inside-ssrs-report.aspx – vercelli

ответ

0

Возможно, это поможет вам, если вы не можете настроить связанные серверы. Вам нужно запустить это в режиме sqlcmd (SSMS 2016) или с консоли и может собирать нужные данные. Я бы рекомендовал хранить данные во временной таблице для создания отчетов.

:connect server_uk -l 120 -U username -P pasword 
Select 'UK' as Region,Pending Cards,Active Cards 
from DATABASE.SCHEMA.Cardorder where month='June' 
union 
:connect server_us -l 120 -U username -P pasword 
Select 'US' as Region,Pending Cards,Active Cards 
from DATABASE.SCHEMA.Cardorder where month='June' 
0

Самый простой способ - установить связанные серверы, особенно если вы будете создавать больше запросов и создавать больше отчетов с использованием этих данных. Запрос будет выглядеть следующим образом:

Select 'UK' as Region,Pending Cards,Active Cards 
from db1.[databasename].[schema].Cardorder where month='June' 
UNION 
Select 'US' as Region,Pending Cards,Active Cards 
from db2.[databasename].[schema].Cardorder where month='June' 
UNION 
Select 'IND' as Region,Pending Cards,Active Cards 
from db3.[databasename].[schema].Cardorder where month='June' 

и так далее .....

Смежные вопросы