{}const=>[]async()letfn</>var
1CПрофессия

Вопросы на собеседовании 1С-разработчика: платформа, запросы и задачи

Готовим интервью 1С: клиент и сервер, управляемые формы, запросы, СКД, регистры, проведение, транзакции, блокировки, расширения, интеграции и разбор проекта.

К

Кодик

Автор

6 мин чтения

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

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

1Платформа

Метаданные, формы, клиент-сервер, права и расширения.

2Данные

Запросы, регистры, транзакции и блокировки.

3Решение

Проведение, отчёт, интеграция и диагностика.

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

Вопросы на собеседовании 1С на коротком запросе

Практическая задача часто начинается с выборки. Покажите параметры вместо конкатенации, минимальный набор полей и проверяемый результат. Затем интервьюер может добавить период, соединение или виртуальную таблицу. Объясняйте, почему вычисление выполняется запросом, а не циклом по объектам.

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

// Передаём типизированную ссылку отдельным параметром
Запрос.УстановитьПараметр("Группа", Группа);
Таблица = Запрос.Выполнить().Выгрузить();
Ожидаемый результат
  • Запрос получает активные элементы выбранной группы
  • Значение параметра не встраивается строкой в текст запроса

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

🔥 100 000+ учеников уже с нами

Устал читать теорию?
Пора кодить!

Кодик — приложение, где ты учишься программировать через практику. AI-наставник, интерактивные уроки, реальные проекты.

🤖 AI 24/7
🎓 Сертификаты
💰 Бесплатно
🚀 Начать учиться
Присоединились сегодня

Блоки подготовки 1С

ЭлементЧто означаетЧто делать
ФормыДирективы компиляции и контекстМинимизировать обмен
ЗапросыПараметры, Join, виртуальные таблицыПолучить данные набором
РегистрыНакопление и сведенияВыбрать модель учёта
ПроведениеДвижения и контроль остатковСохранить инварианты
ИнтеграцияHTTP, JSON, auth, повторСтабильный контракт

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

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

Практика: учебная конфигурация 1С и запрос с параметром

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

  1. Справочник и документ. Создайте иерархический справочник Номенклатура и документ ПоступлениеТоваров с табличной частью. Заведите две группы по три позиции и одну позицию пометьте на удаление: она понадобится для отбора.
  2. Запрос с параметром Группа. Выполните запрос ВЫБРАТЬ по Справочник.Номенклатура с условием Родитель = &Группа и отсечением ПометкаУдаления, передав параметр через УстановитьПараметр. В выборке останутся только активные элементы одной группы, а текст запроса не будет содержать самого значения.
  3. Регистр накопления Остатки. Добавьте регистр накопления Остатки с измерением Номенклатура и ресурсом Количество и пропишите движения в модуле документа. Проведите документ и откройте список движений: там должна появиться строка прихода по каждой позиции табличной части.
  4. Виртуальная таблица остатков. Напишите второй запрос к виртуальной таблице РегистрНакопления.Остатки.Остатки и сравните её вывод с записями регистра. Так на своём примере видно, что запись движения и рассчитанный остаток это разные вещи.
  5. Два проведения подряд. Откройте два сеанса и проведите два документа по одной позиции почти одновременно. Запишите, что произошло со вторым сеансом: ждал он освобождения или получил сообщение о блокировке, и какой объект оказался занят.

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

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

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

Частые ошибки и почему они появляются

Слабый ответ перечисляет директивы &НаКлиенте и &НаСервере без трассировки конкретного вызова. Вторая ошибка: путать запись регистра с остатком, который рассчитывается виртуальной таблицей. Третья: рассказывать о закрытом проекте общими словами и не иметь учебного примера, который можно показать и объяснить.

Нет предметной области

Поясните, какой учётный факт хранится и зачем.

Всё делать циклом

Сначала оцените запрос, пакетную обработку и возможности платформы.

Не говорить о проверке

Назовите тестовые данные, роли, негативный сценарий и замер.

Самопроверка

Зачем в запросе 1С параметры вместо подстановки значения в текст?

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

Где выполняется запрос к базе в 1С: на клиенте или на сервере?

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

Чем запись регистра накопления отличается от остатка?

Запись регистра накопления это движение: строка с приходом или расходом, привязанная к документу и моменту времени. Остаток в самих записях не хранится, его считает виртуальная таблица остатков на указанную дату по этим движениям.

Что рассказывать о проекте 1С, если он закрыт NDA?

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

Зачем нужны расширения вместо правки типовой конфигурации?

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

Как отвечать на вопрос о производительности запроса?

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

Что делать дальше

Соберите учебную конфигурацию с документом, двумя регистрами, отчётом и HTTP endpoint, затем проговорите архитектуру. Общую логику развивает курс SQL. Запросы повторите в статье для начинающих, а данные в разборе регистров.

🎯Хватит откладывать

Понравилась статья?
Пора применять на практике!

В Кодик ты не просто читаешь — ты сразу пишешь код. Теория + практика = реальный скилл.

Мгновенная практика
🧠AI объяснит код
🏆Сертификат

Без регистрации • Без карты