spec1c (корень)
Корневая обёртка spec1c { … } — необязательна; что происходит с пустой обёрткой и текстом вокруг неё.
На этой странице
Корневая обёртка spec1c { … } обозначает начало и конец спецификации. Она необязательна: та же спецификация без обёртки разбирается так же.
Назначение#
Обёртка делает текст узнаваемым: в нём сразу видно, что это спецификация Spec1C, а не модуль BSL. Новый файл, созданный в Studio через «Создать с нуля», открывается на этапе Spec1C с шаблоном из пустой обёртки — в неё и записывают остальные конструкции: report, params, data и команды верхнего уровня.
Синтаксис#
spec1c {
<конструкции>
}Комментарий начинается с // и продолжается до конца строки. Комментарии снимаются до разбора и могут стоять в любом месте, в том числе до обёртки.
Элементы#
| Элемент | Обязателен | По умолчанию | Что означает |
|---|---|---|---|
spec1c | нет | — | ключевое слово корня; регистр букв не важен (SPEC1C тоже принимается) |
{ … } | нет | — | границы спецификации; внутри — остальные конструкции в любом порядке |
// комментарий | нет | — | текст до конца строки, разбором не учитывается |
Пример#
Минимальная полная спецификация: обёртка, заголовок отчёта и один источник данных.
// Список договоров
spec1c {
report contracts
title: "Договоры"
target: ordinary
data {
contracts = Справочник.КлиентскиеДоговора
fields: Ссылка, Код
}
}Тот же текст без обёртки даёт такую же модель:
report contracts
title: "Договоры"
target: ordinary
data {
contracts = Справочник.КлиентскиеДоговора
fields: Ссылка, Код
}Пустая обёртка — ошибка разбора:
spec1c {
}Что принимает разбор#
- Обёртку снимают, только если весь текст (без комментариев) начинается с
spec1c {и заканчивается}. - Если обёртки нет, перед ней есть другой текст или закрывающая скобка забыта, ошибки не будет: остальные конструкции всё равно ищутся по всему тексту. Например,
spec1c {без закрывающей}разбирается без сообщений. - После снятия комментариев и обёртки текст не должен быть пустым — иначе ошибка «пустой Spec1C».
- В тексте должен быть хотя бы
report <имя>или одна из команд: источник вdata { },show,include list,balance,turnovers. Иначе ошибка «не найден report и источники data» — даже если естьtitle:илиview { }. - Если нет блока
data { }, разбор выдаёт предупреждение «нет блока data { }» (это не ошибка).
Что попадает в модель#
Сама обёртка в модель ничего не записывает. В модель попадает то, что найдено внутри: заголовок отчёта, параметры, источники, команды. Если разбор вернул ошибку, модель не меняется.
Что проверяется#
Проверяется только то, что описано в разделе «Что принимает разбор»: непустой текст и наличие report или хотя бы одной команды. Парность фигурных скобок не проверяется.
При «Применить без сборки» пустая обёртка не доходит до разбора: Studio показывает уведомление «Spec1C пуст — заполните Intent / Данные или введите спецификацию». Если при сборке в редакторе остаётся ошибка разбора, сборка не начинается: «Сначала исправьте ошибки в Spec1C». Полный список сообщений — Сообщения об ошибках и предупреждения.
Что генерируется в BSL#
Обёртка код не порождает. Код в модуле формы появляется только от конструкций внутри неё — источников данных, соединений, отбора по периоду и вывода (см. Соответствие конструкций и BSL). Спецификация без источников данных генерацию кода не запускает.
Работа в 1С#
Файл спецификации в 1С не открывается и не выполняется: 1С работает только с собранным файлом .epf или .erf. Обёртка на поведение собранного файла не влияет.
Ограничения#
- Парность фигурных скобок не проверяется; лишняя или забытая скобка может «обрезать» блок
data { }илиparams { }без сообщения (подробнее — Структура файла и вложенность). - Блочные комментарии
/* … */распознаются только внутри строкиfields:(fields). //внутри кавычек обрезает строку.
Полный список ограничений — Ограничения реализации.
Связанные конструкции#
- report — заголовок отчёта
report. - data — блок источников
data { }. - Структура файла и вложенность — порядок и вложенность конструкций.
См. также
- report Справочник
- data Справочник
- Структура файла и вложенность Справочник
- Сообщения об ошибках и предупреждения Справочник
- Ограничения реализации Справочник
Сверено с продуктом: 27.10.2026