<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.technet.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Microsoft Dynamics CRM и не только... : Reporting Services</title><link>http://blogs.technet.com/ansle/archive/tags/Reporting+Services/default.aspx</link><description>Tags: Reporting Services</description><dc:language>ru</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Dundas и SQL Server 2008</title><link>http://blogs.technet.com/ansle/archive/2007/06/05/dundas-sql-server-2008.aspx</link><pubDate>Tue, 05 Jun 2007 13:51:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:1150736</guid><dc:creator>Andrey Slepitsky</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.technet.com/ansle/comments/1150736.aspx</comments><wfw:commentRss>http://blogs.technet.com/ansle/commentrss.aspx?PostID=1150736</wfw:commentRss><description>&lt;P&gt;В продолжение поста о SQL Server 2008.&lt;/P&gt;
&lt;P&gt;Одним из преимуществ использования SQL Server 2008 для пользователей Microsoft Dynamics CRM будет подсистема отчетов. В состав Reporting Services будет включен компонент Dundas's Data Visualization Technology от нашего золотого партнера - Dundas Software. Дополнительную информацию можно найти на &lt;A class="" href="http://www.microsoft.com/presspass/features/2007/jun07/06-04sqlserver.mspx" mce_href="http://www.microsoft.com/presspass/features/2007/jun07/06-04sqlserver.mspx"&gt;нашем сайте&lt;/A&gt; и на сайте компании &lt;A class="" href="http://www.dundas.com/Company/Media/PressSQL2008.aspx" mce_href="http://www.dundas.com/Company/Media/PressSQL2008.aspx"&gt;Dundas Software&lt;/A&gt;.&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=1150736" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/ansle/archive/tags/Reporting+Services/default.aspx">Reporting Services</category><category domain="http://blogs.technet.com/ansle/archive/tags/SQL+Server/default.aspx">SQL Server</category></item><item><title>Немного о формате даты в отчетах</title><link>http://blogs.technet.com/ansle/archive/2007/05/24/1042385.aspx</link><pubDate>Thu, 24 May 2007 18:19:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:1042385</guid><dc:creator>Andrey Slepitsky</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.technet.com/ansle/comments/1042385.aspx</comments><wfw:commentRss>http://blogs.technet.com/ansle/commentrss.aspx?PostID=1042385</wfw:commentRss><description>&lt;P&gt;Партнер попросил помочь с проблемой - дата в отчете выводилась по американскому стандарту, хотя в самой базе CRM все было правильно (в русском формате). Т.е. вместо &lt;EM&gt;&lt;STRONG&gt;02.04.2007 12:44:52 &lt;/STRONG&gt;&lt;/EM&gt;отображалось &lt;EM&gt;&lt;STRONG&gt;4/2/2007 12:44:52 PM&lt;/STRONG&gt;&lt;/EM&gt;. Задача решается очень просто:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Создаем отчет в Visual Studio&amp;nbsp;(или в любом текстовом процессоре)&lt;/LI&gt;
&lt;LI&gt;Сохраняем отчет, например, на рабочем столе&lt;/LI&gt;
&lt;LI&gt;Открываем этот отчет как текст в текстовом процессоре или, опять же, в Visual Studio&lt;/LI&gt;
&lt;LI&gt;Находим строку &lt;STRONG&gt;&amp;lt;Language&amp;gt;en-US&amp;lt;/Language&amp;gt;&lt;/STRONG&gt;&lt;/LI&gt;
&lt;LI&gt;И меняем ее на &lt;STRONG&gt;&amp;lt;Language&amp;gt;ru-RU&amp;lt;/Language&amp;gt;&lt;/STRONG&gt;&lt;/LI&gt;
&lt;LI&gt;Теперь, сохраняем все изменения и помещаем отчет на сервер отчетов.&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;Работает!&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=1042385" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/ansle/archive/tags/Reporting+Services/default.aspx">Reporting Services</category></item><item><title>О пользе коротких названий стадий в процессах продаж</title><link>http://blogs.technet.com/ansle/archive/2007/04/02/722120.aspx</link><pubDate>Mon, 02 Apr 2007 14:19:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:722120</guid><dc:creator>Andrey Slepitsky</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.technet.com/ansle/comments/722120.aspx</comments><wfw:commentRss>http://blogs.technet.com/ansle/commentrss.aspx?PostID=722120</wfw:commentRss><description>&lt;P&gt;Во время подготовки к семинару (Санкт-Петербург, 03 апреля) столкнулся со следующей неприятностью. Отчет "Каналы продаж" не выполнялся, если указана группировка по процессам продаж. Если такой группировки нет, то отчет корректно выполнялся.&amp;nbsp;Открыл&amp;nbsp;отчет в VS 2005 и оказалось,&amp;nbsp;что все относительно просто. Поле &lt;STRONG&gt;salesstagename&lt;/STRONG&gt; в самом отчете имеет длину 40 символов. Если длина названия стадии превышает данное значение, то выдается ошибка. Поэтому, поправил непосредственно в отчете длину этого поля (увеличил до 100) и заново загрузил отчет в систему.&lt;/P&gt;
&lt;P&gt;Заработало!&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=722120" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/ansle/archive/tags/Reporting+Services/default.aspx">Reporting Services</category></item><item><title>Использование Report Builder</title><link>http://blogs.technet.com/ansle/archive/2007/04/02/report-builder.aspx</link><pubDate>Mon, 02 Apr 2007 02:01:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:716455</guid><dc:creator>Andrey Slepitsky</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.technet.com/ansle/comments/716455.aspx</comments><wfw:commentRss>http://blogs.technet.com/ansle/commentrss.aspx?PostID=716455</wfw:commentRss><description>&lt;P&gt;Добрый день!&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Для отчетности в Microsoft Dynamics CRM существует ряд инструментов - Microsoft Excel или SQL Server Reporting Services. Зачем понадобился еще один? Дело в том, что возможности конечных бизнес-пользователей ограничены, если они хотят построить какой-либо отчет по нескольким объектам, например, отобразить всех клиентов и связанных с ними потенциальные продажи и т.д. В этом случае, надо использовать либо отчет SSRS, либо использовать Excel, но тогда от пользователя требуется знание того, как данные хранятся в системе и умение написать SQL запрос. К сожалению,&amp;nbsp;не все бизнес-пользователи умеют писать запросы. И здесь может помочь Report Builder, который является компонентом SQL Server 2005 Reporting Services.&lt;/P&gt;
&lt;P&gt;В чем состоит идея использования Report Builder? Администратор системы или разработчик создает промежуточный уровень между самими данными и пользователями - модель. Пользователи подключаются к Report Builder, выбирают требуемую модель данных и сами строят тот отчет, который им необходим. Важно отметить, что в этом случае пользователи оперируют знакомыми им понятиями, например, &lt;STRONG&gt;КЛИЕНТ&lt;/STRONG&gt;, &lt;STRONG&gt;ЗАКАЗ&lt;/STRONG&gt;, &lt;STRONG&gt;ПОТЕНЦИАЛЬНАЯ ПРОДАЖА&lt;/STRONG&gt; и т.д., а не &lt;STRONG&gt;FilteredAccount&lt;/STRONG&gt;, &lt;STRONG&gt;FilteredOpportunity&lt;/STRONG&gt;. Кроме того, им не требуется знание основ написания SQL запросов.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Давайте попробуем создать простую модель и, используя ее, создать простейший отчет в Report Builder:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Запускаем Visual Studio 2005, создаем новый проект и указываем, что мы хотим создать &lt;STRONG&gt;Report Model Project. &lt;/STRONG&gt;Вводим имя проекта и нажимаем кнопку &lt;STRONG&gt;Ок.&lt;/STRONG&gt;&lt;/LI&gt;
&lt;LI&gt;В &lt;STRONG&gt;Solution Explorer&lt;/STRONG&gt; нажимаем правой кнопкой мыши на пункте &lt;STRONG&gt;Data Sources&lt;/STRONG&gt; и выбираем пункт &lt;STRONG&gt;Add New Data Source&lt;/STRONG&gt;.&lt;/LI&gt;
&lt;LI&gt;В появившемся окне нажимаем кнопку &lt;STRONG&gt;New&lt;/STRONG&gt;, вводим необходимую информацию (название сервера, тип аутентификации, базу данных CRM) и нажимаем кнопку &lt;STRONG&gt;Ок&lt;/STRONG&gt;.&lt;/LI&gt;
&lt;LI&gt;Нажимаем кнопку &lt;STRONG&gt;Next &lt;/STRONG&gt;и, затем, &lt;STRONG&gt;Finish&lt;/STRONG&gt;.&lt;/LI&gt;
&lt;LI&gt;Мы создали источник данных. Теперь, нам необходимо создать представление данных. Для этого, нажимаем правую кнопку мыши на пункте &lt;STRONG&gt;Data Source Views&lt;/STRONG&gt; (в окне &lt;STRONG&gt;Solution Explorer&lt;/STRONG&gt;) и выбираем пункт &lt;STRONG&gt;Add New Data Source View&lt;/STRONG&gt;.&lt;/LI&gt;
&lt;LI&gt;В появившемся окне выбираем соответствующий источник данных (созданный на предыдущем этапе) и нажимаем кнопку &lt;STRONG&gt;Next&lt;/STRONG&gt;.&lt;/LI&gt;
&lt;LI&gt;Теперь выбираем объекты, которые мы хотим включить в нашу модель. В моем случае все просто - я хочу включить в модель только организации и соответствующие потенциальные продажи. Соответственно, я выбираю &lt;STRONG&gt;FilteredAccount&lt;/STRONG&gt; и &lt;STRONG&gt;FilteredOpportunity&lt;/STRONG&gt; (всегда помните про безопасность данных). Переносим их в правую часть и нажимаем кнопки &lt;STRONG&gt;Next&lt;/STRONG&gt; и &lt;STRONG&gt;Finish&lt;/STRONG&gt;.&lt;/LI&gt;
&lt;LI&gt;Теперь мы должны установить логические связи между нашими двумя объектами. Те, кто смотрел структуру данных, знают, что представления, которые мы выбрали не связаны в самой БД, но мы можем установить логическую связь между ними. Для этого, надо кликнуть мышкой&amp;nbsp;на соответствующем &lt;STRONG&gt;Data Source View&lt;/STRONG&gt;. В результате, отобразится структура наших данных, состоящая из двух объектов - &lt;STRONG&gt;FilteredAccount&lt;/STRONG&gt; и &lt;STRONG&gt;FilteredOpportunity&lt;/STRONG&gt;.&lt;/LI&gt;
&lt;LI&gt;Сначала, нам надо переназвать наши объекты, чтобы их названия были более дружественны для пользователей. Выбираем объект &lt;STRONG&gt;FilteredAccount&lt;/STRONG&gt;, и в окне &lt;STRONG&gt;Properties&lt;/STRONG&gt; меняем атрибут &lt;STRONG&gt;FriendlyName&lt;/STRONG&gt; на &lt;STRONG&gt;Организация&lt;/STRONG&gt;.&lt;/LI&gt;
&lt;LI&gt;Аналогично поступаем с FilteredOpportunity, меняя название на &lt;STRONG&gt;Потенциальная продажа&lt;/STRONG&gt;.&lt;/LI&gt;
&lt;LI&gt;Теперь надо установить связь. Для этого нажимаем правую кнопку мыши на любом объекте и выбираем пункт &lt;STRONG&gt;New Relationship&lt;/STRONG&gt;.&lt;/LI&gt;
&lt;LI&gt;В качестве &lt;STRONG&gt;primary key&lt;/STRONG&gt; используем accountid из &lt;STRONG&gt;FilteredAccount&lt;/STRONG&gt;.&lt;/LI&gt;
&lt;LI&gt;В качестве &lt;STRONG&gt;foreign key&lt;/STRONG&gt; используем accountid из &lt;STRONG&gt;FilteredOpportunity&lt;/STRONG&gt;.&lt;/LI&gt;
&lt;LI&gt;Нажимаем кнопку &lt;STRONG&gt;Ок&lt;/STRONG&gt;. Система сообщает нам, что у нас не объявлен первичный ключ и предлагает создать логический первичный ключ. Соглашаемся, нажимая кнопку &lt;STRONG&gt;Yes&lt;/STRONG&gt;.&lt;/LI&gt;
&lt;LI&gt;Создаем логический первичный ключ для &lt;STRONG&gt;Потенциальная продажа&lt;/STRONG&gt; (opportunityid).&lt;/LI&gt;
&lt;LI&gt;И теперь осталось создать саму модель данных. Нажимаем правую кнопку мыши на пункте &lt;STRONG&gt;Report Models&lt;/STRONG&gt; и выбираем пункт &lt;STRONG&gt;Add New Report Model&lt;/STRONG&gt;.&lt;/LI&gt;
&lt;LI&gt;Выбираем соответствующее представление источника данных (data source view) и нажимаем кнопку &lt;STRONG&gt;Next&lt;/STRONG&gt;.&lt;/LI&gt;
&lt;LI&gt;В окне выбора правил генерации ничего не меняем и нажимаем кнопку &lt;STRONG&gt;Next&lt;/STRONG&gt; 2 раза.&lt;/LI&gt;
&lt;LI&gt;Нажимаем кнопку &lt;STRONG&gt;Run&lt;/STRONG&gt;. Процедура генерации займет некоторое время.&lt;/LI&gt;
&lt;LI&gt;По окончании процесса, нажимаем кнопку &lt;STRONG&gt;Finish&lt;/STRONG&gt; и, затем, &lt;STRONG&gt;Yes to All.&lt;/STRONG&gt;&lt;/LI&gt;
&lt;LI&gt;Теперь, нам надо разместить эту модель на нашем сервере. Выбираем пункт меню &lt;STRONG&gt;Build -&amp;gt; Deploy [Название модели]&lt;/STRONG&gt;&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;Все, теперь осталось только проверить работу. Открываем &lt;STRONG&gt;SSRS&lt;/STRONG&gt;, например, по ссылке &lt;A href="http://servername/Reports" mce_href="http://servername/Reports"&gt;http://servername/Reports&lt;/A&gt;&amp;nbsp;и запускаем &lt;STRONG&gt;Report Builder&lt;/STRONG&gt;. Открывается окно &lt;STRONG&gt;Microsoft Report Builder&lt;/STRONG&gt;. В правой панели выбираем нашу модель, указываем тип отчета (например, &lt;STRONG&gt;Table&lt;/STRONG&gt;) и нажимаем кнопку &lt;STRONG&gt;Ок&lt;/STRONG&gt;. В левом верхнем окне отображаются доступные объекты - &lt;STRONG&gt;Организации&lt;/STRONG&gt; и &lt;STRONG&gt;Потенциальные&lt;/STRONG&gt; &lt;STRONG&gt;сделки&lt;/STRONG&gt;, а слева внизу - атрибуты соответствующих объектов. Перетаскиваем в&amp;nbsp;окно (где написано&amp;nbsp;Drag and Drop column fields)&amp;nbsp;атрибут &lt;STRONG&gt;Name&lt;/STRONG&gt; объекта &lt;STRONG&gt;Организация&lt;/STRONG&gt; и атрибут &lt;STRONG&gt;Name&lt;/STRONG&gt; объекта &lt;STRONG&gt;Потенциальная продажа&lt;/STRONG&gt;. Добавляем название отчета (в область Click to add title) - "Сделки по организациям". Все, теперь нажимаем кнопку &lt;STRONG&gt;Run Report&lt;/STRONG&gt; и получаем требуемую нам информацию.&lt;/P&gt;
&lt;P&gt;Все просто!!!&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=716455" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/ansle/archive/tags/Microsoft+Dynamics+CRM/default.aspx">Microsoft Dynamics CRM</category><category domain="http://blogs.technet.com/ansle/archive/tags/Reporting+Services/default.aspx">Reporting Services</category></item><item><title>Создание отчетов для Microsoft Dynamics CRM</title><link>http://blogs.technet.com/ansle/archive/2006/12/18/microsoft-dynamics-crm.aspx</link><pubDate>Mon, 18 Dec 2006 14:56:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:561484</guid><dc:creator>Andrey Slepitsky</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.technet.com/ansle/comments/561484.aspx</comments><wfw:commentRss>http://blogs.technet.com/ansle/commentrss.aspx?PostID=561484</wfw:commentRss><description>&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: justify"&gt;&lt;SPAN style="mso-ansi-language: RU"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;Добрый день, коллеги!&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: justify"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;&lt;SPAN style="mso-ansi-language: RU"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: justify"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;&lt;SPAN style="mso-ansi-language: RU"&gt;Я никогда не скрывал, что одной из возможностей &lt;/SPAN&gt;&lt;SPAN lang=EN-US&gt;Microsoft&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: RU"&gt; &lt;/SPAN&gt;&lt;SPAN lang=EN-US&gt;Dynamics&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: RU"&gt; &lt;/SPAN&gt;&lt;SPAN lang=EN-US&gt;CRM&lt;/SPAN&gt;&lt;SPAN style="mso-ansi-language: RU"&gt; 3.0, которые произвели на меня наиболее сильное впечатление,&amp;nbsp;является новая подсистема отчетов,&amp;nbsp;основанная&amp;nbsp;на SQL Server Reporting Services. Надеюсь, вы читали &lt;A class="" href="http://www.microsoft.com/Rus/Dynamics/Community/Articles/CRM_Report.mspx" target=_blank mce_href="http://www.microsoft.com/Rus/Dynamics/Community/Articles/CRM_Report.mspx"&gt;статью&lt;/A&gt; &lt;/SPAN&gt;&lt;SPAN style="mso-ansi-language: RU"&gt;на сайте сообщества Microsoft Dynamics, в которой рассказывалось, как за 15 минут создать отчет, отформатировать его и загрузить в Microsoft Dynamics CRM. Сегодня мы посмотрим на то, как можно реализовать такие функции, как drill-down и форматирование отчета в зависимости от каких-либо условий.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: justify"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;&lt;SPAN style="mso-ansi-language: RU"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;&lt;SPAN style="mso-ansi-language: RU"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: justify"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;&lt;SPAN style="mso-ansi-language: RU"&gt;Итак, мы хотим создать отчет, который отображает все организации и все возможные сделки, связанные с этими организациями, а также, предполагаемый доход по этим сделкам. Открываем Visual Studio (я буду использовать VS .NET 2005), создаем новый проект и в качестве типа проекта выбираем &lt;STRONG&gt;Report Server Project Wizard&lt;/STRONG&gt;. Теперь вводим название проекта и нажимаем кнопку &lt;STRONG&gt;Ок&lt;/STRONG&gt;. Запускается мастер, с помощью которого мы очень быстро подготовим основу нашего отчета. На странице &lt;STRONG&gt;Select Data Soure&lt;/STRONG&gt; мы нажимаем кнопку &lt;STRONG&gt;Edit&lt;/STRONG&gt; и указываем строку подключения к нашему источнику данных (имя сервера – &lt;/SPAN&gt;&lt;SPAN lang=EN-US&gt;localhost&lt;/SPAN&gt;&lt;SPAN style="mso-ansi-language: RU"&gt;, &lt;/SPAN&gt;&lt;SPAN lang=EN-US&gt;windows&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: RU"&gt; &lt;/SPAN&gt;&lt;SPAN lang=EN-US&gt;authentication&lt;/SPAN&gt;&lt;SPAN style="mso-ansi-language: RU"&gt;, база данных – &lt;/SPAN&gt;&lt;SPAN lang=EN-US&gt;Contoso&lt;/SPAN&gt;&lt;SPAN style="mso-ansi-language: RU"&gt;_&lt;/SPAN&gt;&lt;SPAN lang=EN-US&gt;MSCRM&lt;/SPAN&gt;&lt;SPAN style="mso-ansi-language: RU"&gt;). В следующем окне вводим текст самого запроса:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: justify"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;&lt;SPAN style="mso-ansi-language: RU"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;&lt;SPAN style="mso-ansi-language: RU"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: justify"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; FONT-FAMILY: 'Courier New'"&gt;USE&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; FONT-FAMILY: 'Courier New'; mso-ansi-language: RU"&gt; &lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; FONT-FAMILY: 'Courier New'"&gt;Contoso&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 8pt; FONT-FAMILY: 'Courier New'; mso-ansi-language: RU"&gt;_&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; FONT-FAMILY: 'Courier New'"&gt;MSCRM&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 8pt; FONT-FAMILY: 'Courier New'; mso-ansi-language: RU"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: justify"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; FONT-FAMILY: 'Courier New'"&gt;SELECT&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 8pt; FONT-FAMILY: 'Courier New'; mso-ansi-language: RU"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: justify"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; FONT-FAMILY: 'Courier New'"&gt;CAST ( CRMAF_Account.accountid AS Varchar ( 36 ) ) AS AccountId ,&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: justify"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; FONT-FAMILY: 'Courier New'"&gt;CRMAF_Account.name AS AccountName , &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: justify"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; FONT-FAMILY: 'Courier New'"&gt;CAST ( CRMAF_Opportunity.opportunityid AS Varchar ( 36 ) ) AS OpportunityId ,&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: justify"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; FONT-FAMILY: 'Courier New'"&gt;CRMAF_Opportunity.name AS OpportunityName ,&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: justify"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; FONT-FAMILY: 'Courier New'"&gt;CRMAF_Opportunity.estimatedvalue AS EstimatedValue&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: justify"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; FONT-FAMILY: 'Courier New'"&gt;FROM&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: justify"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; FONT-FAMILY: 'Courier New'"&gt;FilteredAccount AS CRMAF_Account,&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: justify"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; FONT-FAMILY: 'Courier New'"&gt;FilteredOpportunity AS CRMAF_Opportunity&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: justify"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; FONT-FAMILY: 'Courier New'"&gt;WHERE&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: justify"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; FONT-FAMILY: 'Courier New'"&gt;CRMAF_Opportunity.accountid = CRMAF_Account.accountid&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: justify"&gt;&lt;o:p&gt;&lt;/o:p&gt;&amp;nbsp;&lt;/P&gt;&lt;o:p&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: justify"&gt;&lt;SPAN style="mso-ansi-language: RU"&gt;После того, как мы ввели текст запроса и выбрали табличное представление отчета, нам надо сгруппировать наши поля. Здесь все просто – мы хотим группировать данные по названию организаций. Соответственно, переносим &lt;STRONG&gt;AccountName&lt;/STRONG&gt; в раздел &lt;STRONG&gt;Group&lt;/STRONG&gt;, а элементы &lt;/SPAN&gt;&lt;SPAN lang=EN-US&gt;&lt;STRONG&gt;OpportunityName &lt;/STRONG&gt;и&lt;/SPAN&gt;&lt;SPAN style="mso-ansi-language: RU"&gt; &lt;/SPAN&gt;&lt;SPAN lang=EN-US&gt;&lt;STRONG&gt;EstimatedValue&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="mso-ansi-language: RU"&gt;&amp;nbsp;– в раздел &lt;STRONG&gt;Details&lt;/STRONG&gt;.&amp;nbsp;Выбираем корпоративный стиль отчета, оставляя все остальные параметры без изменения и, нажав на кнопку &lt;/SPAN&gt;&lt;SPAN lang=EN-US&gt;&lt;STRONG&gt;Finish&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="mso-ansi-language: RU"&gt;, мы получаем основу нашего отчета, которую мы должны отредактировать, чтобы все стало красиво и удобно.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: justify"&gt;&lt;SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman','serif'; mso-ansi-language: RU; mso-fareast-font-family: 'Times New Roman'; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: justify"&gt;&lt;SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman','serif'; mso-ansi-language: RU; mso-fareast-font-family: 'Times New Roman'; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;Во-первых, мы должны переименовать названия отчета и полей. Это просто – надо нажать левой кнопкой мыши на соответствующей ячейки и ввести нужный текст. Например, название отчета – &lt;STRONG&gt;Сводка потенциальных продаж по клиентам&lt;/STRONG&gt;, а названия полей – &lt;STRONG&gt;Клиент&lt;/STRONG&gt;, &lt;STRONG&gt;Потенциальная продажа&lt;/STRONG&gt; и &lt;STRONG&gt;Предполагаемый доход.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: justify"&gt;&lt;SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman','serif'; mso-ansi-language: RU; mso-fareast-font-family: 'Times New Roman'; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: justify"&gt;&lt;SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman','serif'; mso-ansi-language: RU; mso-fareast-font-family: 'Times New Roman'; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;&lt;SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman','serif'; mso-ansi-language: RU; mso-fareast-font-family: 'Times New Roman'; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;Теперь, необходимо&amp;nbsp;провести форматирование&amp;nbsp;нашего отчета&amp;nbsp;следующим образом: во-первых, мы хотим, чтобы доход отображался в виде чисел с двумя знаками после точки и со знаком $; во-вторых -&amp;nbsp;чтобы значения предполагаемого дохода свыше 30000 отображались красным цветом. Как это реализовать? Открываем свойства ячейки с предполагаемым доходом. Теперь, переходим&amp;nbsp;на закладку &lt;STRONG&gt;Format&lt;/STRONG&gt; и выберем значение &lt;STRONG&gt;C&lt;/STRONG&gt; (&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman','serif'; mso-ansi-language: EN-US; mso-fareast-font-family: 'Times New Roman'; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;Currency&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman','serif'; mso-ansi-language: RU; mso-fareast-font-family: 'Times New Roman'; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;) для параметра &lt;STRONG&gt;Format code&lt;/STRONG&gt;.&lt;/SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman','serif'; mso-ansi-language: RU; mso-fareast-font-family: 'Times New Roman'; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;&lt;SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman','serif'; mso-ansi-language: RU; mso-fareast-font-family: 'Times New Roman'; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;С форматированием разобрались. Осталось изменить цвет ячеек. Для этого воспользуемся функцией &lt;STRONG&gt;IIF&lt;/STRONG&gt;. Опять выделяем ячейку с предполагаемым доходом. В окне &lt;STRONG&gt;Properties&lt;/STRONG&gt; перечисляются различные параметры данной ячейки, среди которых есть параметр &lt;STRONG&gt;Color&lt;/STRONG&gt;. Щелкаем кнопку для открытия выпадающего списка значений и выбираем пункт &lt;STRONG&gt;Expression&lt;/STRONG&gt;. Вводим следующую функцию &lt;STRONG&gt;=IIf(Fields!EstimatedValue.Value&amp;gt;30000,"Red","Black")&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: justify"&gt;&lt;SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman','serif'; mso-ansi-language: RU; mso-fareast-font-family: 'Times New Roman'; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;&lt;SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman','serif'; mso-ansi-language: RU; mso-fareast-font-family: 'Times New Roman'; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;&lt;SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman','serif'; mso-ansi-language: RU; mso-fareast-font-family: 'Times New Roman'; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;&lt;SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman','serif'; mso-ansi-language: RU; mso-fareast-font-family: 'Times New Roman'; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: justify"&gt;&lt;SPAN style="mso-ansi-language: RU"&gt;И теперь нам осталось самое простое &lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-ansi-language: RU; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;&lt;SPAN style="mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;J&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="mso-ansi-language: RU"&gt; - реализовать drill-down, т.е., вставить в отчет возможность щелкнуть курсором на возможной сделки, открыть учетную карточку этой сделки из Microsoft Dynamics CRM. Для начала, нам необходимо создать специальный параметр, который мы будем использовать. Открываем пукнт меню &lt;STRONG&gt;Report -&amp;gt; Report Parameters&lt;/STRONG&gt;. Задаем название для нового параметра – &lt;/SPAN&gt;&lt;STRONG&gt;&lt;SPAN lang=EN-US&gt;CRM&lt;/SPAN&gt;&lt;SPAN style="mso-ansi-language: RU"&gt;_&lt;/SPAN&gt;&lt;SPAN lang=EN-US&gt;URL&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN style="mso-ansi-language: RU"&gt;, определяем его значение по умолчанию &lt;STRONG&gt;=http://localhost:5555/CRMReports/Viewer/drillopen.aspx&lt;/STRONG&gt;. В этом параметре мы задаем адрес, с помощью которого можно отображать объекты &lt;/SPAN&gt;&lt;SPAN lang=EN-US&gt;Microsoft&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: RU"&gt; &lt;/SPAN&gt;&lt;SPAN lang=EN-US&gt;Dynamics&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: RU"&gt; &lt;/SPAN&gt;&lt;SPAN lang=EN-US&gt;CRM&lt;/SPAN&gt;&lt;SPAN style="mso-ansi-language: RU"&gt;, если передать ему тип объекта и &lt;/SPAN&gt;&lt;SPAN lang=EN-US&gt;GUID&lt;/SPAN&gt;&lt;SPAN style="mso-ansi-language: RU"&gt; этого объекта. Теперь&amp;nbsp;открываем свойства ячейки,&amp;nbsp;отображающей название&amp;nbsp;потенциальной продажи и переходим на закладку &lt;STRONG&gt;Navigation&lt;/STRONG&gt;. И что мы здесь видим? Пункт &lt;/SPAN&gt;&lt;STRONG&gt;&lt;SPAN lang=EN-US&gt;Jump&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: RU"&gt; &lt;/SPAN&gt;&lt;SPAN lang=EN-US&gt;to&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: RU"&gt; &lt;/SPAN&gt;&lt;SPAN lang=EN-US&gt;URL.&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN style="mso-ansi-language: RU"&gt; Осталось немного – правильно сформировать строку. Здесь нам опять помогает функция &lt;STRONG&gt;IIF&lt;/STRONG&gt;. Вводим&lt;/SPAN&gt; &lt;SPAN style="mso-ansi-language: RU"&gt;значение&lt;/SPAN&gt; &lt;SPAN lang=EN-US&gt;&lt;STRONG&gt;=IIF(IsNothing(Parameters!CRM_URL.Value),0,Parameters!CRM_URL.Value &amp;amp; "?ID={"&amp;amp;Fields!OpportunityId.Value.ToString()&amp;amp;"}&amp;amp;OTC=3")&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: justify"&gt;&lt;SPAN lang=EN-US&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: justify"&gt;&lt;SPAN style="mso-ansi-language: RU"&gt;Теперь, проверяем работу отчета с помощью закладки &lt;STRONG&gt;Preview&lt;/STRONG&gt;. Работает? Отлично, теперь сохраняем файл отчета в доступном нам месте, открываем Microsoft Dynamics CRM и помещаем созданный отчет в наше хранилище отчетов.&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-ansi-language: RU"&gt;Работает!!!&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=561484" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/ansle/archive/tags/Microsoft+Dynamics+CRM/default.aspx">Microsoft Dynamics CRM</category><category domain="http://blogs.technet.com/ansle/archive/tags/Reporting+Services/default.aspx">Reporting Services</category></item></channel></rss>