Smart1Spec Документация
Studio
СправочникИзучающий Spec1C

params

Блок params — какие четыре имени параметров распознаются, что происходит с остальными и почему параметры не меняют код облачной сборки.

Перед чтением

На этой странице

Блок params { } описывает параметры отчёта. Разбор принимает любые строки вида Имя : bool = true, но в модель попадают только четыре заранее известных имени; остальные молча теряются.

Назначение#

Параметры задают флаги отчёта: выводить ли только действующие договоры, выгружать ли файл Excel, куда сохранять выгрузку. Studio показывает их значения в модели спецификации. На код, который генерирует облачная сборка, параметры не влияют (см. ниже).

Синтаксис#

Spec1C
params {
  <Имя> : bool = true | false
  КаталогВыгрузки : Path = "<путь>"
}

Один параметр — одна строка.

Элементы#

Распознаются только эти имена. Сравнивается часть имени без учёта регистра: подходит любое имя, в котором встречается указанный фрагмент.

Имя в текстеТипЧто означает в модели
ТолькоДействующие… (например, ТолькоДействующиеНаКонец)boolтолько действующие на конец периода
ВыводитьВсеДоп… (например, ВыводитьВсеДопСоглашения)boolвыводить все дополнительные соглашения
ВыгружатьXLSXboolвыгружать в Excel
КаталогВыгрузкиPathкаталог для выгрузки, строка в двойных кавычках

Значений по умолчанию нет: если параметр не указан, в модели остаётся прежнее значение.

Пример#

Spec1C
spec1c {
  report demo
    title:  "Демо с параметрами"
    target: ordinary

  params {
    ТолькоДействующиеНаКонец  : bool = true
    ВыгружатьXLSX             : bool = false
    КаталогВыгрузки           : Path = ""
    МойФлаг                   : bool = true
  }

  data {
    main = Справочник.КлиентскиеДоговора
      fields: Ссылка, Код
  }
}

Здесь МойФлаг разбирается без ошибки, но в модель не попадает.

Что принимает разбор#

  • Строки вида Имя : bool = true или Имя : bool = false. Имя — буквы, цифры, _.
  • КаталогВыгрузки : Path = "…" — значение берётся как есть, без обработки обратной косой черты: "C:\\out" сохранится с двумя символами \.
  • Любые другие строки внутри блока (ПериодT : Period, Сумма : number = 1) не вызывают ошибки и пропускаются.
  • Два параметра в одной строке не распознаются — пропускаются оба.
  • Блок заканчивается на первой }; всё, что после неё, к параметрам не относится.

Что попадает в модель#

В модель попадают только четыре известных параметра; также принимаются английские имена exportXlsx и allAmendments. Неизвестные имена в модели не сохраняются: остаются только в тексте спецификации. Если строку параметра удалить, в модели остаётся прежнее значение.

Что проверяется#

Ничего: Studio не сообщает о неизвестных именах, неверных типах и неверных значениях. Уведомление после «Применить без сборки» параметры не перечисляет, поэтому опечатку в имени легко не заметить — сверяйте имена с таблицей выше.

Что генерируется в BSL#

По исходному коду генератора; живой сборкой со params не проверялось:

  • ТолькоДействующие… и ВыводитьВсеДоп… в генерацию кода не передаются.
  • КаталогВыгрузки в генерацию не передаётся.
  • ВыгружатьXLSX в облачной сборке принудительно отключается — код выгрузки в Excel не появляется (то же для format: xlsx, см. layout и format).

Итог: блок params не меняет модуль формы, который собирает облачная сборка. Реквизиты формы для параметров тоже не создаются.

Работа в 1С#

Поскольку параметры не попадают в код, в собранном файле их нет. Если флаг нужен в 1С, добавьте реквизит на форму и условие в запрос вручную в Конфигураторе.

Ограничения#

  • В модель попадают только четыре имени; остальные теряются без сообщения.
  • Типы кроме bool и Path не поддерживаются (Типы и значения).
  • True/False с заглавной буквы записываются как false.
  • Параметры не влияют на сгенерированный код облачной сборки.

Полный список — Ограничения реализации.

Связанные конструкции#

См. также

Сверено с продуктом: 27.10.2026

Нашли неточность? Напишите на [email protected] и укажите адрес страницы.

Smart1Spec · документация описывает текущую версию сервиса.