Отчеты
09
Сен
0

Иерархический отчет

Сделаем отчет, который отображает в иерархическом виде структуру подчинения пользователей CRM:

  • Откройте VS 2008 и создайте проект отчета;
  • Добавьте в отчет новый DataSet с таким SQL запросом:
    SELECT
    	fsu.systemuserid 'GUID',
    	fsu.fullname 'Полное имя',
    	fsu.parentsystemuserid 'Родительский GUID'
    FROM
    	FilteredSystemUser fsu
    WHERE
    	fsu.fullname NOT IN ('INTEGRATION', 'SYSTEM')
    

    Это простой запрос, который вытаскивает всех Пользователей т их руководителей;

  • Добавьте в отчет таблицу с двумя столбцами. В первый столбец поместите поле «Полное имя», а во второй (с именем «Уровень») поместите выражение:
    =Level()

    Это выражение будет считать вложенность уровня для каждого Пользователя;

  • Выделите строку и щелкните по ней правой кнопкой мыши – Row Group – Group Properties. В окне свойств группы сделайте следующие настройки (на соответствующих вкладках):
    • General: щелкните Add и укажите в качестве поля группировки GUID;
    • Visibility: поставьте по умолчанию отметку Hide, а также галку Display can be toggled… и выберите в качестве, у которого будет отображаться переключатель, Полное имя;
    • Advanced: в поле Recursive parent укажите Родительский GUID.
  • Откройте свойства поля Полное имя (щелкните по нему правой кнопкой мыши) и на вкладке Alignment, в поле Left задайте следующие выражение:
    =CStr(2+(Level()*50))+"pt"

    Это выражение делает отступ в поле в зависимости от уровня вложенности (чем ниже спускаемся тем больше отступ).

Готово. Выгружайте RDL и создавайте из нее отчет в CRM.






Комментарии (0)

*

code