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

· 10 мин

Содержание

Выучить программирование 1С самостоятельно реально за 4–6 месяцев при 8–10 часах в неделю. Порядок такой: учебная версия платформы 8.3 → своя маленькая конфигурация с нуля → язык запросов → модули и события → отчёты на СКД → отладчик → сертификат «1С:Профессионал» по платформе. Курсы не обязательны, а вот ежедневная практика в Конфигураторе — обязательна.

Главная ловушка новичка — начать с типовой «Бухгалтерии» и утонуть в тысячах объектов. Сначала собирают свою конфигурацию на 10–15 объектов: склад, приход, расход, остатки, отчёт. Только после этого открывают типовые и читают чужой код.

С чего начать самостоятельное изучение 1С: платформа, книги и стратегия

Какую платформу поставить

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

Ограничения учебной версии:

  • 📁 только файловый режим, без сервера 1С;
  • 📉 ограничено количество записей в таблицах — для промышленного учёта не годится, для учебных задач хватает;
  • 🧩 Конфигуратор полноценный: метаданные, модули, конструкторы, отладчик.

Ставьте самую свежую доступную версию 8.3 с интерфейсом «Такси». Материалы про 8.2 и обычные формы (ОбычнаяФорма, меню «Все действия») читайте только как историю: в новых конфигурациях этого уже нет.

Какую стратегию выбрать

ПутьКому подходитМинусы
Книги + своя конфигурацияТем, кто готов к самодисциплинеНет обратной связи на ошибки
Книги + бесплатные видеоурокиТем, кому проще смотреть, чем читатьЛегко «смотреть» и не писать код
Самостоятельно + стажировка у франчайзиТем, кто хочет работу быстрееНужен минимальный уровень для собеседования

Рабочая связка для самоучки — книга как основа и практика в своей базе после каждой главы. Видео — для отдельных тем вроде СКД.

Что читать

  • 📘 «1С:Предприятие 8.3. Практическое пособие разработчика» (Радченко, Хрусталёва) — сквозной пример с нуля, лучший старт;
  • 📗 «Язык запросов 1С:Предприятия 8» (Хрусталёва) — когда дойдёте до запросов;
  • 📙 «Разработка сложных отчётов в 1С:Предприятии 8. Система компоновки данных» (Хрусталёва) — для СКД;
  • 📕 «Профессиональная разработка в системе 1С:Предприятие 8» — справочник на второй этап, а не учебник для первого месяца.

Встроенная справка Конфигуратора и синтакс-помощник (Справка → Синтакс-помощник) — ваш главный инструмент. Каждый незнакомый метод сначала ищите там.

Ориентировочный план на 8–10 часов в неделю
  1. недели 1–2Установка учебной платформы, первая конфигурация, справочники и документы
  2. недели 3–5Регистры накопления и сведений, проведение документов
  3. недели 5–8Язык запросов: выборки, соединения, виртуальные таблицы
  4. недели 8–11Управляемые формы, клиент и сервер, общие модули
  5. недели 11–15Отчёты на СКД, отладка, замер производительности
  6. недели 16–20Подготовка и сдача теста «1С:Профессионал» по платформе

Объекты метаданных: что выучить в первую очередь

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

Минимальный набор для старта

ОбъектЧто хранитУчебный пример
СправочникУсловно-постоянные данныеНоменклатура, Склады, Контрагенты
ДокументФакт хозяйственной операцииПриход товаров, Расход товаров
Регистр накопленияОстатки и оборотыОстаткиТоваров (склад, номенклатура, количество)
Регистр сведенийЗначения с привязкой к разрезам и датамЦены номенклатуры
ПеречислениеФиксированный список значенийВиды операций
КонстантаОдно значение на всю базуОсновная организация
Отчёт, обработкаВывод данных, сервисные действияВедомость по остаткам

Регистры бухгалтерии и расчёта оставьте на потом. Они нужны, если идёте в доработку БП или ЗУП, но без понимания регистров накопления их не освоить.

Учебная задача на первые недели

  1. Создайте пустую конфигурацию: в окне запуска добавьте новую информационную базу без конфигурации.
  2. Добавьте справочники Номенклатура и Склады.
  3. Добавьте документы ПриходТоваров и РасходТоваров с табличной частью Товары.
  4. Создайте регистр накопления ОстаткиТоваров вида «Остатки»: измерения Номенклатура, Склад, ресурс Количество.
  5. Настройте проведение документов через конструктор движений, а затем перепишите движения руками.
  6. Добавьте подсистему, чтобы объекты появились в интерфейсе.

Эта мини-конфигурация станет полигоном для всего остального: запросов, отчётов, отладки.

Язык запросов 1С: как освоить его самостоятельно

Без запросов программиста 1С не берут даже на стажировку. Это SQL-подобный язык с русскими ключевыми словами и своими «виртуальными таблицами» регистров.

Порядок изучения

  • 🔹 ВЫБРАТЬ, ИЗ, ГДЕ, УПОРЯДОЧИТЬ ПО, параметры через &;
  • 🔹 ЛЕВОЕ СОЕДИНЕНИЕ и ВНУТРЕННЕЕ СОЕДИНЕНИЕ, разница в результате;
  • 🔹 СГРУППИРОВАТЬ ПО и агрегатные функции СУММА, КОЛИЧЕСТВО;
  • 🔹 виртуальные таблицы Остатки, Обороты, ОстаткиИОбороты, СрезПоследних и их параметры;
  • 🔹 временные таблицы (ПОМЕСТИТЬ) и пакетные запросы;
  • 🔹 ОБЪЕДИНИТЬ ВСЕ, ВЫБОР КОГДА, ЕСТЬNULL.

Первый рабочий пример — остатки по складу на дату:

Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
|	Остатки.Номенклатура КАК Номенклатура,
|	Остатки.КоличествоОстаток КАК Остаток
|ИЗ
|	РегистрНакопления.ОстаткиТоваров.Остатки(&НаДату, Склад = &Склад) КАК Остатки";
Запрос.УстановитьПараметр("НаДату", ТекущаяДатаСеанса());
Запрос.УстановитьПараметр("Склад", Склад);

Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
	Сообщить(СтрШаблон("%1: %2", Выборка.Номенклатура, Выборка.Остаток));
КонецЦикла;

Условие на склад передано в параметры виртуальной таблицы, а не в ГДЕ. Так платформа отбирает данные до расчёта остатков. Это один из первых вопросов на собеседовании.

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

Модули и события: как писать код в 1С

Где живёт код

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

Ключевые события объекта

  • ⚙️ ОбработкаЗаполнения — заполнение нового документа, в том числе «на основании»;
  • ⚙️ ПередЗаписью — проверки и доработка реквизитов, можно отменить запись через Отказ;
  • ⚙️ ОбработкаПроверкиЗаполнения — проверка обязательных реквизитов;
  • ⚙️ ОбработкаПроведения — формирование движений по регистрам;
  • ⚙️ ПриЗаписи — действия после записи в той же транзакции.

Движения документа «Приход товаров», написанные вручную:

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

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

Клиент и сервер в управляемых формах

Вторая стена для самоучки — директивы компиляции. Разберитесь, чем отличаются:

  • &НаКлиенте — код в приложении пользователя, без доступа к базе;
  • &НаСервере — код на сервере, с данными формы;
  • &НаСервереБезКонтекста — серверный вызов без передачи формы, самый «лёгкий».

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

Отчёты на СКД: следующий шаг после запросов

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

Что освоить в схеме компоновки

  1. Набор данных — запрос. Тот же язык запросов, плюс расширение для СКД в фигурных скобках.
  2. Ресурсы. Поля, которые суммируются в итогах: количество, сумма.
  3. Параметры. Период, склад, организация; связь с параметрами виртуальных таблиц.
  4. Вычисляемые поля. Расчёт без изменения запроса.
  5. Варианты отчёта. Группировки, отборы, условное оформление.
  6. Вывод в код. Программное формирование через КомпоновщикМакетаКомпоновкиДанных и ПроцессорКомпоновкиДанных — понадобится, когда отчёт нужно собрать в обработке.

Учебная задача: ведомость по товарам за период на виртуальной таблице ОстаткиИОбороты с колонками «Начальный остаток — Приход — Расход — Конечный остаток» и группировкой по складам. Если справились без подсказок, базу СКД вы знаете.

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

Отладка и поиск ошибок в своём коде

Отладчик в 1С 8.3 — не дополнительная опция, а ежедневный инструмент. Научитесь им пользоваться в первый же месяц.

Основные приёмы

  • 🔴 Точка останова — F9 на строке, запуск отладки — F5;
  • ⏭️ Шаги — F10 (через вызов), F11 (внутрь процедуры), Shift+F11 (выйти из процедуры);
  • 🔍 Вычислить выражение — Shift+F9: значение переменной, результат функции, содержимое запроса;
  • 📊 Табло — значения переменных, пока идёт пошаговое выполнение;
  • ⏱️ Замер производительности — показывает, какие строки съедают время. Без него оптимизацию делают «на глаз».

Для серверного кода в клиент-серверной базе отладку на сервере включают отдельно, в настройках сервера 1С. В учебной файловой базе всё работает сразу.

Тестирование

  • ✅ ручной сценарий: создать документ → провести → проверить движения → отменить проведение;
  • ✅ проверка на «граничных» данных: пустая табличная часть, нулевое количество, документ задним числом;
  • ✅ автоматические тесты — фреймворк Vanessa Automation (сценарии на языке Gherkin). Это уже уровень Middle, но знание инструмента выделит вас на собеседовании.

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

Проверьте себя
Где правильнее задать отбор по складу при получении остатков из регистра?
Какое событие объекта используют для формирования движений документа?
Какая директива даёт серверный вызов без передачи данных формы?

Сертификация 1С и путь от самоучки до работы

Какие сертификаты бывают

СертификатФорматЧто даёт
1С:Профессионал по платформеТест на знание платформы, сдаётся в центре сертификации или онлайнПервая строчка в резюме, допуск к «Специалисту»
1С:Специалист по платформеЭкзамен: решение практической задачи в КонфигуратореСильный сигнал работодателю, обязателен для многих франчайзи
1С:Специалист по конфигурации (БП, ЗУП, УТ)Экзамен по доработке типовойВедущий разработчик внедрений
1С:Эксперт по технологическим вопросамЭкзамен по производительности и highloadУровень архитектора

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

Как найти первую работу

  1. Соберите портфолио: своя конфигурация, 2–3 внешние обработки и отчёт на СКД. Выложите на GitHub или держите .cf и .epf под рукой.
  2. Сдайте «1С:Профессионал» по платформе.
  3. Откликайтесь на вакансии «стажёр / младший программист 1С» у франчайзи. Там поток задач по доработке типовых, и рост быстрее, чем в одиночку.
  4. Параллельно освоите типовую конфигурацию , в которой работает ваша компания: БП 3.0, ЗУП 3.1 или УТ 11. Подойдёт демонстрационная база.

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

Частые ошибки тех, кто учит 1С без наставника

  • ❌ Начинать с доработки типовой. В БП 3.0 тысячи объектов и библиотека стандартных подсистем; без базы вы будете копировать код, не понимая его.
  • ❌ Изменять типовую конфигурацию напрямую. Учитесь делать доработки через расширения (появились в 8.3.6): так типовая остаётся на поддержке и обновляется без боли.
  • ❌ Запрос в цикле. Обращение к базе на каждой строке табличной части вместо одного запроса со всеми строками.
  • ❌ Обращение «через точку» к реквизитам ссылок в цикле. СтрокаТЧ.Номенклатура.ЕдиницаИзмерения неявно читает объект из базы. Нужные поля получайте запросом.
  • ❌ Учить синтаксис без задачи. Прочитать главу и не написать код — потерянный вечер. Минимум одно упражнение после каждой темы.
  • ❌ Пропускать стандарты разработки. Фирма 1С публикует «Стандарты и методики разработки». Их требования спрашивают и на экзаменах, и на код-ревью.

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

Можно ли стать программистом 1С без технического образования?
Да. Работодатели смотрят на сертификат 1С:Профессионал, портфолио и решение тестового задания. Профильный диплом не требуется.
Нужен ли опыт в других языках программирования?
Нет. Встроенный язык 1С простой, с русским синтаксисом. Опыт в Python или SQL ускорит изучение запросов, но не обязателен.
Что выбрать для учёбы: Конфигуратор или EDT?
Начинайте с Конфигуратора: он входит в учебную платформу, на нём написаны почти все учебники. 1С:Enterprise Development Tools осваивайте позже, когда понадобится работа с Git и командная разработка.
Сколько времени в день нужно на изучение 1С?
Ориентир — 1–1,5 часа в будни. Регулярность важнее длины: три часа раз в неделю дают меньше, чем по часу ежедневно.
Можно ли учиться на рабочей базе своей компании?
Нет. Даже чтение кода делайте на копии базы. Любые эксперименты с движениями и регистрами в рабочей базе — риск испорченного учёта.