К статье
Практический материал

Разработка и Конфигурация · 10 мин

Как сделать модернизацию в 1С: практическое руководство

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

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

Главная ошибка при модернизации — вносить изменения напрямую в рабочую базу без копии и без плана отката. Даже небольшая правка модуля может нарушить проведение документов или расчёт себестоимости, а восстановление без резервной копии займёт часы. Поэтому любые работы начинаются с выгрузки базы и выполняются сначала на копии.

Второй важный выбор — способ реализации: изменение самой конфигурации, использование расширений или внешних обработок. От этого зависит, насколько болезненными будут будущие обновления типового релиза. Ниже разобраны все варианты с условиями выбора.

Постановка задачи: что именно нужно модернизировать

До открытия конфигуратора сформулируйте задачу в терминах учёта: какой документ, отчёт или процесс должен работать иначе, кто пользователь результата и как проверить, что цель достигнута. Формулировка «сделайте удобнее» не проверяема, а «в заказе покупателя автоматически рассчитывать скидку по таблице от объёма» — вполне конкретна.

Полезно зафиксировать текущее поведение системы на скриншотах или в тестовом примере: какие данные вводятся, какие проводки или движения формируются. Это станет эталоном при проверке результата и поможет заметить побочные эффекты доработки.

Отдельно оцените, не решается ли задача штатными средствами: настройкой прав доступа, дополнительными реквизитами и сведениями, пользовательскими отчётами на СКД, вариантами отчётов. Значительная часть запросов на «модернизацию» закрывается настройкой без единой строки кода — и это самый дешёвый в поддержке вариант.

Выбор способа: расширение, внешняя обработка или изменение конфигурации

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

Сравнение вариантов доработки

Расширение конфигурации

Подходит для добавления реквизитов, форм, отчётов, подписок на события и переопределения обработчиков. Не ломает обновление типового релиза. Ограничение: нельзя менять состав движений документов и часть объектов ядра.

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

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

Изменение конфигурации

Необходимо, когда требуется менять типовую логику проведения, добавлять новые объекты метаданных, которых не охватывают расширения. Минус: конфигурация снимается с полной поддержки, обновления становятся ручными и трудоёмкими.

Правило простое: сначала проверяйте возможность решить задачу расширением, и только если его возможностей недостаточно — снимайте конфигурацию с поддержки осознанно, фиксируя каждое изменение в документе учёта доработок. Этот реестр спасёт при каждом последующем обновлении.

Подготовка: резервная копия и тестовая среда

Резервная копия обязательна перед любыми работами. Для файловой базы достаточно выгрузки через конфигуратор (Администрирование → Выгрузить информационную базу) или копирования файла 1Cv8.1CD при остановленной работе пользователей. Для клиент-серверной базы используйте выгрузку .dt или средства СУБД.

Разверните из копии отдельную тестовую базу, в которой пользователи не работают. Все изменения, включая обновление релиза, сначала применяются там. Для клиент-серверных баз убедитесь, что тестовая база не использует те же интеграционные точки (обмены, веб-сервисы), иначе тестовые данные уйдут во внешние системы.

Порядок подготовки
  1. 1
    Сформулируйте задачу и критерии приёмки результата
  2. 2
    Сделайте выгрузку .dt рабочей базы и проверьте её восстановление
  3. 3
    Разверните тестовую базу из копии
  4. 4
    Отключите в тестовой базе регламентные задания и обмены с внешними системами
  5. 5
    Зафиксируйте текущее поведение системы для сравнения после доработки

Выполнение доработки

Добавление реквизитов и печатных форм

Простейший сценарий — дополнительные данные в документах. Если достаточно хранить значение без участия в логике, используйте штатный механизм «Дополнительные реквизиты» в разделе администрирования — код вообще не потребуется. Если реквизит должен влиять на проведение или отображаться в форме с особыми условиями, добавляйте его через расширение.

Печатные формы почти всегда оформляются как внешние печатные формы через механизм «Дополнительные отчеты и обработки». Обработка реализует экспортные функции с описанием назначения и команды печати, после чего подключается в справочнике дополнительных обработок без изменения конфигурации.

Изменение логики проведения и обработчиков

Для вмешательства в проведение документов в расширении используйте аннотации &Вместо, &Перед, &После. Предпочтителен вариант &После или &Перед с вызовом типового метода — тогда при обновлении релиза изменения вендора не будут потеряны. Полная замена (&Вместо) — самый хрупкий вариант: любое изменение типового модуля потребует ручной сверки.

bsl
&После("ОбработкаПроведения")
Процедура Расш1_ОбработкаПроведения(Отказ, РежимПроведения)
	// Дополнительные проверки и движения
	Если Отказ Тогда
		Возврат;
	КонецЕсли;
КонецПроцедуры

Интеграции и обмены

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

Тестирование и проверка результата

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

Контрольные точки

Как проверить результат

Проведение документа
Норма

Документ проводится, движения соответствуют эталону плюс ожидаемые изменения

Тревожный признак

Ошибки проведения, дублирование или исчезновение движений

Отмена проведения и перепроведение
Норма

Движения коррено очищаются и формируются заново

Тревожный признак

Остатки «зависают» или удваиваются после перепроведения

Права пользователей
Норма

Новые объекты доступны нужным ролям, лишнего доступа нет

Тревожный признак

Ошибки «Нарушение прав доступа» или доступ к данным, которые роль видеть не должна

Регламентные задания и обмены
Норма

Задания выполняются без ошибок, обмены идут в правильные системы

Тревожный признак

Ошибки в журнале регистрации, данные уходят не туда

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

Перенос в рабочую базу и обновление релиза

Перенос выполняется в нерабочее время при завершённых сеансах пользователей. Порядок: свежая копия рабочей базы → загрузка расширения или обновление конфигурации → запуск обработчиков обновления данных → контрольная проверка ключевых операций → допуск пользователей.

Если конфигурация снята с поддержки, обновление типового релиза потребует сравнения и объединения с конфигурацией поставщика. Настройте правила объединения: свои объекты — не трогать, типовые — брать из нового релиза, изменённые типовые модули — сверять вручную. Именно здесь пригодится реестр доработок.

Типичные ошибки
01
Доработка прямо в рабочей базе без копии — при ошибке данные теряются или требуют длительного восстановления
02
Снятие с поддержки ради задачи, которую решало расширение — каждое обновление превращается в ручную работу
03
Использование &Вместо без необходимости — типовые исправления вендора перестают применяться
04
Забытые регламентные задания в тестовой базе — тестовые данные улетают в реальные внешние системы
05
Отсутствие учёта доработок — через год никто не помнит, что и зачем меняли

Часто задаваемые вопросы

Можно ли модернизировать 1С без программиста?

Частично. Дополнительные реквизиты и сведения, пользовательские отчёты, настройка прав, подключение готовых внешних печатных форм доступны администратору без программирования. Изменение логики проведения, интеграции и доработка модулей требуют навыков разработки на встроенном языке 1С.

Что выбрать: расширение или изменение конфигурации?

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

Слетит ли доработка при обновлении 1С?

Расширения и внешние обработки при обновлении сохраняются, но расширение стоит проверить на совместимость с новым релизом на тестовой базе. Изменения в самой конфигурации при обновлении требуют ручного объединения — без этого они будут потеряны.

Как откатить модернизацию, если что-то пошло не так?

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

Сколько времени занимает модернизация?

Простые задачи (печатная форма, дополнительный отчёт) — от нескольких часов до пары дней с тестированием. Изменение логики проведения или интеграция — от нескольких дней, включая тестирование на копии и опытную эксплуатацию. Основное время обычно уходит не на код, а на проверку и согласование.

Нужно ли останавливать работу пользователей?

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

Итог

Что важно запомнить

Модернизация 1С безопасна при соблюдении порядка: копия и тестовая база → выбор наименее инвазивного способа (сначала расширение) → разработка → проверка по эталону и журналу регистрации → перенос в нерабочее время с возможностью отката. Прямая правка типовой конфигурации — крайняя мера с долгосрочной ценой в виде ручных обновлений.