QlikView — краткий учебник (примеры, обучение, практика)

qlikview

Contents

Немного о QlikView

QlikView — BI-платформа с ассоциативным поиском в оперативной памяти со встроенными средствами ETL.
QlikTech — компания-разработчик программного обеспечения (qlikview) для систем Business Intelligence со штаб-квартирой в Радноре. Основана в 1993 году в Швеции.

Кто внедряет Qlik-продукты (QlikView и Qlik Sense) в России?

Мне посчастливилось посотрудничать с одной профессиональной командой разработчиков QlikView, которые, как оказалось, работают в одной и той же компании длительное время (что большая редкость для консалтинга, особенно в России) — поэтому я наверное посвящу этот раздел моего учебника именно им.
Ребята из BIConsult наверное одни из первых в России начали работать с компанией QlikView. Я вначале думал, что освоить клик легко, но после создания нескольких приложений понял, что тут нужен хороший опыт. С опытом приложения разрабатываются достаточно быстро!
Когда общался с представителями компании, стало понятно, откуда взялся опыт — 150 пилотных проектов различной степени сложности, 60 полных проектов внедрений, опыт практически во всех сферах (ритейл, рестораны, производства, банки, фармацевтическая отрасль).

Ввиду очень хорошего впечатления об практическом опыте компании BIConsult я, с их позволения, оставил тут несколько слов. Плюс, наверное повешу баннеры некоторые, дабы Вы знали, к кому стоит обращаться за внедрением QlikView. Еще раз огромное спасибо ребятам за то, что рассказали про всякие фишечки оптимизации приложений, о которых сразу не догадаешься! Надеюсь, что Вы приумножите лидерство на рынке BI по Qlik-продуктам и поможете еще многим компаниям разработать удобную и быструю бизнес-аналитику.

А вообще, если Вы хотите подробнее узнать о них, то лучше перейти на их официальный сайт и задать им вопросы лично, так как я передал Вам лишь каплю в море, которую узнал из беседы с ними.
qlikview

Производственный процесс бизнес-аналитики

Работа подразделений бизнес-аналитики в настоящее время бессмысленна без применения информационных технологий. Как же строится процесс взаимодействия людей с информационными технологиями бизнес-аналитики? Ниже приведена основная схема процесса взаимодействия людей и процесса обработки информации:
Производственный процесс бизнес-аналитики

qlikview

Введение в терминологию 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). Хранилище очищенной интегрированной информации, полученной от многих систем, из которого информация поступает к конечным пользователям или в витрины данных.

Сравнение традиционной и ассоциативной архитектуры бизнес-аналитики

Большинство различных ПО в бизнес-аналитике используют запросы, возвращаемый результат которых зависит от исходного контекста поиска. Помимо этого, результаты различных запросов никак не связываются между собой физически, а только в головах разработчиков. Это отдаляет результаты запросов, которые разрабатываются техническими специалистами, от бизнес-пользователей. Поэтому принятие решений производится на основе интуитивных связей между данными, что ухудшает их качество.
compare_difference_analytic_systems
В QlikView реализована система с ассоциативной архитектурой. ПО управляет сложными взаимосвязями между данными не на прикладном уровне, а на уровне внутренних инструментов QlikView. ПО сохраняет в оперативной памяти различные таблицы баз данных. При помощи этих инструментов можно манипулировать ассоциативными связями между таблицами, а соответственно и данными. Любое значение из одной таблицы связывается со всеми значениями из других таблиц.
Данные в стандартных кубах агрегированы по-разному. Если нужно получить данные из двух разных кубов, то в общем случае сделать это невозможно — необходимо создать дополнительный куб. Плюс чтобы объединить данные из кубов с данными транзакционных систем — нужно разрабатывать дополнительный куб и интеграцию, что является очень не тривиальной задачей. Бизнес-пользователи очень часто имеют разные мелкие вопросы, которые им приходится решать в ручную, что требует очень много времени. QlikView имеет очень простой инструмент создания моделей в кратчайшие сроки. С ним можно решить все мелкие вопросы бизнес-пользователей за короткое время, т.е. сэкономив часы IT специалистов.
tradicionnaya_i_associativnaya_systema
Традиционные инструменты бизнес-анализа, которые основаны на запросах, используют уровень приложений, отделенный от уровня данных. Это приводит к затягиванию процесса внедрения, т.к. разработчикам необходимо затрачивать определенное время на настройку приложений. Плюс требуется время на настройку приложений для их соответствия новым данным.
BI_instrumenti_i_qlikview

«Traditional BI workflow» VS «QlikView workflow»

Traditional BI workflow:
Traditional_BI_workflow
QlikView workflow:
QlikView_workflow

qlikview

Архитектура QlikView

Платформа QlikView — это сервис-ориентированная архитектура (SOA), это означает, что компоненты могут быть реорганизованы в зависимости от потребностей заказчика.
Структура платформы QlikView
Обзор архитектуры QlikView

architectura_qlikview_system

Клиент-серверный обмен

klient_servernii_obmen

Управление безопасностью

  • Интеграция
  • Управление пользователями
  • Шифрование
  • Логирование
  • Многоуровневое администрирование

upravlenie_bezopasnostiu

Гибкое лицензирование

gibkoe_licenzirovanie_qlikview

Обзор компонентов QlikView

obzor_componentov_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 (Open Database Connectivity) — программный интерфейс API для доступа к базам данных (СУБД), которые поддерживают этот стандарт. Программный интерфейс разработан фирмой Microsoft. При использовании ODBC клиенту не обязательно знать с какой СУБД (Oracle, MS SQL, Access) он работает.
QlikView работает с 32-разрядными и 64-разрядными ODBC драйверами, поэтому очень важно соблюдать соответствие версий драйверов ODBC и программ. 32-разрядная версия QlikView совместима только с 32-разрядными драйверами ODBC. 64-битная версия совместима как с 32-разрядными, так и с 64-разрядными драйверами ODBC.

Сравнение архитектуры OLE DB и ODBC

Главное отличие от ODBC состоит в том, что ODBC была создана только для доступа к реляционным данным, а вот OLEDB может подключаться к любым данным.
OLEDB состоит из 3 компонентов:
1) data consumers — потребители данных;
2) data provides — провайдеры данных;
3) service components — сервисные компоненты.
Сравнение архитектуры OLE DB и 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:
AccessPoint в QlikView

QlikView Services — описание

QlikView Directory Service Connector — Отслеживает всех пользователей по выбранным каталогам Directory Services.
QlikView Distribution Service — Сервис, который несет ответственность за перезагрузку, распределение и сжатие QlikView файлов.
QlikView Management Service — Обеспечивает консоль управления и отправку настроек другим сервисам.
QlikView Server — Хранит файлы QlikView и позволяет пользователям получать к ним доступ через разные клиентские приложения.
QlikView Webserver — Веб-сервер для AccessPoint и AJAX страниц. Кроме того, сервис отвечает за балансировку нагрузки на QlikView сервере (QVS).

Консоль управления и доступ к моделям

http://localhost:4780/QMC — QlikView Management Console (административная панель для настройки QlikView сервера, найстройки доступа к документам и т.д.).
http://localhost/qlikview — QlikView AccessPoint (открытие документов пользователями через единую точку доступа в веб-браузере).

Источники данных для моделей QlikView

Ниже приведена иллюстрация возможных источников данных для моделей QlikView:
istochniki_dannih_dlya_modelei_QlikView

Как могут использоваться источники данных в QlikView?
Как могут использоваться источники данных в QlikView

Функциональный обзор QlikView

functionalnii_obzor_qlikview

Скрипты загрузки

Скрипты загрузки определяют источники данных, указывают условия, по которым производится загрузка данных, а также определяется порядок обработки данных. Система QlikView не является инструментом извлечения, преобразования и загрузки данных (ETL tool), но имеет достаточно обширный и мощный функционал в области ETL — имеется более 350 функций преобразования данных.
Данные из СУБД загружаются в QlikView с помощью интерфейса OLE DB / ODBC от Microsoft. Для того, чтобы загрузка начала работать, необходимо установить Драйвер, который поддерживает соответствующую СУБД, и настроить СУБД в качестве источника данных ODBC.
Пример схемы ETL-процесса
primer_schemi_etl_processa
ETL – базовое понятие: Extraction + Cleaning, Transformation, Loading.

Три этапа:

  • Извлечение – извлечение данных из внешних источников в понятном формате; Очистка данных (Cleaning) – процесс отсеивания несущественных или исправления ошибочных данных на основании статистических или экспертных методов.
  • Преобразование – преобразование структуры исходных данных в структуры, удобные для построения аналитической системы;
  • Загрузка – загрузка данных в хранилище.

etl_process_qlikview

Схема потока данных или организация процесса обработки данных:
enterprise_data_flow

Несколько уровней обработки данных

Очень часто процесс загрузки данных делится на несколько уровней. На выходе с каждого уровня имеется набор qvd-файлов, либо со справочниками измерений, либо с данными какой-либо системы учета, которые прошли предварительную обработку. Пример такой архитектуры обработки данных приведен на рисунке:
Уровни обработки данных в QlikView
Причем, за данные на разных уровнях могут отвечать разные ответственные лица. Это улучшает контроль за данными и повышает качество данных.
Загрузка данных с помощью слоев QVD
Функциональная диаграмма загрузки данных в QlikView:
Процесс загрузки данных в QlikView

Редактор скрипта загрузки в QlikView

В Редакторе скрипта загрузки можно ввести и выполнить скрипт, который подключает документ QlikView к источнику данных ODBC или к файлам данных и получает запрашиваемую информацию. Скрипты вводятся вручную или создаются автоматически. Сложные операторы необходимо, хотя бы частично, вводить вручную.
redactor_scripta_zagruzki_qlikview
redactor_scripta_zagruzki_qlikview_2

Знакомство с загрузкой скрипта

Очень полезным аспектом 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 используйте Мастер таблицы ограничения доступа.

Разграничение доступа по элементам измерения — литература по Section Access

Очень часто необходимо иметь одну модель, в которой содержатся все данные, и при этом пользователи должны видеть только ограниченный набор данных. Эта задача решается с помощью Section Access. Ниже приведена литература, в которой описаны подходы к реализации Section Access:

Ассоциативная модель данных QlikView

Ассоциативная модель данных — это таблицы, которые связаны по ключевым полям. Ассоциативная модель формируется автоматически в ходе процесса загрузки данных (ETL-процесс) в QlikView путем установления связей между полями с одинаковыми названиями. Когда пользователь выбирает значения в одной таблице, то автоматически в других таблицах выбираются все ассоциированные значения. Т.е. Вам не нужно генерить кучу sql запросов с множественными условиями where. Достаточно кликать мышкой и анализировать поступающую информацию.
Ассоциативная модель позволяет связывать сразу несколько таблиц по одному полю с одинаковым названием. Каждые две таблицы связываются только с помощью одного поля, иначе возникнет неоднозначность ассоциативной связи. Если необходимо связать таблицы по нескольким полям, то можно применить подход создания дополнительного ключа, в котором комбинируются или хэшируются несколько полей.
associativnaya_model_dannih

При установление фильтров в модели (выбор нескольких элементов для анализа), фильтр распространяется по ассоциативным связям на все остальные таблицы:
Механизм работы QlikView. Как работает QlikView?

Структура данных

Логические таблицы

Каждый оператор load или select создает таблицу. Обычно в QlikView результаты каждого из этих операторов обрабатываются как одна логическая таблица. Однако из этого правила существует несколько исключений.
— Если при применении двух или более операторов в полученной таблице содержатся поля с идентичными именами, таблицы будут объединены и будут обрабатываться как одна логическая таблица.
— Если перед оператором load или select вставлен один из следующих квалификаторов, данные будут изменяться или обрабатываться по-разному:
concatenate — данная таблица будет добавлена (объединена) к последней созданной логической таблице.
crosstable — данная таблица будет преобразована из формата перекрестной таблицы в формат столбцов.
generic — данная таблица разделена на несколько других логических таблиц.
info — данная таблица загружается не как логическая таблица, а как информационная таблица, содержащая ссылки на внешнюю информацию, например файлы, URL-адреса и так далее.
intervalmatch — таблица (которая должна содержать только два столбца) интерпретируется как числовые интервалы, которые ассоциированы с дискретными числами в указанном поле.
join — данная таблица будет объединена с помощью QlikView с ранее созданной логической таблицей в области общих полей.
mapping — данная таблица (которая должна содержать только два столбца) при чтении рассматривается как таблица соответствий, которая не ассоциируется с другими таблицами.
semantic — данная таблица загружается не как логическая таблица, а как семантическая таблица, содержащая взаимосвязи, которые не следует объединять, например предшествующий элемент, последующий элемент и другие связи с другими объектами того же типа. После загрузки данных логические таблицы будут ассоциированы. Логические таблицы и ассоциации можно просматривать в диалоговом окне «Обозреватель таблиц».

Ассоциации между логическими таблицами

Ассоциации между данными
В базе данных могут содержаться несколько таблиц. Каждая таблица может быть рассмотрена как список элементов, т.е. каждая запись в списке представляет собой экземпляр объекта определенного типа.
Если две таблицы являются списками различных элементов, например одна из таблиц является списком клиентов, а другая — списком счетов, и обе таблицы имеют общее поле, например номер клиента, это обычно означает, что между двумя таблицами существует взаимосвязь. В стандартных инструментах запроса SQL две таблицы практически всегда должны быть объединены.
Таблицы, определенные в скрипте QlikView, называются логическими таблицами. В QlikView создаются ассоциации между таблицами на основе имен полей, а также выполняются объединения при выборе элементов, т.е. при выборе пользователем элемента в списке.
Поэтому ассоциация QlikView практически аналогична объединению QlikView. Единственным различием между ними является то, что объединение выполняется при выполнении скрипта, при этом в результате объединения обычно создается логическая таблица. Ассоциация создается после создания логической таблицы — ассоциации всегда создаются между логическими таблицами.
svazivanie_dannih
Четыре таблицы: список стран, список клиентов, список транзакций и список принадлежностей, которые ассоциированы друг с другом посредством полей «Country» и «CustomerID».

Ассоциация QlikView аналогична стандартному внешнему объединению SQL. Однако ассоциация QlikView имеет более общие свойства: внешнее объединение в SQL обычно является односторонней защитой между двумя таблицами. Результатом ассоциирования QlikView всегда является полное (двунаправленное) стандартное внешнее объединение.

Объединение нескольких таблиц в одну

Автоматическое объединение

Если имена полей и число полей в двух или более загруженных таблицах точно совпадают, то QlikView автоматически объединит содержимое различных операторов в одну таблицу.

Пример:

Полученная в результате внутренняя таблица будет содержать поля a, b и c. Количество записей представляет собой сумму количеств записей в таблицах table 1 и table 2.

Правила:
— Количество и имена полей должны точно совпадать.
— Порядок двух операторов может быть произвольным.

Принудительное связывание

Если две или более таблицы содержат не полностью одинаковый набор полей, то в QlikView все равно можно объединить эти две таблицы. Это выполняется с помощью префикса объединения в скрипте, который объединяет таблицу с другой указанной таблицей или с ранее созданной таблицей.

Пример:

Полученная в результате внутренняя таблица будет содержать поля a, b и c. Количество записей в полученной таблице представляет собой сумму количеств записей в таблицах table 1 и table 2. Значение поля b в записях, полученных из таблицы 2 равно NULL.

Правила:
— Имена полей должны точно совпадать.
— Если имя ранее загруженной таблицы не было указано в операторе concatenate, то в префиксе concatenate используется таблица, которая была создана последней. Поэтому порядок двух операторов не является произвольным.

Предотвращение объединения

Если имена полей и число полей в двух или более загруженных таблицах точно совпадают, то QlikView автоматически объединит содержимое различных операторов в одну таблицу. Это можно предотвратить с помощью оператора nonconcatenate. Таблица, загруженная с помощью соответствующего оператора load или select в последствии не будет объединена с существующей таблицей.

Пример:

qlikview

Этапы создания модели в QlikView

1. Создание модели данных (Моделирование данных).
2. Создание скрипта загрузки данных из внешних источников, их предварительной проверки и обработки, а также формирования конечных данных для анализа (создание ETL-процесса).
3. Формирование интерфейса моделей с таблицами, графиками и другими инструментами визуализации данных (создание Dashboards).
4. Настройка прав доступа к моделям и компонентам моделей (дорабатывается возможность выдачи прав на компоненты моделей).
Простой ход создания информационных моделей в QlikView

Карта навыков (skills map) для QlikView-консультанта

карта навыков QlikView консультанта

Как стать экспертом по инфраструктуре платформы QlikView?

Как стать экспертом по инфраструктуре — QlikView.pdf

Некоторые важные аспекты при создании приложении на базе QlikView

Ниже приведена MindMap карта с важными аспектами проектной деятельности, на которые следует обращать внимание:
qlikview_mindmap_key_aspects

Простой план QlikView проекта

Простой план проекта QlikView

DW/BI Lifecycle Roadmap

DW/BI Lifecycle Roadmap

Модели, построенные на измерениях, в QlikView (Dimensional models)

Dimension-модель данных состоит из одной таблицы фактов. Таблица фактов состоит из ключей измерений (ключевое поле для связей с таблицами, в которых описаны измерения) и метрик.
Таблицы измерений содержат описания и атрибуты, которые обеспечивают контекст для метрик, которые хранятся в таблице фактов. Измерения часто держат данные на нескольких иерархических уровнях, что обеспечивается с помощью денормализованной структуры одной таблицы.

Схема «Звезда»

Таблицы фактов и измерений объединены в схему «Звезда». Это наименование используется в связи с тем, что модель данных внешне напоминает звезду.
Схема "Звезда" Qlikview
Большим преимуществом данной схемы является то, что бизнес-пользователи могут легко понять взаимосвязи между таблицами, а соответственно и бизнес-логику модели.

Схема «Снежинка»

Особенностью схемы «снежинка» является то, что таблицы измерений могут быть соединены с таблицами измерений других иерархических уровней непосредственно, минуя таблицу фактов. Поэтому данную схему рекомендуется использовать при наличии иерархии измерений.
Схема "Снежинка" QlikView

Создание Dimensional-модели

Так как зачастую нам необходимо перейти от ER-диаграммы (модели данных транзакционных систем) к Dimensional-модели данных, то стоит для начала понять как нам необходимо перекладывать ER-модель в Dimensional-модель. Транзакционная система часто содержит данные, которые используются для различных бизнес-процессов. Например, подумайте, сколько много различных бизнес-процессов и функций поддерживает типичная ERP-система: Бухгалтерский учет, управление человеческими ресурсами, управление производством, управление цепочками поставок, управление взаимоотношениями с клиентами и т.д. Данные для всех этих процессов, как правило, хранятся в одной ER-схеме.
Рассмотрим шаги перехода от ER-модели к ER-модели данных:

  • Первый шаг: Для того, чтобы перейти от реляционной структуре к структуре измерений, необходимо разделить ER-схему по отдельным бизнес-процессам. Каждый выделенный бизнес-процесс будет моделироваться в отдельной схеме «Звезда».
  • Второй шаг: Определить уровень детализации бизнес-процесса (например, одна перевозка или одна выплата денежных средств). Затем необходимо создать группу мер, которые будут использоваться для бизнес-процесса в одной таблице фактов.
  • Третий шаг: Оставшиеся таблицы сводятся в таблицы измерений (dimensions) и непосредственно связываются с таблицей фактов, при помощи ключевых полей (одно ключевое поле для одной связи — для определенности ассоциативной модели). Вполне возможно, что одна и та же таблица измерений будет использоваться в нескольких схемах «Звезда» разных бизнес-процессов. Например, измерение «Сотрудник» может быть использовано в контексте деятельности авиакомпаний, а также в контексте заработной платы.

Примечание: В QlikView, мы можем использовать QVD-файлы для хранения согласованных измерений. Например, мы можем хранить измерение «Типы самолетов» в qvd-файле и использовать этот файл в любом приложении, которому потребуется эта информация. Таким образом, согласованность данных обеспечивается между несколькими приложениями.

Таблица плюсов и минусов различных подходов к моделированию в Qlikview

Основным преимуществом использования многомерной модели данных (dimensional model) в QlikView является время отклика. Модель работает быстрее, когда существует меньше связей между таблицами. Второе преимущество заключается в том, что многомерная модель легка в понимании и с ней легче работать. Для оптимизации работы QlikView иногда все данные сводят в одну плоскую таблицу (т.к. ссылок между таблицами вообще не будет существовать). Но в любом случае, выбор схемы для проектирования модели данных в QlikView зависит от множества факторов. Ниже приведены различные плюсы и минусы подходов проектирования модели данных:
Таблица плюсов и минусов различных подходов к моделированию в Qlikview

Пример Dashboards

primer_Dashboard_1
В момент, когда пользователь выбрал необходимые значения в любом из списков или таблицах, система QlikView автоматически подстраивает все остальные поля в соответствии со сделанным выбором. Значения, которые выбрал пользователи выделяются зеленым цветом. Все связанные со сделанным выбором элементы окрашиваются в белый цвет. Не связанные элементы — выделяются серым цветом.
primer_Dashboard_2
primer_Dashboard_3

Различные пути загрузки данных в QlikView

Введение

Существуют различные способы и методы для загрузки данных в QlikView. Ниже приводятся описания каждого метода загрузки данных в QlikView с примерами.

Виды загрузок данных

  1. Loading data from the file – Загрузка данных из файла, обычный метод загрузки данных.
  2. Inline Load – Построковая ручная загрузка.
  3. Resident Load – Загрузка из уже существующих таблиц в модели QlikView.
  4. Incremental Load — Инкрементальная загрузка.
  5. Binary Load – Двоичная загрузка.
  6. Add Load – Частичная загрузка.
  7. Buffer Load – Буферная загрузка.

Типы загрузок данных в приложение qlikview

Загрузка данных из файла (Loading Data from File)

  • Этот метод является обычным методом загрузки данных в приложение Qlikview.
  • Загружаются данные из файлов, таких как Excel, MSDB, CSV, Txt файлов и т.д., а также загрузка может быть выполнена путем создания ODBC-подключение к базе данных напрямую.

Пример

Построковая ручная загрузка (Inline Load)

  • Второй способ загрузки — это Inline загрузка, в которой пользователь может определить свои собственные данные и загрузить их в Qlikview.
  • Inline данные могут быть определены в мастере Inline данных.

Пример

Загрузка из существующих таблиц (Resident Load)

  • Загружать данные из уже загруженной таблицы в модель QlikView возможно с помощью Resident Load.
  • Преобразования и вычисления данных могут быть выполнены в скрипте resident load.

Пример

Инкрементальная загрузка (Incremental Load)

  • Инкрементальная загрузка используется для загрузки только новых или измененных записей.
  • Это бывает очень полезно, когда база данных является большой.
  • Данный инструмент загрузки предполагает загрузку старых данных из qvd и новых записей из базы данных, и объединения их в единый qvd-файл.

Пример

Двоичная загрузка (Binary Load)

  • Загрузка данных из одного qlikview-файла называется двоичной загрузкой. Модель данных одного qvw-файла копируется из оперативной памяти на диск для другого qvw-файла.
  • Двоичная загрузка будет больше полезна, когда вы хотите улучшить уже построенный qvw-файл с такими же метриками (показателями модели).

Пример

Частичная загрузка (Add Load)

Частичная загрузка используется для присоединения или объединения данных из одной таблицы к другой таблице.
Пример

Буферная загрузка (Buffer Load)

Буферная загрузка помогает создавать qvd-файлы автоматически.
Пример

Операторы и ключевые слова скрипта

Join

Префикс 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 в виде двух отдельных именованных таблиц.

Циклические ссылки («циклы»)

Если циклические ссылки («циклы») присутствуют в структуре данных, таблицы будут ассоциированы таким образом, чтобы существовало более одного пути ассоциирований между двумя полями. Подобный тип структуры данных обычно следует избегать, поскольку его использование может привести к неоднозначности интерпретации данных. К сожалению, циклические структуры повсеместно распространены. В некоторых случаях они являются результатом неудачной структуры базы данных, однако в определенных случаях их использование неизбежно.

Пример: Три таблицы с циклической ссылкой
ciclicheskaya_ssilka

В QlikView можно решить проблему циклических ссылок путем нарушения цикла с помощью слабосвязанной таблицы. Когда в QlikView в ходе выполнения скрипта загрузки будут обнаружены циклические структуры данных, на экране отобразится предупреждение, и одна или несколько таблиц будут установлены в качестве слабосвязанных. Обычно в QlikView предпринимается попытка сделать слабосвязанной наиболее длинную таблицу в цикле, поскольку она часто является таблицей транзакций, которая обычно и должна быть слабосвязанной. Если стандартный выбор таблицы в QlikView для ее установки в качестве слабосвязанной непригоден, можно установить определенную таблицу в качестве слабосвязанной с помощью оператора скрипта loosen table . Кроме того, параметры слабосвязанной таблицы можно изменить в интерактивном режиме на странице Свойства документа: Таблицы после выполнения скрипта.

Слабосвязанные Таблицы

Слабосвязанная таблица — это таблица, в которой стандартная логика QlikView отключается изнутри. Это означает, что выборки в одном поле не проходят через другие поля таблицы.

Основной пример
Посмотрите три приведенные ниже поля таблицы, каждое из которых представляет таблицу, переданную в QlikView.
slabosvyazannie_tablici_1
Если в поле B выбрано значение 2, будут выполнены следующие операции.
slabosvyazannie_tablici_2
Выбранное значение отобразится во всех таблицах. Теперь, не изменяя выбранного значения, сделаем таблицу 2 слабосвязанной. Это означает, что логика между полями А и С в таблице 2 будет удалена. Результат будет выглядеть так, как показано ниже:
slabosvyazannie_tablici_3
Обратите внимание, что показанная здесь таблица 2 является полем таблицы, а не самой таблицей. В поле таблицы будут показаны все возможные сочетания между полями столбцов. Поскольку между полями А и С нет логической связи, будут показаны все сочетания соответствующих возможных значений.

Предотвращение циклической ссылки

В следующем примере показано, как можно использовать слабосвязанные таблицы для предотвращения циклических ссылок в структуре данных.
predotvrashenie_ciclichnoy_ssilki
Конечно, эта структура данных не особенно хороша, поскольку имя поля Country используется для двух разных целей. В одной таблице оно означает место жительства владельца автомобиля, а в другой оно означает местонахождения производителя автомобиля. На основании данных в таблицах сформирована невозможная логическая ситуация. Вне зависимости от места выбора можно проследить ассоциации через все ячейки во всех трех таблицах.

Необходимо выбрать наиболее важную цель — страна проживания или страна, в которой произведен автомобиль. Если таблица Carmaker является слабосвязанной, будут нарушены ассоциации от Cadillac к США и от Volvo к Швеция. При щелчке элемента Швеция он будет ассоциирован с Бьорн Борг и Cadillac. При щелчке элемента Volvo он будет ассоциирован с Джордж Буш и США.
Если предпочтительно сконцентрироваться на производителях автомобилей, имеет смысл сделать слабосвязанной таблицей таблицу Home.

Создание комбинированного ключа в QlikView

Очень часто, при создании сложных моделей данных в QlikView, приходится прибегать к использованию комбинированных ключей. Ниже приводятся функции, которые можно использовать при генерации комбинированного ключа. А также можно создавать комбинированный ключ при помощи склеивания нескольких уникальных полей.

Функции:
Функция Autonumber — создает номер комбинации строк: Autonumber(Продукт&Продавец);
Функция Autonumberhash128 — создает номер комбинации строк: Autonumberhash128([Продукт],[Продавец]);
Функция Autonumberhash256 — создает номер комбинации строк: Autonumberhash256([Продукт],[Продавец]);
Функция Hash128 — создается зашифрованный код: Hash128([Продукт],[Продавец]);
Функция Hash160 — создается зашифрованный код: Hash160([Продукт],[Продавец]);
Функция Hash256 — создается зашифрованный код: Hash256([Продукт],[Продавец]).

Иллюстрация результатов работы перечисленных функций:
generate_key_function

Другие способы создания комбинированных ключей описаны в руководстве Generic Keys.pdf

qlikview

Использование макросов в QlikView

В QlikView могут быть использованы макросы вида VBScript или JScript. Вне зависимости от способа запуска макросы создаются и редактируются в диалоге Редактор макросов.
Использование полей ввода VBScript для взаимодействия пользователя с системой

Там, где стандартные функции VBScript InputBox и MsgBox могут использоваться свободно в макросе VBScript, при использовании JScript прямой эквивалент не доступен. Для этих целей добавлена особая библиотека qvlib. Функции показаны в ниже приведенных примерах.

Функции qvlib на самом деле работают и в макросах VBScript, как показано в следующих примерах, но в этом случае можно также использовать универсальные функции VBScript InputBox и MsgBox.

Редактор макросов

Макросы и пользовательские функции можно написать на языках VBScript и JScript, используя диалоговое окно Редактор макросов. Макрос сохраняется в документе.
Редактор макросов Qlikview

Отладчик макросов

Перед использованием отладчика макросов необходимо установить Microsoft Script Debugger. Нажатие кнопки Отладчик в диалоговом окне Редактор макросов позволяет войти в режим отладки макросов. В этом режиме можно выполнить макрос пошагово, наблюдая за содержимым переменных. До перехода в режим отладки необходимо выбрать макрос (только процедуры без параметров) в списке и установить одну или несколько точек останова в коде. Точки останова можно отключить в любое время, щелкнув номер строки рядом с позицией в коде или наведя курсор на строку и нажав клавишу F9. Нажатие сочетания клавиш Ctrl+Shift+F9 позволяет удалить все точки останова. При входе в режим отладки в диалоговом окне появятся две новые панели. На нижней левой панели указан текущий стек вызовов. При двойном щелчке в списке окно редактора будет прокручено до позиции выбранного вызова. Однако указатель выполнения не будет перемещен. На нижней правой панели указаны текущие переменные. При двойном щелчке какой-либо переменной откроется диалоговое окно Переменные, в котором можно просмотреть свойства переменной, а также можно проследить интерактивное изменение значения переменной.

Автоматизация QlikView с помощью макросов и скриптов

Автоматизация QlikView с помощью макросов

Диаграммы

В зависимости от того, что Вы хотите показать — выбираются те или иные диаграммы:
Подходы к визуализации в QlikView

Введение в диаграммы

Диаграммы — графическое представление числовых данных.
Диаграммы и таблицы являются объектами листа, которые позволяют отображать числовые значения в очень компактном виде. Например, можно показать суммы денег, распределенные по различным полям, таким как год, месяц, номер счета и т. д.
В диаграммах и таблицах можно настроить отображение либо частоты различных значений поля, либо рассчитываемую запись, например сумму возможных значений поля. В обоих случаях некоторое поле необходимо выбрать в качестве оси X, то есть это поле будет использовать для обозначения кусков пирога, различных полос на гистограммах и строк в сводной таблице соответственно.
Диаграммы QlikView можно разделить на две основные категории. Первая – графические диаграммы – включает гистограммы, линейные графики, круговые диаграммы, точечные диаграммы, радар, сеточные, блочные диаграммы, датчики и диаграммы Мекко. Вторая категория – табличные диаграммы – включает прямые и сводные таблицы. Диаграммы этого типа изображаются в виде таблиц с ячейками в столбцах и строках. Следует иметь в виду, что окна таблиц, которые во многом похожи на табличные диаграммы, диаграммами не являются, а представляют собой отдельный тип объектов листа.
Компоненты графических диаграмм QlikView:
componenti_graficheskih_diagram_qlikview

Компоненты табличных диаграмм QlikView:
componenti_tablichnih_diagram_qlikview

Гистограмма

gistogramma

Линейный график

Линейный график отображает данные в виде линий, соединяющих точки значений, одних точек значений или линий вместе с точками значений. Линейные графики удобно использования для отображения изменений или тенденций.
lineiniy_grafic

Комбо диаграмма

Комбо диаграмма сочетает функции гистограммы и линейного графика: значения одного выражения можно отображать в виде столбцов, а значения другого в виде линий или символов.
combo_diagramma

Диаграмма Радар (Лепестковая диаграмма)

Лепестковые диаграммы можно описать как графики, в которых ось x обернута на 360 градусов и для каждого значения x имеется ось y. Такая диаграмма похожа на паутину или экран радара.
diagramma_radar

Точечная диаграмма

Точечная диаграмма представляет пары значений из двух выражений. Это удобно, когда необходимо отобразить данные, каждый экземпляр которых имеет два числа, например значение для страны (население и прирост населения).
tochechnaya_diagramma

Сетчатая диаграмма

Сетчатая диаграмма подобна точечной, за исключением того, что значения измерений откладываются на осях, а символы графика определяются с помощью выражения. Специальный режим позволяет отображать третье измерение в виде символов графиков, которые отображаются как небольшие круговые диаграммы.
setchataya_diagramma

Круговая диаграмма

Как правило, на круговых диаграммах отражается связь между отдельным измерением и отдельным выражением, однако иногда могут использоваться два измерения.
krugovaya_diagramma

Диаграмма Воронка

Диаграмма Воронка обычно используется для показа данных в потоках и процессах. С точки зрения представления она связана с такой диаграммой, как Круговая диаграмма. Диаграмма может отображаться либо с высотой/шириной сегмента, либо с площадью сегмента, пропорциональной данным. Также диаграмма может включать сегменты одинаковой высоты/ширины без привязки к началу координат.
diagramma_voronka

Блочная диаграмма

Блочная диаграмма показывает отношение между значениями выражения в виде блоков переменной области. Возможно отображение до трех измерений, причем каждое измерение может быть разбито на подблоки. Часто используется дополнительное выражение для расчета цвета каждого блока. При этом такой тип диаграммы также называют тепловой диаграммой.
blochnaya_diagramma

Диаграмма Датчик

Диаграммы Датчик используются для отображения значения одного выражения без измерений.
diagramma_datchik

Диаграмма Мекко

Диаграммы Мекко отображают данные с помощью линий переменной ширины. Они могут отображать до трех уровней данных в диаграмме с двумя измерениями. Диаграммы Мекко полезны в таких областях, как анализ рынка.
diagramma_mekko

Сводная таблица

Сводная таблица представляет собой один из наиболее мощных инструментов анализа данных. Она предоставляет широкие функциональные возможности и вместе с тем проста в использовании. В сводных таблицах измерения и выражения представлены в строках и столбцах, например в перекрестных таблицах. Данные в сводных таблицах можно группировать. Сводные таблицы могут отображать частичные суммы.
svodnaya_tablica

Прямая таблица

Сводная и прямая таблицы отличаются от других тем, что они отображают данные в табличной форме, сохраняя все свойства диаграммы.
В отличие от сводной таблицы, в прямой таблице не отображаются промежуточные суммы и она не может использоваться в качестве перекрестной таблицы. С другой стороны, все столбцы таблицы можно сортировать и каждая из строк может содержать одну комбинацию измерений и выражений.
pryamaya_tablica

qlikview

Видео по QlikView









Видео принадлежат следующим компаниям:

Пример создания приложения «Анализ продаж в QlikView»

Продвинутые возможности в приложениях QlikView

Продвинутая разработка в QlikView

Best Practices построения Performance Dashboards (панелей индикаторов)

qlikview
Панель индикаторов — это многослойное приложение на базе инфраструктуры бизнес-анализа и интеграции данных, которое позволяет организации осуществлять измерение, мониторинг и управление бизнесом более эффективно.
Панель индикаторов — это не просто экран, заполненный причудливой графикой, характеризующей эффективность, — это законченная корпоративная информационная система, разработанная для того, чтобы помогать организациям добиваться максимальной эффективности и достигать поставленных стратегических целей.

Приложения, входящие в состав панели индикаторов

Панель индикаторов фактически представляет собой три приложения, сплетенные в единый комплекс прозрачным для пользователя образом, а именно:
1) приложение для мониторинга,
2) приложение для анализа,
3) приложение для управления.

Приложение для мониторинга позволяет мгновенно выявлять критически важную информацию на основании актуальных и релевантных данных, обычно с использованием графических элементов.
Приложение для анализа дает возможность пользователям анализировать и исследовать данные об эффективности в разных измерениях и с разной степенью детализации, помогая понимать первопричины возникающих проблем.
Приложение для управления активизирует связи между руководителями, менеджерами среднего уровня и рядовыми сотрудниками и обеспечивает первым непрерывную обратную связь со всеми остальными во всем диапазоне критически важных действий, позволяя им «вести» организацию в правильном направлении.

Приложения, входящие в состав панели индикаторов

Новая концепция бизнес-анализа

Во многих отношениях панели индикаторов — это фактически новая концепция бизнес-анализа. Они превращают бизнес-анализ из набора инструментов, используемых главным образом бизнес-аналитиками и пользователями, наделенными специальными полномочиями, в средство доставки любому сотруднику предприятия необходимой ему информации. Таким образом, панели индикаторов выполняют основную задачу бизнес-анализа: они помогают организациям «улучшать» информацию, с тем чтобы ускорить корпоративные процессы и обеспечить максимальную эффективность и достижение стратегических целей.

Контекст существования панелей индикаторов

Контекст существования панелей индикаторов

Три типа панелей индикаторов

Три типа панелей индикаторов

Архитектура панели индикаторов

Архитектура панели индикаторов

Интегрирование ССП в процесс стратегического планирования компании

Integration_of_BSC_in_strategic_planning_process_of_company

Процесс стратегического контроля в компании

Процесс стратегического контроля в компании

Цели, показатели, инициативы и краткосрочные задачи

Цели, показатели, инициативы и краткосрочные задачи

Принципы разработки performance dashboards

Основные принципы разработки сенсорики (look and feel), то есть окон и функциональности, для каждого из приложений в составе панели индикаторов.

Приложение для мониторинга

  • Необходима избирательность. На дисплее должны присутствовать только критически важные показатели, необходимые пользователю для достижения стоящих перед ним целей. Нельзя сбивать пользователя с толку, заставляя его отслеживать слишком много параметров одновременно.
  • Обеспечьте легкость визуальной оценки. Показатели должны наглядно представлять текущее состояние (например, «превосходно», «хорошо» или «плохо»), тенденцию (например, повышение, понижение или стабильное состояние) и/или прогресс в выполнении работы (например, разрыв между фактическими и целевыми значениями ). На операционных панелях индикаторов присутствуют также фактические данные или текст.
  • Будьте экономны в средствах. Не загромождайте экран ненужной или чрезмерно красивой графикой. Графика должна представлять только релевантную информацию, причем с помощью минимального количества краски.
  • Выделяйте отклонения. Используйте цвет и специальные символы только для обозначения выходов показателей из установленных границ или иных отклонений от режима нормальной работы.
  • Обеспечьте предупреждающие сигналы для пользователей. Заблаговременно уведомляйте пользователей о выходе того или иного показателя из установленных границ через Сеть, по электронной почте или по другим достаточно эффективным каналам связи.
  • Обеспечьте возможность настройки приложения. Обеспечьте генерирование окон (в динамическом режиме), соответствующих роли и обязанностям каждого индивидуума.
  • Персонализируйте приложение. Дайте пользователям возможность персонализировать заказные окна путем выбора объектов, которые они хотят видеть, из предлагаемого списка.
  • Обеспечьте вывод информации о свойствах показателя с одного щелчка. Необходимо обеспечить пользователю доступ к информации о свойствах того или иного показателя (например, о том, как он выводится, кто его «хозяин», когда он последний раз обновлялся и т. п.) с одного щелчка.
  • Обеспечьте просмотр информации с одного щелчка. Необходимо, чтобы по щелчку пользователя на названии или значке данного показателя ему открывался доступ к скрытой под ним информации в форме таблиц или диаграмм.
  • Обеспечьте представление информации в режиме «нужного времени». Хотя это в большей мере зависит от инфраструктуры, этот момент применительно к приложению для мониторинга является критически важным. Элементы дизайна должны наполняться информацией в режиме «нужного времени», чтобы пользователи могли заранее принимать корректирующие меры и оптимизировать процессы.

Приложение для анализа

  • Сделайте его интерактивным. Убедитесь, что пользователи могут переходить от резюме к контекстам и обратно, получать доступ к отчетам и переходить с верхнего уровня на нижние уровни с более подробной информацией, используя простую методику «наведи и щелкни».
  • Сделайте его структурированным. При переходе от одного параметра или одного формата к другому (например, от таблиц к диаграммам) пользователь не должен блуждать в море информации или перемещаться с уровня на уровень то вверх, то вниз. Создайте для пользователей ясные подсказки и четко определите пути для переходов с уровня на уровень, то есть обеспечьте структуру, которая позволит пользователям легко находить нужную информацию.
  • Сделайте его обучающим. Обеспечьте начинающим пользователям «путеводитель» по процессам анализа и обработки информации об эффективности работы или поиска релевантных отчетов с помощью специальных программ (wizards), контекстно-зависимых рекомендаций или программ онлайновой помощи.
  • Обеспечьте возможность изучения деталей. Обеспечьте «прозрачный» для пользователя динамический доступ к данным о транзакциях, хранящимся в хранилище данных или системе поддержки основных операций.
  • Обеспечьте поддержку разных каналов передачи информации. Обеспечьте пользователям доступ к панели индикаторов через различные интерфейсы, включая электронную почту, беспроводные устройства и приложения для настольных систем.
  • Обеспечьте возможность автономной работы. Обеспечьте пользователям возможность отключаться от сети и использовать панель индикаторов и ее данные для дальнейшего анализа в автономном режиме.
  • Обеспечьте поддержку сложных методов анализа. Обеспечьте пользователям возможность выполнения анализа типа «что, если…», создания и тестирования сценариев, прогнозирования и создания простых статистических моделей в рамках существующей системы или с помощью приложений от внешних поставщиков (например, Excel, инструментов для добычи данных или современных инструментов визуализации).

Приложение для управления

  • Обеспечьте широкую публикацию информации. Обеспечьте открытый доступ к результатам в масштабах всей компании, особенно для групп и индивидуумов, равных по положению, чтобы они могли сравнивать эффективность своей работы и работы коллег.
  • Обеспечьте широкий обмен информацией. Обеспечьте обмен информацией между группами, использующими разные системы панелей индикаторов , для улучшения координации и интенсификации обмена идеями.
  • Обеспечьте возможность сравнения с планами. Используйте целевые значения и категории, указанные в бюджетах, стратегических планах, прогнозах или данных бенчмаркинга, чтобы сотрудники могли количественно оценивать свой прогресс и повышать точность своих прогнозов.
  • Обеспечьте возможность прикрепления комментариев. Обеспечьте пользователям возможность прикрепления комментариев к окнам панели индикаторов и реакции на такие комментарии. Такие углубленные дискуссии обеспечивают «журнал аудита» для идей, решений и действий, который удобно использовать для регулирования процессов и который приносит пользу менеджерам-новичкам, которые хотят научиться управлять теми или иными процессами.
  • Обеспечьте возможность сотрудничества. Обеспечьте пользователям возможность наладить технологический процесс таким образом, чтобы он рассылал пользователям, согласно утвержденным спискам, публикуемые изображения панели индикаторов для анализа и одобрения.
  • Обеспечьте своевременное обновление информации. Обеспечьте достаточно частое обновление информации, чтобы пользователи могли своевременно принимать корректирующие меры при возникновении проблем и использовать открывающиеся возможности, пока они не упущены.
  • Встраивайте рекомендации. Встраивайте в систему панели индикаторов контекстно-зависимые рекомендации для пользователей.

QlikView — BEST PRACTICES (GOOGLE DISK)

Примеры решений QlikView из различных областей (Google Disk)

Какие книги почитать по QlikView?

1) Концептуальные основы по построению панелей индикаторов (обязательно к прочтению, можно найти в сети):

2) Книги с amazon на английском (некоторые можно найти в сети):

3) QlikView — Руководства на английском языке (Google Disk)

4) QlikView — Руководства на русском языке (Google Disk)

Интернет-ресурсы по QlikView

Глоссарий QlikView для разработчиков

Посмотреть глоссарий можно в отдельной статье — Статья с глоссарием технических терминов для QlikView специалистов.
qlikview

12
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x