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

Выбрать: Spec1C или правка BSL

Как решить, описывать изменение на Spec1C или править код BSL напрямую, — для нового файла, для загруженной обработки и для логики вне языка.

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

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

В Studio изменение можно описать двумя способами: спецификацией Spec1C, по которой при сборке генерируется запрос, или прямой правкой кода BSL на этапе Source. Они не взаимозаменяемы. Эта страница помогает выбрать способ под задачу; общие различия языков — Естественный язык, Spec1C и BSL.

Когда это нужно#

  • Вы начинаете задачу и не знаете, с какого этапа — Spec1C или Source — начать.
  • Вы загрузили готовую обработку и хотите её доработать.
  • Спецификация не даёт нужного результата, и непонятно, можно ли его добиться языком.

Перед началом#

Вспомните, что умеет Spec1C в облачной сборке:

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

Чего Spec1C не делает: не описывает бизнес-логику, обработчики событий, проведение, формы и их элементы; не восстанавливается из кода загруженного файла. Неподдерживаемые конструкции — Неподдерживаемые конструкции.

Шаги#

  1. Определите, с каким файлом вы работаете: новый, созданный в Studio кнопкой «Создать с нуля», или существующий, загруженный кнопкой «Открыть файл».
  2. Определите, что меняете: запрос к данным или логику и интерфейс.
  3. Найдите свою ситуацию в таблице ниже и выберите способ.
  4. Если выбрали правку BSL — откройте модуль на этапе Source, измените и сохраните его кнопкой «Сохранить BSL» (Сохранить изменения BSL), затем соберите файл.
  5. Если выбрали Spec1C — опишите данные (Создать спецификацию с нуля), соберите файл (Собрать файл по спецификации) и доработайте сгенерированный запрос в Конфигураторе.
СитуацияЧто выбратьПочему
Существующая обработка: исправить текст, условие, процедуруПравка BSLНадёжный путь: меняется именно ваш код, сборка упаковывает его как есть
Существующая обработка: добавить новый запрос к даннымПравка BSL (запрос можно набросать в Spec1C в отдельном новом файле и перенести вручную)Генерация в существующий файл добавляет отдельную зону, не связанную с кнопками вашей формы (см. ниже)
Новый файл: запрос по справочникам и регистрам сведений, соединение, периодSpec1CStudio сгенерирует черновик запроса; доработка вывода — в Конфигураторе
Новый файл: остатки или обороты регистра накопленияПравка BSL или КонфигураторВ облачной среде сборка с balance / turnovers останавливается
Любой файл: обработчики событий, проведение, обмен, работа с формойПравка BSL или КонфигураторЭтого нет в языке
Новый файл: запрос по Spec1C плюс свой кодОба способаКод вне зоны генерации сохраняется при сборке; зону между маркерами не правьте

Результат#

Вы выбрали способ, который даёт предсказуемый результат для вашего файла.

Что происходит при генерации в существующий файл#

Если в загруженной обработке описать в спецификации блок data и собрать файл, Studio:

  • покажет окно подтверждения: модель неполная относительно загруженного файла, будет сгенерирован код в модуль формы;
  • допишет в собранный файл зону сгенерированного кода в модуль формы с именем «Форма»; если маркеров зоны в модуле нет, зона добавляется в конец модуля;
  • не свяжет сгенерированную процедуру Сформировать с кнопками вашей формы — вызывать её нужно самостоятельно;
  • не изменит исходники на этапе Source — зона появится только в собранном файле (Генерация BSL и зоны генерации).

Отсюда риски: если в модуле формы уже есть процедура Сформировать, в 1С ожидаема ошибка компиляции из-за повторного имени; если формы с именем «Форма» в файле нет, сборка с источниками данных может не выполниться. Поэтому для существующих файлов надёжнее правка BSL.

Если не получилось#

Что видноЧто сделать
На этапе Spec1C загруженного файла баннер «МОДЕЛЬ НЕПОЛНАЯ»Это не ошибка загрузки: спецификация из кода файла не восстанавливается. Для доработки существующего кода используйте правку BSL
После сборки в Source нет сгенерированного кодаТак и должно быть: код есть только в собранном файле
Нужной конструкции нет в языкеПосмотрите Неподдерживаемые конструкции; если её там нет и в справочнике тоже — реализуйте правкой BSL
Не уверены, что изменение работаетStudio не проверяет компиляцию и выполнение. Проверьте файл в 1С — Проверить результат в 1С

См. также

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

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

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