# Загрузка данных из встроенных таблиц

Чтобы определить встроенную таблицу, вручную введите данные в скрипт.

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

Базовая встроенная загрузка создает таблицу и вставляет поля данных и записи.

## Зачем нужно использовать встроенные загрузки?

Встроенные загрузки полезно использовать в ряде сценариев:

* Администрирование и редактирование данных без подключения к внешним источникам.

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

* Добавление данных, которые нежелательно постоянно загружать из внешних источников. Это может сократить затраты времени, если ожидается, что источник данных может измениться в будущем, но значения данных будут оставаться прежними.

* Удобство копирования и вставки содержимого в скрипт из других файлов. Например, файлы или таблицы .csv из текстовых редакторов.

* Создание тестовых скриптов, которые можно быстро копировать и вставлять.

## Пример базового синтаксиса

Следующий скрипт содержит простую встроенную загрузку.

```
MyTable:
Load * Inline [Country, Year, Sales
Argentina, 2014, 66295.03
Argentina, 2015, 140037.89
Austria, 2014, 54166.09
Austria, 2015, 182739.87
];
```

Следующий синтаксис используется для приведенной выше встроенной загрузки:

* Load \* Inline дает QlikView команду загрузить все поля из следующей встроенной таблицы.

* MyTable: определяет имя таблицы.

* Данные заключаются в квадратные скобки.

* Первая строка оператора загрузки (load) определяет поля данных.

* Поля данных и записи разделяются запятыми.

* Точка с запятой закрывает оператор загрузки.

## Обзор синтаксиса

### Присвоение имени таблицы

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

После имени таблицы поставьте двоеточие.

### Операторы LOAD и inline

Встроенная таблица загружается с помощью предложения inline, когда используется оператор скрипта LOAD. Предложение inline указывает, что последующий текст в таблице будет содержать данные, которые введены в редактор вручную. Если не указано иное, встроенная таблица имеет формат txt и структуру текстового файла с разделителями.

Для получения дополнительной информации об операторе LOAD см. раздел [Load](https://help.qlik.com/ru-RU/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/ScriptRegularStatements/Load.htm).

### Заключающие символы и ввод данных

Данные, введенные с помощью предложения inline, необходимо заключать в специальные символы. Ниже приводятся принятые комбинации символов для заключения данных:

* Квадратные скобки: `[` и `]`

* Двойные кавычки: `"` и `"`

* Одиночные кавычки: `'` и `'`

* Обратные кавычки: `` ` `` и `` ` ``

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

Для ознакомления с примерами альтернативных заключающих символов см. раздел [Пример: альтернативные символы для заключения данных](https://help.qlik.com/ru-RU/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/inline-loads-qv.htm#ExDataEnc).

Если не задан альтернативный формат таблицы (по умолчанию используется txt), текст, заключенный в парные символы, интерпретируется как содержимое файла. Поэтому при вставке новой строки в текстовый файл ее также необходимо вставить в текст предложения inline, нажимая клавишу Enter при вводе скрипта.

### Окончание встроенной загрузки

Конец оператора встроенной загрузки обозначается точкой с запятой.

### Преобразование данных

В простой встроенной загрузке без преобразований количество столбцов определяется по первой строке. В следующем примере загруженная таблица содержит три столбца: `Product_ID`, `Supplier_Name` и `Product_Category`.

```
Products:

Load * Inline [
Product_ID, Supplier_Name, Product_Category
1, Paracel, Home Decor
2, PageWave, Electronics
3, Talarian, Software
4, Userland, Appliances
];
```

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

Для ознакомления с конкретными примерами см. раздел [Примеры: встроенные загрузки с преобразованиями](https://help.qlik.com/ru-RU/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/inline-loads-qv.htm#ExTransform).

### Настройка спецификации формата во встроенной загрузке

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

* Выбор другого символа-разделителя вместо запятой. Для ознакомления с примерами см. раздел [Примеры: альтернативные разделители](https://help.qlik.com/ru-RU/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/inline-loads-qv.htm#ExDelimiter).

  См.: [Delimiter](https://help.qlik.com/ru-RU/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/ScriptSpecifiers/delimiter.htm)

* Опускание заголовков столбцов таблицы. Для ознакомления с примером см. раздел [Пример: опускание заголовков столбцов](https://help.qlik.com/ru-RU/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/inline-loads-qv.htm#ExOmitLabels).

  См.: [Labels](https://help.qlik.com/ru-RU/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/ScriptSpecifiers/labels.htm)

* Использование другого формата данных (например, формат фиксированной записи). Для ознакомления с примером см. раздел [Пример: загрузка другого типа данных](https://help.qlik.com/ru-RU/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/inline-loads-qv.htm#ExChangeFormat).

  См.: [Table format](https://help.qlik.com/ru-RU/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/ScriptSpecifiers/table-format.htm)

  Примечание к информацииНе все варианты Table format поддерживаются для встроенных загрузок.

* Использование многострочного содержимого. Для ознакомления с примером см. раздел [Пример: многострочное содержимое](https://help.qlik.com/ru-RU/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/inline-loads-qv.htm#ExMultLine).

  См.: [Quotes](https://help.qlik.com/ru-RU/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/ScriptSpecifiers/quotes.htm)

Чтобы использовать несколько элементов спецификации формата в одной таблице, разделяйте их запятыми. Например:`  (Delimiter is '|', no labels) `

Для получения полных сведений о спецификации формата см. раздел [Элементы спецификации формата](https://help.qlik.com/ru-RU/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/ScriptSpecifiers/format-specification-items.htm).

### Операторы и другие предложения

Кроме того, поскольку встроенная загрузка представляет собой оператор LOAD, можно объединить другие аргументы для оператора LOAD во встроенную загрузку. Например, используйте предложение where или while, чтобы определить необходимость загрузки конкретной строки на основе содержащегося в ней текста.

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

Для ознакомления с конкретным примером см. раздел [Пример: операторы для трансформаций и предложений](https://help.qlik.com/ru-RU/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/inline-loads-qv.htm#ExOpsAndClauses).

## Пример: альтернативные символы для заключения данных

Для заключения встроенной загрузки можно использовать квадратные скобки, кавычки или обратные кавычки. В данном разделе приводится соответствующий пример. Для получения дополнительной информации см. раздел [Заключающие символы и ввод данных](https://help.qlik.com/ru-RU/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/inline-loads-qv.htm#Enclosure).

#### Скрипты загрузки и результаты

Обзор

Этот пример демонстрирует, как можно заключить встроенные данные в обратные кавычки. Данные в примере содержат квадратные скобки, и поэтому в эти символы нельзя заключить данные в операторе LOAD.

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

```
DataTable:

Load * inline 
`
custom_property, date, amount
[11402], 1/1/2024, 92.99
[11403], 1/2/2024, 102.34
[11404], 1/3/2024, 50.26
[11405], 1/4/2024, 153.69
[11406], 1/5/2024, 75.62
`;
```

Результаты

* `custom_property`

* `date`

* `amount`

Таблица результатов

| custom\_property | date | amount |
| --- | --- | --- |
| [11402] | 1/1/2024 | 92.99 |
| [11403] | 1/2/2024 | 102.34 |
| [11404] | 1/3/2024 | 50.26 |
| [11405] | 1/4/2024 | 153.69 |
| [11406] | 1/5/2024 | 75.62 |

## Примеры: альтернативные разделители

Для разделения значений в таблице можно использовать не только запятую. Для получения дополнительной информации см. раздел [Настройка спецификации формата во встроенной загрузке](https://help.qlik.com/ru-RU/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/inline-loads-qv.htm#FormatSpec).

#### Скрипты загрузки и результаты

Обзор

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

Этот пример содержит:

* Четыре таблицы для загрузки. Таблицы:

  * Table1: разделитель ― вертикальная черта (|). Данные в столбце Phrase содержат запятые.

  * Table2: разделитель ― двоеточие.

  * Table3: разделитель ― обратная косая черта.

  * Table4: для разделения столбцов таблицы нажимается клавиша Tab. Этот вариант полезен, когда таблица копируется из текстового редактора и вставляется в скрипт.

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

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

```
Table1:
LOAD * INLINE [
ID|Phrase
1 | 'The transaction was complete, but the order has not yet shipped.'
2 | 'We need to confirm the following details: sales rep number, order status, and shipping priority.'
] (Delimiter is '|');

Table2:
LOAD * INLINE [
Num1:Chr1
1:A
2:B ] (Delimiter is ':');

Table3:
LOAD * INLINE [
Num2\Chr2
1\A
2\B ] (Delimiter is \\);

Table4:
LOAD * INLINE [
Num3	Chr3
1	A
2	B ] (Delimiter is '\t');
```

Результаты

Таблица результатов: Table1Table1

| ID | Phrase |
| --- | --- |
| 1 | The transaction was complete, but the order has not yet shipped. |
| 2 | We need to confirm the following details: sales rep number, order status, and shipping priority. |

Таблица результатов: Table2Table2

| Num1 | Chr1 |
| --- | --- |
| 1 | A |
| 2 | B |

Таблица результатов: Table3Table3

| Num2 | Chr2 |
| --- | --- |
| 1 | A |
| 2 | B |

Таблица результатов: Table4Table4

| Num3 | Chr3 |
| --- | --- |
| 1 | A |
| 2 | B |

## Пример: опускание заголовков столбцов

Отредактируйте спецификацию формата, чтобы загрузить встроенную таблицу, не определяя заголовки столбцов. Для этого используется спецификация labels (со значением no labels). Для получения дополнительной информации см. раздел [Настройка спецификации формата во встроенной загрузке](https://help.qlik.com/ru-RU/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/inline-loads-qv.htm#FormatSpec).

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

#### Скрипты загрузки и результаты

Обзор

Этот пример демонстрирует загрузку встроенной таблицы без определения имен столбцов.

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

```
Expenses:

Load * inline
[
1,Category1,40566.49
2,Category2,3504.54
3,Category3,593206.30
] (no labels);
```

Результаты

Таблица результатов

| @1 | @2 | @3 |
| --- | --- | --- |
| 1 | Category1 | 40566.49 |
| 2 | Category2 | 3504.54 |
| 3 | Category3 | 593206.30 |

## Пример: загрузка другого типа данных

Этот пример демонстрирует загрузку встроенной таблицы в формате фиксированных записей. См. [Настройка спецификации формата во встроенной загрузке](https://help.qlik.com/ru-RU/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/inline-loads-qv.htm#FormatSpec).

#### Скрипты загрузки и результаты

Обзор

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

* Оператор встроенной загрузки, определяющий таблицу DataTable.
* Использование fix (в составе спецификации Table format) указывает, что данные загружаются в формате фиксированных записей.

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

```
DataTable:
LOAD
"@1:4",
"@5:8",
"@9:12",
"@13:16"
INLINE [
a   b   c   d
1   2   3   4
x   y   z   w
] (fix, utf8, embedded labels);
```

Результаты

Таблица результатов

| a | b | c | d |
| --- | --- | --- | --- |
| 1 | 2 | 3 | 4 |
| x | y | z | w |

## Пример: многострочное содержимое

Этот пример демонстрирует, как можно ввести многострочное содержимое во встроенную таблицу. См. [Настройка спецификации формата во встроенной загрузке](https://help.qlik.com/ru-RU/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/inline-loads-qv.htm#FormatSpec).

#### Скрипты загрузки и результаты

Обзор

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

* Простая встроенная загрузка для определения таблицы T1.

* Использование спецификатора Quotes (со значением msq) добавления многострочного содержимого.

* Значения длины, указанные в футах и дюймах.

* Символ двойных кавычек (") обозначает конец многострочной записи. В данном примере этот же символ используется для обозначения дюймов. Это демонстрирует синтаксис и итоговое поведение, если необходимо использовать и то и другое в одном операторе LOAD. По существу, ввод символа " для двух кавычек подряд ("") указывает, что код должен интерпретироваться как один экземпляр символа в тексте.

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

```
T1:
Load *, recno() as ID inline [
Length
"1' 2""
22' 10"""
14' 8"  ] (msq);
```

Результаты

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

Таблица результатов

| ID | Length |
| --- | --- |
| 1 | 1' 2"<br><br>22' 10" |
| 2 | 14' 8" |

В приведенной выше таблице запись со значением ID=1 содержит несколько строк.

## Примеры: встроенные загрузки с преобразованиями

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

Для получения дополнительной информации см. раздел [Преобразование данных](https://help.qlik.com/ru-RU/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/inline-loads-qv.htm#Transform).

#### Пример: простое переименование поля

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

```
ORDERS:

Load Original as Updated,
* Inline
[
Original
ProductA
ProductB
ProductC
];
```

Результаты

Таблица результатов

| Original | Updated |
| --- | --- |
| ProductA | ProductA |
| ProductB | ProductB |
| ProductC | ProductC |

#### Пример: простая вставка поля идентификатора

Обзор

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

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

```
ORDERS:

Load RowNo() as ID,
* Inline
[
ProductName
A
B
C
D
E
];
```

Результаты

Таблица результатов

| ID | ProductName |
| --- | --- |
| 1 | A |
| 2 | B |
| 3 | C |
| 4 | D |
| 5 | E |

#### Пример: настройка операторов LOAD для обработки преобразований

Обзор

Этот пример показывает несколько способов, применения простого преобразования к встроенным данным. Можно использовать один или несколько операторов LOAD, и по-разному настраивать синтаксис, чтобы определить, заменяет ли преобразование исходное поле или загружаются ли оба поля: исходное и новое.

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

* Количество операторов LOAD в таблице.

* Присутствие или отсутствие символа \* (загружает все последующие поля).

* Наличие или отсутствие запятых (символ ,).

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

* Четыре таблицы, каждая из которых ссылается на одни и те же данные. Имена полей не совпадают.

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

  * DerivedYears2: используются два оператора LOAD. Скрипт загружает встроенный столбец, затем загружает вычисляемое поле, созданное на основе преобразования исходного поля. Благодаря использованию второго оператора LOAD исходный столбец не загружается в таблицу, вследствие чего исходное поле заменяется новым.

  * DerivedYears3: используется один оператор LOAD для загрузки как исходного встроенного столбца, так и преобразованного столбца.

  * DerivedYears4: используется один оператор LOAD, чтобы определить встроенное поле и преобразование этого исходного поля. В таблицу загружается только преобразованное поле.

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

```
DerivedYears1:

Load *,
Year(initial_date1) as derived_year1
;
    
Load
* inline [
initial_date1
'1/1/2022'
'1/1/2023'
'1/1/2024'
];

DerivedYears2:

Load
Year(initial_date2) as derived_year2
;
    
Load
* inline [
initial_date2
'1/1/2022'
'1/1/2023'
'1/1/2024'
];

DerivedYears3:

Load Year(initial_date3) as derived_year3,
* inline [
initial_date3
'1/1/2022'
'1/1/2023'
'1/1/2024'
];

DerivedYears4:

Load Year(initial_date4) as derived_year4
inline [
initial_date4
'1/1/2022'
'1/1/2023'
'1/1/2024'
];
```

Результаты

Таблица результатов: DerivedYears1DerivedYears1

| initial\_date1 | derived\_year1 |
| --- | --- |
| 1/1/2022 | 2022 |
| 1/1/2023 | 2023 |
| 1/1/2024 | 2024 |

Таблица результатов: DerivedYears2DerivedYears2

| derived\_year2 |
| --- |
| 2022 |
| 2023 |
| 2024 |

Таблица результатов: DerivedYears3DerivedYears3

| initial\_date3 | derived\_year3 |
| --- | --- |
| 1/1/2022 | 2022 |
| 1/1/2023 | 2023 |
| 1/1/2024 | 2024 |

Таблица результатов: DerivedYears4DerivedYears4

| derived\_year4 |
| --- |
| 2022 |
| 2023 |
| 2024 |

#### Пример: модификация содержимого поля

Обзор

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

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

* Встроенная таблица, Transformations, в которой определено преобразование для изменения текстового содержимого поля. После этого добавляется преобразуемый текст.

* Два оператора LOAD. При такой конфигурации, как в примере, в таблицу загружается только производное поле ProductName\_Trimmed.

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

```
Transformations:

Load 
Capitalize(TextBetween(OrigColumn, '{','}')) as ProductName_Trimmed;

Load * inline [
OrigColumn
Product: {soft drinks and other beverages}
Product:  {snack food}
Product: {electronics and video games}
];
```

Результаты

Таблица результатов

| ProductName\_Trimmed |
| --- |
| Soft Drinks And Other Beverages |
| Snack Food |
| Electronics And Video Games |

## Пример: операторы для трансформаций и предложений

Можно использовать операторы, чтобы определить преобразования и специфические предложения в операторе LOAD. Для получения дополнительной информации см. раздел [Операторы и другие предложения](https://help.qlik.com/ru-RU/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/inline-loads-qv.htm#OpsAndClauses).

[Операторы](https://help.qlik.com/ru-RU/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/Operators/operators.htm)

#### Скрипты загрузки и результаты

Обзор

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

* Простая встроенная загрузка для определения таблицы Purchases.

* Вставка вычисляемого поля OrderSize. Это поле является преобразованием поля amount из встроенного набора данных. Выполняется категоризация покупок как мелких или крупных в зависимости от того, превышает ли сумма $2000,00.

* Предложение where, которое запрещает загрузку записей, когда значение amount меньше $0,05.

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

```
Purchases:

Load
If(amount<2000,'Small Purchase','Large Purchase') as OrderSize,

* inline
[
ID, amount
1,2660.39
2,100.01
3,500.42
4,5023.99
5,0.04
6,2002.39
7,31034.53
8,1643.58
9,3993.65
10,614.34
11,675.93
]
WHERE
amount>1
;
```

Результаты

Таблица результатов

| ID | amount | OrderSize |
| --- | --- | --- |
| 1 | 2660.39 | Large Purchase |
| 2 | 100.01 | Small Purchase |
| 3 | 500.42 | Small Purchase |
| 4 | 5023.99 | Large Purchase |
| 6 | 2002.39 | Large Purchase |
| 7 | 31034.53 | Large Purchase |
| 8 | 1643.58 | Small Purchase |
| 9 | 3993.65 | Large Purchase |
| 10 | 614.34 | Small Purchase |
| 11 | 675.93 | Small Purchase |

В приведенную выше таблицу не загружена транзакция с ID=5. Это объясняется тем, что значение amount меньше $0,05.

## Пример: создание нулевых значений во встроенной таблице

Этот пример демонстрирует, как можно использовать переменную NullInterpret для создания нулевых значений во встроенных данных.

[NullInterpret](https://help.qlik.com/ru-RU/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/ValueHandlingVariables/NullInterpret.htm)

#### Скрипты загрузки и результаты

Обзор

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

* Простая встроенная загрузка для определения таблицы T2.

* Переменная NullInterpret, определенная как две одиночные кавычки. Когда загружается скрипт, записи, содержащие это значение, обрабатываются как нули.

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

```
set nullinterpret = '';
T2:
Load * inline [
Test
''
x ];
```

Результаты

Таблица результатов

| Test |
| --- |
| x |

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

## Дополнительные примеры

Для ознакомления с дополнительными примерами см. раздел [Load](https://help.qlik.com/ru-RU/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/ScriptRegularStatements/Load.htm).

## Подробнее

* [Load](https://help.qlik.com/ru-RU/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/ScriptRegularStatements/Load.htm)

* [Элементы спецификации формата](https://help.qlik.com/ru-RU/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/ScriptSpecifiers/format-specification-items.htm)

* [Мастер встроенных данных](https://help.qlik.com/ru-RU/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Inline_Data_Wizard.htm)