Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
okabu:biblioteka:func:c97229de_d84a_4f0c_bd11_eb4dd4e36731 [2018/02/22 12:52]
pirogkov [Создание показателя вида «График»]
okabu:biblioteka:func:c97229de_d84a_4f0c_bd11_eb4dd4e36731 [2018/02/22 14:50] (текущий)
pirogkov
Строка 4: Строка 4:
  
 Данные могут быть сгруппированы в следующем виде: Данные могут быть сгруппированы в следующем виде:
- 
   * графики;​   * графики;​
   * диаграммы (круговые и столбчатые);​   * диаграммы (круговые и столбчатые);​
Строка 11: Строка 10:
 Возможности встроенной статистики позволяют задавать плановые показатели и рассчитывать фактические данные на указанный период,​ изменять сведения об отчетном периоде,​ группировать данные по категориям и настраивать видимость этих данных для различных пользователей. Возможности встроенной статистики позволяют задавать плановые показатели и рассчитывать фактические данные на указанный период,​ изменять сведения об отчетном периоде,​ группировать данные по категориям и настраивать видимость этих данных для различных пользователей.
  
-Для первоначальной настройки и получения доступа к встроенной ​статистике предусмотрено две роли:+При ​разработке системы много внимания были уделено оптимизации процессов для работы пользователя. Среди статистических ​показателей встречаются ​довольно крупные. В отдельных ​случаях при ​открытии одного показателя системы ​необходимо ​выполнить порядка 40 запросов для того, чтобы отобразить данные на Начальном столе.
  
 +Для того, чтобы сервер чувствовал себя менее напряженно при интенсивной нагрузке,​ были применены следующие методы:​ работа в фоновом режиме и сохранение данных в кэш. Когда пользователь активирует строку показателя,​ выполнение запросов происходит в фоновом режиме – форма не зависает,​ и вы можете продолжать работу с базой. Также, однажды сформированный график сохраняется в кэш системы. Если другой пользователь запросит в системы тот же график за тот же период,​ то вместо расчета нового значения система выдаст ему сохраненное значение.
 +
 +Система анализирует действия пользователей и формирует данные по наиболее часто используемым отчетным периодам. На основе этой статистики каждый день регламентным заданием перед началом работы по всем созданным показателям в фоновом режиме формируется кэш значений данных графиков. Когда сотрудники приходят утром на рабочее место и массово открывают свои Рабочие столы, они получают весь массив данных из кэша (а не посылают серверу множественные запросы,​ тормозя его работу и замедляя время фоновой загрузки). Это снижает нагрузку на сервер,​ но приводит к тому, что данные отображаются по состоянию на момент формирования кэша, а не на текущую минуту.
 +
 +Данный подход позволил значительно снизить нагрузку на сервер в рабочие часы, повысить быстродействие системы и производить расчет данных показателей в оперативном режиме.
 +
 +Для первоначальной настройки и получения доступа к встроенной статистике предусмотрено две роли:
   * «Администрирование статистических показателей» - позволяет пользователю не только просматривать готовые показатели,​ но и управлять ими. Т.е. создавать новые показатели,​ менять алгоритмы расчета показателей и менять настройки доступа к показателям определенных пользователей;​   * «Администрирование статистических показателей» - позволяет пользователю не только просматривать готовые показатели,​ но и управлять ими. Т.е. создавать новые показатели,​ менять алгоритмы расчета показателей и менять настройки доступа к показателям определенных пользователей;​
   * «Просмотр статистических показателей» - обеспечивает отображение на начальной странице пользователя уже настроенных показателей без возможности самостоятельного их редактирования и изменения алгоритмов сбора.   * «Просмотр статистических показателей» - обеспечивает отображение на начальной странице пользователя уже настроенных показателей без возможности самостоятельного их редактирования и изменения алгоритмов сбора.
Строка 37: Строка 43:
  
 Каждый показатель в списке имеет свой моментальный статус:​ Каждый показатель в списке имеет свой моментальный статус:​
- 
   * Зеленый круг - означает,​ что все элементы показателя заполнены;​   * Зеленый круг - означает,​ что все элементы показателя заполнены;​
   * Желтый круг - означает,​ что показатель заполнен частично либо некоторые его элементы отключены;​   * Желтый круг - означает,​ что показатель заполнен частично либо некоторые его элементы отключены;​
   * Красный круг - означает,​ что показатель не заполнен либо его элементы отключены.   * Красный круг - означает,​ что показатель не заполнен либо его элементы отключены.
  
-Только что созданные показатели,​ в которые еще не добавлены элементы,​ отображаются с красным кругом. О том, как их заполнять,​ поговорим далее. {{  :​okabu:​biblioteka:​func:​bib00000000006.gif?​nolink& ​ }}+Только что созданные показатели,​ в которые еще не добавлены элементы,​ отображаются с красным кругом. О том, как их заполнять,​ поговорим далее. ​ 
 +{{  :​okabu:​biblioteka:​func:​bib00000000006.gif?​nolink& ​ }}
  
 При помощи формы можно добавить новые показатели и группы. Для добавления группы верхнего уровня нажимаем на кнопку «Создать группу» и заполняем поле «Наименование». Лучше давать максимально понятные наименования,​ чтобы пользователи,​ которые незнакомы с Системой,​ понимали,​ что означает та или иная группа показателей. После этого добавляем показатели,​ которые войдут в созданную группу. Для этого выделяем нужный показатель и перетаскиваем его в нашу группу. Расположение групп относительно друг друга также можно настроить перетаскиванием.В течение 1 минуты у всех пользователей с открытой Начальной страницей Системы данная группа показателей обновится и будет включать новый элемент. При помощи формы можно добавить новые показатели и группы. Для добавления группы верхнего уровня нажимаем на кнопку «Создать группу» и заполняем поле «Наименование». Лучше давать максимально понятные наименования,​ чтобы пользователи,​ которые незнакомы с Системой,​ понимали,​ что означает та или иная группа показателей. После этого добавляем показатели,​ которые войдут в созданную группу. Для этого выделяем нужный показатель и перетаскиваем его в нашу группу. Расположение групп относительно друг друга также можно настроить перетаскиванием.В течение 1 минуты у всех пользователей с открытой Начальной страницей Системы данная группа показателей обновится и будет включать новый элемент.
Строка 50: Строка 56:
 <font inherit/​inherit;;​red;;​inherit>​**ВНИМАНИЕ!**</​font>​ В Системе существует встроенная справка,​ в которой содержится подробная информация по заполнению статистических показателей – она доступна по нажатию клавиши F1. <font inherit/​inherit;;​red;;​inherit>​**ВНИМАНИЕ!**</​font>​ В Системе существует встроенная справка,​ в которой содержится подробная информация по заполнению статистических показателей – она доступна по нажатию клавиши F1.
  
-===== Создание ​запроса для ​показателя =====+===== Создание показателя ​вида «График» ​=====
  
-В поле «Запрос данных ​для статистики» нажимаем в свободном месте ​правую кнопку мыши и в контекстном меню выбираем «Открыть ​конструктор запроса». Во вкладке ​«Таблицы и поля» Конструктора находим документ ​«ПоступлениеВФонд» и двойным щелчком выбираем из этой группы поля «Ссылка» и «Дата». {{  :​okabu:​biblioteka:​func:​bib00000000010.gif?nolink&  ​}}+Перед нами ​стоит задача: сделать график, отображающий количество созданных ​приходных документов. Другими словами, график покажет, сколько документов поступает ​в фонд с разбивкой по дням. По оси x графика (горизонталь) будут ​располагаться даты, а по оси y (вертикаль) – количество ​документов. Для примера создадим новый статистический ​показатель с названием «Статистика о приходных ​документах». В справочнике нажимаем кнопку «Создать» и указываем соответствующее ​наименование. После ​этого ​нажимаем на кнопку ​«Добавить показатель». 
 +{{ :​okabu:​biblioteka:​func:​bib00000000007.gif?​nolink ​|}}
  
-На вкладке «Условия» ​Конструктора ограничиваем ​состав документов ​условиями: документ принят к учету (проведени создан в задаваемый пользователю период. ​{{  :​okabu:​biblioteka:​func:​bib00000000011.gif?​nolink& ​ }}+Открывается форма изменения показателя. Для начала изменяем ​«Наименование показателя». Оно должно точно отражать то, что выводится на графике. Так ​что назовем наш показатель «Количество созданных ​документов ​по дням». После этого нужно выбрать «Вид элемента». В нашем случае ​для создания графика мы выбираем «Вид элемента» – «Диаграмма». В поле «Тип диаграммы» выбираем значение «График». После этого ​необходимо создать запрос ​данных, который позволит нам вывести этот график на экран. А также заполнить список показателей запроса и их значений. Подробно вопрос создания запроса рассмотрен в разделе «Создание запросадля показателя».
  
-Для того, чтобы подсчитать,​ сколько проведенных ​документов поступает в фонд за определенный ​период и построить график, необходимо сгруппировать поля. Группировка полей осуществляется ​на вкладке Конструктора «Группировка». {{  :​okabu:​biblioteka:​func:​bib00000000012.gif?nolink&  ​}}+Если вы следовали инструкции, ​то в окне предпросмотра будет построен ​график. 
 +{{ :​okabu:​biblioteka:​func:​bib00000000015.gif?​nolink ​|}}
  
-Таким образом мы сформировали сам запрос данных. У нас ​есть ​отборы по датам, некоторые ограниченияа также поля группировки и суммирования. Для того, чтобы система понимала, как строить график, нам необходимы 4 поля: точка, серия, название ​точки и название серии. ​Для показателей вида график точкой являются датыа серией – значения, рассчитываемые на точку.+===== Создание графика с несколькими сериями ===== 
 +В ранее показатель добавим график, в котором все созданные ​документы будут ​разбиты по пользователям, которые ​их создают. График представиткто создает больше документова кто – меньше. Для ​этого ​в окне Статистического ​показателя ​нажимаем рядом с нашим графиком кнопку «Добавить показатель». В форме пишем ​название ​нового графика. Выбираем «Вид элемента» - «Диаграмма» и тип диаграммы «График с накоплением». Позже мы сможем поменять вид диаграммы на более подходящий (если понадобится)В поле «Запрос данных для статистики» вставляем ​запрос из нашего предыдущего графика и редактируем его. В новом ​графике нам необходимо вывести «НазваниеСерии» по различным пользователям на экран, чтобы оно отображалось в легенде. Также нам нужно ​сгруппировать документы по их создателям. Открываем конструктор запроса.
  
-<font inherit/​inherit;;#​e74c3c;;​inherit>​**ВНИМАНИЕ!**</​font>​ Для ​каждого вида диаграмм параметры будут отличаться! Приведенные ниже примеры подходят только для создания ​диаграммы с типом «График».+Во вкладке «Таблицы и поля» Конструктора ​дважды щелкаем на поле «Количество созданных документов по неделям». В нижней ​части окна ​редактирования удаляем значение. После этого находим значение, которое отвечает за создателей документов. Двойным щелчком добавляем его нижнюю часть окна редактирования ​– так мы присвоили полю новое значение. 
 +{{ :​okabu:​biblioteka:​func:​bib00000000016.gif?nolink |}}
  
-Переходим во вкладку «Объединения/​Псевдонимы» Конструктора и переименовываем поля ​«Дата» и «Ссылка» в «Точка» и «Серия» соответственно. Системе необходимы еще два поля: «название точки» ​и «название ​серии». При этом значение поля «название ​точки» должно быть нулевым.+Переходим во вкладку «Группировка». Перетаскиваем наше поле в окно «Групповое поле» – так мы обозначим,​ что группировать данные нужно по создателям документов. После этого переходим во вкладку ​Объединения/​Псевдонимы. Важно, чтобы добавленный нами ответственный имел имя «НазваниеСерии». В таком случае в легенде графика будет отображаться весь список ​пользователей. Нажимаем «ОК». 
 +В форме изменения показателя заполняем параметры так же, как ​и заполняли при создании предыдущего графикаЗаписываем и сохраняем ​изменения. Таким ​образом,​ при указании ​в «НазваниеСерии» ​конкретного значения, по которому также будет группироваться получаемый результат,​ мы увидим множество этих серий на одном графике. 
 +{{ :​okabu:​biblioteka:​func:​bib00000000017.gif?nolink |}}
  
-Переходим во вкладку Конструктора «Таблицы и поля». В окне «Поля» щелкаем ​правой кнопкой мыши и добавляем новое поле. В нижней части открывшегося окна прописываем значение NULL. После этого переходим во вкладку ​Конструктуора «Объединения/Псевдонимы» и переименовываем созданное «Поле1» в «НазваниеТочки».+=====    Создание показателя вида ​«Круговая объемная диаграмма»    =====
  
-Далее во вкладке ​«Таблицы ​и поля» таким ​же образом добавляем новое поле и в качестве значения указываем «Количество созданных документов по дням». Это ​значение будет ​отображаться в легенде ​графика. Во вкладке ​«Объединения/​Псевдонимы» ​переименовываем новое ​поле в «НазваниеСерии». {{  :​okabu:​biblioteka:​func:​bib00000000013.gif?​nolink& ​ }}+Следующий ​вид диаграмм, ​которые мы научимся создавать,​ отличается от графиков. В нашем примере диаграмма будет отображать, сколько документов было создано каждым пользователем за указанный период. Добавляем новый показатель к двум ранее созданным графикам. Даем показателю название «Количество созданных документов по пользователям за период». «Вид элемента» – «Диаграмма». «Тип диаграммы» ​– «Круговая объемная». Открываем ​Конструктор запроса. 
  
-Для графика точкой всегда является то, по чему ​происходит группировка (в нашем примере – дата). Значения ​точки выводятся на горизонтальной оси. Серией в нашем случае является количество различных ссылок. Название серии будет ​выводиться в легенде графика, а название точки ​получает нулевое ​значение (NULL) ​и в легенде не отображается.+Запрос ​будет ​примерно ​такой жекак и при создании прошлого графикано в этот раз мы не будем группировать документы по дате создания. Во вкладке «Таблицы и поля» ​добавляем поля «Ссылка» и «Ответственный» из категории «ПоступлениеВФонд»Во вкладке «Группировка» поле «Ответственный» перемещаем в «Групповое поле», чтобы созданные документы группировались по пользователям. Поле «Ссылка» перемещаем в «Суммируемое поле», чтобы считать количество документов. Во вкладке «Условия» выставляем уже привычные нам поля.
  
-После того, как разобрались с полями,​ переходим во вкладку «Порядок» ​и добавляем в правое окно поле «Точка». В столбце «Сортировка» указываем значение ​«Возрастание». После этого внизу Конструктора нажимаем на кнопку «ОК» и сохраняем изменения. Возвращаемся обратно в «Форму изменения показателя». Все настройкикоторые ​мы задавали в Конструктореотобразятся в виде кода. {{  :​okabu:​biblioteka:​func:​bib00000000014.gif?nolink&  ​}}+Главное отличие от графика находится ​во вкладке «Объединения/Псевдонимы» Конструктора. Если ​при создании графика ​«Точка» ​у нас ​соответствовала «Дате», а «Количество» соответствовало «Серии», ​то при создании других диаграмм все должно быть ​наоборот. ​Количество различных элементов является «Точками», а «Ответственный» ​является «Серией»Еще раз: для графика «Точкой» является Группировочное поле, а для диаграмм, гистограмм, воронок и прочих ​показателей, «Точкой» является то, что мы рассчитываем – «Суммируемое поле». Поэтому во вкладке «Объединениясевдонимы» мы переименовываем поле «Ссылка» в «Точку», ​а поле «Ответственный» в «Серия». 
 +{{ :​okabu:​biblioteka:​func:​bib00000000018.gif?​nolink ​|}}
  
 +Резюмируем:​ для показателя вида «Диаграмма» у нас должно быть создано 4 элемента:​ «Точка»,​ «Серия»,​ «НазваниеТочки» и «НазваниеСерии». Для диаграммы «Точкой» является то, что мы рассчитываем (суммируемое поле). «Серией» – то, по чему мы группируем (группировочное поле). Для графиков это было наоборот:​ «Серия» – то что мы считаем,​ а «Точка» – по чему группируем. ​
 +Для выводимых на рабочий стол показателей обязательно должны быть указаны «НазваниеТочки» и «НазваниеСерии». Один из этих элементов будет иметь значение NULL, а другому (который своего названия не имеет) мы даем название. У поля «Серия» название есть – это имя пользователя,​ ответственного. А «Точка» – это число без названия. Поэтому мы и задаем «НазваниеТочки»,​ как Количество документов. А «НазваниеСерии» оставляем пустым,​ присваивая ему значение NULL.
 +
 +=====    Создание показателя вида «Таблица расшифровки» ​   =====
 +
 +Ранее мы создали графики – они будут отображаться в основном виде в том случае,​ если в панели отбора выбран верхний уровень группировки. Сделаем так, чтобы при выборе конкретного показателя у нас отображалась также таблица,​ в которой мы будем видеть конкретные значения. Для этого мы создадим показатель вида «Таблица расшифровки»,​ который будет отображать,​ сколько конкретный пользователь создал документов за определенный период времени (с группировкой по неделям).
 +
 +В форме изменения показателя выбираем тип «Таблица расшифровки». Даем показателю «Название» и открываем Конструктор запроса. Во вкладке «Таблицы и поля» выбираем из категории «ПоступлениеВФонд» поля «Дата»,​ «Ответственный» и «Ссылка». Дважды щелкаем на поле «Дата» и редактируем его до вида //​НачалоПериода(ПоступлениеВФонд.Дата,​ Неделя)//​. Во вкладке «Объединения/​Псевдонимы» переименовываем поле «Дата» в «Неделя»,​ а поле «Ссылка» в «КоличествоДокументов». Переходим во вкладку «Группировка». В Группировочное поле перемещаем поля «Дата» и «Ответственный». В Суммируемое поле перемещаем поле «Ссылка». Далее определяем порядок группировки данных на вкладке «Порядок». Выбираем «Дата» и «Ответственный» со значением «Возрастание» для того, чтобы документы были рассортированы по времени создания и по авторам в порядке возрастания. Во вкладке «Итоги» мы определяем вид итоговой таблицы. В качестве Группировочного поля мы указываем «Дату»,​ а в качестве Итогового поля – КоличествоДокументов. В столбце Выражение выбираем //​СУММА(КоличествоДокументов)//​. Таким образом мы задаем,​ что в таблице будет отражено суммарное количество документов за конкретный период. После этого нажимаем «ОК», заполняем параметры и сохраняем изменения.
 +
 +Данная таблица расшифровки будет отображаться в виде обычного результата запроса. Название столбцов берется из псевдонимов,​ которые мы указывали в запросе.
 +{{ :​okabu:​biblioteka:​func:​bib00000000019.gif?​nolink |}}
 +
 +=====    Создание показателя вида «План/​Факт» ​   =====
 +
 +Помните неинформативный график,​ который мы создали для того, чтобы продемонстрировать,​ как на одном графике может выводиться несколько показателей?​ Сейчас мы на его основе создадим планфакторный показатель. Он отображает,​ сколько документов было создано пользователями по факту и сколько необходимо создать для того, чтобы выполнить план. Нажимаем на кнопку «Редактировать»,​ чтобы внести изменения в показатель. В открывшейся форме выставляем «Вид элемента» - «План/​Факт» и в поле «Плановый показатель» вписываем число. Допустим,​ что плановый показатель для нас – 150 документов. Название можно не писать,​ так как оно не будет отображаться в этом показателе. Далее открываем конструктор запроса.
 +
 +Так как в результате запроса мы должны получить одно единственное поле, в котором будет содержаться количество фактически созданных документов,​ нам необходимо удалить лишние поля. Во вкладке «Таблицы и поля» удаляем все выбранные поля, кроме «Количество». Во вкладке «Группировка» должно остаться только Суммирующее поле. Группировочное поле будет пустым,​ так как мы удалили остальные поля. Во вкладке «Условия» мы оставляем неизменными:​ нам по-прежнему нужны документы за определенный период,​ проведенные и не созданные администратором. Во вкладке «Объединения/​Псевдонимы» также все оставляем неизменным. Сохраняем изменения.
 + 
 +Планфакторный показатель в предварительном просмотре недоступен. Увидеть его мы сможем только на Начальной странице. Записываем изменения в нашем статистическом показателе и переходим на Начальную страницу.
 +{{ :​okabu:​biblioteka:​func:​bib00000000020.gif?​nolink |}}
 +
 +Так как документов создано больше планового значения,​ фактическое число обозначено зеленым цветом. Если бы документов было создано меньше плана, то число было бы красным.
 +
 +=====    Создание сравнительного аналитического графика ​   =====
 +
 +Еще один вид показателя,​ который доступен пользователям – сравнительный аналитический график. Данный вид показателя позволяет сравнивать между собой различные графики без построения дополнительных сложных запросов.
 +
 +Для его создания открываем Администрирование статистических показателей и выбираем один из существующих показателей. Для примера отредактируем элемент «Взаимосвязи» и добавим в него новый показатель. В открывшемся окне пишем название показателя и открываем «Конструктор аналитического графика». Мы видим древовидный список,​ в котором отображаются все отдельные показатели,​ которые имеют вид «график». Они сгруппированы аналогично панели отбора на Начальной странице и Справочнику по статистическим показателям.
 +{{ :​okabu:​biblioteka:​func:​bib00000000021.gif?​nolink |}}
 +
 +В колонке с чекерами выбираем те показатели,​ которые хотим проанализировать. К примеру,​ сравним созданный нами график «Количество документов по неделям» с графиком «Создано записей по неделям пользователями». После сохранения изменений мы увидим,​ что Система автоматически создает запрос и заполняет параметры. Записываем и закрываем изменения. В окне предпросмотра график отображается некорректно,​ так что открываем его на Начальной странице,​ выбрав соответствующий показатель на панели отбора.
 +{{ :​okabu:​biblioteka:​func:​bib00000000022.gif?​nolink |}}
  
 =====    Создание запроса для показателя ​   ===== =====    Создание запроса для показателя ​   =====
Строка 100: Строка 145:
 {{ :​okabu:​biblioteka:​func:​bib00000000014.gif?​nolink |}} {{ :​okabu:​biblioteka:​func:​bib00000000014.gif?​nolink |}}
  
 +Все графики строятся на основании запросов. В этом примере мы строили достаточно простую конструкцию запроса,​ но запросы могут быть и комплексными. Так, вы можете отбирать данные из внешних источников,​ создавать временные таблицы,​ группировать их в процессе расчета и многое другое. Единственное условие – после всех операций со временными таблицами и расчетами мы должны получить таблицы с четырьмя полями:​ «Точка»,​ «Серия»,​ «НазваниеТочки» и «НазваниеСерии».
 +
 +=====    Распределение прав доступа ​   =====
 +
 +При создании показателя автоматически распределяются права доступа. Узнать,​ кто имеет доступ к просмотру конкретного показателя можно, нажав на кнопку пользователя с замком.
 +{{ :​okabu:​biblioteka:​func:​bib00000000024.gif?​nolink |}}
 +
 +По умолчанию созданный показатель доступен только тому, кто его создал. Администратор имеет доступ ко всем показателям. Если мы хотим добавить дополнительного пользователя,​ то в открывшейся панели необходимо нажать кнопку «Добавить» и выбрать пользователя (или пользователей) из списка. После этого – сохранить изменения. В течение 1 минуты пользователи,​ получившие доступ,​ увидят данный показатель в панели отбора на Начальной странице Системы.
 +
 +Что делать в том случае,​ когда нам нужно открыть одному пользователю доступ сразу к десятку показателей?​ В таком случае настраивать каждый показатель будет трудоемко,​ а быстрая настройка осуществляется с формы списка справочника «Статистические показатели» по команде «Управление доступом».
 +{{ :​okabu:​biblioteka:​func:​bib00000000023.gif?​nolink |}}
  
 +В открывшемся окне Назначение прав мы сможем выбрать Пользователя и просмотреть список показателей,​ которые он может видеть (отмечены галочками). Для того, чтобы открыть или ограничить доступ,​ нужно просто выбрать или внять выбор в чекере напротив названия показателя. После внесения изменений выбор нового пользователя будет недоступен,​ пока мы не нажмем кнопку «Сохранить».