Разработка и Конфигурация · 9 мин
Что нужно знать начинающему программисту 1С
С чего начать изучение 1С: язык, конфигуратор, запросы, отладка, типовые конфигурации. Практические советы, типичные ошибки и план обучения для новичка.
Платформа 1С:Предприятие — это не просто язык программирования, а целая экосистема: конфигуратор, встроенный язык, система компоновки данных, механизмы обмена и огромная библиотека типовых конфигураций. Новичку легко потеряться: одни советуют сразу читать код «Управления торговлей», другие — начинать с книг по встроенному языку. Правильный путь лежит между этими крайностями.
Главная особенность 1С в том, что программист здесь решает прикладные задачи бизнеса: проведение документов, расчёт остатков, формирование отчётов. Поэтому знание синтаксиса — только половина дела. Не менее важно понимать предметную область: что такое регистры накопления, зачем нужны виртуальные таблицы, как устроено проведение документа.
Эта статья собирает минимальный набор знаний и навыков, без которых начинающему разработчику 1С сложно устроиться на первую работу или выполнить первый заказ, а также типичные ошибки, которые тормозят обучение.
Что представляет собой платформа и с чего начать знакомство
Работа программиста 1С строится вокруг конфигуратора — среды разработки, где описываются объекты метаданных: справочники, документы, регистры, отчёты, обработки. Код на встроенном языке пишется в модулях этих объектов, а структура данных создаётся декларативно: вы добавляете документ, указываете реквизиты, и платформа сама создаёт таблицы в базе данных.
Для старта установите учебную версию платформы и разверните любую демонстрационную конфигурацию — например, демо-базу «Управление нашей фирмой» или учебную конфигурацию из методических материалов. Работа в пустой конфигурации без примеров быстро демотивирует, а готовая база показывает, как объекты связаны между собой.
Разберитесь в базовой терминологии сразу: объект конфигурации (описание в конфигураторе), объект встроенного языка (то, с чем работает код), информационная база, режимы «Предприятие» и «Конфигуратор». Путаница в этих понятиях — самая частая причина непонимания учебных материалов.
Встроенный язык: что учить в первую очередь
Встроенный язык 1С похож на смесь BASIC и Pascal с русскоязычным синтаксисом (есть и английский вариант, но в российской практике почти везде используется русский). Начните с фундаментальных тем: переменные и типы данных, условия, циклы, процедуры и функции, работа со строками и датами, структуры, массивы и соответствия.
Дальше освойте прикладные объекты: как получить ссылку на элемент справочника, как создать и записать документ программно, как обойти табличную часть. Ключевые методы, которые вы будете использовать ежедневно: НайтиПоКоду(), НайтиПоНаименованию(), ПолучитьОбъект(), Записать(), Выбрать().
Особое внимание уделите различию между ссылкой и объектом. Ссылка — это лёгкий указатель на элемент базы, объект — полная загруженная в память копия данных. Начинающие часто вызывают ПолучитьОбъект() в цикле и получают катастрофическое падение производительности.
Язык запросов — главный навык разработчика 1С
Большая часть реальной работы в 1С — это выборка и анализ данных, поэтому язык запросов важнее многих разделов встроенного языка. Синтаксис напоминает SQL, но оперирует объектами конфигурации: ВЫБРАТЬ ... ИЗ Справочник.Номенклатура, соединения, группировки, итоги, условия.
Обязательно освойте виртуальные таблицы регистров: Остатки, Обороты, СрезПоследних, СрезПервых. Именно через них получают остатки на складах, взаиморасчёты с контрагентами и кадровые данные на дату. Умение правильно указать параметры виртуальной таблицы (период, условия) отличает работающий запрос от медленного и неверного.
Практикуйтесь в консоли запросов — внешней обработке, которая позволяет писать и отлаживать запросы без изменения конфигурации. Это стандартный инструмент разработчика, и умение быстро проверить гипотезу запросом сэкономит вам часы отладки.
ВЫБРАТЬ
Остатки.Номенклатура КАК Номенклатура,
Остатки.КоличествоОстаток КАК Остаток
ИЗ
РегистрНакопления.ТоварыНаСкладах.Остатки(&Период, Склад = &Склад) КАК Остатки
ГДЕ
Остатки.КоличествоОстаток > 0Отчёты и СКД: как делать то, что просит бизнес
Система компоновки данных (СКД) — штатный механизм построения отчётов в 1С. Вместо программного формирования табличного документа вы описываете запрос, настройки группировок и отборов, а платформа сама строит отчёт и даёт пользователю возможность менять настройки без программиста.
Новичку достаточно освоить базовый сценарий: создать отчёт, написать запрос в конструкторе СКД, настроить ресурсы (суммируемые поля), группировки и выбранные поля, проверить результат в режиме «Предприятие». Более продвинутые темы — вычисляемые поля, параметры с периодами, наборы данных-связи — осваиваются по мере появления задач.
Не пренебрегайте вкладкой «Настройки» в схеме компоновки: многие требования заказчика («а можно тут отбор по контрагенту?») решаются настройками, а не кодом. Чем меньше программной доработки отчёта, тем проще его сопровождать при обновлениях.
Отладка, журнал регистрации и поиск ошибок
Умение отлаживать код важнее умения его писать. Освойте точки останова, пошаговое выполнение (шаг с обходом, заходом в процедуру), окно «Вычислить выражение» и табло переменных. Отладка в 1С работает и на сервере, и в клиентском коде — убедитесь, что в настройках конфигуратора включён нужный режим отладки.
Журнал регистрации — ваш главный источник информации об ошибках пользователей: там фиксируются исключения, отказы в доступе, фоновые задания. Когда пользователь говорит «ничего не работает», первое действие — открыть журнал регистрации с отбором по пользователю и времени.
- 1Воспроизведите проблему на копии базы или в тестовом режиме
- 2Откройте журнал регистрации и найдите текст ошибки с указанием модуля и строки
- 3Поставьте точку останова в указанном месте и повторите действие
- 4Проверьте значения переменных в момент ошибки через табло
- 5Исправьте причину, а не симптом, и проверьте сценарий целиком
Типовые конфигурации и правила доработки
На реальной работе вы почти никогда не пишете конфигурацию с нуля — вы дорабатываете типовые: «Бухгалтерию предприятия», «Управление торговлей», «Зарплату и управление персоналом». Здесь действует железное правило: чем меньше изменений внесено в типовой код, тем дешевле сопровождение и обновления.
Изучите механизм расширений конфигурации — он позволяет добавлять объекты и переопределять обработчики без изменения самой конфигурации. Для большинства задач (дополнительный реквизит, печатная форма, проверка при записи) расширение — правильный выбор. Прямая правка типового модуля оправдана только когда расширение физически не может решить задачу.
Также освойте библиотеку стандартных подсистем (БСП): в типовых конфигурациях огромная часть функциональности — печать, обмены, права, дополнительные отчёты — реализована через неё. Умение пользоваться готовыми процедурами БСП экономит недели работы.
Что учить дальше и как строить обучение
После базового набора двигайтесь в сторону смежных тем: обмены данными (планы обмена, XML, формат EnterpriseData), веб-сервисы и HTTP-запросы, механизмы прав доступа (роли, RLS), основы администрирования — установка платформы, публикация на веб-сервере, работа с СУБД. Эти темы резко повышают вашу ценность как специалиста.
Полезный ориентир — программа сертификации «1С:Профессионал» и «1С:Специалист»: даже если вы не планируете сдавать экзамены, их тематические списки — это готовая программа обучения, а подготовка к «Специалисту» заставляет системно разобраться в механизмах платформы.
И последнее: учитесь читать чужой код. Открывайте типовые модули, трассируйте их отладчиком, разбирайтесь, почему сделано именно так. Это самый быстрый способ перенять практики, которые в книгах не описаны.
Что важно запомнить
База для старта: встроенный язык, язык запросов с виртуальными таблицами, СКД, отладка и журнал регистрации. Дорабатывайте типовые конфигурации через расширения, тестируйте на копиях баз и учитесь читать чужой код типовых решений.
Частые вопросы начинающих
Нужно ли знать бухгалтерский учёт, чтобы стать программистом 1С?
Глубокие знания не обязательны на старте, но базовое понимание предметной области сильно ускоряет карьеру: что такое проводка, остаток на складе, взаиморасчёты. Без этого вы будете писать формально правильный код, который не решает задачу пользователя. Достаточно пройти базовый курс по учёту в 1С и внимательно слушать постановки задач.
Сколько времени занимает обучение с нуля до первой работы?
При регулярных занятиях по 2–3 часа в день базовый уровень (язык, запросы, простые отчёты и обработки) достижим за 3–6 месяцев. До уверенного самостоятельного решения рабочих задач обычно проходит около года практики. Сроки сильно зависят от того, есть ли у вас опыт программирования на других языках.
Нужно ли знать SQL для работы с 1С?
Для большинства задач достаточно языка запросов 1С — платформа сама транслирует его в SQL. Но понимание основ SQL помогает при оптимизации медленных запросов, чтении планов запросов и администрировании баз на MS SQL Server или PostgreSQL. Это скорее тема второго года развития.
Что лучше для старта: курсы, книги или практика?
Оптимально сочетание: структурированный курс или книга дают систему, а собственная учебная база — практику. Эффективный приём — брать реальные простые задачи (например, с бирж фриланса для новичков) и решать их в учебной конфигурации, даже без заказчика. Чистое чтение без написания кода почти не даёт результата.
Стоит ли сразу изучать мобильную платформу и новые технологии 1С?
Нет. Мобильная платформа, EDT и интеграционные механизмы — это надстройки над ядром. Без уверенного владения конфигуратором, запросами и СКД они не принесут пользы. Возвращайтесь к ним, когда базовые задачи решаете уверенно.