Поля ввода

QlikView поддерживает особый тип поля, которое можно изменить без выполнения скрипта — поле ввода.

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

Примечание: Поля ввода не предназначены для большого количества данных, т.к. данные в них хранятся значительно менее эффективно, чем в обычных полях.

При использовании полей ввода скрипт создает метку-заполнитель для каждого значения поля, которое может впоследствии редактироваться для размещения в нем новых данных. Любое поле можно сделать полем ввода путем его внесения в оператор inputfield в скрипте до того, как он появится в операторе LOAD или SELECT.

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

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

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

Можно указать относительное изменение.

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

Применяется следующий синтаксис (n — число):

%+n увеличивает текущее значение на n% 
%-n уменьшает текущее значение на n% 
+=n увеличивает текущее значение на n 
-=n уменьшает текущее значение на n 
*=n умножает текущее значение на n 
/=n делит текущее значение на n 

Example:  

%+10 увеличивает текущее значение на 10%.

+=56 увеличивает текущее значение на 56.

*=2 умножает текущее значение на 2.

/=2 делит текущее значение на 2.

/=0 не приводит к изменениям.

Для извлечения и установки значений программным путем существуют также API автоматизации.