Разработка и Конфигурация · 10 мин
Как сделать доработку 1С: пошаговое руководство
Как правильно выполнить доработку 1С: анализ задачи, выбор способа — расширение или изменение конфигурации, тестирование, типичные ошибки и контроль результата.
Доработка 1С — это изменение типовой конфигурации под задачи конкретной компании: новые документы, дополнительные реквизиты, нестандартные отчёты, доработанные печатные формы, автоматические проверки и интеграции. Правильно выполненная доработка решает бизнес-задачу и не ломает обновления. Неправильная — превращает базу в «необновляемую», где каждый релиз требует ручного вмешательства и дорогого сопровождения.
Ключевой принцип современной доработки: сначала ищем типовой механизм, затем используем расширение конфигурации, и только в крайнем случае правим типовые объекты напрямую. Такой порядок минимизирует стоимость владения и риски при обновлениях.
Шаг 1. Сформулируйте задачу до начала разработки
Большинство проблем с доработками возникает не из-за кода, а из-за размытой постановки. Формулировка «сделайте удобнее» не работает: исполнитель реализует своё видение, заказчик ожидал другое, переделка съедает бюджет. Задача должна быть описана так, чтобы результат можно было проверить.
В техническом задании зафиксируйте: какую бизнес-проблему решает доработка, кто ею пользуется (роли), какие данные на входе и что должно получиться на выходе, какие есть ограничения (производительность, права доступа, обязательность обновлений). Для печатных форм приложите макет-образец, для отчётов — пример желаемого результата с реальными цифрами.
Отдельно проверьте, не решается ли задача типовыми средствами. В современных конфигурациях на управляемых формах многое делается настройкой: дополнительные реквизиты и сведения, настраиваемые отчёты, рабочие места, шаблоны печати. Доработка там, где достаточно настройки, — прямые лишние расходы.
Шаг 2. Выберите способ доработки
Существует три основных подхода, и выбор между ними определяет стоимость сопровождения на годы вперёд. Решение принимайте до начала разработки, а не по ходу.
| Способ | Когда подходит | Влияние на обновления |
|---|---|---|
| Настройка (доп. реквизиты, отчёты, права) | Новые поля, простые отчёты, ограничения доступа | Не влияет |
| Расширение конфигурации | Новые объекты, доработка форм и процедур, печатные формы | Минимальное, конфигурация остаётся на поддержке |
| Изменение типовой конфигурации | Задачи, которые расширением не решить (редкие случаи) | Обновления усложняются, нужно сопоставление изменений |
Расширения позволяют добавлять собственные объекты (справочники, документы, регистры, отчёты), заимствовать типовые объекты и дополнять их формы и код через аннотации &Перед, &После, &Вместо. Типовая конфигурация при этом остаётся на полной поддержке и обновляется штатно.
Сравнение вариантов
Подходит для большинства задач: новые объекты, изменение форм, подмена процедур. Ограничение: нельзя менять роль типовых полей, некоторые прикладные механизмы недоступны для переопределения.
Подходит для разовых операций, загрузок данных, дополнительных печатных форм через механизм БСП. Не подходит для постоянных изменений логики документов.
Только когда расширение технически не справляется. Последствие: каждое обновление требует анализа изменённых объектов и ручного сопоставления.
Шаг 3. Подготовьте среду и сделайте резервную копию
Разработка ведётся только на копии базы. Никогда не дорабатывайте и не тестируйте напрямую в рабочей базе, где пользователи вводят документы: ошибка в коде может испортить данные, а неудачное обновление конфигурации — остановить работу компании.
Порядок подготовки: сделайте резервную копию рабочей базы (выгрузка в dt через конфигуратор или средствами СУБД для клиент-серверного варианта), разверните копию в отдельной базе, убедитесь, что копия открывается и данные на месте. Для клиент-серверных баз также проверьте, что в копии отключены регламентные задания и подключения к внешним системам — иначе тестовая база может отправить реальные письма или обменяться данными с реальным сайтом.
Шаг 4. Выполните доработку в конфигураторе
Работа ведётся в конфигураторе 1С:Предприятие. Для расширения: меню «Конфигурация → Расширения конфигурации → Создать», задайте имя и префикс (уникальный короткий префикс помогает избежать конфликтов имён с типовыми объектами и другими расширениями). Затем добавьте нужные объекты или заимствуйте типовые для доработки.
Типичные сценарии: добавление реквизита в форму документа (заимствуете форму, добавляете элемент), подмена типовой процедуры (заимствуете модуль, оборачиваете метод аннотацией), создание нового отчёта на СКД, добавление печатной формы через механизм дополнительных отчётов и обработок. После изменений обновите конфигурацию базы данных (F7) и проверьте, что расширение подключено и активно в режиме Предприятия.
При изменении типовой конфигурации (если без этого не обойтись) снимите конфигурацию с полной поддержки только на нужных объектах, ведите список всех изменённых объектов и комментируйте правки в коде — это критически упростит будущие обновления.
- 1Создать расширение в конфигураторе, задать имя и префикс
- 2Заимствовать нужные типовые объекты или добавить собственные
- 3Внести изменения: формы, модули, реквизиты, отчёты
- 4Обновить конфигурацию базы данных (F7)
- 5Проверить работу в режиме Предприятия на тестовой копии
- 6Выгрузить расширение в файл .cfe для переноса и хранения
Шаг 5. Протестируйте результат
Тестирование — не формальность, а основная защита от порчи данных. Проверяйте не только «счастливый путь», но и граничные случаи: пустые значения, отмена проведения, работа под пользователем с ограниченными правами, повторное проведение документа, большие объёмы данных.
Обязательный минимум проверок: доработка работает под реальными ролями пользователей, а не только под полными правами; типовые сценарии, которые задела доработка, продолжают работать; расширение не конфликтует с уже установленными расширениями; производительность не деградировала на объёмах, близких к рабочим.
Как проверить результат
Функция доступна и работает без ошибок прав
Ошибки доступа или невидимые элементы формы
Проведение, отмена, печать работают как раньше
Появились ошибки в функциях, которые доработка не касалась напрямую
Движения корректно перезаписываются, без дублей
Задвоение данных или остатки не сходятся
Все расширения применяются без ошибок в журнале
Расширение отключается или перекрывает чужую функциональность
Шаг 6. Перенесите доработку в рабочую базу
Перенос выполняйте в нерабочее время или при минимальной активности пользователей. Перед переносом сделайте свежую резервную копию рабочей базы. Расширение загружается через «Все функции → Стандартные → Управление расширениями конфигурации» или в конфигураторе; изменённая конфигурация — через «Загрузить конфигурацию из файла» с последующим обновлением конфигурации базы данных.
После переноса проведите короткую приёмку на рабочей базе: проверьте ключевой сценарий на реальных данных, убедитесь, что пользователи видят нужные элементы, и зафиксируйте, что сделано (описание доработки, версия, список изменённых объектов). Документация сэкономит время при следующем обновлении или смене исполнителя.
Когда доработку лучше поручить специалисту
Самостоятельно разумно делать простые вещи: дополнительные реквизиты, внешние печатные формы, несложные расширения с добавлением элементов формы. К специалисту стоит обращаться, когда доработка затрагивает проведение документов и регистры, обмены данными, права доступа на уровне записей, интеграции с внешними системами или когда ошибка в логике приведёт к искажению учёта.
При выборе исполнителя просите: работу через расширения по умолчанию, передачу исходных файлов (cfe, epf, cf) и описания изменений, тестирование на копии базы. Это стандартные признаки аккуратного подхода, а не завышенные требования.
Храните файлы расширений (.cfe) и внешних обработок (.epf) вместе с кратким описанием в отдельной папке или системе контроля версий. Когда через полгода понадобится поправить печатную форму, поиск «того самого файла» по почте и флешкам займёт больше времени, чем сама правка.
Что важно запомнить
Безопасная доработка 1С — это чёткое ТЗ, работа только на копии базы, приоритет расширений над изменением типовой конфигурации, тестирование под реальными ролями и обязательная резервная копия перед переносом в рабочую базу.
Частые вопросы
Чем расширение конфигурации отличается от изменения конфигурации?
Расширение — это надстройка, которая хранится отдельно и подключается к типовой конфигурации, не меняя её саму. Конфигурация остаётся на полной поддержке и обновляется штатно. Изменение конфигурации правит типовые объекты напрямую: поддержка частично снимается, и каждое обновление требует сопоставления ваших правок с изменениями поставщика.
Можно ли сделать доработку без программиста?
Часть задач — да: дополнительные реквизиты и сведения, настраиваемые отчёты, простые внешние печатные формы по готовым шаблонам. Всё, что требует кода на встроенном языке, изменения логики проведения или прав доступа, без навыков разработки делать рискованно.
Слетит ли доработка при обновлении 1С?
Доработка, выполненная расширением или внешней обработкой, как правило, переживает обновления — но расширение стоит проверять после каждого обновления, потому что типовые процедуры, которые оно переопределяет, могли измениться. Изменения типовой конфигурации при обновлении требуют ручного сопоставления.
Что делать, если конфигурация уже снята с поддержки прошлыми доработками?
Сначала получите актуальный список изменённых объектов (сравнение с типовой конфигурацией того же релиза). Затем оцените, какие правки можно перенести в расширение и вернуть объекты на поддержку. Это разовый проект, но он окупается упрощением всех последующих обновлений.
Как проверить, что доработка не замедлит базу?
Тестируйте на копии с объёмом данных, близким к рабочему: откройте крупные списки, проведите документы с большим числом строк, сформируйте тяжёлые отчёты. Если доработка добавляет запросы в цикле или обращения к данным при каждом изменении формы, замедление заметно именно на больших объёмах, а не на пустой тестовой базе.