Как дополнить типовую 1С 8.3 и не сломать обновления
Содержание
В типовую 1С 8.3 можно добавить свои отчёты, печатные формы, обработки заполнения, интеграции с сайтом и оборудованием, регламентные задания и роли. Без вмешательства в конфигурацию это делают двумя способами: внешними обработками (.epf, .erf) через Администрирование → Печатные формы, отчеты и обработки → Дополнительные отчеты и обработки и расширениями (.cfe) через Администрирование → Печатные формы, отчеты и обработки → Расширения.
Обычная боль выглядит так: бухгалтеру не хватает одного отчёта или бланка с логотипом, а программист предлагает «доработать конфигурацию». После этого каждое обновление превращается в ручное сравнение и объединение. Ниже — что именно можно добавить в 1С, каким способом и где граница, за которой без Конфигуратора не обойтись.
Пути меню даны для конфигураций на Библиотеке стандартных подсистем: БП 3.0, ЗУП 3.1, УТ 11. Интерфейс — «Такси», платформа 8.3.2x.
Три способа доработки: с чего начать выбор
Любую функцию в 1С добавляют одним из трёх инструментов. От выбора зависит, сколько будут стоить обновления через год.
| Способ | Что можно сделать | Нужен ли Конфигуратор | Влияние на обновления |
|---|---|---|---|
| 🟢 Настройка в пользовательском режиме | Варианты отчётов, макеты печатных форм, панель разделов, права через профили | Нет | Почти никакого |
| 🟡 Внешняя обработка или отчёт | Новые отчёты, печатные формы, заполнение табличных частей, загрузка из Excel, команды по расписанию | Нет, файл подключается в режиме Предприятия | Конфигурация не меняется; после крупного релиза обработку стоит перепроверить |
| 🟠 Расширение конфигурации | Новые реквизиты, справочники, формы, роли, подписка на события, изменение поведения типовых процедур | Разработка — да; подключение — в режиме Предприятия | Типовая остаётся на поддержке; расширение проверяют после каждого обновления |
| 🔴 Изменение основной конфигурации | Всё что угодно | Да, со снятием с поддержки | Каждое обновление — сравнение и объединение |
Правило простое: сначала проверьте, решается ли задача настройкой. Нет — внешней обработкой. Нужны новые поля или изменение логики — расширением. Правка самой конфигурации — крайний случай.
Расширения появились в платформе 8.3.6. В современных релизах платформы они умеют почти всё, что раньше требовало снятия с поддержки: добавлять реквизиты к типовым документам, перехватывать процедуры, добавлять роли.
Свои отчёты и печатные формы в 1С
Отчёты и бланки — самое частое, что добавляют в 1С. И самое дешёвое: половина задач решается без программиста.
Что делается в пользовательском режиме
- 📊 Вариант отчёта. Большинство типовых отчётов построены на системе компоновки данных. Откройте отчёт, нажмите
Настройки, добавьте поля, группировки, отборы, условное оформление. Получившуюся настройку сохраните как новый вариант через менюЕщёформы отчёта. Варианты видны другим пользователям, если сделать их общими. - 🧾 Макет печатной формы. Путь:
Администрирование → Печатные формы, отчеты и обработки → Макеты печатных форм. Там меняют тексты, шрифты, добавляют строки. Измененный макет можно в любой момент вернуть к типовому. - 🖼️ Логотип, факсимиле, подписи. Загружаются в карточке организации. Затем в печатных формах счёта и акта появляется вариант «с печатью и подписью».
- ➕ Дополнительные реквизиты и сведения. Включаются в
Администрирование → Общие настройки. Поле появляется в карточке объекта, его можно выводить в отчёты.
Когда нужен внешний отчёт или печатная форма
Свой файл нужен, если данных нет в стандартных источниках отчёта или бланк сильно отличается от типового. Например:
- Счёт клиенту в фирменном стиле с QR-кодом для оплаты и условиями договора.
- Отчёт «маржа по менеджерам» с данными из нескольких регистров сразу.
- Акт сверки в формате, который требует крупный покупатель.
Печатную форму программист пишет как внешнюю обработку. После регистрации она появляется в меню Печать нужного документа рядом с типовыми.
Правка макета через «Макеты печатных форм» затрагивает только оформление. Если нужно вывести поле, которого нет в данных бланка, понадобится внешняя печатная форма или расширение.
Внешние обработки и расширения конфигурации: как подключить
Подключение внешней обработки
Сначала включите механизм: Администрирование → Печатные формы, отчеты и обработки, флажок Дополнительные отчеты и обработки. Затем:
- Откройте ссылку
Дополнительные отчеты и обработкив этом же разделе. - Нажмите
Добавить из файлаи выберите.epfили.erf. - Программа покажет предупреждение безопасности: подключайте только файлы из надёжного источника.
- В карточке проверьте вид обработки, раздел или документы, где она появится, и список пользователей с доступом.
- Запишите карточку.
В карточке видно, к какому виду относится файл. Типовые виды в БСП: дополнительная обработка, дополнительный отчёт, печатная форма, заполнение объекта, создание связанных объектов, отчёт по объекту. Где появится команда, зависит от вида: в разделе программы, в меню Печать или Заполнить документа.
Чтобы файл регистрировался именно так, в его модуле объекта должна быть экспортная функция СведенияОВнешнейОбработке(). Без неё обработку можно только открыть разово через Файл → Открыть, без привязки к документам.
Подключение расширения
Путь: Администрирование → Печатные формы, отчеты и обработки → Расширения.
- Нажмите
Добавить из файлаи выберите.cfe. - Решите судьбу флажка «Безопасный режим». В безопасном режиме расширение не может работать с файлами на диске, внешними компонентами и рядом других опасных операций.
- Перезапустите программу: расширение начинает работать с нового сеанса.
Разработчики создают расширения в Конфигураторе: Конфигурация → Расширения конфигурации. Из типовой конфигурации в расширение заимствуют только нужные объекты.
Перед подключением расширения, которое меняет данные, сделайте резервную копию базы. Расширение с новыми реквизитами создаёт свои таблицы. Если его удалить, данные этих реквизитов пропадут вместе с ним.
Что умеет расширение и чего не умеет внешняя обработка
- ✅ Добавить реквизит или табличную часть в типовой документ.
- ✅ Добавить новый справочник, регистр, документ.
- ✅ Изменить форму типового объекта: новые поля, кнопки, группы.
- ✅ Перехватить процедуру типового модуля (
&Перед,&После,&Вместо) или изменить её (&ИзменениеИКонтроль). - ✅ Добавить роли, HTTP-сервисы, регламентные задания.
- ❌ Внешняя обработка ничего из этого не умеет: она работает только с данными, которые уже есть.
Связь 1С с внешними сервисами и оборудованием
Прежде чем заказывать интеграцию, проверьте, нет ли её в типовой. Многое там уже есть.
| Задача | Где искать в типовой | Когда нужна доработка |
|---|---|---|
| Выписки и платёжки | Сервис 1С:ДиректБанк в карточке банковского счёта, обмен с клиент-банком через файлы | Банк не поддерживает ДиректБанк и нестандартный формат файла |
| ЭДО с контрагентами | Сервис 1С-ЭДО в настройках электронного документооборота | Нужен роуминг или особый маршрут согласования |
| Кассы, сканеры, весы | Раздел Администрирование, ссылка «Подключаемое оборудование» | Модель без драйвера в списке |
| Обмен между базами 1С | Администрирование → Синхронизация данных | Обмен с нетиповой или сильно доработанной базой |
| Сайт, BI, сторонние системы | Стандартный интерфейс OData, публикация на веб-сервере | Нужна логика при приёме данных |
Если типовых механизмов не хватает, программист делает в расширении одно из трёх:
- 🌐 HTTP-сервис. 1С принимает запросы от сайта или маркетплейса. Нужна публикация базы на веб-сервере (IIS или Apache).
- 🔄 Регламентное задание. 1С сама ходит к внешнему API по расписанию и забирает заказы, курсы, остатки.
- 📁 Обмен файлами. Самый простой и надёжный вариант: внешняя система кладёт XML или JSON в папку, обработка забирает его.
HTTP-сервис и OData открывают доступ к базе снаружи. Для них создают отдельного пользователя с минимальными правами и публикуют базу только по HTTPS.
Автоматизация рутины: регламентные задания и обработки по расписанию
Самая недооценённая часть доработок. Многое из того, что бухгалтер делает руками каждое утро, 1С может делать сама.
Список заданий: Администрирование → Обслуживание → Регламентные операции → Регламентные и фоновые задания. Там видно, какие задания включены, когда последний раз выполнялись и с какой ошибкой упали.
Что обычно автоматизируют:
- Загрузку курсов валют и банковских выписок.
- Обмен с сайтом и складской программой.
- Рассылку отчётов руководителю на почту по расписанию.
- Резервное копирование в файловой базе.
- Пересчёт цен, закрытие заказов, проверку просроченной дебиторки.
Свою команду по расписанию можно сделать без расширения. Внешняя обработка с серверным методом получает в карточке Дополнительные отчеты и обработки настройку расписания. Программа запускает её сама, без открытой формы.
В файловом варианте регламентные задания выполняются только пока в базе работает хотя бы один пользователь. Для заданий ночью нужна клиент-серверная база или отдельный сеанс, который держат открытым.
Для согласований в типовых БП и УТ есть механизм бизнес-процессов и задач. Его включают в общих настройках. Если маршрут нестандартный, его описывают в расширении.
Удобство работы: интерфейс под пользователя
Эта часть почти никогда не требует программиста. Каждый пользователь настраивает её сам.
- 🗂️ Панель разделов.
Главное меню → Вид → Настройка панели разделов. Лишние разделы убирают, нужные ставят наверх. - ⭐ Избранное. Документы, отчёты и списки, которыми пользуются чаще всего, добавляют звёздочкой в заголовке формы.
- 🏠 Начальная страница.
Главное меню → Вид → Настройка начальной страницы. На неё выносят списки, отчёты, монитор руководителя. - 📝 Форма документа.
Ещё → Изменить форму. Поля можно скрыть, переставить, поменять местами группы. Настройка сохраняется для вашего пользователя.
Администратор может скопировать удачные настройки одному или всем пользователям: Администрирование → Настройки пользователей и прав → Копирование настроек.
Программист нужен, когда на форму надо добавить новую кнопку с действием, свой реквизит или подсказку, которой нет в типовой. Это делается расширением с изменённой формой.
Права доступа: кому что разрешить
Права в типовых конфигурациях на БСП настраивают через профили и группы доступа, не через роли напрямую.
Путь: Администрирование → Настройки пользователей и прав.
- В
Профили групп доступавыберите типовой профиль или скопируйте его и измените набор ролей. - В
Группы доступасоздайте группу на основе профиля и добавьте в неё пользователей. - Для ограничения по организациям, складам или контрагентам включите флажок
Ограничивать доступ на уровне записейи задайте значения в группе доступа.
Что можно добавить к типовой системе прав:
- 🔐 Свою роль в расширении. Например, право видеть только новый отчёт или новый справочник. Роль расширения появляется в профилях групп доступа.
- 🧩 Доступ к дополнительным обработкам. Задаётся в карточке обработки: кому она видна в разделе.
- 📅 Дата запрета изменения.
Администрирование → Настройки пользователей и прав → Даты запрета изменения. Закрывает прошлые периоды от правок.
Не давайте полные права бухгалтеру «чтобы не мешало». Такой пользователь может подключать расширения и внешние файлы, а это исполняемый код в базе.
Безопасность доработок отдельно:
- Подключайте расширения в безопасном режиме, если разработчик не обосновал обратное.
- В клиент-серверной базе включайте профили безопасности на кластере: они ограничивают, к каким файлам и адресам может обращаться внешний код.
- Храните исходники обработок и расширений у себя, а не только у подрядчика.
Ошибки, которые дорого обходятся после обновления
- ❌ Снять конфигурацию с поддержки ради одного поля. Через полгода типовое обновление ставится вручную и занимает дни. Поле добавляется расширением.
- ❌ Не проверить расширение после обновления. Если в новом релизе типовая процедура переименована, перехват перестаёт работать или выдаёт ошибку при подключении. Расширения проверяют на копии базы перед обновлением рабочей.
- ❌ Держать один файл
.epfна сетевом диске и открывать его черезФайл → Открыть. Каждый пользователь работает со своей копией, версии расходятся. Зарегистрированная обработка хранится в базе, одна на всех. - ❌ Удалить расширение с данными без выгрузки. Значения его реквизитов исчезнут. Если нужно отключить расширение на время, снимите у него флажок использования в списке расширений, а не удаляйте.