Целевая аудитория этого приложения – группы управленцев по финансированию и инвестициям верхнего и среднего уровня в компаниях, которые занимаются управлением активами в секторе финансовых услуг. Приложение может использоваться любыми менеджерами по активам, включая ведомственных и индивидуальных специалистов.
«Управления Средствами в QlikView» обеспечивает анализ управляемых активов по различным аспектам, например, по классу актива, инвестору, типу фонда и региону. Пользователи могут использовать эту демо-версию приложения для поиска средств и их показателей, а также для анализа данных фонда. Это приложение содержит 8 вкладок. Они вкратце описаны ниже.
QlikView — BI-платформа с ассоциативным поиском в оперативной памяти со встроенными средствами ETL.
QlikTech — компания-разработчик программного обеспечения (qlikview) для систем Business Intelligence со штаб-квартирой в Радноре. Основана в 1993 году в Швеции.
Введение в терминологию Business Intelligence
Активное хранилище данных (Active data warehousing). Гибридная платформа хранения данных, поддерживаемая компанией Teradata (отделение NCR), которая поддерживает и аналитические, и оперативные запросы. Витрина данных (Data mart). Хранилище данных, ориентированное на отдельную тематическую область и на определенную однородную группу пользователей. Выборка, трансформация и загрузка данных (Extraction, transformation and loading, ETL). Инструменты, которые позволяют извлекать данные из систем-источников, преобразовывать их и загружать в хранилища данных или витрины данных. Данные (Data). Продукт систем-источников и приложений (данные транзакций или текстовые данные). Добыча данных (Data mining). Добыча данных, называемая также извлечением знаний из баз данных (KDD), позволяет статистикам и квалифицированным бизнес-аналитикам создавать модели, способные автоматически выявлять и отслеживать закономерности и тенденции и генерировать статистические модели и правила. Запаздывающий индикатор (Lagging indicator). Ключевой показатель эффективности, позволяющий оценивать результаты прошлой деятельности, как это имеет место для большинства финансовых показателей. Измерение (Measurement). Результат измерения параметра объекта или вида деятельности. Интеграция корпоративных приложений (Enterprise application integration, EAI). Промежуточное ПО, интегрирующее приложения путем передачи информации о событиях из одного приложения в другое в режиме почти реального времени. Интеграция корпоративных данных (Enterprise information integration, EII).Инструменты, позволяющие опрашивать множество распределенных источников данных и мгновенно обобщать результаты для представления их конечным пользователям. Ключевой показатель эффективности (Key Performance Indicator, KPI).Параметр, позволяющий определить, насколько хорошо данная организация или индивидуум выполняет текущие, тактические или стратегические операции или задания, критически важные для текущего или будущего успеха данной организации. Корпоративный портал (Corporate portal). Персонализуемый веб-интерфейс для представления бизнес-контента, необходимого конкретным сотрудникам для выполнения порученных им заданий (с любезного разрешения Колин Уайт). Модель данных (Data model). Логическое представление функционирования данного бизнеса и его конкретной физической реализации в рамках системы управления базой данных. Операционный склад данных (Operational data store, ODS). Хранилище данных сравнительно небольшого объема, предназначенное для выдачи быстрых ответов на короткие операционные запросы (например, на запрос телефонного оператора-продавца относительно профиля только что позвонившего ему клиента). Операционная панель индикаторов (Operational dashboard). Система управления эффективностью , которая представляет информацию об операционных процессах, причем мониторингу в рамках панели индикаторов уделяется большее внимание, нежели возможностям анализа или менеджмента. Опережающий (прогнозный) индикатор (Leading indicator). Ключевой показатель эффективности, позволяющий оценивать деятельность, которая в значительной мере определяет будущие результаты деятельности компании. Панель индикаторов (Performance dashboard). Многоуровневое приложение, базирующееся на инфраструктуре бизнес-анализа и интеграции данных и позволяющее пользователям осуществлять мониторинг и анализ эффективности работы и управлять ею с помощью интерфейсов панелей индикаторов или сбалансированных систем показателей . Иначе называется системой управления эффективностью (performance management system). Панель индикаторов (Dashboard). Инструмент визуализации, используемый в операционно-ориентированных системах управления эффективностью и позволяющий измерять значения показателей по отношению к целевым и пороговым значениям на основании данных, представляемых в режиме нужного времени. Показатель (Metric). Регулярно измеряемый параметр объекта или вида деятельности. Например, компания может использовать показатель, характеризующий выгодность клиента, и другой показатель, характеризующий лояльность клиентов. Сбалансированная система показателей (Balanced Scorecard). Методология стратегической индикаторной панели , разработанная профессором Робертом С . Капланом и консультантом Дэвидом П. Нортоном и использующая сбалансированный набор показателей, охватывающий все аспекты деятельности организации. Сбалансированная система показателей позволяет сфокусировать внимание сотрудников на тех заданиях и направлениях деятельности, которые максимально способствуют достижению стратегических целей организации и обеспечивают ценность бизнеса в долгосрочной перспективе. Система показателей (Scorecard). Механизм визуализации, используемый в стратегически ориентированных системах управления эффективностью, который позволяет отслеживать продвижение к стратегическим целям, соотнося реальные рабочие показатели с целевыми и пороговыми значениями. Система управления эффективностью (Performance management system).Информационная система на основе инфраструктуры бизнес-анализа и интеграции данных, позволяющая пользователям осуществлять мониторинг и анализ эффективности работы и управлять ею с помощью интерфейсов индикаторных панелей или сбалансированных систем показателей. Иначе называется панелью индикаторов (Performance dashboard). Стратегическая панель индикаторов (Strategic dashboard). Система управления эффективностью, фокусирующая внимание сотрудников на заданиях и направлениях деятельности, которые максимально способствуют достижению стратегических целей и обеспечивают ценность бизнеса в долгосрочном плане. При этом больше внимания в рамках панели индикаторов уделяется менеджменту, нежели возможностям анализа и мониторинга. Стратегическая карта (Strategу map). Инструмент, обычно используемый в стратегических индикаторных панелях и сбалансированных системах показателей для определения связей между стратегическими целями и показателями, через которые они выражаются. Используются для разработки и корректировки организационной стратегии и проверки гипотез руководителей относительно причинно-следственных связей между целями и показателями. Тактическая панель индикаторов (Tactical dashboard). Система управления эффективностью , которая позволяет менеджерам и аналитикам отслеживать продвижение различных программ и проектов по отдельным подразделениям компании и анализировать тенденции и возникающие проблемы. При этом больше внимания в рамках панели индикаторов уделяется анализу, нежели мониторингу и возможностям менеджмента. Табличная витрина (Spreadmart). Электронная таблица или настольная база данных, созданная бизнес пользователем, которая функционирует как суррогатная (персональная или филиальная) витрина данных и содержит уникальные термины, определения и правила, которые несовместимы с другими терминами, определениями и правилами, используемыми в других системах в пределах данной организации. Управление эффективностью бизнеса (Business performance management).Совокупность организационных процессов и приложений, имеющая целью оптимизировать реализацию бизнес-стратегии. Включает в себя, в частности, панели индикаторов , а также финансовую консолидацию и отчетность, прогнозирование, планирование и составление бюджетов. Хранилище данных (Data warehouse). Хранилище очищенной интегрированной информации, полученной от многих систем, из которого информация поступает к конечным пользователям или в витрины данных.
Сравнение традиционной и ассоциативной архитектуры бизнес-аналитики
QlikView разные системы бизнес-аналитики Qlik Sense
учебник QlikView Qlik Sense
курсы QlikView Qlik Sense
Большинство различных ПО в бизнес-аналитике используют запросы, возвращаемый результат которых зависит от исходного контекста поиска. Помимо этого, результаты различных запросов никак не связываются между собой физически, а только в головах разработчиков. Это отдаляет результаты запросов, которые разрабатываются техническими специалистами, от бизнес-пользователей. Поэтому принятие решений производится на основе интуитивных связей между данными, что ухудшает их качество.
В QlikView реализована система с ассоциативной архитектурой. ПО управляет сложными взаимосвязями между данными не на прикладном уровне, а на уровне внутренних инструментов QlikView. ПО сохраняет в оперативной памяти различные таблицы баз данных. При помощи этих инструментов можно манипулировать ассоциативными связями между таблицами, а соответственно и данными. Любое значение из одной таблицы связывается со всеми значениями из других таблиц. Данные в стандартных кубах агрегированы по-разному. Если нужно получить данные из двух разных кубов, то в общем случае сделать это невозможно — необходимо создать дополнительный куб. Плюс чтобы объединить данные из кубов с данными транзакционных систем — нужно разрабатывать дополнительный куб и интеграцию, что является очень не тривиальной задачей. Бизнес-пользователи очень часто имеют разные мелкие вопросы, которые им приходится решать в ручную, что требует очень много времени. QlikView имеет очень простой инструмент создания моделей в кратчайшие сроки. С ним можно решить все мелкие вопросы бизнес-пользователей за короткое время, т.е. сэкономив часы IT специалистов.
Традиционные инструменты бизнес-анализа, которые основаны на запросах, используют уровень приложений, отделенный от уровня данных. Это приводит к затягиванию процесса внедрения, т.к. разработчикам необходимо затрачивать определенное время на настройку приложений. Плюс требуется время на настройку приложений для их соответствия новым данным.
Архитектура QlikView
обучение Qlik Sense QlikView
справочное пособие по QlikView Server & QlikView Publisher
Клиент-серверный обмен
Управление безопасностью
Интеграция
Управление пользователями
Шифрование
Логирование
Многоуровневое администрирование
Гибкое лицензирование
Обзор компонентов QlikView
OLE DB
OLEDB — это набор низкоуровневый интерфейсов Component Object Model (COM), которые позволяют обращаться к данным, которые хранятся в разных источниках информации. С помощью OLEDB можно обращаться к следующим источникам данных:
базы данных типа IMS DB2 (базы данных для mainframe);
базы данных ORACLE, MS SQL SERVER, IBM DB2, MySQL;
базы данных ACCESS, Paradox, FoxPro;
файловая система NTFS или UNIX;
системы электронной почты типа Exchange;
индексно-последовательные файлы (текстовые файлы и электронные таблицы);
многие другие данные…
Главное отличие от ODBC состоит в том, что ODBC была создана только для доступа к реляционным данным, а вот OLEDB может подключаться к любым данным. OLEDB состоит из 3 компонентов:
1) data consumers — потребители данных;
2) data provides — провайдеры данных;
3) service components — сервисные компоненты.
ODBC
ODBC (Open Database Connectivity) — программный интерфейс API для доступа к базам данных (СУБД), которые поддерживают этот стандарт. Программный интерфейс разработан фирмой Microsoft. При использовании ODBC клиенту не обязательно знать с какой СУБД (Oracle, MS SQL, Access) он работает.
QlikView работает с 32-разрядными и 64-разрядными ODBC драйверами, поэтому очень важно соблюдать соответствие версий драйверов ODBC и программ. 32-разрядная версия QlikView совместима только с 32-разрядными драйверами ODBC. 64-битная версия совместима как с 32-разрядными, так и с 64-разрядными драйверами ODBC.
QlikView Developer
Компонент QlikView Developer позволяет разработчикам составлять скрипты загрузки и создавать визуальные представления данных для приложений QlikView.
В скриптах загрузки определяются источники данных. Скрипты загрузки QlikView определяют источники данных и указывают, какие именно данные будут из них извлекаться и как попутно обрабатываться (в случае, если это необходимо). Сама по себе система QlikView не является инструментом извлечения, преобразования и загрузки данных (extraction, transform, load, ETL), но обладает достаточно обширным и мощным функционалом в области ETL, поддерживая более 350 функций преобразования.
Визуализация делает числовые данные наглядными. QlikView обладает гибко настраиваемым, интуитивно понятным и развитым механизмом визуализации данных. После извлечения данных из систем-источников и преобразования их в нужный вид разработчики и дизайнеры с помощью QlikView Developer создают интерактивные визуальные представления, которые помогут конечным пользователям находить ответы на актуальные вопросы бизнеса.
QlikView Server
QlikView Server и его подсистемы выполняют задачи загрузки, защиты, распространения и управления контентом и его доставки конечным пользователям.
Все клиенты QlikView обращаются к серверу QlikView Server, на котором хранится контент. QlikView Server отвечает за организацию клиент-серверного доступа к приложениям и данным QlikView. Сервер хранит документы QlikView и делает их доступными конечным пользователям, количество которых может исчисляться тысячами. При необходимости он помогает планировать операции перезагрузки данных, однако обычно за планирование отвечает модуль QlikView Publisher.
QlikView Publisher реализует дополнительные функции планирования и доставки. Дополнительный (опциональный) компонент QlikView Publisher предназначен для создания сложных сценариев распространения контента, типичных для крупных предприятий. Он расширяет и улучшает функциональные возможности QlikView Server в области администрирования и обеспечивает дополнительную защиту контента QlikView на уровне пользователей и групп. Например, из единого контента QlikView этот инструмент может сгенерировать самостоятельные документы, предназначенные для конкретных пользователей или групп и содержащие лишь интересующие их данные.
AccessPoint представляет собой настраиваемую точку доступа ко всем приложениям QlikView. С помощью AccessPoint, модуля QlikView Server, пользователи обращаются ко всем приложениям QlikView в соответствии с правами доступа. Кроме того, QlikView AccessPoint поддерживает различные фоновые сервисы, например распределение и балансировку нагрузки между несколькими серверами QlikView, объединенными в кластер.
AccessPoint в QlikView:
Источники данных для моделей QlikView
Ниже приведена иллюстрация возможных источников данных для моделей QlikView:
Как могут использоваться источники данных в QlikView?
Функциональный обзор QlikView
Скрипты загрузки QlikView
Скрипты загрузки определяют источники данных, указывают условия, по которым производится загрузка данных, а также определяется порядок обработки данных. Система QlikView не является инструментом извлечения, преобразования и загрузки данных (ETL tool), но имеет достаточно обширный и мощный функционал в области ETL — имеется более 350 функций преобразования данных.
Данные из СУБД загружаются в QlikView с помощью интерфейса OLE DB / ODBC от Microsoft. Для того, чтобы загрузка начала работать, необходимо установить Драйвер, который поддерживает соответствующую СУБД, и настроить СУБД в качестве источника данных ODBC. Пример схемы ETL-процесса
Несколько уровней обработки данных
Очень часто процесс загрузки данных делится на несколько уровней. На выходе с каждого уровня имеется набор qvd-файлов, либо со справочниками измерений, либо с данными какой-либо системы учета, которые прошли предварительную обработку. Пример такой архитектуры обработки данных приведен на рисунке:
Причем, за данные на разных уровнях могут отвечать разные ответственные лица. Это улучшает контроль за данными и повышает качество данных.
Редактор скрипта загрузки в QlikView
В Редакторе скрипта загрузки можно ввести и выполнить скрипт, который подключает документ QlikView к источнику данных ODBC или к файлам данных и получает запрашиваемую информацию. Скрипты вводятся вручную или создаются автоматически. Сложные операторы необходимо, хотя бы частично, вводить вручную.
Знакомство с загрузкой скрипта
Очень полезным аспектом QlikView является способность комбинировать данные из различных источников данных в единый документ QlikView. Сюда относится и возможность считывания данных из нескольких баз данных при необходимости. Программа также может объединять данные из источников в Интернете, а также из других серверов или файлов. QlikView выполняется как сценарий, управляемый в редакторе элементов для подключения к различным источникам и получения из них данных. В сценарии задаются поля и таблицы для загрузки. Можно также манипулировать структурой данных с использованием специальных операторов и выражений скрипта. Для выполнения скрипта нажмите кнопку Загрузка. После выполнения скрипта откроется диалоговое окно Выбрать поля. В нем можно выбрать Поля для отображения в списках на листе в QlikView.
После загрузки выбранных данных в QlikView они хранятся в документе QlikView. Он составляет основу функционирования программы и характеризуется неограниченным ассоциированием данных, широким диапазоном доступных измерений, скоростью анализа и компактным размером. При открытии документа QlikView данные сохраняются в ОЗУ. Наконец, следует отметить, что из-за роли и структуры базы данных QlikView, анализ в QlikView всегда проводится в момент отключения документа от соответствующего источника данных. Таким образом, чтобы обновить данные, необходимо повторно загрузить скрипт.
Загрузка данных из файлов
QlikView может считывать данные из файлов, представляющих собой таблицы, в которых поля разделены такими разделителями, как запятые, знаки табуляции или точки с запятой. Другие допустимые форматы — файлы dif (Data Interchange Format), fix (fixed record length — ограниченная длина записи), таблицы HTML, файлы Excel, файлы xml, файлы в собственном формате QVD ( Файлы QVD) и файлы QVX. В большинстве случаев первая строка файла содержит имена полей. Файлы загружаются с помощью оператора Load в скрипте. Чтобы не вводить операторы вручную в редакторе скриптов, можно воспользоваться мастером создания табличного файла, чтобы они генерировались автоматически. Чтобы считать данные из другого документа QlikView, используется оператор Binary.
Загрузка данных из баз данных
Данные из коммерческих баз данных загружаются в QlikView с помощью интерфейса Microsoft OLE DB/ ODBC. Для этого необходимо установить Driver, поддерживающий соответствующую СУБД, и настроить базу данных в качестве источника данных ODBC. После этого следует настроить соединение с базой данных в Диалоговое окно Редактор скрипта, нажав кнопку Соединиться. При этом в скрипте создается оператор Оператор Connect. Теперь следует задать поля и таблицы, подлежащие загрузке, в операторе Выбрать (SQL).
Скрытый скрипт и Секция доступа
Скрытый скрипт — специальная часть скрипта, выполняемая до выполнения обычного скрипта при каждой загрузке. Скрытый скрипт защищен паролем.
При выборе пункта «Редактировать скрытый скрипт» в меню «Файл» диалогового окна «Редактировать скрипт» появится запрос на ввод пароля, необходимого для доступа к скрытому скрипту. При первом доступе к скрытому скрипту в документе (т.е. при создании) необходимо подтвердить новый пароль. После этого вкладка скрытого скрипта появится слева от других вкладок скрипта и будет находиться там вплоть до закрытия документа. Примечание!
При использовании скрытого скрипта в обычном скрипте нельзя использовать двоичные команды. Примечание!
Диалоговое окно «Прогресс» при выполнении скрытого скрипта обновляться не будет, если не установлен флажок «Показать ход выполнения скрытого скрипта» на странице «Свойства документа: Безопасность». Записи в файл протокола (если он используется) не вносятся. Примечание!
Если скрытый скрипт содержит секцию доступа, такая секция становится недопустимой в обычном скрипте или в скрипте, который начинается с загрузки двоичного файла QlikView, включающего скрытый скрипт.
Секция доступа
Секция скрипта загрузки QlikView, которую можно использовать для ограничения доступа. Если секция доступа в скрипте QlikView настроена на автоматическую защиту, то один файл может содержать данные для нескольких пользователей или групп пользователей. QlikView будет использовать информацию в секции доступа для аутентификации и авторизации, а также для динамического сокращения данных, чтобы пользователь мог видеть только свои данные.
Защита встроена в сам файл, поэтому даже загруженный файл в некоторой степени защищен. Однако, если потребности защиты высоки, следует предупреждать загрузку файлов и использование в автономном режиме. Файлы должны публиковаться только сервером QlikView. Так как все данные находятся в файле, размер данного файла может быть очень большим.
Секции в скрипте
Управление доступом осуществляется с помощью одной или нескольких таблиц безопасности, загруженных так же, как QlikView обычно загружает данные. Таким образом, возможно хранить данные таблицы в обычной базе данных. Операторы скрипта, управляющие таблицами безопасности, даны в секции доступа, которая в скрипте запускается оператором section access. Если в скрипте определена секция доступа, то часть скрипта, загружающая «обычные» данные, должна быть помещена в другую секцию, запускаемую оператором section application.
Доступ к документам QlikView может быть авторизован для указанных пользователей или групп пользователей. В таблице безопасности пользователям могут быть назначены уровни доступа ADMIN или USER. Если уровень доступа не назначен, пользователь не сможет открыть документ QlikView. Пользователь с доступом ADMIN может выполнять любые изменения в документе. С помощью страницы «Безопасность» в диалоговых окнах «Свойства документа» и «Свойства листа» пользователь с доступом ADMIN может ограничивать права других пользователей на изменение документа. Пользователь с правами USER не имеет доступа к страницам «Защита». Примечание!
Права ADMIN применимы только к локальным документам. Доступ к документам, открытым на сервере, всегда выполняется с правами USER.
Системные поля секции доступа
Все системные поля Секции доступа используются для аутентификации или авторизации. Ниже описан полный набор системных полей секции доступа.
В секцию доступа можно загрузить ни одного, все или любую комбинацию полей безопасности. Если использование USERID не требуется, авторизация может быть проведена с помощью других полей, например только серийного номера. ACCESS — Поле, определяющее, какой уровень доступа имеет соответствующий пользователь. USERID — Поле, которое должно содержать принятый идентификатор пользователя. QlikView запросит идентификатор пользователя и сравнит его со значением в данном поле. Данный идентификатор пользователя не совпадает с идентификатором пользователя Windows. PASSWORD — Поле, которое должно содержать принятый пароль. QlikView запросит пароль и сравнит его со значением в данном поле. Данный пароль не совпадает с паролем Windows. SERIAL — Поле, которое должно содержать номер, соответствующий серийному номеру QlikView. Пример: 4900 2394 7113 7304 QlikView проверит серийный номер пользователя и сравнит его со значением в данном поле. NTNAME — Поле, которое должно содержать строку, соответствующую имени пользователя или группы домена NT Windows. QlikView выдаст сведения о пользователе из ОС и сравнит ее со значением в данном поле. NTDOMAINSID — Поле, которое должно содержать строку, соответствующую SID домена NT Windows. Пример: S-1-5-21-125976590-4672381061092489882 QlikView выдаст сведения о пользователе из ОС и сравнит ее со значением в данном поле. NTSID — Поле, которое должно содержать Windows NT SID. Пример: S-15-21-125976590-467238106-1092489882-1378 QlikView выдаст сведения о пользователе из ОС и сравнит ее со значением в данном поле. OMIT — Поле, которое должно содержать поле, которое должно быть опущено для конкретного пользователя. Могут использоваться подстановочные знаки, и поле может быть пустым. Простой способ сделать это – использовать подполе.
QlikView сравнит серийный номер QlikView с полем SERIAL, имя пользователя и группы Windows NT с NTNAME, SID домена Windows NT с NTDOMAINSID и Windows NT SID c NTSID. Далее он запросит идентификатор пользователя и пароль и сравнит их с полями USERID и PASSWORD. Если найденное сочетание идентификатора пользователя и свойств окружения также будет найдено в таблице секция доступа, документ открывается с соответствующим уровнем доступа. Если данное сочетание найдено не будет, QlikView откажет пользователю в доступе к документу. Если идентификатор пользователя и/или пароль введены неверно три раза подряд, необходимо полностью повторить процедуру входа.
Поскольку та же внутренняя логика, являющаяся отличительной особенностью QlikView, также используется и в секции доступа, поля безопасности могут быть помещены в различные таблицы. (Таким образом, системный администратор может создать документ QlikView вне таблиц безопасности. В этом случае верный серийный номер, пароль и т.д. будут созданы при щелчке соответствующего значения поля.)
При выполнении процедуры входа QlikView сначала проверяет SERIAL, NTNAME, NTDOMAINSID и NTSID, для проверки, достаточно ли этой информации для предоставления пользователю доступа к документу. В случае предоставления доступа QlikView откроет документ, не запрашивая идентификатор пользователя и пароль.
Если загружены только некоторые поля доступа, используются соответствующие требования из приведенных выше.
Все поля, перечисленные в операторах Load или Select в секции доступа, должны быть написаны в ВЕРХНЕМ РЕГИСТРЕ. Имя любого поля, содержащее буквы в нижнем регистре, в базе данных, должно быть преобразовано в верхний регистр с помощью функции upper, см. upper(textexpression) (стр. 364), до чтения с помощью операторов Load или Select. Однако для идентификатора пользователя и пароля, вводимых конечным пользователем, открывающим документы QlikView, учитывается регистр.
Подстановочный символ, т.е. *, интерпретируется как все (перечисленные) значения этого поля, т.е. значение, указанное в каком-либо другом месте в этом таблице. При использовании в одном из системных полей (USERID, PASSWORD, NTNAME или SERIAL) в таблице, загруженной в секцию доступа скрипта, интерпретируется как все (также и не перечисленные) возможные значения этого поля. Примечание!
При загрузке данных из файла QVD использование функции upper приведет к снижению скорости загрузки. Примечание!
Для создания таблиц доступа в операторах inline используйте Мастер таблицы ограничения доступа.
Ассоциативная модель данных QlikView
Ассоциативная модель данных — это таблицы, которые связаны по ключевым полям. Ассоциативная модель формируется автоматически в ходе процесса загрузки данных (ETL-процесс) в QlikView путем установления связей между полями с одинаковыми названиями. Когда пользователь выбирает значения в одной таблице, то автоматически в других таблицах выбираются все ассоциированные значения. Т.е. Вам не нужно генерить кучу sql запросов с множественными условиями where. Достаточно кликать мышкой и анализировать поступающую информацию. Ассоциативная модель позволяет связывать сразу несколько таблиц по одному полю с одинаковым названием. Каждые две таблицы связываются только с помощью одного поля, иначе возникнет неоднозначность ассоциативной связи. Если необходимо связать таблицы по нескольким полям, то можно применить подход создания дополнительного ключа, в котором комбинируются или хэшируются несколько полей.
При установление фильтров в модели (выбор нескольких элементов для анализа), фильтр распространяется по ассоциативным связям на все остальные таблицы:
Структура данных
Логические таблицы
Каждый оператор load или select создает таблицу. Обычно в QlikView результаты каждого из этих операторов обрабатываются как одна логическая таблица. Однако из этого правила существует несколько исключений.
— Если при применении двух или более операторов в полученной таблице содержатся поля с идентичными именами, таблицы будут объединены и будут обрабатываться как одна логическая таблица.
— Если перед оператором load или select вставлен один из следующих квалификаторов, данные будут изменяться или обрабатываться по-разному: concatenate — данная таблица будет добавлена (объединена) к последней созданной логической таблице. crosstable — данная таблица будет преобразована из формата перекрестной таблицы в формат столбцов. generic — данная таблица разделена на несколько других логических таблиц. info — данная таблица загружается не как логическая таблица, а как информационная таблица, содержащая ссылки на внешнюю информацию, например файлы, URL-адреса и так далее. intervalmatch — таблица (которая должна содержать только два столбца) интерпретируется как числовые интервалы, которые ассоциированы с дискретными числами в указанном поле. join — данная таблица будет объединена с помощью QlikView с ранее созданной логической таблицей в области общих полей. mapping — данная таблица (которая должна содержать только два столбца) при чтении рассматривается как таблица соответствий, которая не ассоциируется с другими таблицами. semantic — данная таблица загружается не как логическая таблица, а как семантическая таблица, содержащая взаимосвязи, которые не следует объединять, например предшествующий элемент, последующий элемент и другие связи с другими объектами того же типа. После загрузки данных логические таблицы будут ассоциированы. Логические таблицы и ассоциации можно просматривать в диалоговом окне «Обозреватель таблиц».
Ассоциации между логическими таблицами
Ассоциации между данными
В базе данных могут содержаться несколько таблиц. Каждая таблица может быть рассмотрена как список элементов, т.е. каждая запись в списке представляет собой экземпляр объекта определенного типа.
Если две таблицы являются списками различных элементов, например одна из таблиц является списком клиентов, а другая — списком счетов, и обе таблицы имеют общее поле, например номер клиента, это обычно означает, что между двумя таблицами существует взаимосвязь. В стандартных инструментах запроса SQL две таблицы практически всегда должны быть объединены.
Таблицы, определенные в скрипте QlikView, называются логическими таблицами. В QlikView создаются ассоциации между таблицами на основе имен полей, а также выполняются объединения при выборе элементов, т.е. при выборе пользователем элемента в списке.
Поэтому ассоциация QlikView практически аналогична объединению QlikView. Единственным различием между ними является то, что объединение выполняется при выполнении скрипта, при этом в результате объединения обычно создается логическая таблица. Ассоциация создается после создания логической таблицы — ассоциации всегда создаются между логическими таблицами. Четыре таблицы: список стран, список клиентов, список транзакций и список принадлежностей, которые ассоциированы друг с другом посредством полей «Country» и «CustomerID».
Ассоциация QlikView аналогична стандартному внешнему объединению SQL.Однако ассоциация QlikView имеет более общие свойства: внешнее объединение в SQL обычно является односторонней защитой между двумя таблицами. Результатом ассоциирования QlikView всегда является полное (двунаправленное) стандартное внешнее объединение.
Объединение нескольких таблиц в одну
Если имена полей и число полей в двух или более загруженных таблицах точно совпадают, то QlikView автоматически объединит содержимое различных операторов в одну таблицу.
Пример:
load a, b, c from table1.csv;
load a, c, b from table2,csv;
Полученная в результате внутренняя таблица будет содержать поля a, b и c. Количество записей представляет собой сумму количеств записей в таблицах table 1 и table 2.
Правила:
— Количество и имена полей должны точно совпадать.
— Порядок двух операторов может быть произвольным.
Принудительное связывание
Если две или более таблицы содержат не полностью одинаковый набор полей, то в QlikView все равно можно объединить эти две таблицы. Это выполняется с помощью префикса объединения в скрипте, который объединяет таблицу с другой указанной таблицей или с ранее созданной таблицей.
Пример:
load a, b, c from table1.csv;
concatenate load a, c from table2.csv;
Полученная в результате внутренняя таблица будет содержать поля a, b и c. Количество записей в полученной таблице представляет собой сумму количеств записей в таблицах table 1 и table 2. Значение поля b в записях, полученных из таблицы 2 равно NULL.
Правила:
— Имена полей должны точно совпадать.
— Если имя ранее загруженной таблицы не было указано в операторе concatenate, то в префиксе concatenate используется таблица, которая была создана последней. Поэтому порядок двух операторов не является произвольным.
Предотвращение объединения
Если имена полей и число полей в двух или более загруженных таблицах точно совпадают, то QlikView автоматически объединит содержимое различных операторов в одну таблицу. Это можно предотвратить с помощью оператора nonconcatenate. Таблица, загруженная с помощью соответствующего оператора load или select в последствии не будет объединена с существующей таблицей.
Пример:
load a, b, c from table1.csv;
nonconcatenate load a, b, c from table2.csv
Этапы создания модели в QlikView
1. Создание модели данных (Моделирование данных).
2. Создание скрипта загрузки данных из внешних источников, их предварительной проверки и обработки, а также формирования конечных данных для анализа (создание ETL-процесса).
3. Формирование интерфейса моделей с таблицами, графиками и другими инструментами визуализации данных (создание Dashboards).
4. Настройка прав доступа к моделям и компонентам моделей (дорабатывается возможность выдачи прав на компоненты моделей).
Модели, построенные на измерениях, в QlikView (Dimensional models)
Dimension-модель данных состоит из одной таблицы фактов. Таблица фактов состоит из ключей измерений (ключевое поле для связей с таблицами, в которых описаны измерения) и метрик. Таблицы измерений содержат описания и атрибуты, которые обеспечивают контекст для метрик, которые хранятся в таблице фактов. Измерения часто держат данные на нескольких иерархических уровнях, что обеспечивается с помощью денормализованной структуры одной таблицы.
Схема «Звезда»
Таблицы фактов и измерений объединены в схему «Звезда». Это наименование используется в связи с тем, что модель данных внешне напоминает звезду.
Большим преимуществом данной схемы является то, что бизнес-пользователи могут легко понять взаимосвязи между таблицами, а соответственно и бизнес-логику модели.
Схема «Снежинка»
Особенностью схемы «снежинка» является то, что таблицы измерений могут быть соединены с таблицами измерений других иерархических уровней непосредственно, минуя таблицу фактов. Поэтому данную схему рекомендуется использовать при наличии иерархии измерений.
Создание Dimensional-модели
Так как зачастую нам необходимо перейти от ER-диаграммы (модели данных транзакционных систем) к Dimensional-модели данных, то стоит для начала понять как нам необходимо перекладывать ER-модель в Dimensional-модель. Транзакционная система часто содержит данные, которые используются для различных бизнес-процессов. Например, подумайте, сколько много различных бизнес-процессов и функций поддерживает типичная ERP-система: Бухгалтерский учет, управление человеческими ресурсами, управление производством, управление цепочками поставок, управление взаимоотношениями с клиентами и т.д. Данные для всех этих процессов, как правило, хранятся в одной ER-схеме. Рассмотрим шаги перехода от ER-модели к ER-модели данных:
Первый шаг: Для того, чтобы перейти от реляционной структуре к структуре измерений, необходимо разделить ER-схему по отдельным бизнес-процессам. Каждый выделенный бизнес-процесс будет моделироваться в отдельной схеме «Звезда».
Второй шаг: Определить уровень детализации бизнес-процесса (например, одна перевозка или одна выплата денежных средств). Затем необходимо создать группу мер, которые будут использоваться для бизнес-процесса в одной таблице фактов.
Третий шаг: Оставшиеся таблицы сводятся в таблицы измерений (dimensions) и непосредственно связываются с таблицей фактов, при помощи ключевых полей (одно ключевое поле для одной связи — для определенности ассоциативной модели). Вполне возможно, что одна и та же таблица измерений будет использоваться в нескольких схемах «Звезда» разных бизнес-процессов. Например, измерение «Сотрудник» может быть использовано в контексте деятельности авиакомпаний, а также в контексте заработной платы.
Примечание: В QlikView, мы можем использовать QVD-файлы для хранения согласованных измерений. Например, мы можем хранить измерение «Типы самолетов» в qvd-файле и использовать этот файл в любом приложении, которому потребуется эта информация. Таким образом, согласованность данных обеспечивается между несколькими приложениями.
Таблица плюсов и минусов различных подходов к моделированию в Qlikview
Основным преимуществом использования многомерной модели данных (dimensional model) в QlikView является время отклика. Модель работает быстрее, когда существует меньше связей между таблицами. Второе преимущество заключается в том, что многомерная модель легка в понимании и с ней легче работать. Для оптимизации работы QlikView иногда все данные сводят в одну плоскую таблицу (т.к. ссылок между таблицами вообще не будет существовать). Но в любом случае, выбор схемы для проектирования модели данных в QlikView зависит от множества факторов. Ниже приведены различные плюсы и минусы подходов проектирования модели данных:
Пример Dashboards
В момент, когда пользователь выбрал необходимые значения в любом из списков или таблицах, система QlikView автоматически подстраивает все остальные поля в соответствии со сделанным выбором. Значения, которые выбрал пользователи выделяются зеленым цветом. Все связанные со сделанным выбором элементы окрашиваются в белый цвет. Не связанные элементы — выделяются серым цветом.
Различные пути загрузки данных в QlikView
Введение
Существуют различные способы и методы для загрузки данных в QlikView. Ниже приводятся описания каждого метода загрузки данных в QlikView с примерами.
Виды загрузок данных
Loading data from the file – Загрузка данных из файла, обычный метод загрузки данных.
Inline Load – Построковая ручная загрузка.
Resident Load – Загрузка из уже существующих таблиц в модели QlikView.
Incremental Load — Инкрементальная загрузка.
Binary Load – Двоичная загрузка.
Add Load – Частичная загрузка.
Buffer Load – Буферная загрузка.
Загрузка данных из файла (Loading Data from File)
Этот метод является обычным методом загрузки данных в приложение Qlikview.
Загружаются данные из файлов, таких как Excel, MSDB, CSV, Txt файлов и т.д., а также загрузка может быть выполнена путем создания ODBC-подключение к базе данных напрямую.
Пример
LOAD A, B
FROM [C:\filename.xls]
(biff, embedded labels, table is Data$);
Построковая ручная загрузка (Inline Load)
Второй способ загрузки — это Inline загрузка, в которой пользователь может определить свои собственные данные и загрузить их в Qlikview.
Inline данные могут быть определены в мастере Inline данных.
Пример
LOAD * INLINE [
A
B
C
];
Загрузка из существующих таблиц (Resident Load)
Загружать данные из уже загруженной таблицы в модель QlikView возможно с помощью Resident Load.
Преобразования и вычисления данных могут быть выполнены в скрипте resident load.
Пример
Employees:
Select Empname,
HireDate,
Salary,
Incentives
From Employee;
Load Empname,
Month(HireDate),
Salary + Incentives as ‘GrossSalary’
Resident Employees;
Инкрементальная загрузка (Incremental Load)
Инкрементальная загрузка используется для загрузки только новых или измененных записей.
Это бывает очень полезно, когда база данных является большой.
Данный инструмент загрузки предполагает загрузку старых данных из qvd и новых записей из базы данных, и объединения их в единый qvd-файл.
Пример
SQL SELECT PrimaryKey, X, Y FROM DB_TABLE
WHERE ModificationTime >= #$(LastExecTime)#
AND ModificationTime < #$(BeginningThisExecTime)#;
Concatenate LOAD PrimaryKey, X, Y FROM File.QVD;
STORE QV_Table INTO File.QVD;
Двоичная загрузка (Binary Load)
Загрузка данных из одного qlikview-файла называется двоичной загрузкой. Модель данных одного qvw-файла копируется из оперативной памяти на диск для другого qvw-файла.
Двоичная загрузка будет больше полезна, когда вы хотите улучшить уже построенный qvw-файл с такими же метриками (показателями модели).
Пример
Binary c:\order.qvw;
Частичная загрузка (Add Load)
Частичная загрузка используется для присоединения или объединения данных из одной таблицы к другой таблице. Пример
LOAD ENO, ENAME from Employees.csv;
ADD LOAD ENO, ENAME from Employees1.csv Where Not Exists(ENO);
Буферная загрузка (Buffer Load)
Буферная загрузка помогает создавать qvd-файлы автоматически. Пример
Buffer select * from Employees.csv;
Операторы и ключевые слова скрипта
Префикс join объединяет загруженную таблицу с существующей таблицей, для которой задано имя, или с последней созданной logical table. Объединение представляет собой natural join, выполненное со всеми общими Поля. Перед оператором «join» можно задать один из префиксов Inner, Outer, Left или Right.
Inner Join
Перед префиксом join в языке скрипта QlikView можно использовать префикс inner. При использовании этого префикса перед префиксом join объединение двух таблиц будет внутренним. Полученная таблица содержит только сочетания из двух таблиц, включающие полный набор данных из обеих таблиц.
Outer Join
Для указания внешнего объединения перед явным префиксом Join может стоятьпрефикс outer. При внешнем объединении создаются все возможные комбинации двух таблиц. Ключевое слово outer является необязательным.
Right Join
Перед префиксом Join может стоять префикс right. При использовании перед префиксом join он указывает, что необходимо использовать соединение справа. Полученная в результате таблица будет содержать только сочетания значений полей из таблиц необработанных данных с полным набором данных из второй таблицы.
Left Join
Перед префиксом join в языке скрипта QlikView можно использовать префикс left. При использовании этого префикса перед префиксом join объединение двух таблиц будет левосторонним. Полученная таблица содержит только сочетания из двух таблиц, включающие полный набор данных из первой таблицы.
Concatenate
Если для двух таблиц необходимо выполнить связывание и они имеют разные наборы Поля, concatenation двух таблиц может быть выполнено принудительно с помощью префикса concatenate. Этот оператор выполняет принудительное связывание с существующей именованной таблицей или последней созданной таблицей logical table.
NoConcatenate
Префикс NoConcatenate определяет, что две таблицы с идентичными наборами полей (т.е. такие, которые были автоматически concatenated) должны обрабатываться как две отдельные внутренние таблицы.
SQL
Оператор SQL позволяет отправлять произвольную команду SQL посредством соединения ODBC. Достаточно ввести: «SQL» и затем указать команду. При отправке операторов SQL, которые обновляют базу данных, будет возвращаться ошибка, поскольку по определению QlikView осуществляет доступ ко всем источникам ODBC в режиме «только чтение».
Оператор Store
Файл QVD или CSV можно создать с помощью оператора store в скрипте. Оператор создаст файл QVD или CSV с заданным именем. Оператор может экспортировать поля только из одной логической таблицы. Текстовые значения экспортируются в файл CSV в формате UTF-8. Можно указать разделитель. Оператор store для файла CSV не поддерживает экспорт BIFF.
Keep
Префикс keep, указанный между двумя операторами Load или Выбрать (SQL), позволяет сократить одну или обе таблицы до сохранения в QlikView путем пересечения данных таблиц. Перед ключевым словом keep следует задать один из префиксов Inner, Left или Right. Выборка записей из таблицы осуществляется так же, как и при соответствующем объединении. Однако две таблицы не соединяются и сохраняются в QlikView в виде двух отдельных именованных таблиц.
Циклические ссылки («циклы»)
Если циклические ссылки («циклы») присутствуют в структуре данных, таблицы будут ассоциированы таким образом, чтобы существовало более одного пути ассоциирований между двумя полями. Подобный тип структуры данных обычно следует избегать, поскольку его использование может привести к неоднозначности интерпретации данных. К сожалению, циклические структуры повсеместно распространены. В некоторых случаях они являются результатом неудачной структуры базы данных, однако в определенных случаях их использование неизбежно.
Пример: Три таблицы с циклической ссылкой
В QlikView можно решить проблему циклических ссылок путем нарушения цикла с помощью слабосвязанной таблицы. Когда в QlikView в ходе выполнения скрипта загрузки будут обнаружены циклические структуры данных, на экране отобразится предупреждение, и одна или несколько таблиц будут установлены в качестве слабосвязанных. Обычно в QlikView предпринимается попытка сделать слабосвязанной наиболее длинную таблицу в цикле, поскольку она часто является таблицей транзакций, которая обычно и должна быть слабосвязанной. Если стандартный выбор таблицы в QlikView для ее установки в качестве слабосвязанной непригоден, можно установить определенную таблицу в качестве слабосвязанной с помощью оператора скрипта loosen table . Кроме того, параметры слабосвязанной таблицы можно изменить в интерактивном режиме на страницеСвойства документа: Таблицы после выполнения скрипта.
Слабосвязанные Таблицы
Слабосвязанная таблица — это таблица, в которой стандартная логика QlikView отключается изнутри. Это означает, что выборки в одном поле не проходят через другие поля таблицы.
Основной пример
Посмотрите три приведенные ниже поля таблицы, каждое из которых представляет таблицу, переданную в QlikView.
Если в поле B выбрано значение 2, будут выполнены следующие операции.
Выбранное значение отобразится во всех таблицах. Теперь, не изменяя выбранного значения, сделаем таблицу 2 слабосвязанной. Это означает, что логика между полями А и С в таблице 2 будет удалена. Результат будет выглядеть так, как показано ниже:
Обратите внимание, что показанная здесь таблица 2 является полем таблицы, а не самой таблицей. В поле таблицы будут показаны все возможные сочетания между полями столбцов. Поскольку между полями А и С нет логической связи, будут показаны все сочетания соответствующих возможных значений.
Предотвращение циклической ссылки
В следующем примере показано, как можно использовать слабосвязанные таблицы для предотвращения циклических ссылок в структуре данных.
Конечно, эта структура данных не особенно хороша, поскольку имя поля Country используется для двух разных целей. В одной таблице оно означает место жительства владельца автомобиля, а в другой оно означает местонахождения производителя автомобиля. На основании данных в таблицах сформирована невозможная логическая ситуация. Вне зависимости от места выбора можно проследить ассоциации через все ячейки во всех трех таблицах.
Необходимо выбрать наиболее важную цель — страна проживания или страна, в которой произведен автомобиль. Если таблица Carmaker является слабосвязанной, будут нарушены ассоциации от Cadillac к США и от Volvo к Швеция. При щелчке элемента Швеция он будет ассоциирован с Бьорн Борг и Cadillac. При щелчке элемента Volvo он будет ассоциирован с Джордж Буш и США.
Если предпочтительно сконцентрироваться на производителях автомобилей, имеет смысл сделать слабосвязанной таблицей таблицу Home.
Использование макросов в QlikView
В QlikView могут быть использованы макросы вида VBScript или JScript. Вне зависимости от способа запуска макросы создаются и редактируются в диалоге Редактор макросов.
Использование полей ввода VBScript для взаимодействия пользователя с системой
rem ** Clear selections, ask for product, **
rem ** select that product, **
rem ** go to sheet «Market», **
rem ** show pivot table «Sales» **
Sub ChooseValue
Set q = ActiveDocument
q.ClearAll (false)
Set f = q.Fields(«Model Name»)
x = inputbox («Enter product»)
f.Select(x)
set s = q.Sheets(«Market»)
s.Activate
s.SheetObjects(«Sales»).Activate
end sub
Там, где стандартные функции VBScript InputBox и MsgBox могут использоваться свободно в макросе VBScript, при использовании JScript прямой эквивалент не доступен. Для этих целей добавлена особая библиотека qvlib. Функции показаны в ниже приведенных примерах.
// JScript
function Test()
{p
ersonName = qvlib.InputBox(«What is you name?»)
msg = «Hello » + personName + » !»
qvlib.MsgBox(msg)
}
Функции qvlib на самом деле работают и в макросах VBScript, как показано в следующих примерах, но в этом случае можно также использовать универсальные функции VBScript InputBox и MsgBox.
rem VBScript
sub TestModule
name = qvlib.InputBox(«What is your name?»)
msg = «Hello »
msg = msg + name + » !»
qvlib.MsgBox(msg)
end sub
Редактор макросов
Макросы и пользовательские функции можно написать на языках VBScript и JScript, используя диалоговое окно Редактор макросов. Макрос сохраняется в документе.
Отладчик макросов
Перед использованием отладчика макросов необходимо установить Microsoft Script Debugger. Нажатие кнопки Отладчик в диалоговом окне Редактор макросов позволяет войти в режим отладки макросов. В этом режиме можно выполнить макрос пошагово, наблюдая за содержимым переменных. До перехода в режим отладки необходимо выбрать макрос (только процедуры без параметров) в списке и установить одну или несколько точек останова в коде. Точки останова можно отключить в любое время, щелкнув номер строки рядом с позицией в коде или наведя курсор на строку и нажав клавишу F9. Нажатие сочетания клавиш Ctrl+Shift+F9 позволяет удалить все точки останова. При входе в режим отладки в диалоговом окне появятся две новые панели. На нижней левой панели указан текущий стек вызовов. При двойном щелчке в списке окно редактора будет прокручено до позиции выбранного вызова. Однако указатель выполнения не будет перемещен. На нижней правой панели указаны текущие переменные. При двойном щелчке какой-либо переменной откроется диалоговое окно Переменные, в котором можно просмотреть свойства переменной, а также можно проследить интерактивное изменение значения переменной.
Автоматизация QlikView с помощью макросов и скриптов
Диаграммы — графическое представление числовых данных.
Диаграммы и таблицы являются объектами листа, которые позволяют отображать числовые значения в очень компактном виде. Например, можно показать суммы денег, распределенные по различным полям, таким как год, месяц, номер счета и т. д.
В диаграммах и таблицах можно настроить отображение либо частоты различных значений поля, либо рассчитываемую запись, например сумму возможных значений поля. В обоих случаях некоторое поле необходимо выбрать в качестве оси X, то есть это поле будет использовать для обозначения кусков пирога, различных полос на гистограммах и строк в сводной таблице соответственно. Диаграммы QlikView можно разделить на две основные категории. Первая –графические диаграммы – включает гистограммы, линейные графики, круговые диаграммы, точечные диаграммы, радар, сеточные, блочные диаграммы, датчики и диаграммы Мекко. Вторая категория – табличные диаграммы – включает прямые и сводные таблицы. Диаграммы этого типа изображаются в виде таблиц с ячейками в столбцах и строках. Следует иметь в виду, что окна таблиц, которые во многом похожи на табличные диаграммы, диаграммами не являются, а представляют собой отдельный тип объектов листа. Компоненты графических диаграмм QlikView:
Компоненты табличных диаграмм QlikView:
Гистограмма
Линейный график
Линейный график отображает данные в виде линий, соединяющих точки значений, одних точек значений или линий вместе с точками значений. Линейные графики удобно использования для отображения изменений или тенденций.
Комбо диаграмма
Комбо диаграмма сочетает функции гистограммы и линейного графика: значения одного выражения можно отображать в виде столбцов, а значения другого в виде линий или символов.
Диаграмма Радар (Лепестковая диаграмма)
Лепестковые диаграммы можно описать как графики, в которых ось x обернута на 360 градусов и для каждого значения x имеется ось y. Такая диаграмма похожа на паутину или экран радара.
Точечная диаграмма
Точечная диаграмма представляет пары значений из двух выражений. Это удобно, когда необходимо отобразить данные, каждый экземпляр которых имеет два числа, например значение для страны (население и прирост населения).
Сетчатая диаграмма
Сетчатая диаграмма подобна точечной, за исключением того, что значения измерений откладываются на осях, а символы графика определяются с помощью выражения. Специальный режим позволяет отображать третье измерение в виде символов графиков, которые отображаются как небольшие круговые диаграммы.
Круговая диаграмма
Как правило, на круговых диаграммах отражается связь между отдельным измерением и отдельным выражением, однако иногда могут использоваться два измерения.
Диаграмма Воронка
Диаграмма Воронка обычно используется для показа данных в потоках и процессах. С точки зрения представления она связана с такой диаграммой, как Круговая диаграмма. Диаграмма может отображаться либо с высотой/шириной сегмента, либо с площадью сегмента, пропорциональной данным. Также диаграмма может включать сегменты одинаковой высоты/ширины без привязки к началу координат.
Блочная диаграмма
Блочная диаграмма показывает отношение между значениями выражения в виде блоков переменной области. Возможно отображение до трех измерений, причем каждое измерение может быть разбито на подблоки. Часто используется дополнительное выражение для расчета цвета каждого блока. При этом такой тип диаграммы также называют тепловой диаграммой.
Диаграмма Датчик
Диаграммы Датчик используются для отображения значения одного выражения без измерений.
Диаграмма Мекко
Диаграммы Мекко отображают данные с помощью линий переменной ширины. Они могут отображать до трех уровней данных в диаграмме с двумя измерениями. Диаграммы Мекко полезны в таких областях, как анализ рынка.
Сводная таблица
Сводная таблица представляет собой один из наиболее мощных инструментов анализа данных. Она предоставляет широкие функциональные возможности и вместе с тем проста в использовании. В сводных таблицах измерения и выражения представлены в строках и столбцах, например в перекрестных таблицах. Данные в сводных таблицах можно группировать. Сводные таблицы могут отображать частичные суммы.
Прямая таблица
Сводная и прямая таблицы отличаются от других тем, что они отображают данные в табличной форме, сохраняя все свойства диаграммы.
В отличие от сводной таблицы, в прямой таблице не отображаются промежуточные суммы и она не может использоваться в качестве перекрестной таблицы. С другой стороны, все столбцы таблицы можно сортировать и каждая из строк может содержать одну комбинацию измерений и выражений.
Видео по QlikView
Пример создания приложения «Анализ продаж в QlikView»
Best Practices построения Performance Dashboards (панелей индикаторов)
Панель индикаторов — это многослойное приложение на базе инфраструктуры бизнес-анализа и интеграции данных, которое позволяет организации осуществлять измерение, мониторинг и управление бизнесом более эффективно. Панель индикаторов — это не просто экран, заполненный причудливой графикой, характеризующей эффективность, — это законченная корпоративная информационная система, разработанная для того, чтобы помогать организациям добиваться максимальной эффективности и достигать поставленных стратегических целей.
Приложения, входящие в состав панели индикаторов
Панель индикаторов фактически представляет собой три приложения, сплетенные в единый комплекс прозрачным для пользователя образом, а именно:
1) приложение для мониторинга,
2) приложение для анализа,
3) приложение для управления.
Приложение для мониторинга позволяет мгновенно выявлять критически важную информацию на основании актуальных и релевантных данных, обычно с использованием графических элементов. Приложение для анализа дает возможность пользователям анализировать и исследовать данные об эффективности в разных измерениях и с разной степенью детализации, помогая понимать первопричины возникающих проблем. Приложение для управления активизирует связи между руководителями, менеджерами среднего уровня и рядовыми сотрудниками и обеспечивает первым непрерывную обратную связь со всеми остальными во всем диапазоне критически важных действий, позволяя им «вести» организацию в правильном направлении.
Новая концепция бизнес-анализа
Во многих отношениях панели индикаторов — это фактически новая концепция бизнес-анализа. Они превращают бизнес-анализ из набора инструментов, используемых главным образом бизнес-аналитиками и пользователями, наделенными специальными полномочиями, в средство доставки любому сотруднику предприятия необходимой ему информации. Таким образом, панели индикаторов выполняют основную задачу бизнес-анализа: они помогают организациям «улучшать» информацию, с тем чтобы ускорить корпоративные процессы и обеспечить максимальную эффективность и достижение стратегических целей.
Контекст существования панелей индикаторов
Три типа панелей индикаторов
Архитектура панели индикаторов
Интегрирование ССП в процесс стратегического планирования компании
Процесс стратегического контроля в компании
Цели, показатели, инициативы и краткосрочные задачи
Принципы разработки performance dashboards
Основные принципы разработки сенсорики (look and feel), то есть окон и функциональности, для каждого из приложений в составе панели индикаторов.
Приложение для мониторинга
Необходима избирательность. На дисплее должны присутствовать только критически важные показатели, необходимые пользователю для достижения стоящих перед ним целей. Нельзя сбивать пользователя с толку, заставляя его отслеживать слишком много параметров одновременно.
Обеспечьте легкость визуальной оценки. Показатели должны наглядно представлять текущее состояние (например, «превосходно», «хорошо» или «плохо»), тенденцию (например, повышение, понижение или стабильное состояние) и/или прогресс в выполнении работы (например, разрыв между фактическими и целевыми значениями ). На операционных панелях индикаторов присутствуют также фактические данные или текст.
Будьте экономны в средствах. Не загромождайте экран ненужной или чрезмерно красивой графикой. Графика должна представлять только релевантную информацию, причем с помощью минимального количества краски.
Выделяйте отклонения. Используйте цвет и специальные символы только для обозначения выходов показателей из установленных границ или иных отклонений от режима нормальной работы.
Обеспечьте предупреждающие сигналы для пользователей.Заблаговременно уведомляйте пользователей о выходе того или иного показателя из установленных границ через Сеть, по электронной почте или по другим достаточно эффективным каналам связи.
Обеспечьте возможность настройки приложения. Обеспечьте генерирование окон (в динамическом режиме), соответствующих роли и обязанностям каждого индивидуума.
Персонализируйте приложение. Дайте пользователям возможность персонализировать заказные окна путем выбора объектов, которые они хотят видеть, из предлагаемого списка.
Обеспечьте вывод информации о свойствах показателя с одного щелчка. Необходимо обеспечить пользователю доступ к информации о свойствах того или иного показателя (например, о том, как он выводится, кто его «хозяин», когда он последний раз обновлялся и т. п.) с одного щелчка.
Обеспечьте просмотр информации с одного щелчка. Необходимо, чтобы по щелчку пользователя на названии или значке данного показателя ему открывался доступ к скрытой под ним информации в форме таблиц или диаграмм.
Обеспечьте представление информации в режиме «нужного времени».Хотя это в большей мере зависит от инфраструктуры, этот момент применительно к приложению для мониторинга является критически важным. Элементы дизайна должны наполняться информацией в режиме «нужного времени», чтобы пользователи могли заранее принимать корректирующие меры и оптимизировать процессы.
Приложение для анализа
Сделайте его интерактивным. Убедитесь, что пользователи могут переходить от резюме к контекстам и обратно, получать доступ к отчетам и переходить с верхнего уровня на нижние уровни с более подробной информацией, используя простую методику «наведи и щелкни».
Сделайте его структурированным. При переходе от одного параметра или одного формата к другому (например, от таблиц к диаграммам) пользователь не должен блуждать в море информации или перемещаться с уровня на уровень то вверх, то вниз. Создайте для пользователей ясные подсказки и четко определите пути для переходов с уровня на уровень, то есть обеспечьте структуру, которая позволит пользователям легко находить нужную информацию.
Сделайте его обучающим. Обеспечьте начинающим пользователям «путеводитель» по процессам анализа и обработки информации об эффективности работы или поиска релевантных отчетов с помощью специальных программ (wizards), контекстно-зависимых рекомендаций или программ онлайновой помощи.
Обеспечьте возможность изучения деталей. Обеспечьте «прозрачный» для пользователя динамический доступ к данным о транзакциях, хранящимся в хранилище данных или системе поддержки основных операций.
Обеспечьте поддержку разных каналов передачи информации. Обеспечьте пользователям доступ к панели индикаторов через различные интерфейсы, включая электронную почту, беспроводные устройства и приложения для настольных систем.
Обеспечьте возможность автономной работы. Обеспечьте пользователям возможность отключаться от сети и использовать панель индикаторов и ее данные для дальнейшего анализа в автономном режиме.
Обеспечьте поддержку сложных методов анализа. Обеспечьте пользователям возможность выполнения анализа типа «что, если…», создания и тестирования сценариев, прогнозирования и создания простых статистических моделей в рамках существующей системы или с помощью приложений от внешних поставщиков (например, Excel, инструментов для добычи данных или современных инструментов визуализации).
Приложение для управления
Обеспечьте широкую публикацию информации. Обеспечьте открытый доступ к результатам в масштабах всей компании, особенно для групп и индивидуумов, равных по положению, чтобы они могли сравнивать эффективность своей работы и работы коллег.
Обеспечьте широкий обмен информацией. Обеспечьте обмен информацией между группами, использующими разные системы панелей индикаторов , для улучшения координации и интенсификации обмена идеями.
Обеспечьте возможность сравнения с планами. Используйте целевые значения и категории, указанные в бюджетах, стратегических планах, прогнозах или данных бенчмаркинга, чтобы сотрудники могли количественно оценивать свой прогресс и повышать точность своих прогнозов.
Обеспечьте возможность прикрепления комментариев. Обеспечьте пользователям возможность прикрепления комментариев к окнам панели индикаторов и реакции на такие комментарии. Такие углубленные дискуссии обеспечивают «журнал аудита» для идей, решений и действий, который удобно использовать для регулирования процессов и который приносит пользу менеджерам-новичкам, которые хотят научиться управлять теми или иными процессами.
Обеспечьте возможность сотрудничества. Обеспечьте пользователям возможность наладить технологический процесс таким образом, чтобы он рассылал пользователям, согласно утвержденным спискам, публикуемые изображения панели индикаторов для анализа и одобрения.
Обеспечьте своевременное обновление информации. Обеспечьте достаточно частое обновление информации, чтобы пользователи могли своевременно принимать корректирующие меры при возникновении проблем и использовать открывающиеся возможности, пока они не упущены.
Встраивайте рекомендации. Встраивайте в систему панели индикаторов контекстно-зависимые рекомендации для пользователей.
AJAX
Аббревиатура от «Asynchronous JavaScript and XML» — это способ разработки для создания интерактивных веб-приложений.
ASCII
Американский стандартный код для обмена информацией. Стандартизированный набор символов для компьютеров.
Biff
Собственный формат файла Excel.
CrossTable
Префикс скрипта QlikView, который используется для загрузки перекрестных таблиц.
CSV
CSV — расширение файла для файлов со значениями, разделенными запятыми. Используется при сохранении таблицы в виде текстового файла.
Generic
Префикс скрипта QlikView, который используется для распаковки и загрузки общих баз данных.
IntervalMatch
Префикс скрипта QlikView, который используется для сопоставления дискретных значений с интервалами.
Join
Операция объединения двух таблиц в одну. Записи готовой таблицы представляют собой комбинацию записей в двух исходных таблицах. При этом две такие записи, составляющие одну комбинацию в готовой таблице, как правило, имеют общее значение одного или нескольких общих полей. Такое объединение называется естественным. В QlikView объединение может выполняться в скрипте, создавая логическую таблицу. К возможным операциям относятся: Inner join, Left join, Right join и Outer join.
Keep
Операция скрипта, использующая две таблицы. Операция keep сохраняет значения, которые имеют соответствия в другой таблице, но не объединяет две таблицы в одну, как и операция join. К возможным операциям относятся: Inner keep, Left keep and Right keep.
Load
Оператор скрипта, используемый для загрузки данных из файлов или операторов Select. Операторы Load оценивает QlikView, в отличие от операторов Select, которые оценивает драйвер ODBC или поставщик OLE DB.
Mapping
Префикс скрипта QlikView, который позволяет автору скрипта использовать таблицы поиска.
ODBC
Открытый интерфейс доступа к базам данных. Средство, с помощью которого обеспечивается связь приложений с базами данных. Драйвер ODBC представляет собой одну из несколько динамически подключаемых библиотек (DLL) системы, с помощью которых программы с поддержкой ODBC, например QlikView, получают доступ к указанным источникам данных и извлекают данные, созданные в другом формате, например dBASE.
OLE DB
Связывание и встраивание объектов для баз данных. Средство, с помощью которого обеспечивается связь приложений с базами данных. С помощью этого интерфейса данные из источников различных типов можно считывать, в частности из источников данных ODBC.
QlikView AccessPoint
Единая точка доступа к корпоративным документам QlikView. Требует наличия QlikView Server.
QlikView Desktop
Программное обеспечение QlikView с приобретенной пользовательской лицензией можно использовать для создания документов и открытия документов, созданных другими пользователями.
QlikView OCX
Пакет QlikView в виде компонента ActiveX для интеграции в программное обеспечение сторонних разработчиков. Не подлежит совместному использованию с элементами управления заменой OCX.
QlikView Personal Edition
Приложение QlikView Desktop, в котором можно работать без лицензии. Из существующих ограничений можно отметить лишь отсутствие возможности открыть документы QlikView, созданные другими пользователями.
QlikView Publisher
Средство администрирования для автоматизированной загрузки и публикации документов QlikView. QlikView Publisher представляет собой дополнительный модуль QlikView Server и его возможности входят в стандартный установочный пакет QlikView Server.
QlikView Server
Программное обеспечение для публикации документов QlikView для интернет-пользователей, работающих в архитектуре «клиент-сервер».
QlikX
Модуль QlikView OCX на базе объектов для интеграции в другие продукты или веб-сайты.
Resident
Для получения доступа к таблице, загруженной в скрипт, используйте оператор Load … resident в скрипте.
Select (выбрать)
Выбор значений полей при их нажатии является базовой возможностью QlikView. Select также является оператором SQL, используемым в большинстве инструментов запросов.
Semantic
Префикс скрипта QlikView, который используется для загрузки семантических связей. Эти связи используются для объединения нескольких выборов, например рекурсивных ссылок в поле.
SQL
SQL (Structured Query Language — язык структурированных запросов) — стандарт составления запросов в реляционных базах данных.
URL-адрес
Аббревиатура от Universal Resource Locator — универсальный указатель ресурса. Общий адрес типа, используемого в Интернете.
X64
Архитектура компьютера для 64-разрядной технологии.
XML
Аббревиатура от Extended Markup Language — расширенный язык разметки. Более сложный язык по сравнению с html, но проще SGML. В одном файле XML может хранится одна или несколько таблиц.
Абсолютный путь
Расположение файла, папки или каталога на диске относительно корня или верхнего уровня.
Активный
Окно, диалоговое окно, лист с вкладками или объект листа, которые используются в настоящее время, называются активными или текущими.
Альтернативное значение
Значение поля, которое исключается в результате выбора в этом поле, а не в других полях. По умолчанию ячейка выделена серым, однако ее можно выделить белым, как необязательные ячейки. Для этого включите параметр «Показ альтернатив» в диалоговом окне «Свойства списка».
Анализ внутри памяти
Термин, обозначающий средства BI, которые хранят весь набор данных в оперативной памяти и вычисляют все необходимые агрегирования по запросу.
Блок статистики
Объект листа, в котором отображается набор статистических записей, вычисленные по возможным значениям соответствующего поля.
Вкладка в скрипте
Скрипт можно разделить на несколько вкладок. Это улучшает структуру и упрощает навигацию по скрипту.
Вложенное агрегирование
Вычисление, в котором используется двухшаговое агрегирование.
Выражение
Формула. Выражения можно использовать в различных элементах приложения QlikView: в скрипте загрузки, в диаграммах, а текстовых полях, в качестве динамических меток и т.д.
Вычисляемое измерение
Измерение, в котором набор значений определен не значениями поля, а возможными значениями выражения.
Двойные поля
Поля, имеющие текстовые и числовые представления, например даты, месяцы, форматированные числа и т.д.
Диаграмма
Общее название для гистограмм, круговых диаграмм, диаграмм воронок, графиков, сеточных диаграмм, точечных диаграмм, сводных таблиц и прямых таблиц. В диаграммах отображаются агрегированные значения данных, т.е. один элемент диаграммы (ячейка в сводной таблице, полоска в гистограмме и т.д.) соответствует нескольким записям в логических таблицах.
Диалоговое окно
В окне можно выбрать параметры и включить их с помощью соответствующих кнопок команд. В некоторых диалоговых окнах перед выполнением действия отображаются предупреждения и сообщения с важными сведениями.
Диалоговое окно редактора скрипта
Текстовый редактор, в котором редактируется скрипт загрузки.
Документ
Файл QlikView, сохраненный в двоичном формате, который имеет расширение по умолчанию qvw. Также называется файлом QlikView.
Дополнительно
Дополнительное значение поля, которое можно указать или выбрать, не изменяя статуса предыдущего выбора. Ячейка выделена белым для обозначения ее статуса, как и альтернативные ячейки.
Драйвер
Драйвер представляет собой программу, которая выполняется в фоновом режиме и осуществляет взаимосвязь с периферическими устройствами, такими как принтер или монитор, или с другими программами.
Заблокировано
Значение поля можно заблокировать, чтобы его выбор невозможно было по ошибке отменить. Можно аналогичным образом заблокировать макет, чтобы не изменить его по ошибке.
Закладка
Сохраненный набор выбранных параметров, который пользователь может вызвать и совместно использовать с другими пользователями.
Запись
Эквивалент строке в таблице.
Зарезервированные поля
Поля, использованные при управлении ограничением доступа: USERID, PASSWORD, SERIAL ACCESS, NTNAME, NTDOMAINSID, NTSID и OMIT.
Зеленый
Цвет выбранной ячейки.
Значение
Поля представляют собой основной объект, включающий данные в QlikView. Поле, как правило, включает определенное число значений, которые называются значениями поля. Значения полей состоят из числовых и/или буквенно-числовых (текстовых) данных.
Измерение
Измерение диаграммы представляет собой набор значений для диаграммы, которые пошагово изменяются при вычислении значений выражений. Проще говоря, это объекты, которые отображаются на оси x в стандартной гистограмме. Как правило, измерение состоит из поля, но также может представлять собой группу или вычисляемое выражение.
Исключено
Значение поля «исключено» нельзя выбрать без изменения одной или нескольких предварительных выборок. Состояние ячейки отображается серым цветом.
Источник данных
Источник данных — название физической базы данных, заданной посредством интерфейса ODBC.
Клиент QlikView AJAX zero footprint
Компактный клиент QlikView Server на базе объектов, который основан на технологии AJAX.
Ключевое поле
Поле, которое существует в двух таблицах и объединяет их.
Контейнер
Контейнером называют объект, содержащий другие объекты. Контейнер может содержать все другие объекты листа. Объекты группируются и используют общие параметры шрифта, макета и заголовка.
Красный
Цвет ячейки, которая была явным образом исключена пользователем.
Круговая ссылка
Структура в модели данных, в которой ключи между по меньшей мере тремя таблицами образуют круг. Подразумеваемая логика обычно является неоднозначной, и круговую ссылку необходимо разорвать. Для этого приложение QlikView настраивает одну из таблиц в качестве слабо связанной таблицы.
Лист
На экране QlikView изначально отображается пустой лист с прикрепленной вкладкой (тег имени). На лист можно поместить разные объекты, например списки или диаграммы. Кроме того, в документе можно создать несколько листов.
Логическая таблица
Таблицы с данными, которые рассчитываются в QlikView. Логическими называются таблицы, созданные при выполнении скрипта. Они хранятся в документе QlikView.
Мастер
Ряд диалоговых окон, с помощью которых пользователь может выполнить определенную задачу, например создать диаграмму.
Модуль QlikView
Сокращение от QlikView Desktop для Microsoft Internet Explorer.
Мультисписок
Объект листа, состоящий из двух столбцов, в котором каждая строка первого столбца содержит имя поля, а строка второго столбца — раскрывающийся список значений соответствующих полей.
Начальная страница
При запуске QlikView в первом окне отображается начальная страница, на которой можно получить доступ к примерам, избранным и недавно открытым документам и соединениям.
Объект «линия/стрелка»
Объекты листа, используемый для добавления линий или стрелок в макет. Объекты «Линия/Стрелка» можно двигать и перемещать в любое место области листа, включая области расположения других объектов листа.
Объект закладки
Объект листа, на котором можно создавать, удалять и вызывать закладки.
Объект поиска
Объекты поиска можно использовать, чтобы найти информацию в любом месте в документе.
Объект ползунка/календаря
Объект листа, который можно использовать для выбора значений в поле или установки значений для одной или двух переменных.
Ограничение доступа
Метод ограничения доступа к документу QlikView для различных пользователей групп.
ОЗУ
Аббревиатура от «оперативное запоминающее устройство». Обычно является синонимом термина «оперативная память».
Окно текущих выборок
Объект листа, в котором отображаются выборки в полях и их логическое состояние.
Оператор
Команда скрипта также называется оператором. Все операторы должны заканчиваться на точку с запятой, «;».
Оповещение
Оповещение представляет собой объект, который может отправлять или отображать предупреждающее сообщение, если выполнено определенное условие, например элементы данных отличаются от тех, что должны быть.
Основная память
Память, которая используется на компьютере для выполняемых программ. Обычно ее называют ОЗУ.
Относительный путь
Расположение файла, папки или каталога на диске относительно указанного каталога, которым обычно является каталог с документом QlikView.
Отчет
Под термином «отчет» обычно подразумевается статический бумажный или отчет в виде файла в формате PDF.
Очистить выборки
В результате выполнения этой операции приложение QlikView восстанавливает состояние до составления выборок, т.е. когда значения полей не исключены.
Перезагрузка
Скрипт QlikView, который необходимо выполнить для обновления данных в документе QlikView. Это можно сделать вручную или автоматически с помощью запланированной задачи или QlikVIew Publisher.
Перекрестная таблица
Таблица с двумя или более измерениями, некоторые из которых являются вертикальными, а некоторые — горизонтальными. Приложение QlikView может использовать перекрестные таблицы в качестве таблиц ввода. Кроме того, QlikView может отображать сводные таблицы в качестве перекрестных таблиц.
Переменная
Запись, которой присвоено имя и которой можно назначить одно единственное значение. Переменные можно использовать в скрипте и в выражениях на диаграммах и других объектах листов.
Поле
Аналогично столбцу в базе данных. Поле в QlikView обычно представлено списком.
Поле ввода
Объект листа, используемый для ввода данных в переменные QlikView и отображения их значений.
Пользовательский объект
Объект листа с заполнителем для пользовательских элементов управления OCX в элементах управления QlikView.
Приложение
Программное обеспечение, предназначенное для выполнения определенных действий, например доступа пользователя к базе данных. Приложение может представлять собой сочетание программы и документа. В данном руководстве под приложением обычно подразумевается программа, например Excel или QlikView, однако иногда этот термин также означает определенное решение, запрограммированное в виде документа QlikView.
Принудительное исключение
Также называется выбором «нет». Этот вариант можно выбрать только в списках. Для этого нажмите ячейку и удерживайте кнопку мыши нажатой до тех пор, пока ячейка не станет красной.
Простая таблица
Объект листа, который содержит представление данных, ориентированное на записи. В качестве столбцов можно указать любой набор полей, и возможные сочетания значений полей будут показаны на разных строках.
Прямая таблица
Объект листа, в котором можно использовать несколько измерений, а также несколько выражений с агрегированными данными, и который имеет широкие возможности сортировки.
Путь
Расположение файла, папки или каталога на диске.
Разделитель
Разделитель представляет собой символ или код, обозначающий начало или конец элемента, такого как предложение, абзац, страница, запись, поле или слово. В английском языке для обозначения этого термина используются слова delimiter и separator.
Редактор макросов
Диалоговое окно, в котором можно ввести, проверить и сохранить макросы VB Script.
Редактор отчетов
В программное обеспечение QlikView встроен редактор отчетов, в котором можно подготовить стандартные отчеты для последующей печати.
Сводная таблица
Объект листа, который позволяет использовать несколько измерений, несколько выражений с агрегированными данными, функции сведения и группировки.
Связывание (1)
Операция объединения двух таблиц в одну. В ходе выполнения этой операции происходит соединение двух таблиц, т.е. данные не меняются и готовая таблица содержит то же количество записей, что и исходные таблицы вместе. Последовательно можно выполнять несколько операций связывания, при этом готовая таблица может состоять из нескольких таблиц.
Связывание (2)
Операция, в ходе которой используются две текстовые строки, которые объединяются в одну. В качестве оператора этой операции используется амперсант «&».
Секция доступа
Секция скрипта загрузки QlikView, которую можно использовать для ограничения доступа.
Серый
Цвет исключенной ячейки.
Синий
Цвет заблокированной ячейки.
Синтетические ключи
Ключи между таблицами, которые создаются в QlikView в случаях использования нескольких ключей, соединяющих таблицы. Синтетические ключи иногда свидетельствуют о плохо или неправильно спроектированной модели данных.
Системные переменные
Системные переменные представляют собой параметры, созданные QlikView в скрипте для выполнения определенных задач, например определения форматов чисел документов
Системные поля
Поля, созданные QlikView. В системных полях содержится информация об источнике полей, считывание которых было выполнено в QlikView. Эту информацию можно использовать для идентификации файлов или таблиц источника данных, в котором необходимо найти определенное имя поля.
Скалярная функция
Скалярная функция представляет собой функцию, которая оперирует одним значением для возврата одного скалярного значения. Примеры: chr( ), sin( ), applymap( ).
Скрипт
Описание загружаемых данных. Скрипт представляет собой небольшую программу, выполняемую QlikView. Во время выполнения скрипт обращается к документу QlikView в одном или нескольких источниках данных или открывает текстовые файлы и считывает определенную информацию в QlikView. В скрипте указываются источник данных и поля, которые необходимо включить.
Скрытый скрипт
Часть скрипта загрузки, которую можно скрыть и защитить паролем.
Сохраненные процедуры
Программы, которые хранятся и запускаются в базах данных.
Список
Объект листа, который отображает список значений полей. В очень длинном списке, не вмещающем все варианты, используется полоса прокрутки, с помощью которой можно просмотреть дополнительные элементы.
Справка, справка html
Обычная справка Windows, которая вызывается из Справки или при нажатии клавиши F1.
Средство форматирования
Кисть на панели инструментов. Используется для переноса свойств из одного объекта листа на другой.
Столбец
Широко распространенный термин, обозначающий поле в базе данных.
СУБД
СУБД (система управления базами данных). Программа для работы с базами данных, которая используется для хранения и изменения данных в базе данных.
Табличный файл
В QlikView под табличным файлом подразумевается текстовый файл с таблицей, в которой поля разделены, например, запятыми, знаками табуляции или точками с запятыми. Содержимое первой строки обычно представляет собой имена полей.
Тема
Файл, содержащий свойства и информацию о внешнем виде документа, листа или объекта. Темы можно создать и использовать в QlikView.
Файл QlikView (.qvw)
Файл QlikView, сохраненный в двоичном формате, имеет расширение по умолчанию qvw. Также называется документом.
Файл QVD
Собственный формат файла QlikView. Файл QVD содержит одну таблицу данных без макета и средств защиты. Обычно это «двоичный файл csv», оптимизированный для быстрой загрузки.
Файл журнала
Файл, например регистрационная книга, в котором регистрируются все события во время выполнения скрипта.
Формат RTF
Расширенный текстовый формат. Метод шифрования форматированного текста для облегчения его перемещения между приложениями. Файл, сохраненный в формате RTF, сохраняет такие атрибуты, как шрифт, начертание и т. д.
Форматирование
Для двойных полей требуется форматирование, которое должно точно выполняться с помощью функции format( ).
Функция aggr
Функция aggr( ) представляет собой функцию, которая используется для вложенных агрегирований. Первый параметр должен представлять собой функцию агрегирования — функция внутреннего агрегирования. Результатом является набор записей, которые в свою очередь можно агрегировать с помощью функции внешнего агрегирования. Пример: Sum( Aggr( Count(…), …)).
Функция агрегирования
Функция агрегирования представляет собой функцию, которая оперирует набором значений, несколькими записями, для возврата отдельного скалярного значения. Примеры: Sum( ), Count( ), Avg( ). Функции агрегирования необходимо использовать в диаграммах. Их можно также использовать в скрипте, когда используется выражение «group by».
Функция интервала
Функция интервала представляет собой функцию, которая оперирует набором значений или нескольких параметров для возврата одного скалярного значения.
Шрифт
Типографский набор для букв и символов. В описании шрифтов используется название, стиль начертания и размер, например «Arial жирный 10 точек».
Элемент управления заменой OCX
Элемент управления OCX без окна, который встроен в макет QlikView с помощью пользовательского объекта. Элементы управления заменой OCX могут запрограммировать пользователь или сторонние разработчики.
Целевая аудитория Приложение для анализа доходности — любой работник телекоммуникационной индустрии.
Приложение преследует цели анализа доходности и оттока клиентов. И как можно отслеживать клиентов по их оттоку и прибыли.
Данные в этом приложении представляют бизнес оператора сотовой сети. Данные включают идентификаторы абонентов, с такими полями как MSISDN, дата активации, прибыль.
Сценарий 1.
Увеличивается ли выручка перед первым сентября.
Вначале июля наша компания работала над привлечением клиентов в центральном районе к первому сентября. Мы хотим видеть, была ли наша работа успешна. Сначала посмотрим на активации услуг. Давайте начнем с дашборда.
Выберем из Диаграммы Дохода YTD по центральному району, чтобы отфильтровать данные по нему.
Во-первых, посмотрим количество активаций за три месяца перед началом акции по привлечению клиентов. За апрель, май и июнь мы видим, что активировано 5,575 клиентов в течение того периода времени.
Вернемся на один шаг назад, выбрав кнопку «назад»
Рисунок
Теперь давайте выберем три месяца, начиная с начала акции по привлечению клиентов, чтобы видеть эффект, который она имела. После выбора июля, августа и сентября мы видим, что активировано 15,826 клиентов. Чистое различие в потребительских активациях было 10,251. Посмотрим, принесли ли новые клиенты дополнительный доход.
Идем к вкладке « Revenue»
Так же как и по активациям, давайте выберем эти три месяца перед началом акции по привлечению клиентов, чтобы видеть доход. Мы видим, что доход составлял 1.29$ M и меньше прогнозируемого дохода почти на $872 тысячи.
Давайте посмотрим доход в течение трех месяцев с начала акции по привлечению клиентов. Мы видим, что доход составлял 3.97$ M, и мы оказались в «плюсе» на 2.87$ M по центральному району.
Вывод по сценарию:
Мы хотели посмотреть, была ли успешна наша акция по привлечению клиентов в центральном районе перед первым сентября. Мы увидели, что количество активаций увеличилось с 5,525 за три месяца до начала акции до 15,828 за три месяца после начала акции, рост -10,251.
Потом мы посмотрели в разрезе дохода. Мы увидели, что доход за три месяца до начала акции составлял 1.29$ M.За три месяца акции он вырос до 3.97$ M.Рост -2.87$ M.Можно сказать, что акция по привлечению клиентов имела успех в центральном районе.
Сценарий 2
Отслеживание оттока клиентов.
Допустим, вы отвечаете за отслеживанием оттока абонентов. Допустим, сейчас середина декабря и вы готовитесь представить данные за конец года своему боссу. Вы смотрите отток клиентов в течении года и замечаете что-то странное. В апреле был скачек. И в хотите получить больше деталей.
На графике «Churn Over Time chart» выделяем апрель 2011 года.
При детальном просмотре диаграммы «Active & Ceased » мы видим , что на востоке произошел самый большой отток клиентов за апрель 2011 года (9.50%).Выберем восточную область и посмотрим, можем ли мы получить понимание ,почему был такой высокий уровень оттока клиентов.
Теперь, когда мы сузили наши данные по востоку, посмотрим в каком штате восточного региона был самый большой отток клиентов. У штата Делавер уровень оттока абонентов 69.12%.Выберем эту область и найдем город, вызвавший высокий отток абонентов.
После того ка мы сузили наши данные до Делавэра, мы ищем город , в котором произошёл самый большой отток абонентов. После дальнейшего «проваливания», мы видим, что Уэллингтон – единственный город в наших данных.Посмотрим на уровень оттока абонентов Уэллингтона в течение большого периода и проверим всегда ли отток был высок.
Давайте теперь отсеем ГодМесяц (апрель 2011), выбирая старательную резинку.
Теперь когда мы смотрим на диаграмму оттока клиентов в течении длительного периода мы видим, что с июня по октябрь у города Уэллингтона был уровень оттока абонентов 0%.По тенденции месяц апрель был выходом за пределы нормы, а не норма.
Мы хотим узнать детализацию наших главных счетов в течение года, чтобы удостовериться, что сможем удержать этих клиентов. Для них мы собираемся провести компанию «спасибо». Мы переходим на Детализацию счетов и видим, какие счета производят большую выручку. Отметим, что есть счета с доходом 500$ и более в Уилмингтонском Офисе
Вывод по сценарию:
Мы посмотрели историю оттока клиентов за 2011 год. Мы увидели пик оттока в апреле.
После фильтрации данных до апреля ,стало понятно , что у Восточной области был самый высокий уровень оттока клиентов из всех областей (в 9.50%).Когда мы отфильтровали данные по Востоку ,мы тогда смогли показать, что у Делавэра был уровень оттока абонентов за апрель (69%).Сделав еще одну фильтрацию до уровня города, мы увидели ,
что высокий уровень оттока абонентов был вызван Уилмингтонским офисом. С июня до октября уровень оттока абонентов составлял 0% для Уилмингтонского офиса. Поэтому это не нормально. Мы хотели идентифицировать главных клиентов ,которые дают главный доход из Уилмингтонского офиса. Мы нашли, что было 40 клиентов, которые произвели 500$ или больше дохода на 2011.
В этой демонстрации мы просмотрим несколько сценариев, которые освещают уникальные возможности и достоинства предлагаемые QlikView, чтобы помочь финансовым менеджерам и пользователям работать более эффективно.
Это приложение – довольно типичное приложение по анализу производительности труда для сети больниц. Общая цель для поставщиков – обеспечивать сбалансированное соотношение медсестер и пациентов и укладываться в бюджет. Не смотря на то, что это демо имеет дело с сферой здравоохранения, важно помнить, что цели анализа могут быть применимы для любой другой сферы деятельности.
Первое, что мы хотим показать – это ассоциативные связи, что является основным принципом, в соответствии с которым пользователь анализирует и понимает информацию в QlikView. На закладке Dashboard, вы можете увидеть несколько списков с отборами с левой стороны. Мы также можем увидеть таблицы верхнего уровня и визуальные объекты, такие как линейная диаграмма и связанная с ней таблица. Если мы выберем значение в одном объекте, например, отдел “Nursing”, все объекты и метрики в приложении моментально пересчитаются в соответствии с выборкой.
Таким образом, мы можем увидеть, например, что отдел «nursing» в целом работает в соответствии с планом, за исключением высокого процента сверхурочного времени. Затем, мы можем выбрать госпиталь «Augusta». QlikView подсветит выбранное значение зеленым цветом, показывая все связанные значения белым, а не связанные значения серым цветом. Это и есть то, что мы называем ассоциативностью, которая возможна благодаря тому, что the средства QlikView позволяют автоматически построить все ассоциативные связи между данными. Например, все месяца изображаются белым цветом, так как в каждом из них проявлял какую-либо активность отдел «nursing». Все другие отделы , такие как Food Services, подкрашены в серый. Например, Западный регион (Western Region) показывается белым, тогда как другие регионы остаются серыми.
Мы также можем увидеть, что процент сверхурочного времени для данного госпиталя (Августа) даже выше, чем средний процент — 8.38% против 5.21%. Если дальше мы выберем 2012 год в фильтре годов и январь в фильтре месецев, то увидим, что процент сверхурочного времени вырос до 10.58%. Увидев это мы можем проследовать дальше, чтобы увидеть, что произошло в январе, что вызвало такой высокий процент сверхурочного времени.
Очистить выборку
Другой способ, с помощью которого пользователь может находить и взаимодействовать с информацией в QlikView – через глобальный поиск. Предположим, я отправляюсь в госпиталь Central Valley на следующей неделе и хочу узнать о состоянии дел там. Вместо того, чтобы быть вынужденным использовать традиционный поиск, я могу искать напрямую и перейти к данным по Central Valley.
Я могу написать ключевое слово для поиска, например ‘Central’ в поисковой строке. Я вижу, что поиск идет по всем измерениям – так как у меня есть совпадения с госпиталями, кодом должности и регионом. Я выбираю ‘Central Valley’ из списка наименований госпиталей и приложение обновляется. Таким образом, мне, как пользователю, даже не нужно знать, где что-то искать, я просто могу написать это в поисковой строке и я получу список всех совпадений во всех измерениях.
Финансовый сценарий: Западный Региональный Финансовый Директор
Как Финансовый Директор сети госпиталей Западного региона, я ищу все области, которые не выполняют финансовые цели, включающие затраты и производительность. Я перехожу на закладку Dashboard, чтобы посмотреть в разрезах верхнего уровня несколько KPI, базирующихся на целевых показателях. Я могу налету корректировать знчения целевых метрик, а также динамически менять отображение линейного графика, базирующегося на выбранных измерениях и датах. В отчетной системе я буду или ограничивать предопределенные разрезы или мне нужно будет создавать дополнительные отчеты, добавляя их к разрастающемуся множеству отчетов.
Я, как финансовый директор западного региона, выбираю Западный (Western) из списка регионов. Во вступлении я обнаружил высокий процент сверхурочной работы в отделе «Nursing». Чтобы разобраться в этом, я могу выбрать отдел «Nursing» в фильтре по отделам. Я сразу могу увидеть, что значения показателей в разрезе года выглядят не очень хорошо в плане достижения целей. Красные точки показывают, что значения показателей выше нормы. Мне необходимо действать быстро и углубиться, чтобы найти основные причины.
Я хочу понять больше о количестве сверхурочных часов, поэтому я собираюсь перейти на закладку Overtime и посмотреть, могу ли я выделить какие-либо тенденции. На закладке Overtime я могу увидеть диаграмму рассеяния, которая поможет мне понять пару показателей. На оси Х отображается количество пациентов в каждом госпитале, на оси Y – показывается процент переработок для каждого госпиталя. Размер каждого шарика показывает количество сотрудников, работающих полный рабочий день, а цвет шарика дает понять какие госпитали достигают нашей цели по соотношению количества сотрудников к количеству пациентов (FTE/OB) (серый), а какие не достигают (красный).
Один из госпиталей привлек моё внимание. Он находится в стороне от других госпиталей на диаграмме, в верхнем правом углу, показывая высокий процент сверхурочной работы и высокое количество пациентов. Красный цвет показывает, что превышен допустимый порог сверхурочных работ. Я хочу внимательнее рассмотреть этот госпиталь, так что я выделяю этот шарик на графике, чтобы выбрать его.
Сводная таблица для госпиталя Howell под диаграммой рассеяния развернута и показывает все отделы и смены. Мне интересно, проявляется ли высокий процент переработок в отделе nursing во всех группах. Для этого я снимаю фильтр по отделу nursing из моей текущей выборки, нажав на ластик. Я хочу рассмотреть более высокий уровень, чтобы понять, какой из отделов вызывает высокий процент сверхурочной работы. Я нажимаю правой кнопкой мыши на отдел и выбираю ‘collapse all’ для более удобного отображения. Я сразу вижу, что проблему вызывают отделы Food Services и Nursing, и у отдела Nursing самый высокий процент переработок 10.23%. Затем, я разворачиваю отдел nursing, чтобы показать отдельные смены. Сразу становится ясно, что у weekend shift самый высокий процент переработок и у медсестер, стабильно, вне зависимости, будний день или выходной и большое количество регулярных часов.
Теперь мне интересно, как оплачивается работа медсестер госпиталя Howell, по сравнению с другими госпиталями? Мне нужно снять фильтр с госпиталя Howell и снова выбрать отдел nursing, таким образом я могу видеть отделы nursing всех госпиталей.
После снятия фильтра по госпиталю Howell, я могу увидеть, что Howell по-прежнему один из худших госпиталей по проценту сверхурочных работ. Мне интересно, есть ли госпиталь с хорошими показателями по сестринскому отделу? Мне нужно учитывать количество пациентов в госпитале в моем бизнес анализе. Я вижу серую точку в нижнем правом углу (то есть низкий процент переработок и высокое количество пациентов) и обнаруживаю, госпиталь Idaho Falls с 1.1% переработок. Я выбираю Idaho Falls на графике. Однако, я хочу видеть оба эти госпиталя вместе, поэтому я выбираю госпиталь Howell вместе с Idaho Falls удерживая клавишу CTRL или с помощью удерживающего нажатия на мобильном устройстве.
Очистить выборку.
Сейчас я хочу увидеть, как обстояли дела по сверхурочной работе в госпитале Howell из года в год. Для этого я перехожу на вкладку Cost Trends. Я вижу, что с января 2011 по июнь 2012 показатели по сверхурочной работе выросли. Нам необходимо поговорить или провести коллективное совещание с управляющим отдела Nursing госпиталя Howell, чтобы дать ему или ей знать о тенденциях и увидеть, как мы можем решить это.
Нам так же нужно дать управляющему отдела Nursing госпиталя Howell инструмент, с помощью которого он сможет отслежитвать ежедневную продкутивность своего отдела, таким образом мы переходим на вкладку Productivity Report, чтобы показать ему или ей показатели. Выбрав текущую неделю (6/25/2012), мы можем увидеть индекс производительности для каждой недели. Мы можем увидеть, что индекс производительности упал с 116% до 98%.
В нашей системе анализа мы можем в любое время переключиться на госпиталь Idaho Falls для сравнения. Выбрав Idaho Falls, стоит отметить, что тренд стоимости сверхурочных работ в госпитале Idaho Falls также вырос. Не смотря на то, что сейчас госпиталь Idaho Falls укладывается в целевые показатели, на эту тенденцию можно воздействовать до того, как она обострится.
Я решил оставить заметку для менеджера отдела Nursing и других отделов, чтобы они увидели и отреагировали. Правой кнопкой мыши явыбираю заметки/добавить новую заметку. Я называю заметку ‘Growing Overtime Variance’ («Рост отклонений сверхурочной работы») и задал вопрос, почему это так. Я сделал снимок и назначил доступ менеджеру отдела nursing и другим пользователям.
Результаты:
Как финансовый директор сети госпиталей западного региона, я хотел увидеть, есть ли какие-либо тенденции внутри моего региона, которые мне нужно распознать. На дэшборде я обнаружил, что процент сверхурочных работ для недели, месяца и года был выше планового.
На закладке Overtime (сверхурочные) я смог обнаружить отстающий госпиталь (Howell) и увидеть, что у него высокий процент сверхурочных. Мы обнаружили, что основная причина высоких сверхурочных была смена Weekend, и что у медсестер один из самых высоких процентов переработок с самым большим количеством постоянных часов. На трендах затрат мы можем видеть, что у госпиталя Howell вырос как процент сверхурочных, так и постоянных часов в течение последних 18 месяцев и мы смогли дать менеджеру отдела «nursing» госпиталя Howell возможность увидеть показатели продуктивность его отдела на ежедневной основе. В процессе, мы также обнаружили что-то в другом госпитале (Idaho Falls), получив возможность начать действовать заранее и смягчить дальнейшие затраты.
Меня зовут Сергей, мне 33 года. Я запустил свой первый бизнес в 2008 году. Он был связан с логистикой легковых автомобилей, поскольку мой прошлый опыт был в ГК Рольф и был связан с логистикой. В период кризиса, это направление оказалось в яме. Я переключился на логистику грузового транспорта. Так сложились обстоятельства.
Сейчас, у меня есть компания, которая специализируется на логистике грузового транспорта. Я не увидел масштабируемости данного направления бизнеса, и начал искать другие направления деятельности.
Весной 2014 года я решил запустить другое бизнес направление. После длительных размышлений, выбор пал на продажу коммерческого транспорта и спецтехники. Тем более я знал, с кем можно поговорить на эту тему. Я знаю много собственников и управляющих бизнесами, которые осуществляли продажу спецтехники и коммерческого транспорта. Эти люди и были моими клиентами по логистике.
Я начал разговаривать про построение этого бизнеса с людьми из ближайшего окружения. Мой друг Сергей сказал, что с удовольствием примет участие в этом проекте. У него было высокое разрешение в интернет-маркетинге, он умел делать лендинги и настраивать рекламные кампании. Я знал, что это то, что сейчас нужно. И мы погнали!
Мы с Сергеем запустили первые лендинги и настроили директ. Мы взяли стремительный темп и за первый месяц запустили 10 направлений. Клиентов было много!
Продажами занимались с моей супругой. В день обрабатывали порядка 12 лидов каждый. Каких-то лидов передавали партнерам, которые, как потом выяснилось, даже КП им не отправляли.
За первые два месяца мы продали два фронтальных погрузчика. Пришло понимание, что передавать лидов бессмысленно, и мы стали нанимать менеджеров по продажам.
Я не был сильным продавцом, да и отделами продаж никогда не руководил. Понимая, что примерно так и будет, я решил пойти на курс «Отдел продаж за 60 дней», чтобы разобраться, чего и как по уму делать.
Первый «замес» менеджеров был неудачный. Люди приходили без опыта, я их брал, начинали работать, послушав их общение с клиентами, я их увольнял. После нескольких переборов, ко мне пришли люди, с релевантным опытом работы. С клиентами начали нормально общаться. Тут немного полегчало…
Тем временем, проходя обучение по построению отдела продаж, одним из заданий, на протяжении всего курса было принести управленческую таблицу. Я сначала сделал простую базу данных в Access и начал вести ее.
Cистема аналитики
После двух дней работы, такой Dash board у меня получился.
По ходу курса, мы запускали все новые и новые направления продажи техники. Вместе с тем, увеличивалось и время на занесение информации в БД Access.
Примерно так выглядела аналитика. Я скрыл столбцы по каждому дню, чтобы показать общее количество направлений.
Таблица стала выглядеть очень громоздко. Помимо этого, еженедельное занесение информации стало занимать до 4-х часов! Нужно было автоматизировать.
Решили что-то с этим сделать… Я начал искать решение.
Задача, которую я решал – построить систему, с помощью которой можно управлять большим количеством направлений продаж техники
Когда большое количество цифр, даже собранных в таблице, то их крайне непросто понять и проанализировать. Насколько недель я бороздил просторы интернета. Искал платформу, с помощью которой смогу решить свою задачу.
Нашел следующие платформы, которыми принципиально можно пользоваться. Ниже приведу ссылки на некоторые сайты этих систем, которые больше понравились: klipfolio.com bimeanalytics.com qlik.com/ru
Я зарегистрировался на всех этих сайтах, начал выбирать, смотреть возможности каждой из платформ BI аналитики.
Я остановил свой выбор на платформе Qlik Sense. Мне она показалась наиболее понятной. Да и help по ней был на русском языке. Немного «поколдавав», я выгрузил данные из Access в Excel и начал оформлять графики.
Так выглядела управленческая таблица, которую я сдал на восьмом занятии по отделу продаж.
Что очень понравилось: выбирая любой столбец или строку на графике, это поле или значение становится фильтром ко всем данным, отображенным на листе.
В этом ролике, можно посмотреть как работать с этой программой, начиная с загрузки данных, до возможностей накладывания фильтров и понимания, какие задачи можно решать
Я не буду описывать процесс внедрения CRM-системы в нашем отделе продаж, просто скажу, что после обзора «бюджетных CRM-систем» мы остановились на облачном Битрикс24.
Что было дальше
В БМ рассказали о сквозной аналитике, цифровой модели бизнеса. Было очень круто!
Я захотел, чтобы и у меня была такая система.
Мы стали искать программиста, который сможет нам по API забирать данные из различных систем. После примерно месяца поиска, такой человек нашелся!
Достаточно быстро мы получили доступ к API Яндекса. И через пару недель у нас статистика по всем рекламным каналам уже автоматически собиралась в MySQL, и я мог стандартными инструментами Qlik Sense загружать данные и визуализировать их.
Мы быстро поняли, что достаточно большой бюджет «скликивается» в Московском регионе, а заявок совсем мало. Это казалось «чудом»! Стало видно, по каким направлениям продаж, в каких регионах какие расходы.
Мы рекламировались по всей России. Дополнительно, на наших лендингах мы научились определять из какого региона к нам пришла заявка (сервис API яндекс карт). Эту информацию мы пробрасывали в CRM-систему.
Второй задачей стало — забрать данные из CRM-системы и их визуализировать. С API Битрикс24 было куда сложнее… Оказалось, что RestAPI в полноценной версии доступно только разработчикам. Пришлось зарегистрироваться разработчиками, пройти обучение и аттестацию.
И вот оно! Случилось! У нас появился полноценный RestAPI Битрикс24.
Еще несколько недель программирования и теперь у нас не только данный из Яндекс Директа, но и из CRM-системы были в базе данных. Мы настроили «парсеры» таким образом, чтобы при загрузке в MySQL у нас данные рекламных кампаний и CRM-системы были увязаны между собой.
Стало круто! Теперь вся информация как на ладони. Видно все и про всех!
После того, как я сотрудникам отдела продаж показал как выглядит их деятельность, получил следующий комментарий: «Теперь даже когда капитана нет на мостике, придется работать»! У меня на тот момент было 4 менеджера по продажам.
Я достаточно быстро не только визуализировал работу, выполненную менеджерами, но и поставил план по завершенным задачам. У сотрудников появились KPI.
В результате, один сотрудник уволился самостоятельно, двоих пришлось уволить. У нас остался один менеджер по продажам. Пришлось срочно нанимать еще.
Мы стали приглашать кандидатов на собеседования, показывать то, как мы работаем, какие у нас сайты, рекламные кампании, какая у нас CRM-система, система аналитики.
Неожиданно для меня, большинство кандидатов стали проситься, чтобы мы их взяли на работу, несмотря на низкий оклад и жесткие KPI на работу. На момент написания статьи, у нас снова четыре менеджера по продажам.
После того, как мы забрали данные из директа и CRM-системы, захотелось настроить автоматический сбор и из других источников. Я попросил программиста забрать данные так же из Яндекс.Метрики, Google Analytics, Google AdWords, 1С Бухгалтерии.
Поразмышляв несколько дней над этой задачей, он выступил с предложением разработать универсальный API коннектор, который сможет забирать данные из любой системы, которая их отдает, автоматически «парсить» их в нужном виде и «запихивать» в базу данных.
Так мы сменили основную базу данных с MySQL на PostgreSQL и настроили автоматический забор данных с нужным циклом обновлений.
На момент написания статьи, у нас более 15 панелей мониторинга, на которых порядка 70 графиков, отражающих более 350 показателей, которые автоматически собираются и обновляются.
Что дало внедрение системы управления эффективностью бизнеса нашей компании:
Dash board по Яндекс директу.
Из панели мониторинга видно:
Расходы на Яндекс директ по направлениям продаж техники
Расходы на Яндекс директ по городам
Расходы на Яндекс директ и количество кликов по месяцам
Стоимость клика по размещением
Стоимость клика по площадкам
Drill down по месяцам, что бы видеть информацию по дням
Быстрое применение фильтров
применение фильтра «XCMG»
Dash board по Лидам.
Из панели мониторинга видно:
Общее количество лидов
Количество лидов в статусах «новый» и «не удалось связаться»
Распределение лидов по менеджерам
Количество лидов по направлениям
Количество лидов по месяцу создания и менеджерам
Количество лидов по ключевым словам (по каким запросам, люди оставили заявку)
Drill down по месяцам, что бы видеть информацию по дням
Быстрое применение фильтров
Dash board по Сделкам.
Из панели мониторинга видно:
Общее количество сделок
Сумма сделок
Количество сделок по статусам
Распределение сделок по менеджерам
Количество выигранных сделок по менеджерам
Маржа по месяцам и менеджерам
Drill down по месяцам, чтобы видеть информацию по дням
Быстрое применение фильтров
Из панели мониторинга видно:
Фильтр по любому статусу или набору статусов
Дней с последнего касания клиента по сделке
На отдельном листе касания клиентов по сделкам
Сумма и комментарии в CRM-системе по каждой сделке
Быстрое применение фильтров
Dash board по выполненным задачам в CRM-системе.
Из панели мониторинга видно:
Фильтр по любому сотруднику или сравнение их между собой
Количество выполненных задач по каждому дню
Фильтры по месяцам
Общая производительность отдела продаж
Быстрое применение фильтров
Dash board Воронка по компании.
Из панели мониторинга видно:
Фильтр по любому направлению
Общая воронка по компании
Метрики и коэффициенты конверсии
ROMI по компании
Быстрое применение фильтров
Dash board Воронка по регионам.
Из панели мониторинга видно:
Количество лидов, клиентов, сделок, продаж по регионам
Сумма, на которую открыты сделки по регионам
Сколько заработано по регионам
Количество сделок по регионам
Быстрое применение фильтров
Резюме
Панели мониторинга позволили отслеживать KPI, метрики и другие ключевые данные, актуальные для бизнеса
Благодаря визуализации данных, панели мониторинга упростили сложные наборы показателей и метрик, предоставив наглядную картину бизнеса в конкретный момент времени
Автоматический сбор данных позволил иметь актуальную информацию без дополнительных затрат времени и денег на их обработку
Увеличилась точность приложения усилий. Видны «узкие места» в компании. А так же видно, куда следует уделять внимание, для повышения эффективности бизнеса
Быстрая настройка любого количества метрик и показателей для своего бизнеса
Доступ к своим данным из любой точки мира с компьютера или планшета
Разделение по уровням (отдельно для собственника, управляющего, отделов, руководителей, сотрудников и тд.), не перегружая лишней информацией
Погружение на необходимый уровень детализации для точной диагностики проблемы
Такая система нужна каждому бизнесу, независимо от размера. Сейчас, в кризис, это особенно актуально!
Вы можете сделать то же самое в своей компании используя платформу.
С уважением к Вам и Вашему бизнесу,
Сергей Цветков.
QlikView notes is one of the first QlikView oriented blogs. It’s made by Rob Wunderlich and it is a great source for developers to find performance tips and best practices.
Stefan Walther is behind this amazing blog. It’s one of the best blogs to stay up to date with QlikView extensions, so if you are looking for something Qool you are in the right place.
Beingpassionate about QlikView design, this is one of my favorite sources of inspiration. In Matthew Crowther own words: “So have a browse around and get inspired; it’s not plagiarism; it’s research.”
Как часто Вы встречаетесь с ситуацией, когда один из ТОПовых товаров отсутствует на складе? Знаете ли Вы, как такое положение дел влияет на уровень продаж и объем прибыли? Давайте разбираться.
Большинство компаний в своей работе придерживается принципов «а я не против вот это заказать» или « у нас, кажется, заканчивается продукт А, наверное, его нужно закупить». Многие не обращают внимания на соседние позиции на полках, а они также уже на исходе. Какой вывод можно сделать? Плохой менеджер по закупкам? Нет, это не всегда так. Есть ряд обстоятельств, которые обычный человек не может предусмотреть, так называемый «человеческий фактор».
Наверняка, у Вас хотя бы раз была такая ситуация, когда какой-то товар отсутствовал? Или Вы сталкиваетесь с этим постоянно? Эта недопустимая «патология» бизнеса, с которой необходимо бороться, ведь цена такой ошибки порой очень велика. Попробуем приблизительно рассчитать ее.
При отсутствии ТОПовых товаров на складе происходит как минимум две вещи: компания теряет прибыль и наносит ущерб своей репутации. Как это перевести в деньги?
Потери прямых продаж — на Вашем складе отсутствовал товар, который был интересен покупателю здесь и сейчас, и покупатель уходит к конкуренту;
Потери возможных продаж – потери от продаж сопутствующей продукции. Примером может быть: пиво + чипсы; подарочные пакеты + бумага и т.п. Конечно, это очень простые примеры, поскольку в наше время сложно найти такой магазин, где отсутствовала бы такая товарная позиция как «пиво», но если нет именно ходовой марки, продажи могут упасть.
Потери прямых продаж
Как показывает практика, только 5-10% от всего отсутствующего на полках ассортимента не попадает вовремя в магазин по вине поставщика. Во всех остальных случаях виноват сам магазин.
По методу Парето, ходовой товар занимает в объеме продаж компании 80%. Стоит также учитывать и товары группы В, которые приносят еще 15%. Товар группы С в данном примере мы учитывать не будем, так как он приносит только 5% прибыли. Позиция группы Z составляет около 20-25%. Большая его часть находится в группе С, что затрудняет прогноз уровня продаж. Таким образом получается, что группа А (80%) + группа В (15%) – группа Z (25%)=70%. Это цифра соответствуют количеству ходового ТОПового товара в ассортименте компании.
Конечно, этот показатель среднестатистический и для каждой организации может быть своим. Но как бы там ни было около 15% ТОПового товара может отсутствовать у Вас в определенные периоды времени по Вашей вине. И теперь можете посчитать, сколько прибыли Вы теряете.
Средняя компания, занимающаяся оптовой торговлей, в день делает оборот около 200 000 тыс. рублей. Маленькая фирма — 60 000 тыс. рублей. Таким образом получаем, что средний и малый бизнес может нести затраты из-за отсутствия ходовых товаров в размере 30 и 14 тыс. рублей в день соответственно. А если привести эти затраты к месяцу и году – получится очень внушающая цифра. Правда, это только оборот, но зная свой процент наценки можно запросто посчитать потерянную прибыль.
Потери возможных продаж
С этим вопросом без корреляционного анализа сложно разобраться, поскольку необходимо определить:
какую долю занимают совместные продажи интересующих товаров от общих продаж данного продукта;
сравнить продажи «дополняющей» единицы в дни наличия его на складе и отсутствия.
Например, после анализа чеков Вы определили товары, которые часто продаются вместе. Это может быть следующая ситуация: на десять продаж продукции А приходится семь продаж товара В. Если товар А отсутствует на полках, то товар В будет продан только в трех случаях из десяти. Вы сделали отчет по прошлому месяцу и увидели, что товара А не было в остатке 6 дней из 20 рабочих. Так как компания продает этот товар в количестве 40 штук в день, то потери составили прибыль от 240 штук – это потери от прямых продаж. Из-за зависимости товара В от А получилось, что объем продаж продукции В сократился на 28 единиц в день. Теперь посчитайте, сколько прибыли потеряла фирма? Причина – неграмотное планирование и управление складом.
Управление ассортиментом и складом
Управление ассортиментом и складом можно отнести к одним из самых важных задач компании, однако это не значит, что стоит забыть про все другие дела и заниматься скрупулезно планированием. Так дело далеко не пойдет. Планирование запасов можно автоматизировать, что сократит время и трудовые затраты на решение этой задачи. Причем автоматизированные системы позволяют безошибочно планировать весь процесс управления запасами, что положительно отразиться на прибыли компании. Как это сделать? Для таких целей идеальный союзник BI-решение, убедиться в эффективности которого Вы сможете после просмотра короткого ролика.
Приложение QlikView Executive Dashboard ориентировано на исполнительное руководство и топ-менеджмент, которые хотели бы иметь возможность проникнуть в суть бизнеса своей компании от верхнего уровня до деталей.
Данное приложение позволяет пользователям быстро разобраться в бизнесе с различных точек зрения.
С точки зрения продаж, пользователь может просматривать выручку компании и быть уверенным, что она соответствует плановой для данного года. Выручка может быть проанализирована в разрезах от регионов до продуктов, и проведен анализ цен «Что-Если», чтобы определить влияние изменения цены, стоимости или объема.
С точки зрения расходов, руководство может гарантировать, что расходы, не превышают бюджет и может проследить движение денежных средств до уровня счетов.
С точки зрения дебиторской задолженности, книга ДЗ позволяет пользователям следить за счетами и платежами клиентов.
С точки зрения товарного уровня, пользователь может отслеживать оборачиваемость товарных запасов и их инвентаризацию на руках.
Приложение QlikView Executive Dashboard включает в себя счета, счета дебиторской задолженности, бюджет, продукцию, клиентов, инвентаризацию, продажи и данные по заказам.
Сценарий 3:
Директор по маркетингу хочет провести анализ цен и определить, как продажи могут быть улучшены в следующем квартале.
Как изменение цены, стоимостии/или объема продаж влияют на общую маржу?
Какая продукция не является выгодной?
Изменение цены, стоимости и/или объема продаж увеличит общую маржу?
Продолжая …
Выявление низкоэффективной продукции
Какое изменение цены/стоимость/объема продаж могут увеличить процент маржи для низкоэффективной продукции
Директор по маркетингу будет использовать анализ Что-Если, чтоб определить эффект изменения цены, стоимости и объема продаж на общую маржу.
Директор по маркетингу хотел бы видеть продукты, если таковые имеются, продающиеся не очень хорошо. Глядя на график Product Profitability 80:20 по Product Group, директор по маркетингу видит, что Dairy и Alcohol Beverages продукты имеют маржу меньше, чем 40 процентов.
Продажи и маржа для Dairy выше чем у Alcohol Beverages, поэтому сфокусируемся на Dairy.
Сперва посмотрим, какие именно продукты являются наиболее/наименее прибыльными в группе Dairy.
Директор по маркетингу видит, что все молочные продукты, кроме творога имеют маржу ниже 40%
Награфике Monthly Sales&Margin директор по маркетингу видит, что с марта продажи пошли на спад, но маржа составляла примерно 30%.
Директор по маркетингу хотел бы попробовать несколько сценариев, чтобы найти способ увеличить продажи Dairy product. Перейдем на вкладку What-If Price Analysis.
На этом листе директор по маркетингу может проверить несколько сценариев, чтобы определить как изменение цены, стоимости и/или объема будет влиять на общую выручку и маржу
Что будет, если мы увеличим объем на 5%? Мы видим, что маржа увеличиться на 14,7%.
Теперь посмотрим, останется ли маржа хорошей, если мы уменьшим цены на 2%. Директор по маркетингу хочет попробовать увеличить объем продаж, думая что покупатели будут брать больше по более низкой цене. Маржа по-прежнему хорошая с изменением на 8,6% и мы видим что выручка тоже улучшилась.
Директор по маркетингу изменяет What if Price по одному проценту до -5%, чтобы посмотреть как это влияет на маржу. Как мы видим, наилучшая маржа, когда изменение цены равно -2%.
Вернемся к изменению цены на 2% What if Price и увеличению объема продаж на 5% What If Volume, при этом изменение маржи составляет 8,6%.
Директор по маркетингу хочет посмотреть, что произойдет, если он получит скидку на продукт у поставщика. Если снизить What if Cost на 1%, это поможет?
Маржа выглядит лучше, чем прежде — 10,5% и выручка по-прежнему хорошая. Директор по маркетингу рассмотрит эти результаты с своей командой.
В этом сценарии директор по маркетингу может проводить анализ Что-если What-If,чтобы увидеть, как влияет изменение цены, стоимости и/или объема продаж молочных продуктов на выручку и маржу. Этот анализ представляет собой быстрый способ увидеть, как эти изменения влияют на общий результат.
Приложение QlikView Executive Dashboard ориентировано на исполнительное руководство и топ-менеджмент, которые хотели бы иметь возможность проникнуть в суть бизнеса своей компании от верхнего уровня до деталей.
Данное приложение позволяет пользователям быстро разобраться в бизнесе с различных точек зрения.
С точки зрения продаж, пользователь может просматривать выручку компании и быть уверенным, что она соответствует плановой для данного года. Выручка может быть проанализирована в разрезах от регионов до продуктов, и проведен анализ цен «Что-Если», чтобы определить влияние изменения цены, стоимости или объема.
С точки зрения расходов, руководство может гарантировать, что расходы, не превышают бюджет и может проследить движение денежных средств до уровня счетов.
С точки зрения дебиторской задолженности, книга ДЗ позволяет пользователям следить за счетами и платежами клиентов.
С точки зрения товарного уровня, пользователь может отслеживать оборачиваемость товарных запасов и их инвентаризацию на руках.
Приложение QlikView Executive Dashboard включает в себя счета, счета дебиторской задолженности, бюджет, продукцию, клиентов, инвентаризацию, продажи и данные по заказам.
Сценарий 2:
Финансовый директор хочет отслеживать дебиторскую задолженность для обеспечения своевременных платежей.
Все ли выдающиеся счета были оплачены своевременно?
Если нет, то, сколько дней просрочки по счетам?
Если нет, то, сколько клиентов просрочили и как часто они это делают?
Конкретизируя:
Клиентов, у которых есть просрочка в оплате;
Клиенты, которые имеют просроченные задолженности по крупным сделкам
Финансовый директор периодически проверяет дебиторскую задолженность на QlikView Dashboard KPI для того, чтобы компания не слишком отставала в получении платежей от своих клиентов.
В приложении QlikView на панели ключевых показателей KPI финансовый директор видит, что на 31 мая 2012 просроченная задолженность составляет более $200,000
Чтобы получить более подробную информацию о непогашенной задолженности, финансовый директор должен перейти на лист Receivables
Хорошая новость то, что основная задолженность является текущей. На графике OrderTotals финансовый директор видит, что таких счетов (текущая дебиторская задолженность) 76%, 9% счетов просрочены на 1-30 дней, 3% на 31-60 дней и 2% на 60 и более дней.
Посмотрим, большая часть просроченной дебиторской задолженности (ПДЗ) принадлежит одному клиенту или нескольким? Посмотрев на отчет AR Ledger, мы видим клиентов, сколько они должны выплатить и коэффициент ликвидности дебиторской задолженности (DSO), количество дней просрочки
Двойной клик по названию столбца DSO отсортирует таблицу по убыванию значения показателя
Давай отсортируем таблицу по столбцу DSO (коэффициент ликвидности дебиторской задолженности), чтобы сфокусироваться на клиентах, постоянно задерживающих оплату. Мы видим, что несколько клиентов имеют просроченную дебиторскую задолженность (ПДЗ).
Выделите клиентов, у которых значение показателя DSO 80 и более дней
Если мы увеличим высоту отчета, мы сможем выделить клиентов, имеющих DSO более 80 дней
Теперь отсортируем таблицу по % Overdue (просрочки) по убыванию.Этот отчет показывает финансовому директору клиентов, которые имеют ПДЗ и кто платит позже назначенных сроков. Перед тем, как финансовый директор отправит этот список в Excel, он хотел бы видеть ответственных за этих клиентов.
С помощью двойного клика на названии столбца Overdue, % отсортируйте таблицу по убыванию этого показателя
Для этого, скопируйте отчет AR Ledger и Добавьте поле SalesRep как измерение. Давайте отсортируем таблицу по столбцу DSO, чтобы сфокусироваться на клиентах, просрочивших период оплаты. Мы видим, что несколько клиентов имеют ПДЗ.
Нажмите правой кнопкой на отчете AR Ledger и выберите Клонировать
Нажмите правой кнопкой мыши на скопированном отчете и выберите СвойстваПерейдите на закладку ИзмеренияВыберите поле Sales Rep Name в списке доступных полей/групп
Нажмите Добавить, чтобы добавить поле Sales Rep Name в список используемых измеренийОно появится в списке используемых полейНажмите Ок
Теперь финансовый директор может увидеть ответственных, работающих с этими клиентами
Финансовый директор отправит отчет в Excel и передаст в инкассовый отдел, чтобы они связались с этими клиентами об оплате. Также финансовый директор оповестит ответственных контактных лиц этих клиентов, что они нарушают правила оплаты.
Нажмите на Меню и выберите Отправить в Excel
Excel откроется с данными этого отчета
Очистите выборку перед началом следующего сценария
Очистите выборку
В этом сценарии финансовый директор может отслеживать дебиторскую задолженность и подготовить лист клиентов для отдела инкассации нуждающихся в наблюдении.
Популярность QlikView на российском рынке BI-систем постепенно растет, многие компании используют это ПО для консолидации финансовых данных, сокращения трудозатрат, оперативного контроля и многих других задач. И вполне закономерно, возникла необходимость связки 1С с QlikView, желательно напрямую, без всяких промежуточных выгрузок из базы. Некоторые ИТ-компании уже разработали коммерческие решения, например, QlikView-1C Коннектор, так или иначе облегчающие этот процесс. В качестве бесплатной альтернативы предлагаю простой способ получения информации из 1С через COM-соединение.
Для экспериментов я использовал демо-базу 1С:Управление торговлей 11. Сначала реализуем тестовую функцию в 1С, открываем Модуль внешнего соединения, пишем код:
Функция TestQlik() Экспорт
Возврат "QlikView успешно подключилось к 1С";
КонецФункции
Теперь в QlikView настраиваем COM-соединение. Открываем редактор макросов, пишем следующий скрипт, подставляем свои параметры подключения к базе:
sub v82connect
set conn = CreateObject("V82.ComConnector")
set v82 = conn.Connect("File=""I:\1c_base\demoTRD"";usr=""QlikView"";")
MsgBox(v82.TestQlik)
end sub
Обратите внимание на настройки параметров локальной безопасности, установлена в «Разрешить системный доступ». Жмем «Тест», если все сделано правильно, должно появиться сообщение «QlikView успешно подключилось к 1С«.
Теперь попробуем подгрузить данные из 1С. Сначала сформируем пустую таблицу в скрипте загрузки:
SET ThousandSep=' ';
SET DecimalSep=',';
SET MoneyThousandSep=' ';
SET MoneyDecimalSep=',';
SET MoneyFormat='# ##0,00р.;-# ##0,00р.';
SET TimeFormat='h:mm:ss';
SET DateFormat='DD.MM.YYYY';
SET TimestampFormat='DD.MM.YYYY h:mm:ss[.fff]';
SET MonthNames='янв;фев;мар;апр;май;июн;июл;авг;сен;окт;ноя;дек';
SET DayNames='Пн;Вт;Ср;Чт;Пт;Сб;Вс';
LOAD * INLINE [
Data, Firma, Partner, Tovar, Quantity, Summa, Cost];
Запускаем скрипт, размещаем простую таблицу на листе:
В свойствах документа включаем динамическое обновление данных:
Пишем скрипт загрузки в редакторе макросов:
sub v82query
set conn = CreateObject("V82.ComConnector")
set v82 = conn.Connect("File=""I:\1c_base\demoTRD"";usr=""QlikView"";")
query_1c = "ВЫБРАТЬ" &_
" НАЧАЛОПЕРИОДА(ВыручкаИСебестоимостьПродаж.Период, ДЕНЬ) КАК Data,"& vbNewLine & _
" ПРЕДСТАВЛЕНИЕ(РегистрАналитикаУчетаПоПартнерам.Организация) КАК Firma,"& vbNewLine & _
" ПРЕДСТАВЛЕНИЕ(РегистрАналитикаУчетаПоПартнерам.Партнер) КАК Partner,"& vbNewLine & _
" ПРЕДСТАВЛЕНИЕ(РегистрАналитикаУчетаНоменклатуры.Номенклатура) КАК Tovar,"& vbNewLine & _
" СУММА(ВыручкаИСебестоимостьПродаж.Количество) КАК Quantity,"& vbNewLine & _
" СУММА(ВыручкаИСебестоимостьПродаж.СуммаВыручки) КАК Summa,"& vbNewLine & _
" СУММА(ВыручкаИСебестоимостьПродаж.Себестоимость) КАК Cost"& vbNewLine & _
"ИЗ"& vbNewLine & _
" РегистрНакопления.ВыручкаИСебестоимостьПродаж КАК ВыручкаИСебестоимостьПродаж"& vbNewLine & _
" ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаУчетаПоПартнерам КАК РегистрАналитикаУчетаПоПартнерам"& vbNewLine & _
" ПО ВыручкаИСебестоимостьПродаж.АналитикаУчетаПоПартнерам = РегистрАналитикаУчетаПоПартнерам.КлючАналитики"& vbNewLine & _
" ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаУчетаНоменклатуры КАК РегистрАналитикаУчетаНоменклатуры"& vbNewLine & _
" ПО ВыручкаИСебестоимостьПродаж.АналитикаУчетаНоменклатуры = РегистрАналитикаУчетаНоменклатуры.КлючАналитики"& vbNewLine & _
"СГРУППИРОВАТЬ ПО"& vbNewLine & _
" НАЧАЛОПЕРИОДА(ВыручкаИСебестоимостьПродаж.Период, ДЕНЬ),"& vbNewLine & _
" ПРЕДСТАВЛЕНИЕ(РегистрАналитикаУчетаПоПартнерам.Организация),"& vbNewLine & _
" ПРЕДСТАВЛЕНИЕ(РегистрАналитикаУчетаПоПартнерам.Партнер),"& vbNewLine & _
" ПРЕДСТАВЛЕНИЕ(РегистрАналитикаУчетаНоменклатуры.Номенклатура)"
set v8query = v82.NewObject("Query")
v8query.text = query_1c
set result = v8query.Execute
set m = result.Choose
do while m.next
set sql_string = ActiveDocument.DynamicUpdateCommand("INSERT INTO * "& vbNewLine & _
"(Data, Firma, Partner, Tovar, Quantity, Summa, Cost) " & vbNewLine & _
"VALUES (" & m.Data &", "& m.Firma & ", " & m.Partner & ", " & m.Tovar & ", " & m.Quantity & ", " & m.Summa & ", " & m.Cost & ")") loop
ActiveDocument.GetApplication.Refresh
end sub
Обратите внимание на написание текста запроса, это связано с особенностями VBScript. Поэтому лучше описание запроса оставлять на стороне 1С, в QlikView передавать только готовый результат. Так же псевдонимы полей в запросе пришлось писать на латинице, кириллицу не воспринимает. Выделяем нашу процедуру в списке редактора, жмем «Тест». Мы увидим что наша пустая таблица заполнилась данными.
Теперь можно построить пару диаграмм:
При желании можно поставить наш скрипт в выполнение после скрипта загрузки: