# Блок: Сохранение

<figure><img src="/files/stZFzwdIzogAPorz5YiU" alt=""><figcaption></figcaption></figure>

Блок **"Сохранение"** используется для сохранения данных, полученных в процессе выполнения сценария, с целью их последующего использования в дальнейших шагах, например в блоке "Результат" для итогового ответа пользователю. Данный блок позволяет сохранить значения в переменные, в зависимости от поставленных задач.

#### Основные параметры:

1. **Глобальное сохранение (чекбокс "Глоб. сейв")**:
   * Если включено, то значение сохраняется в глобальной переменной.
   * Если выключено, значение сохраняется только в пределах текущего сценария.
2. **Исходное значение**:
   * Поле, в котором указывается переменная или данные, которые нужно сохранить.
   * Пример: `this.result`, `variables.carList`.
3. **Значение для сохранения**:
   * Поле, где указывается название переменной, в которую сохраняются данные для дальнейшего использования.
   * Пример: `finalResult`, `filteredCars`.

### Примеры

<figure><img src="/files/lsq8rGg4WAYpJSLefMwi" alt=""><figcaption></figcaption></figure>

* В предыдущем блоке **"ИИ запрос"**:

  <figure><img src="/files/4KZUy7fdwrx8sJefVAyR" alt=""><figcaption></figcaption></figure>
* Формируется системный запрос к модели GPT с заданными параметрами, такими как список машин (цвет, модель, локация) и инструкции по фильтрации.
* Результат запроса возвращается в формате JSON, включающем массивы данных, таких как подходящие цвета, модели и локации, на основе пользовательских параметров.
* Ответ сохраняется в переменную `gptResult`.

**Пример данных из блока "ИИ запрос"**:

```json
json
{
  "colors": ["красный", "синий"],
  "models": ["Toyota Camry", "Ford Focus"],
  "locations": ["Москва", "Санкт-Петербург"]
}
```

**В данном кейсе блок "Сохранение" используется для:**

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

  <figure><img src="/files/wzimIcokYeWcFYSvesWT" alt=""><figcaption></figcaption></figure>

Настройка параметров

**1. Значение №1**

* **Исходное значение:**

  ```javascript
  javascript
  JSON.parse(this.gptResult)
  ```

  Декодирует строку JSON, полученную из переменной `gptResult`, в объект JavaScript.
* **Назначение для сохранения:**\
  `gptResult`\
  Результат сохраняется в глобальной переменной `gptResult` для последующего использования.

**2. Значение №2**

* **Исходное значение:**

  ```javascript
  javascript
  this.location
  ```

  Переменная `this.location` содержит текущую локацию, предоставленную пользователем на предыдущих этапах.
* **Назначение для сохранения:**\
  `location`\
  Локация сохраняется в глобальной переменной `location`.

***

#### Пример работы&#x20;

**Входные данные из блока "ИИ запрос":**

```json
json
{
  "colors": ["белый", "черный"],
  "models": ["Honda Accord", "Hyundai Solaris"],
  "locations": ["Новосибирск", "Екатеринбург"]
}
```

**Настройка блока "Сохранение результата":**

1. Переменная `gptResult`:\
   Сохраняется весь JSON-объект с цветами, моделями и локациями.
2. Переменная `location`:\
   Сохраняется пользовательская локация, например, `"Москва"`.

**Результат работы:**

* В глобальной переменной `gptResult` будет сохранен распарсенный JSON с массивами цветов, моделей и локаций.
* В переменной `location` будет сохранена текущая локация пользователя.

***

#### Использование в следующих блоках

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

1. Для фильтрации (например, фильтрация машин по цвету или модели).
2. Для проверки условий (например, проверка, есть ли данные в массиве `gptResult`).
3. Для формирования пользовательского ответа (например, вывод списка доступных моделей машин).


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.intellectdialog.com/integration.intellectdialog/blok-sokhranenie.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
