---
title: "Переменные и шаблоны"
id: "1343"
type: "page"
slug: "variables"
published_at: "2026-08-15T23:32:28+00:00"
modified_at: "2026-08-16T10:41:52+00:00"
url: "https://pastukhov.com/analytics-agent/docs/variables"
markdown_url: "https://pastukhov.com/analytics-agent/docs/variables.md"
excerpt: "Переменные и шаблоны Scriban делают документы динамическими: один шаблон порождает семейство отчётов, а значения подставляются…"
---

# Переменные и шаблоны

[https://pastukhov.com/analytics-agent/docs/variables.md](https://pastukhov.com/analytics-agent/docs/variables.md)

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

## Движок Scriban

Шаблонизация построена на движке Scriban: выражения вида `{{ variable }}` подставляются в заголовки, содержимое блоков и тексты запросов. Движок кэширует шаблоны для производительности.

## Переменные в путях

Путь документа может содержать переменные: шаблон `regions/{{ region }}/sales.json` порождает отдельный отчёт для каждого региона — без дублирования JSON.

## Переменные в содержимом

- определения переменных задаются в JSON документа в поле `variables`;
- значения подставляются в конфигурацию блоков и тексты SQL-запросов;
- заголовок документа тоже может быть шаблоном — имя отчёта меняется вместе с данными;
- пустое имя переменной ловится валидатором (`EMPTY_VARIABLE_NAME`).

## Селекторы

- `settings.rangeSelector` — селектор диапазона дат в хлебных крошках отчёта;
- `settings.timeframeSelector` — селектор временного интервала (гранулярности);
- выбранные значения доступны запросам — отчёт пересчитывается под выбранный период.

## Безопасность шаблонов

`TemplateSecurityService` ограничивает исполнение шаблонов: произвольный код через Scriban не исполнить — доступны только разрешённые объекты и функции.

[← Оглавление документации](/analytics-agent/docs)
