Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное пособие по QlickView.pdf
Скачиваний:
159
Добавлен:
18.03.2016
Размер:
4.74 Mб
Скачать

ЗАГРУЗКА ВСТРОЕННЫХ ДАННЫХ

УРОК 19 ЗАГРУЗКА ВСТРОЕННЫХ ДАННЫХ

В некоторых случаях может потребоваться добавить данные путем ввода

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

Функция Загрузить встроенные данные может использоваться для добавления данных в существующие таблицы или для загрузки новых таблиц в документ.

Добавление записи с использованием функции «Загрузить встроенные данные»

1Запустите QlikView и откройте файл Inline.qvw в директории

..\Tutorial\Advanced.

Документ содержит две таблицы – Customers и Sales. Предположим, что требуется добавить в документ клиента, но без изменения первоначальных файлов.

2Откройте диалоговое окно Редактор скрипта.

3Расположите курсор после оператора load, с помощью которого выполняется загрузка файла Customer.xls.

4Введите следующие строки.

Load * Inline [

Customer ID,Customer, Address, City, Zip, Country 1181, Alexander's Catering Service, Fisherman's Drive 4, Portsmouth, BH 354 RW, Great Britain];

В первой строке (Customer ID,Customer, Address, City, Zip, Country) перечисляются имена полей таблицы Customer.xls (таблица, в которую требуется добавить запись).

Вторая строка (1181, Alexander's Catering Service, Fisherman's Drive 4, Portsmouth, BH 354 RW, Great Britain) содержит запись,

которую требуется добавить.

Символ звездочки * означает "все поля", т. е. оператор должен загрузить все поля новой записи.

Примечание! Из-за ограниченного пространства запись в примере выше занимает более одной строки. Однако при выполнении выра-

Расширенные возможности

205

женияскрипта inline важно, чтобы вся запись располагалась на одной строке: элемент Portsmouth и т. д. должен идти сразу после Fisherman’s Drive 4.

5Щелкните Загрузка.

6Чтобы закрыть диалоговое окно, нажмите OK.

7Новое поле не было добавлено, но в некоторых списках появились новые значения полей. Щелкните Alexander’s Catering Service в списке Customer и убедитесь, что запись была прочитана правильно.

Данные в скобках после выражения inline рассматриваются как обычная таблица. Встроенная таблица имеет набор полей, сходный с набором полей таблицы клиентов, поэтому она была связана с этой таблицей клиентов. Можно легко проверить это, изучив лист System: только две таблицы отображаются

в списке $Table (связанной таблице всегда дается имя первой прочтенной таблицы, которой в данном случае является таблица Customer).

Сохраните документ как MyInline.qvw или нечто похожее.

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

Добавление таблицы с использованием функции «Загрузить встроенные данные»

Документ MyInline.qvw содержит поле с месяцами, записанными в виде чисел. Предположим, что требуется создать диаграмму с названиями месяцев, записанными прописью, и другую диаграмму, демонстрирующую объем продаж за квартал. Это легко решается с помощью новой таблицы, содержащей данную информацию.

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

В этом примере функция Загрузить встроенные данные будет использоваться для добавления номеров месяцев и кварталов. Поскольку в данном случае требуется добавить немного больше данных, длясоздания оператора load inline будет использоваться мастер встроенных данных. Обычно это более удобный способ по сравнению с вводом данных напрямую в скрипт.

206

ЗАГРУЗКА ВСТРОЕННЫХ ДАННЫХ

1Откройте диалоговое окно Редактор скрипта.

2Расположите курсор в конце скрипта.

3Откройте Мастер встроенных данных в меню Вставить, Оператор Load, Загрузить встроенные данные.

4Открывшееся диалоговое окно выглядит как небольшая электронная таблица и работает точно также. Однако нет поддержки формул в ячейках данных.

5Курсор будет перемещен в верхнюю левую ячейку данных. Введите данные, как показано на рисунке ниже. Используйте клавишу ENTER или клавиши со стрелками для перемещения между ячейками и заполнения таблицы, как показано ниже.

6В конце дважды щелкните заголовок над 1 и введите имя поля Month. Повторите действия для оставшихся столбцов, как показано ниже.

Рис. 61. Мастер встроенных данных

Совет! Если уже есть таблица, сохраненная в программе, например в Excel, ее можно вставить в мастер встроенных данных QlikView.

7 Нажмите OK. Теперь часть скрипта выглядит следующим образом.

Расширенные возможности

207

LOAD * INLINE [

Month, Month Name, Quarter 1, January, 1

2, February, 1 3, March, 1 4, April, 2 5, May, 2

6, June, 2

7, July, 3

8, August, 3 9, September, 3 10, October, 4 11, November, 4

12, December, 4];

8 Щелкните Загрузка.

Два новых поля было добавлено в список доступных полей: Month Name

и Quarter. Встроенная таблица была связана с таблицей Sales через поле Month.

9Нажмите OK.

10Создайте гистограмму, показывающую объем продаж за квартал (выберите Quarter в качестве измерения и добавьте выражение Sum of Sales). В случае затруднений см. Работа с QlikView на стр. 67.

Рис. 62. Предположительный вид документа Inline.qvw

11Сохраните документ и закройте файл. Если требуется, сравните файл с файлом InlineFinal.qvw.

12Если какое-то время не планируется работать с QlikView, можно выйти из программы.

208