Разработка и Конфигурация · 10 мин
Что нужно знать 1С-программисту: практический навыковый минимум
Что должен знать 1С-программист: язык платформы, СКД, запросы, обмены, администрирование и типовые конфигурации. Практический разбор навыков и ошибок новичков.
Профессия 1С-программиста объединяет разработчика, аналитика и немного администратора: недостаточно уметь писать код на встроенном языке, нужно понимать учётные механизмы, устройство платформы и бизнес-процессы заказчика. Работодатели и клиенты оценивают не знание синтаксиса, а способность решить задачу: доработать документ, построить отчёт, настроить обмен и не сломать при этом рабочую базу.
Навыковый минимум складывается из пяти слоёв: платформа и язык, запросы и СКД, типовые конфигурации и учёт, интеграции и обмены, администрирование и отладка. Ниже разобран каждый слой с конкретикой: что именно учить, как проверить результат и где чаще всего ошибаются начинающие.
Язык и объектная модель платформы — фундамент
Встроенный язык 1С — русскоязычный, с простым синтаксисом, но сложность не в нём, а в объектной модели. Нужно уверенно различать прикладные объекты: справочники, документы, регистры сведений и накопления, перечисления, планы счетов и планы видов характеристик. Ключевое понимание — чем отличается объект от ссылки, когда данные читаются из базы, а когда уже лежат в памяти, и почему обращение к реквизиту через точку от ссылки порождает отдельный запрос.
Обязательны к пониманию управляемые формы и клиент-серверная модель: директивы &НаКлиенте, &НаСервере, &НаСервереБезКонтекста, передача данных между клиентом и сервером, временное хранилище. Типичная ошибка новичка — вызывать серверные процедуры в цикле на клиенте и удивляться, почему форма «тормозит».
Отдельный блок — механизмы платформы, которые используются ежедневно: подписки на события, функциональные опции, роли и права, расширения конфигурации. Расширения особенно важны: доработка типовой конфигурации через расширение сохраняет обновляемость, тогда как прямое изменение типового кода превращает каждое обновление в ручную работу на часы.
Язык запросов и СКД — главный рабочий инструмент
Большая часть прикладного кода в 1С — это выборка и обработка данных, поэтому язык запросов нужно знать глубже языка программирования. Минимум: соединения таблиц (левое, внутреннее), группировки и итоги, виртуальные таблицы регистров (Остатки, Обороты, СрезПоследних), вложенные запросы и временные таблицы, пакетные запросы с уничтожением временных таблиц.
Критично понимать, где запрос становится медленным: соединение с виртуальной таблицей без отборов, функции в условиях, обход данных объектным способом вместо одного запроса. Правило простое — сначала получить данные запросом, потом обрабатывать в памяти, а не наоборот.
СКД (система компоновки данных) — стандарт построения отчётов в 1С. Нужно уметь создавать отчёт на СКД без единой строки кода: наборы данных, связи, ресурсы, параметры, вычисляемые поля, настройки вариантов. Продвинутый уровень — программная работа со СКД: переопределение настроек, вывод в табличный документ, события компоновки.
Как проверить владение запросами
Один пакетный запрос с виртуальными таблицами и отборами
Цикл по справочнику с запросом остатка внутри цикла
Виртуальная таблица СрезПоследних с параметром периода
Полная выборка регистра с отбором максимума в коде
Левое соединение, отборы до соединения
Соединение без отборов по всей таблице
Типовые конфигурации и основы учёта
Большинство вакансий предполагает работу с типовыми решениями: «1С:Бухгалтерия», «Управление торговлей» / «Комплексная автоматизация» / ERP, «Зарплата и управление персоналом». Знать нужно не интерфейс, а архитектуру: какие документы формируют какие движения, где лежат остатки, как устроены подсистемы и библиотека стандартных подсистем (БСП), на которой построены все современные типовые решения.
Без минимального понимания учёта дорабатывать конфигурации опасно. Программист должен понимать, что такое проводка, дебет и кредит, партия товара, себестоимость, взаиморасчёты, НДС — хотя бы на уровне «что должно получиться в отчёте после проведения документа». Иначе доработка формально работает, но искажает учётные данные, и обнаруживается это при закрытии месяца.
Обмены данными и интеграции
Практически каждая база 1С обменивается данными: с сайтом, банком, ЭДО, другой конфигурацией 1С. Базовый стек: планы обмена, правила конвертации данных (КД 2.0 и 3.0), формат EnterpriseData, универсальный обмен XML. Нужно уметь настроить типовую синхронизацию, прочитать и поправить правила, найти причину, почему объект не выгрузился или задвоился.
Вторая группа — работа с внешними сервисами: HTTP-запросы и HTTP-сервисы, REST API, JSON и XML, веб-сервисы (SOAP), COM-соединение между базами. Практический навык — разобрать чужой API по документации, сформировать запрос с авторизацией, обработать ошибки и таймауты, заложить повторную отправку при сбое.
Запись = Новый ЗаписьJSON;
Запись.УстановитьСтроку();
ЗаписатьJSON(Запись, СтруктураДанных);
ТелоЗапроса = Запись.Закрыть();
HTTPЗапрос = Новый HTTPЗапрос("/api/v1/orders");
HTTPЗапрос.Заголовки.Вставить("Content-Type", "application/json");
HTTPЗапрос.Заголовки.Вставить("Authorization", "Bearer " + Токен);
HTTPЗапрос.УстановитьТелоИзСтроки(ТелоЗапроса);
Соединение = Новый HTTPСоединение("api.example.ru", 443,,,, 30, Новый ЗащищенноеСоединениеOpenSSL);
Ответ = Соединение.ОтправитьДляОбработки(HTTPЗапрос);Администрирование, отладка и производительность
1С-программист почти всегда частично администратор. Минимум: различия файлового и клиент-серверного режимов, публикация на веб-сервере, создание резервных копий и выгрузка/загрузка через dt, обновление конфигурации (в том числе нетиповой, с сравнением и объединением), работа с хранилищем конфигурации в команде.
Для клиент-серверных баз нужны базовые представления о СУБД (чаще MS SQL или PostgreSQL): индексы, блокировки, план запроса, регламентные задания на СУБД. Программист, который не понимает, что такое взаимоблокировка и почему транзакция в цикле кладёт базу, в продуктивной среде опасен.
Инструменты диагностики, которые стоит освоить: конфигураторский отладчик (точки останова, табло, стек вызовов), замер производительности, технологический журнал для разбора ошибок и блокировок на сервере, журнал регистрации для поиска «кто и когда изменил данные».
- 1Воспроизведите ошибку на копии базы и зафиксируйте точный текст и момент возникновения
- 2Проверьте журнал регистрации: пользователь, время, объект данных
- 3Пройдите сценарий под отладчиком с точкой останова в проблемной процедуре
- 4При подозрении на блокировки или падение сервера включите и разберите технологический журнал
- 5Исправьте код, проверьте на копии, затем переносите в рабочую базу
Рабочий процесс: ТЗ, оценка и качество кода
Реальная работа начинается не с кода, а с постановки: программист должен уметь задать уточняющие вопросы, перевести «хотим удобнее» в конкретное требование и оценить трудоёмкость. Полезно сразу фиксировать границы задачи: какие документы затрагиваются, что должно получиться в отчётах, как проверить результат.
К качеству кода в 1С-среде предъявляются вполне привычные требования: осмысленные имена переменных и процедур, разбиение больших процедур, комментарии к неочевидной логике, отказ от копипасты типовых фрагментов. При командной разработке — работа через хранилище конфигурации или EDT с Git, регулярное получение изменений коллег.
Как строить обучение и расти в профессии
Рабочий маршрут входа: сначала синтаксис языка и простые задачи в учебной конфигурации (справочники, документы, регистры, проведение), затем запросы и отчёты на СКД, дальше — одна типовая конфигурация вглубь и реальные доработки через расширения. Параллельно стоит читать учебные материалы вендора и документацию по БСП — это экономит месяцы «изобретения велосипеда».
Признак перехода на уверенный уровень — способность самостоятельно закрыть задачу целиком: понять требование, выбрать механизм (доработка, расширение, внешняя обработка), реализовать, проверить на реальных данных и передать в работу без поломок. Сертификаты «1С:Профессионал» и «1С:Специалист» полезны как ориентир программы подготовки, но решающим остаётся портфель выполненных задач.
Чем реализовать доработку
Что важно запомнить
Ядро профессии — объектная модель платформы, запросы и СКД, понимание учёта и типовых конфигураций, обмены и базовое администрирование. Код пишется быстро, а вот понимание того, что он делает с данными и учётом, отличает программиста от кодера.
Частые вопросы
Можно ли стать 1С-программистом без профильного образования?
Да, профильное образование не требуется: важнее практические навыки и понимание учёта. Обычно хватает самостоятельного обучения по учебной версии платформы плюс курсы или стажировка. Порог входа ниже, чем в «классические» языки, но требования к пониманию предметной области выше.
Нужно ли знать бухгалтерский учёт программисту 1С?
На уровне разработчика отчётов и обработок — желательно базово. Для доработок проведения, регистров и закрытия месяца — обязательно: без понимания дебета, кредита, остатков и взаиморасчётов легко испортить учётные данные, и ошибка обнаружится только при сверке.
Что спрашивают на собеседовании 1С-программиста?
Чаще всего: разница между объектом и ссылкой, виртуальные таблицы регистров и их параметры, устройство СКД, клиент-серверные вызовы в управляемых формах, способы оптимизации запросов, опыт работы с конкретной типовой конфигурацией и обменами. Нередко дают практическую задачу на запрос или отчёт.
Конфигуратор или EDT — что учить?
Конфигуратор остаётся основным инструментом в большинстве проектов, его нужно знать обязательно. EDT (на базе Eclipse, с Git) востребован в крупных командах и на проектах с формальной разработкой. Логично начать с конфигуратора, а EDT осваивать при выходе в командную разработку.
Сколько времени занимает вход в профессию с нуля?
Зависит от интенсивности занятий и базы. При регулярной практике по несколько часов в день до уровня «выполняю простые реальные задачи под контролем» обычно доходят за несколько месяцев. Уверенная самостоятельная работа с типовыми конфигурациями и обменами требует существенно больше времени и реальных проектов.