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

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

Как создать свою конфигурацию 1С с нуля

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

Создание собственной конфигурации 1С — задача, которая начинается не с кода, а с понимания бизнес-процессов. Конфигурация — это набор объектов метаданных (справочников, документов, регистров, отчётов), которые платформа 1С:Предприятие превращает в готовое приложение для учёта и управления. Разработчик описывает объекты в конфигураторе, а платформа автоматически строит базу данных, интерфейс и базовую логику.

Собственная конфигурация оправдана, когда типовые решения не покрывают специфику бизнеса, а доработка типовой обходится дороже, чем разработка с нуля. Типичные сценарии: узкоспециализированный учёт (производство с нестандартными операциями, проектный учёт, учёт в редких отраслях), внутренние корпоративные системы, учебные и интеграционные задачи. Если задача укладывается в типовую «Управление торговлей» или «Бухгалтерию», писать конфигурацию с нуля не нужно — это лишние месяцы работы и расходы на сопровождение.

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

Подготовка: платформа, лицензии и режим работы

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

Создайте новую информационную базу: в окне запуска 1С нажмите «Добавить» → «Создание новой информационной базы» → вариант «без конфигурации». Для начала выбирайте файловый режим — база хранится в одном файле на диске, её легко копировать и откатывать. Клиент-серверный режим (SQL Server, PostgreSQL) подключайте на этапе, когда конфигурация пойдёт в реальную работу нескольких пользователей.

Откройте базу в режиме «Конфигуратор» — это основная среда разработки. Через меню «Конфигурация» → «Открыть конфигурацию» вы увидите пустое дерево метаданных. Именно здесь будет строиться вся структура будущего решения.

Проектирование структуры метаданных до начала разработки

Главная ошибка начинающих — сразу создавать объекты в конфигураторе, не продумав модель данных. Сначала на бумаге или в схеме опишите предметную область: какие сущности существуют (товары, контрагенты, сотрудники), какие события происходят (поступление, продажа, оплата), какие показатели нужно накапливать (остатки, обороты, задолженности) и какие отчёты требуются пользователям.

Каждой сущности сопоставьте тип объекта 1С. Правило простое: постоянная информация — справочники, события во времени — документы, накапливаемые показатели — регистры накопления, периодические данные (курсы валют, цены) — регистры сведений, аналитика — отчёты. Неверный выбор типа объекта на старте потом требует полной переделки: например, если остатки товаров хранить в справочнике, а не в регистре накопления, получить корректные данные на любую дату будет невозможно.

Продумайте связи между объектами: какой документ что изменяет, откуда подтягиваются данные. Например, документ «Продажа» ссылается на справочники «Контрагенты» и «Товары», а при проведении делает движения по регистру «ОстаткиТоваров» и регистру «Взаиморасчёты». Такая схема на бумаге — ваш технический проект, по которому идёт разработка.

Создание справочников и перечислений

Справочники — первые объекты, которые создаются в новой конфигурации, потому что на них ссылаются документы. В дереве конфигурации правый клик на ветке «Справочники» → «Добавить». Задайте имя (например, «Товары»), и платформа автоматически создаст стандартные реквизиты «Код» и «Наименование». Добавьте собственные реквизиты на закладке «Данные»: для товара это может быть единица измерения, ставка НДС, артикул.

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

Порядок создания справочника
  1. 1
    В дереве конфигурации откройте ветку «Справочники», правый клик → «Добавить»
  2. 2
    Укажите имя объекта и при необходимости длину кода и наименования
  3. 3
    На закладке «Данные» добавьте реквизиты с типами (строка, число, ссылка на другой справочник)
  4. 4
    На закладке «Формы» сгенерируйте форму элемента и форму списка
  5. 5
    Обновите конфигурацию базы данных (F7) и проверьте создание элемента в режиме «Предприятие»

После добавления объектов обязательно обновляйте конфигурацию базы данных (клавиша F7 или меню «Конфигурация» → «Обновить конфигурацию базы данных»). Пока обновление не выполнено, новые объекты существуют только в проекте и недоступны в режиме «Предприятие». Если обновление требует реструктуризации таблиц на базе с данными — делайте копию базы заранее.

Документы, регистры и проведение

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

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

Код проведения пишется в модуле объекта документа в обработчике «ОбработкаПроведения». Для простых случаев конструктор движений генерирует код автоматически: вы выбираете табличную часть и соответствие реквизитов ресурсам регистра. Для контроля остатков (нельзя продать больше, чем есть на складе) в код добавляется запрос остатков и отказ от проведения при нехватке.

bsl
Процедура ОбработкаПроведения(Отказ, Режим)
  Движения.ОстаткиТоваров.Записывать = Истина;
  Для Каждого Строка Из Товары Цикл
    Движение = Движения.ОстаткиТоваров.Добавить();
    Движение.ВидДвижения = ВидДвиженияНакопления.Расход;
    Движение.Период = Дата;
    Движение.Товар = Строка.Товар;
    Движение.Количество = Строка.Количество;
  КонецЦикла;
КонецПроцедуры
Типичные ошибки при работе с проведением
01
Хранить остатки в реквизитах справочника вместо регистра накопления — отчёт на прошлую дату станет невозможен
02
Не проверять остатки при расходе — товары уходят в минус, и учёт теряет смысл
03
Писать сложную логику в форме документа вместо модуля объекта — при обмене данными и фоновом проведении логика не сработает
04
Забыть установить «Записывать = Истина» у набора движений — документ проводится, но движения не сохраняются

Отчёты и пользовательский интерфейс

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

Для удобства пользователей настройте подсистемы — это разделы интерфейса (например, «Склад», «Продажи», «Отчёты»). В свойствах каждого объекта на закладке «Подсистемы» отметьте, где он должен отображаться. Платформа сама сформирует панель навигации и рабочий стол. Не пренебрегайте ролями и правами: создайте роли «Менеджер», «Кладовщик», «Администратор» и настройте доступ к объектам, иначе любой пользователь сможет изменить или удалить любые данные.

Начинайте отчёты с самого востребованного — обычно это отчёт по остаткам или оборотам. Если структура регистров спроектирована верно, такой отчёт собирается в СКД за несколько минут. Если построить отчёт сложно и приходится изобретать обходные пути — это сигнал, что модель данных нужно пересмотреть.
ПЗ
Практическое замечание

Тестирование, отладка и вывод в эксплуатацию

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

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

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

Как проверить готовность конфигурации

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

Движения формируются, остатки в отчётах сходятся с оборотно-сальдовой логикой

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

Документ проводится без движений или остатки уходят в минус без контроля

Отчёты
Норма

Данные на любую дату корректны, группировки работают

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

Отчёт показывает только текущее состояние или требует доработки кода для каждой группировки

Права доступа
Норма

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

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

Все работают под полными правами

Резервное копирование
Норма

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

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

Копии делаются вручную «когда вспомнят»

Типичные ошибки и ограничения самостоятельной разработки

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

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

Итог

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

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

Частые вопросы

Можно ли создать конфигурацию 1С без навыков программирования?

Частично да: справочники, документы и простые отчёты собираются конструкторами без кода. Но проведение с контролем остатков, сложные расчёты и обмены данными требуют знания встроенного языка 1С. Для старта достаточно базового уровня — синтаксис языка прост и похож на русскоязычный псевдокод.

Что выбрать: свою конфигурацию или доработку типовой?

Если типовое решение покрывает 70–80% задач, дорабатывайте его через расширения конфигурации — это сохранит возможность обновлений. Собственная конфигурация оправдана при принципиально иной модели учёта, когда типовые объекты приходится ломать, а не дополнять.

Сколько времени занимает разработка простой конфигурации?

Минимальная учётная система (пара справочников, два-три документа, регистр остатков, несколько отчётов) у опытного разработчика занимает от нескольких дней до пары недель. Новичку на то же самое стоит закладывать в несколько раз больше времени с учётом изучения платформы.

Нужна ли лицензия 1С для разработки своей конфигурации?

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

Как перенести свою конфигурацию на другой компьютер или заказчику?

Через конфигуратор: «Конфигурация» → «Сохранить конфигурацию в файл» (файл .cf). На целевой базе выполняется «Загрузить конфигурацию из файла». Для переноса вместе с данными используйте выгрузку информационной базы целиком (файл .dt) через меню «Администрирование».

Можно ли потом перевести файловую базу в клиент-серверный режим?

Да, структура конфигурации при этом не меняется: база выгружается в файл .dt, создаётся новая база на сервере СУБД (например, PostgreSQL или MS SQL), и данные загружаются туда. Учитывайте, что в клиент-серверном режиме строже требования к коду — например, недопустимы модальные вызовы и прямые обращения к файловой системе с клиента.