Сдача квалификационных экзаменов «1С:Профессионал» и «1С:Специалист» — это важный этап в карьере любого разработчика. Однако даже при глубоком изучении материалов Павла Чистого, Елены Хрусталевой и Игоря Радченко кандидаты часто сталкиваются с вопросами, ответы на которые кажутся неочевидными или противоречащими повседневной практике. Один из таких камней преткновения — механизм отборов в динамических списках управляемых форм по полям, которые не отображаются на экране.
В этой статье мы подробно разберем, почему платформа 8.3 считает определенные действия избыточными, и выясним, как правильно готовиться к практическому 5-часовому экзамену на «Специалиста».
Рассмотрим ситуацию, которая часто встречается в тестах «1С:Профессионал» по платформе 8.3. Вопрос звучит следующим образом: «Для включения отборов в списках (управляемых форм) по содержимому табличных частей объектов и их свойств, неотображаемых в форме...». Многие опытные разработчики выбирают вариант «реализуется произвольным запросом динамического списка», основываясь на том, что для вывода дополнительных данных мы обычно редактируем текст запроса. Однако правильный ответ гласит: «Ничего дополнительного настраивать не надо, все реализовано на уровне платформы».
Давайте выясним причину такого решения платформы. Проанализируем техническую составляющую:
ДинамическийСписок указана ОсновнаяТаблица, платформа автоматически получает доступ к метаданным этого объекта.Запроса вручную, пользователь может зайти в меню «Ещё» — «Настроить список». На вкладке «Отбор» в списке доступных полей будут присутствовать реквизиты табличных частей. Платформа сама сконструирует необходимый запрос к базе данных для фильтрации основной таблицы по условию в ТЧ.Рассмотрим пример на конфигурации «Управление торговлей 11». Допустим, нам нужно в справочнике «Физические лица» найти всех людей, у которых в табличной части «Контактная информация» указан город «Москва». При этом сама табличная часть на форме списка не отображается. Нам не нужно писать ЛЕВОЕ СОЕДИНЕНИЕ в запросе динамического списка. Платформа позволяет выбрать поле КонтактнаяИнформация.Город в стандартном окне настроек отбора. Именно поэтому ответ №1 является методически верным для платформы 8.3.
Переход от теоретического теста к 5-часовому практическому экзамену часто вызывает тревогу. Разберем основные моменты, которые беспокоят кандидатов:
Многие боятся, что им придется «изображать» интерфейс или создавать сотни объектов с нуля. Проанализируем, что представляет собой каркасная база. Это подготовленная среда, в которой уже созданы основные справочники (например, Номенклатура, Склады), документы и планы видов характеристик. Ваша задача — не заниматься рутинным созданием справочников, а реализовать сложную бизнес-логику:
СистемыКомпоновкиДанных.На текущий момент экзамен сдается на актуальных релизах платформы 8.3. Использование интерфейса «Такси» является стандартом. Если вы привыкли к интерфейсу в стиле «8.2» (в закладках), вам следует переучиться, так как методические требования 1С ориентированы на современный UX. В каркасной конфигурации управляемые формы уже являются базовым стандартом, и никакие «обычные формы» в современных билетах по платформе 8.3 не встречаются.
Рассмотрим важные правила, несоблюдение которых ведет к снижению баллов:
1. Отказ от модальности. Это критическое требование. Вместо старых методов используйте асинхронные вызовы. Посмотрим на пример разницы в коде:
Вместо старого (запрещенного) кода:
// Так делать НЕЛЬЗЯ
Ответ = Вопрос("Продолжить выполнение?", РежимДиалогаВопрос.ДаНет);
Если Ответ = КодВозвратаДиалога.Да Тогда
// Логика
КонецЕсли;
Рассмотрим правильный вариант с использованием оповещения:
// Так делать НУЖНО
ОписаниеОповещения = Новый ОписаниеОповещения("ПослеВопроса", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещения, "Продолжить выполнение?", РежимДиалогаВопрос.ДаНет);
&НаКлиенте
Процедура ПослеВопроса(Результат, ДополнительныеПараметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
// Продолжаем выполнение
КонецЕсли;
КонецПроцедуры
2. Использование критериев отбора. Помните, что объект метаданных КритерииОтбора используется для других целей — например, для реализации механизма «Связанные документы» или быстрого поиска ссылок по всей базе. Для настройки простого фильтра в списке документов или справочников использовать их на экзамене будет ошибкой.
Для успешной сдачи важно не просто «зазубривать» ответы, а понимать внутренние механизмы платформы. Динамический список — мощный инструмент, который берет на себя огромную часть работы по построению запросов. При подготовке к 5-часовому экзамену делайте упор на решение задач из актуального сборника (от 2014 года и новее) и обязательно практикуйтесь в интерфейсе «Такси» на последних релизах платформы 8.3.