# ScriptOnlyVariables

Системная переменная ScriptOnlyVariables используется для определения переменных только для скрипта. Эта переменная указывает, будет ли переменная скрипта доступна только в скрипте или она также будет доступна (и видна) за пределами скрипта — например, в виде листа в приложении.

После того как значение ScriptOnlyVariables определено — явно или неявно через его значение по умолчанию 0 — все переменные, определенные в операторах Let или Set после этого определения, будут использовать заданную настройку, если только значение ScriptOnlyVariables не будет изменено позже в скрипте. Это означает, что вы можете определить некоторые переменные как доступные только в скрипте, а другие разрешить выводить за пределы скрипта.

Синтаксис:

ScriptOnlyVariables

Значения `ScriptOnlyVariables`ScriptOnlyVariables

| Величина | Результаты |
| --- | --- |
| `0` | Переменные выводятся за пределы скрипта, помимо того, что они доступны внутри самого скрипта.<br><br>Это значение по умолчанию, если значение переменной ScriptOnlyVariables не определено явно в скрипте. |
| `1` | Переменные не выводятся за пределы скрипта. |

Пример 1: Вывод переменной за пределы скрипта

В этом примере переменная `vNotScriptOnly` явно настроена для отображения за пределами скрипта.

```
SET ScriptOnlyVariables = 0;
SET vNotScriptOnly = "example_text";
```

Пример 2: Скрытие переменной за пределами скрипта

В этом примере переменная `vScriptOnly` будет доступна только во время выполнения скрипта. Она не будет отображаться в других местах, например, в виде листа.

```
SET ScriptOnlyVariables = 1;
SET vScriptOnly = "example_text";
```

Пример 3: Скрытие одних переменных и отображение других

В этом примере значение ScriptOnlyVariables определяется несколько раз на протяжении всего скрипта, чтобы обеспечить различные настройки переменных. Переменная `vHideOutsideScript` будет доступна только во время выполнения скрипта. Переменная `vAllowInSheets` будет отображаться в виде листа.

```
SET ScriptOnlyVariables = 1;
SET vHideOutsideScript = "example_text";
SET ScriptOnlyVariables = 0;
SET vAllowInSheets = "example_text";
```

## Когда использовать ScriptOnlyVariables

Переменные только для скрипта помогают вам:

* Используйте определенные переменные только для выполнения расчетов и определений полей в контексте модели данных.

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

## Подробнее

* [Системные переменные](https://help.qlik.com/ru-RU/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/SystemVariables/system-variables.htm)
* [Let](https://help.qlik.com/ru-RU/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Let.htm)
* [Set](https://help.qlik.com/ru-RU/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Set.htm)
* [Работа с переменными в редакторе загрузки данных](https://help.qlik.com/ru-RU/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/work-with-variables-in-data-load-editor.htm)