← Назад к списку
Логотип 1C Разработчик 1C Разработчик
11.02.2026

Тестовое задание на вакансию «Программист 1С»

Компания: Kaizen Business

Тестовое задание

На вакансию «Программист 1С»

Официальный франчайзинговый центр 1С

Уважаемый соискатель!

Мы благодарим Вас за отклик на предложение о работе и приглашаем Вас пройти тестирование для участия в отборе претендентов на открытую вакансию «Программист 1С».

Условия проведения тестирования: выслать свое решение задач в любом текстовом файле (либо скрин-шот) до истечения 30 минут с момента получения задания. Данные задачи не является промышленными, это несколько вопросов из экзамена по платформе 1С Специалист. Решение нужно предоставить с помощью каркасной конфигурации, допускается использовать пустую конфигурацию 1С.

Задание 1

Найти все документы "споПриход", у которых не заполнен реквизит "ДокументОснование", и заполнить его ссылкой на документ "споУвольнительныйЛист" с номером 000000001.

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

Выборка = Запрос.Выполнить().Выбрать();

Пока Выборка.Следующий() Цикл

Док = Выборка.Ссылка.ПолучитьОбъект();
Если Выборка.ДокументОснование.Пустая() Тогда

Док.ДокументОснование =

Документы.споУвольнительныйЛист.НайтиПоНомеру("000000001");

Док.Записать(РежимЗаписиДокумента.Проведение);

КонецЕсли;

КонецЦикла;

Задание 2

Требуется: Удалить записи из регистра накопления "споРасходПриход" по определенному филиалу (код "УК").

Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
|    споРасходПриходОбороты.Филиал,
|    споРасходПриходОбороты.Регистратор
|ИЗ
|    РегистрНакопления.споРасходПриход.Обороты(, , Регистратор, ) КАК
|    споРасходПриходОбороты
|ГДЕ
|    споРасходПриходОбороты.Филиал = &Филиал";

Запрос.УстановитьПараметр("Филиал", Справочники.споФилиалы.НайтиПоКоду("УК"));

Выборка = Запрос.Выполнить().Выбрать();
РегНакопления = РегистрыНакопления.споРасходПриход;

Пока Выборка.Следующий() Цикл

НабЗаписей = РегНакопления.СоздатьНаборЗаписей();
НабЗаписей.Отбор.Регистратор.Установить(Выборка.Регистратор);
НабЗаписей.Прочитать();
НабЗаписей.Удалить(); // Удаляем записи
НабЗаписей.Записать();

КонецЦикла;

Задание 3

(Написать свой код) Требуется создать и провести три документа разных типов (споПриход, споРасход, споСписание) на сервере с последующим возвратом их ссылок клиенту.

Общие требования:

  • Для всех документов должны быть заполнены общие реквизиты:
    • Филиал: предопределенный элемент справочника споФилиалы с кодом "МВ" и наименованием "Москва"
    • Пользователь: элемент справочника Пользователи с именем "Петров" и кодом "01"
  • Условия выполнения:
    • Документы должны проводиться в рамках одной транзакции
    • При ошибке проведения любого документа необходимо отменить проведение всех остальных
    • Учесть, что запись документов может занимать значительное время
    • Оптимизировать выполнение для минимизации времени работы
  • Результат:
    • Вернуть клиенту ссылки на все созданные документы после успешного проведения