Доработка 1С без потери обновлений: от галочек в настройках до расширений
Содержание
Изменить функциональность в 1С 8.3 можно пятью способами, и выбирать их стоит по порядку: сначала настройки программы (Главное → Функциональность в БП 3.0), затем дополнительные реквизиты, внешние обработки, расширения конфигурации
и только в последнюю очередь — правка самой конфигурации в Конфигураторе. Чем ниже по списку, тем больше возможностей и тем дороже каждое следующее обновление.
Типичная боль выглядит так: доработали типовую конфигурацию , а через полгода обновление встаёт на несколько дней, потому что программист разбирает конфликты. Ниже — как решить задачу самым лёгким способом из возможных и не потерять обновления.
Какой способ доработки выбрать
Прежде чем звать программиста, проверьте, не решается ли задача без кода. Половина «доработок», которые заказывают бухгалтеры, — это выключенная галочка в настройках.
| Способ | Что меняет | Кто делает | Влияние на обновления |
|---|---|---|---|
| Функциональные опции и настройки | Включает готовые механизмы | Пользователь с правами администратора | Нет |
| Настройка форм и отчётов | Внешний вид, колонки, отборы | Любой пользователь | Нет |
| Дополнительные реквизиты и сведения | Новые поля в справочниках и документах | Администратор | Нет |
| Внешние обработки и отчёты | Новые печатные формы, отчёты, заполнение | Программист | Нет, но нужна проверка после обновлений |
| Расширение конфигурации | Почти всё: формы, модули, новые объекты | Программист | Минимальное, нужна проверка совместимости |
| Изменение конфигурации | Всё без ограничений | Программист | Сильное: каждое обновление — объединение вручную |
Если задачу можно решить двумя способами, выбирайте тот, что выше в таблице. Правка конфигурации оправдана, когда расширение технически не справляется.
Включение возможностей без изменения конфигурации
Функциональные опции
Типовые конфигурации прячут часть механизмов, чтобы не перегружать интерфейс. Пока опция выключена, нужных документов и полей просто не видно.
В 1С:Бухгалтерии 3.0 настройки собраны в Главное → Функциональность. Там есть три режима: «Основная», «Выборочная» и «Полная». В режиме «Выборочная» открываются вкладки по участкам учёта: банк и касса, запасы, производство, торговля, зарплата и кадры и другие.
Примеры того, что включается галочкой:
- 📦 учёт по партиям и складам, комиссионная торговля;
- 💱 валютные операции;
- 🏭 производство и выпуск продукции;
- 🧾 маркировка товаров;
- 👥 учёт по нескольким организациям.
В ЗУП 3.1 и УТ 11 похожие флаги находятся в разделе Настройка и в Администрирование — в группах по участкам учёта. Если нужного документа нет в меню, сначала ищите, какая опция его скрывает: в описании документа во встроенной справке обычно сказано, где он включается.
Настройка интерфейса и форм
Каждый пользователь может переделать под себя то, что видит на экране:
- Чтобы добавить колонку в список или поле на форму, откройте меню
Ещё → Изменить форму. Отметьте нужные поля, переставьте их стрелками. - Чтобы настроить разделы и панели, откройте главное меню (значок с тремя полосами) →
Вид→Настройка панелей. - Чтобы поменять отчёт, нажмите
Настройки, добавьте группировки, отборы и поля. Сохраните результат как собственный вариант отчёта.
Эти настройки хранятся отдельно от конфигурации и обновлений не касаются.
Дополнительные реквизиты и сведения
Нужно новое поле у контрагента, номенклатуры или документа? Программист не нужен. Механизм включается в Администрирование → Общие настройки флагом «Дополнительные реквизиты и сведения». После этого по ссылке рядом можно создать поле нужного типа: строку, число, дату, ссылку на справочник или список значений.
Разница простая:
- 🔹 дополнительный реквизит хранится вместе с объектом и попадает в отборы и отчёты;
- 🔹 дополнительное сведение хранится отдельно и доступно для изменения даже тем, у кого нет права менять сам объект.
Дополнительный реквизит не участвует в проводках и расчётах. Если поле должно влиять на учёт, это уже задача для расширения.
Внешние обработки и отчёты
Внешняя обработка — это отдельный файл .epf, отчёт — .erf. Их пишут в Конфигураторе, а подключают в пользовательском режиме. Конфигурация при этом не меняется вообще.
Так обычно решают:
- 🖨 новые печатные формы — акты, бланки, этикетки;
- 📊 нестандартные отчёты для руководителя;
- 📥 загрузку данных из Excel или другой программы;
- 🔄 групповую обработку документов и справочников.
Как подключить
- Откройте
Администрирование → Печатные формы, отчеты и обработки. - Включите флаг «Дополнительные отчеты и обработки», если он снят.
- Перейдите по ссылке «Дополнительные отчеты и обработки» и нажмите «Добавить из файла».
- Укажите размещение: в каком разделе или в каких документах обработка будет доступна.
- Настройте, каким пользователям она видна, и запишите.
Чтобы обработка встала в меню «Печать» документа или в список команд заполнения, в её модуле должна быть экспортная функция СведенияОВнешнейОбработке(). Она сообщает программе вид обработки, версию и список команд. Без неё файл можно только открыть через Файл → Открыть, и регистрация не пройдёт.
Внешнюю обработку стоит хранить в базе, а не на диске у пользователя. Тогда она одна для всех и не потеряется вместе с компьютером.
Ограничения
Внешняя обработка работает с объектами, которые уже есть в конфигурации. Добавить новый реквизит документу, поменять логику проведения или кнопку на форме она не может. Для этого нужно расширение.
Ещё один риск: после обновления типовой конфигурации разработчик мог переименовать реквизит или регистр, к которому обращается обработка. Тогда она выдаст ошибку вида Поле объекта не обнаружено. Поэтому после каждого крупного обновления прогоняйте свои обработки на копии базы.
Расширения конфигурации
Расширение — главный инструмент доработки типовых конфигураций. Оно появилось в платформе 8.3.6 и с тех пор сильно выросло. Расширение хранится отдельно от основной конфигурации (файл .cfe) и накладывается на неё при запуске. Типовая конфигурация остаётся на полной поддержке, обновления ставятся штатно.
Что умеет расширение
- ➕ добавлять свои справочники, документы, регистры, отчёты и обработки;
- 🧩 добавлять реквизиты и табличные части к типовым объектам;
- 🖼 менять формы: поля, кнопки, команды;
- ⚙️ перехватывать процедуры типовых модулей;
- 🖨 добавлять и менять макеты печатных форм.
Как программист перехватывает типовой код
Объект типовой конфигурации сначала заимствуют в расширение. Затем к его процедуре добавляют обработчик с аннотацией:
| Аннотация | Что делает | Когда использовать |
|---|---|---|
&Перед | Выполняет ваш код до типового | Проверки, подготовка данных |
&После | Выполняет ваш код после типового | Дозаполнение, доп. движения |
&Вместо | Заменяет типовой код целиком | Когда логику нужно переписать |
&ИзменениеИКонтроль | Правит копию типовой процедуры построчно | Точечные правки внутри большого метода |
Пример: при записи документа добавить проверку, что заполнен комментарий.
&После("ПередЗаписью")
Процедура Расш1_ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
Если ПустаяСтрока(Комментарий) Тогда
ОбщегоНазначения.СообщитьПользователю("Заполните комментарий", ЭтотОбъект, "Комментарий", , Отказ);
КонецЕсли;
КонецПроцедуры
Аннотация &ИзменениеИКонтроль особенно полезна при обновлениях. Если поставщик изменил исходную процедуру, платформа сообщит, что расширение больше не совпадает с типовым кодом. Ошибку видно сразу, а не через месяц в отчётах.
Как установить расширение
- В пользовательском режиме откройте
Администрирование → Печатные формы, отчеты и обработки → Расширения. - Нажмите «Добавить из файла» и выберите
.cfe. - Если расширение меняет структуру данных (новые реквизиты, объекты), снимите флаг «Безопасный режим», только если доверяете автору.
- Перезапустите программу: расширение применится при следующем входе.
В Конфигураторе расширения подключаются через Конфигурация → Расширения конфигурации. Если расширение добавляет новые данные, после загрузки .cfe нужно отдельно выполнить обновление конфигурации
базы данных.
Расширение с флагом «Безопасный режим» не может, например, работать с файлами и внешними компонентами. Снимать флаг стоит только для расширений из проверенного источника: такое расширение получает полный доступ к данным.
Правка типовой конфигурации в Конфигураторе
Иногда расширения не хватает. Например, нужно изменить объект так, как платформа запрещает делать из расширения, или доработка затрагивает десятки типовых модулей. Тогда меняют саму конфигурацию.
Как разрешить изменения
Типовая конфигурация по умолчанию закрыта для правок. Порядок такой:
- Сделайте полную резервную копию:
Администрирование → Выгрузить информационную базув Конфигураторе. - Откройте
Конфигурация → Поддержка → Настройка поддержки. - Нажмите «Включить возможность изменения».
- Для нужных объектов выберите правило: «Объект поставщика редактируется с сохранением поддержки».
Не снимайте конфигурацию с поддержки целиком. Режим «Объект поставщика не редактируется» оставьте для всего, что вы не трогаете. Режим «снят с поддержки» лишает объект обновлений навсегда: поставщик исправит ошибку, а у вас она останется.
Правила хорошего тона при доработке
- ✏️ помечайте каждое изменение комментарием с датой и автором:
// Доработка ООО Ромашка 15.03 Иванов — начало; - 📁 новые объекты называйте с префиксом организации (
ром_ЗаявкаНаОплату), чтобы не столкнуться с типовыми; - 🧱 типовые процедуры не переписывайте, а вызывайте из них свой общий модуль одной строкой;
- 🗂 при работе нескольких программистов подключайте хранилище конфигурации, чтобы видеть историю изменений.
Когда без программного кода не обойтись
Код нужен, если меняется логика учёта: как документ формирует проводки, как считается цена, какие проверки выполняются при проведении. Ни функциональные опции, ни дополнительные реквизиты на это не влияют.
Чтобы техническое задание было понятным, опишите программисту:
- Что сейчас происходит и что должно происходить, на конкретном документе.
- Какие поля и документы задействованы.
- Какие данные уже есть в базе и нужно ли их пересчитать.
- Кто будет пользоваться доработкой.
Хорошая постановка экономит больше, чем торг о стоимости часа.
Обновление 1С с доработками без конфликтов
Именно здесь доработки показывают свою цену. Сценарий зависит от того, как вы вносили изменения.
Конфигурация → Поддержка → Обновить конфигурацию с файлом .cfu или .cf и сравнением-объединением, разбирая каждое пересечение своих и типовых изменений.Объединение при обновлении изменённой конфигурации
Когда программист обновляет доработанную конфигурацию, платформа показывает окно сравнения. В нём три версии: старая типовая, новая типовая и ваша текущая. Для каждого изменённого объекта нужно решить, чью версию брать или как их совместить.
Несколько приёмов, которые сокращают время:
- 🔍 перед объединением сохраните текущую конфигурацию в файл
.cf— к ней можно будет вернуться; - 🧮 для модулей используйте режим объединения с приоритетом новой конфигурации поставщика и потом переносите свои фрагменты по комментариям-маркерам;
- 🧪 обновляйте сначала копию базы, проверяйте ключевые документы и только потом рабочую.
Перенос доработок в расширение
Если конфигурация изменена давно и каждое обновление стало мучением, полезно составить список отличий от типовой. В Конфигураторе это делается через Конфигурация → Сравнить конфигурации: сравнивают основную конфигурацию с конфигурацией поставщика. Каждую найденную правку оценивают: перенести в расширение, заменить настройкой или удалить как ненужную. После переноса конфигурацию можно вернуть на поддержку.
Ошибки, из-за которых доработки становятся проблемой
Кроме технических сбоев, есть организационные ошибки:
- ❌ доработку делают прямо в рабочей базе без копии;
- ❌ никто не знает, что именно меняли: нет комментариев, нет списка доработок;
- ❌ ради одной печатной формы конфигурацию снимают с поддержки;
- ❌ расширения ставят из неизвестных источников без безопасного режима.