Инструменты для правки конфигураций, отчётов и обработок 1С 8.3: что выбрать под задачу

· 10 мин

Содержание

Редактировать 1С 8.3 можно тремя способами: в Конфигураторе (он есть в любой установке платформы), в среде разработки 1С:EDT или во внешнем редакторе вроде VS Code с поддержкой языка 1С. Для отчётов, печатных форм и настроек списков программист часто не нужен вовсе: многое меняется прямо в пользовательском режиме.

Частое заблуждение — что «нормальные программисты давно ушли из Конфигуратора». Это не так. Внешний редактор удобен для кода, но формы, макеты, права и обновление структуры базы всё равно делают платформенными средствами. Правильный вопрос не «чем заменить Конфигуратор», а «какой инструмент добавить к нему под мою задачу».

Конфигуратор: базовый инструмент, без которого не обойтись

Конфигуратор — режим запуска платформы. В окне запуска выделите базу и нажмите кнопку Конфигуратор. Из командной строки тот же режим открывает 1cv8.exe DESIGNER.

Что в нём делают:

  • 🧩 редактируют дерево метаданных: справочники, документы, регистры, роли;
  • 📝 пишут код модулей с подсказкой, отладкой и синтакс-проверкой;
  • 🖼 рисуют управляемые формы и табличные макеты печатных форм;
  • 🔌 создают и подключают расширения конфигурации ;
  • 🔄 обновляют типовую конфигурацию и структуру базы данных;
  • 📦 открывают внешние отчёты и обработки (.erf, .epf) через Файл → Открыть.

Ограничения у него тоже понятные:

  • текстовый редактор слабее современных: нет мультикурсора, гибкого рефакторинга, удобного сравнения веток;
  • работа с Git только через выгрузку в файлы, встроенной интеграции нет;
  • командная разработка — через хранилище конфигурации, а не через привычные ветки и запросы на слияние.

Типовая конфигурация по умолчанию стоит «на поддержке» и закрыта для изменений. Включить правку можно в Конфигурация → Поддержка → Настройка поддержки, но после этого каждое обновление превращается в ручное сравнение и объединение. Для доработок типовой лучше создавать расширение, а не снимать конфигурацию с поддержки.

Внешние редакторы для кода 1С: VS Code, Sublime Text, Notepad++

Внешний редактор работает с текстом модулей, а не с базой. Чтобы получить этот текст, конфигурацию или обработку выгружают в файлы (об этом — в разделе про XML). Обратно изменения загружают тоже через платформу.

VS Code

Самый развитый вариант. Сообщество 1c-syntax развивает для него расширение с поддержкой языка 1С (BSL) и сервер языка BSL Language Server. Что это даёт:

  • подсветку синтаксиса и навигацию по процедурам;
  • автодополнение по методам платформы;
  • диагностику кода: неиспользуемые переменные, запросы в цикле, слишком длинные методы и сотни других правил;
  • удобный Git прямо в редакторе.

Для языка запросов и для OneScript (скриптовый движок на языке 1С) расширение тоже даёт подсветку.

Sublime Text и Notepad++

Для этих редакторов есть пакеты подсветки синтаксиса 1С от сообщества. Глубокого анализа кода они не дают, зато открываются мгновенно. Их ниша — быстро посмотреть выгруженный модуль, поискать строку по сотне файлов, сравнить два текста.

РедакторПодсветкаАнализ кодаGitДля чего брать
КонфигураторДаСинтакс-проверкаНетВсё, что связано с базой
VS Code + BSLДаДа, сотни правилДаКод, ревью, командная работа
Sublime TextЧерез пакетНетЧерез плагиныБыстрый просмотр и поиск
Notepad++Через пакетНетНетРазовый взгляд на файл

Даже если вы пишете код в Конфигураторе, BSL Language Server полезно прогнать по выгрузке раз в релиз. Он находит ошибки, которые синтакс-проверка платформы пропускает: например, запрос внутри цикла или потерянный Возврат в функции.

Среды разработки для 1С: 1С:EDT и чем она отличается

1С:Enterprise Development Tools — отдельная среда разработки от фирмы 1С на основе Eclipse. Конфигурация в ней хранится как проект из файлов, а база данных подключается для запуска и отладки.

Чем EDT удобнее Конфигуратора:

  • 🌿 нативная работа с Git: ветки, слияние, история изменений каждого объекта;
  • 🔍 проверка кода и метаданных «на лету», с переходом к ошибке;
  • ✏️ рефакторинг: переименование метода с обновлением всех вызовов;
  • 🧪 удобнее строить проверки и сборку в конвейере непрерывной интеграции.

Чем платит пользователь:

  • требовательность к ресурсам: на машине с 8 ГБ памяти крупная типовая (ERP, КА) открывается тяжело, комфортно — от 16 ГБ и SSD (ориентировочно);
  • первый импорт большой конфигурации занимает от десятков минут до нескольких часов;
  • нужно настроить связку «проект ↔ информационная база» и следить за совместимостью версии EDT с версией платформы.

Других полноценных IDE для конфигураций 1С, сравнимых с EDT по возможностям, на практике нет. Встречающиеся в обзорах «альтернативные среды» обычно оказываются тем же VS Code с плагинами или надстройками над Конфигуратором.

Как редактировать отчёты, обработки и печатные формы

Здесь выбор инструмента зависит от того, что именно нужно поменять.

Внешний отчёт или обработка

Файлы .erf и .epf редактируют в Конфигураторе: Файл → Открыть, выбрать файл, внести правки, сохранить. Базу при этом можно не трогать: внешний файл живёт отдельно от конфигурации.

Чтобы обработку можно было подключить в типовой через Администрирование → Печатные формы, отчеты и обработки → Дополнительные отчеты и обработки, в её модуле объекта должна быть экспортная функция СведенияОВнешнейОбработке(). Без неё типовая не примет файл как дополнительную обработку.

Отчёт на системе компоновки данных

Схему компоновки открывают в Конфигураторе двойным щелчком по макету ОсновнаяСхемаКомпоновкиДанных. Там же правят запрос (через конструктор запроса), ресурсы, параметры и варианты.

Пользователь без Конфигуратора может менять сам вариант отчёта: группировки, отборы, поля, оформление. В формах отчётов типовых на БСП это делается через Ещё → Изменить вариант отчёта. Изменённый вариант сохраняется под новым именем и не затрагивает конфигурацию.

Макет печатной формы

В БП 3.0, ЗУП 3.1, УТ 11 макеты меняются без Конфигуратора: Администрирование → Печатные формы, отчеты и обработки → Макеты печатных форм. Выберите макет, откройте его на изменение, отредактируйте табличный документ и сохраните. Типовой макет остаётся в конфигурации, а ваш хранится как пользовательский, и его можно в любой момент сбросить.

Если изменение печатной формы требует новой логики заполнения (новое поле, вычисление), одного редактирования макета мало. Тогда путь — расширение конфигурации или внешняя печатная форма.

Что вы хотите изменить?

Выгрузка конфигурации в XML и автоматизация редактирования

Выгрузка в файлы превращает конфигурацию в каталог XML-описаний метаданных и .bsl-файлов с кодом. Этот формат нужен для трёх задач:

  1. Версионирование в Git. Каждый объект — отдельный файл, история видна построчно.
  2. Работа во внешнем редакторе. VS Code и анализаторы кода читают именно эти файлы.
  3. Массовые правки и поиск. Найти все места, где используется реквизит, по тысячам файлов быстрее, чем в дереве метаданных.

В Конфигураторе это команды Конфигурация → Выгрузить конфигурацию в файлы и Конфигурация → Загрузить конфигурацию из файлов. Внешние обработки выгружаются аналогично через меню Файл при открытой обработке.

Загрузка из файлов заменяет конфигурацию целиком. Перед ней сделайте выгрузку информационной базы (в Конфигураторе Администрирование → Выгрузить информационную базу, файл .dt). После загрузки структуру базы ещё нужно обновить отдельной командой.

Ручная правка XML-описаний метаданных — крайний случай. Одна опечатка в идентификаторе или ссылке на тип — и загрузка остановится с ошибкой. Код в .bsl править безопасно, XML форм и объектов — только понимая, что делаете.

Редактирование 1С онлайн: что доступно в облаке

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

  • ☁️ Аренда сервера или удалённый рабочий стол. Конфигуратор запускается на удалённой машине, вы работаете в нём как локально. Это самый частый «облачный» вариант.
  • 🌐 Сервис типа 1С:Фреш. Конфигуратора у пользователя нет. Доработки делают расширениями и дополнительными отчётами и обработками, которые сервис проверяет перед подключением.
  • 🖥 Веб-клиент. В браузере доступен пользовательский режим: варианты отчётов, макеты печатных форм, настройки списков. Конфигурацию через веб-клиент не редактируют.

Если база в облаке у провайдера, уточните у него, дают ли доступ в Конфигуратор и разрешены ли расширения. От этого зависит, какие доработки вообще возможны.

Пакетный режим, скрипты, проверки

Рутинные операции — выгрузку, загрузку, сборку обработок — удобно запускать без открытия Конфигуратора. Платформа принимает команды в пакетном режиме:

rem Выгрузить конфигурацию файловой базы в каталог XML
"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8.exe" DESIGNER /F "D:\Bases\Dev" /N "Администратор" /P "" /DumpConfigToFiles "D:\Src\cf" /Out "D:\Logs\dump.log"

rem Загрузить конфигурацию из файлов и обновить структуру базы
"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8.exe" DESIGNER /F "D:\Bases\Dev" /N "Администратор" /P "" /LoadConfigFromFiles "D:\Src\cf" /UpdateDBCfg /Out "D:\Logs\load.log"

Номер версии в пути подставьте свой: он совпадает с каталогом установленной платформы. Для внешних обработок есть пара ключей /DumpExternalDataProcessorOrReportToFiles и /LoadExternalDataProcessorOrReportFromFiles.

Что надстраивают поверх пакетного режима:

  • OneScript — движок для скриптов на языке 1С. На нём написаны многие инструменты сообщества.
  • vanessa-runner — обёртка над пакетным режимом: сборка, обновление базы, запуск тестов одной командой.
  • precommit1c — хук Git, который при коммите раскладывает .epf/.erf на исходники, чтобы изменения были видны построчно.
  • gitsync — перенос истории хранилища конфигурации в Git.
  • BSL Language Server в связке с SonarQube — автоматическая проверка качества кода на каждом коммите.

Пакетная загрузка с /UpdateDBCfg на рабочей базе требует монопольного доступа, если изменения затрагивают структуру. Пользователи должны выйти. Запускайте такие задания вне рабочего времени.

Что сделать после правок, чтобы не сломать базу

Отредактировать — полдела. Изменения должны дойти до базы и не навредить данным.

После редактирования конфигурации
Выполнено: 0 / 6

Отдельно про обновление структуры. Если правка затронула только код модулей, база обновится быстро. Если добавлены реквизиты или изменены регистры, платформа выполнит реструктуризацию таблиц, и на большой базе это займёт заметное время.

Как выбрать инструмент под свою задачу

Кто вы и что делаетеЧем редактировать
Бухгалтер: поменять отчёт или печатную формуПользовательский режим: варианты отчётов и макеты
Пользователь: подключить готовую обработкуДополнительные отчеты и обработки
Внедренец: точечная доработка типовойКонфигуратор + расширение
Разработчик-одиночка: внешние обработкиКонфигуратор, при желании VS Code для кода
Команда: собственная конфигурация1С:EDT + Git, проверки через BSL Language Server
Команда на хранилище, без EDTКонфигуратор + хранилище, gitsync для истории
Администратор: регулярные выгрузки и сборкиПакетный режим 1cv8 DESIGNER, vanessa-runner

Ещё три ориентира при выборе:

  • Слабый компьютер — оставайтесь в Конфигураторе, а VS Code используйте для чтения и анализа кода.
  • Типовая на поддержке — любой инструмент, но доработки только расширением.
  • Нужен код-ревью — без выгрузки в файлы и Git его не построить, неважно, EDT это или VS Code.

Частые ошибки и вопросы по редактированию 1С

Ошибки, которые встречаются чаще других:

  • ❌ Сняли типовую с поддержки ради одной правки. Следующее обновление превращается в многочасовое сравнение.
  • ❌ Правили XML вручную и загрузили без проверки. Конфигурация не загружается, а рабочую копию уже перезаписали.
  • ❌ Изменили конфигурацию, но не обновили структуру базы. Пользователи продолжают работать в старой версии.
  • ❌ Правили макет в Конфигураторе, хотя хватило бы «Макетов печатных форм». При каждом обновлении правку приходится переносить вручную.
Можно ли редактировать конфигурацию 1С без Конфигуратора?
Код — да, во внешнем редакторе по выгрузке в файлы. Но загрузить изменения в базу и обновить её структуру можно только средствами платформы: Конфигуратором, пакетным режимом или EDT.
Нужна ли отдельная лицензия для работы в Конфигураторе?
Запуск Конфигуратора не расходует клиентскую лицензию пользователя. Для запуска базы в режиме 1С:Предприятие лицензия нужна, поэтому отладку вы всё равно делаете на машине с доступной лицензией.
Можно ли перейти с Конфигуратора на EDT посреди проекта?
Да. EDT импортирует конфигурацию из базы или из выгрузки в файлы. Обратно в базу проект тоже выгружается, так что переход не отрезает путь назад.
Чем открыть файл .epf без установленной 1С?
Никак, если нужно его изменить: это двоичный контейнер. Раскладку на исходники делают утилиты сообщества, но собрать файл обратно без платформы нельзя.
Сохранятся ли мои макеты печатных форм после обновления типовой?
Пользовательские макеты из раздела «Макеты печатных форм» хранятся отдельно от конфигурации и при обновлении сохраняются. Если вы правили макет прямо в Конфигураторе, его придётся переносить при объединении.