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

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

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

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

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

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

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

Что нужно знать до старта

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

Вторая — общее представление об учёте. 1С применяется для автоматизации бухгалтерского, складского, торгового и кадрового учёта, поэтому полезно понимать, что такое остатки, обороты, документ-основание и проводка. Не обязательно быть бухгалтером — достаточно прочитать вводный материал о двойной записи и складском учёте.

Третья — умение читать чужой код и пользоваться встроенной справкой. В конфигураторе есть синтакс-помощник с описанием всех объектов и методов; умение быстро находить там нужное — ключевой навык разработчика 1С, который пригодится на всей карьере.

Установка платформы и создание первой базы

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

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

Первый запуск с нуля
  1. 1
    Скачайте и установите учебную версию платформы 1С:Предприятие 8.3
  2. 2
    Откройте стартовое окно, нажмите «Добавить» → «Создание новой информационной базы»
  3. 3
    Выберите вариант без конфигурации и укажите папку для базы
  4. 4
    Запустите базу в режиме «Конфигуратор» — это среда разработки
  5. 5
    Откройте дерево конфигурации через меню «Конфигурация» → «Открыть конфигурацию»

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

Как устроена конфигурация: объекты, с которых начинают

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

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

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

Встроенный язык 1С: первый код

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

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

bsl
Процедура ОбработкаПроведения(Отказ, РежимПроведения)
	Для Каждого СтрокаТовара Из Товары Цикл
		Движение = Движения.ОстаткиТоваров.Добавить();
		Движение.ВидДвижения = ВидДвиженияНакопления.Приход;
		Движение.Период = Дата;
		Движение.Товар = СтрокаТовара.Товар;
		Движение.Количество = СтрокаТовара.Количество;
	КонецЦикла;
	Движения.ОстаткиТоваров.Записывать = Истина;
КонецПроцедуры

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

Учебный проект: учёт товаров за несколько вечеров

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

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

Далее сделайте документ «РеализацияТоваров» с движениями вида «Расход» и отчёт «Остатки товаров» через конструктор схемы компоновки данных — платформа построит отчёт по регистру почти без кода. Финальная проверка: остаток по товару после поступления 10 штук и продажи 4 должен равняться 6. Если сходится — базовый цикл освоен.

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

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

Документ поступления проведён
Норма

В регистре появилась запись с видом «Приход»

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

Записей нет — проверьте, что документ указан регистратором регистра

Отчёт по остаткам
Норма

Остаток = поступления минус расходы

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

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

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

Движения перезаписываются без дублей

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

Остатки задваиваются — движения не очищаются перед записью

Типичные ошибки новичков и как их избежать

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

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

Типичные ошибки
01
Хранение остатков в реквизите справочника — данные расходятся при отмене проведения
02
Запрос в цикле по строкам — падение производительности на больших объёмах
03
Прямая правка типовой конфигурации вместо расширения — проблемы при обновлении
04
Отсутствие копии базы перед экспериментами — потеря данных при ошибке
05
Код на клиенте, обращающийся к данным, — ошибки компиляции в тонком клиенте

Куда двигаться дальше

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

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

Итог

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

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

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

Нужно ли знать другой язык программирования перед изучением 1С?

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

Сколько времени занимает вход в профессию?

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

Чем файловая база отличается от клиент-серверной для обучения?

Файловая база хранится в одном файле на диске и не требует сервера — для обучения этого достаточно. Клиент-серверный вариант нужен для многопользовательской работы и больших объёмов; его устройство стоит изучать уже на этапе администрирования.

Можно ли программировать в 1С на английском синтаксисе?

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

Что такое расширение конфигурации и когда его применять?

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

Где проверять знания и искать практику после основ?

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