Увидеть дополнительные закладки режима компоновки данных

Учебные задачи

РежимКомпоновкиДанных включает Характеристики и Компоновка данных; он не создаёт схему СКД сам.

Где и как запускать

Полный модуль собственной управляемой формы. Диалог только редактирует учебный черновик.

Подготовка

  1. Собственная учебная конфигурация УчебнаяКонфигурацияСинтаксиса, платформа 8.5.1.1343. Создайте новую внешнюю обработку с пустой управляемой основной формой.

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

  3. Асинхронный и callback-уроки выполняются на клиенте Windows; модальный вариант — только толстый клиент собственной базы, где модальные вызовы уже разрешены. Режим рабочей конфигурации ради урока не меняйте.

  4. Черновик из двух параметров не содержит ИЗ и не читает таблицы базы. Диалог может показывать структуру вашей учебной конфигурации, но этот код не выполняет даже принятый текст.

  5. Первый опыт: измените состав полей в редакторе и нажмите Отмена. Второй опыт: снова откройте, измените псевдоним поля и нажмите ОК. Сверяйте сообщение с черновиком, показанным перед открытием.

  6. Учебный черновик хранится в переменной этого экземпляра формы; закрытие формы его теряет. Записи базы, файлов, рабочих настроек и автоматического запуска полученного запроса нет.

Перем СобственныйЧерновик;
Перем КонструкторЗанят;

&НаКлиенте
Процедура ПриОткрытии(Отказ)
    СобственныйЧерновик = "ВЫБРАТЬ &Название КАК Наименование, &Количество КАК Количество";
    КонструкторЗанят = Ложь;
КонецПроцедуры


&НаКлиенте
Асинх Процедура ОткрытьУчебныйКонструктор(Команда)
    Если КонструкторЗанят Тогда
        Сообщить("Сначала завершите уже открытый собственный конструктор");
        Возврат;
    КонецЕсли;
    Если ТипЗнч(СобственныйЧерновик) <> Тип("Строка") Тогда
        ВызватьИсключение "Назначьте событие ПриОткрытии обработчику урока";
    КонецЕсли;
    ИсходныйТекст = СобственныйЧерновик;
    Сообщить("Исходный черновик: " + ИсходныйТекст);
    Конструктор = Новый КонструкторЗапроса(ИсходныйТекст);
    Конструктор.АвтоДобавлениеПредставлений = Ложь;
    Конструктор.РежимКомпоновкиДанных = Истина;
    Сообщить(Конструктор.Текст = ИсходныйТекст);
    Сообщить(НЕ Конструктор.АвтоДобавлениеПредставлений);
    Сообщить(Конструктор.РежимКомпоновкиДанных);
    КонструкторЗанят = Истина;
    Попытка
        ПолученныйТекст = Ждать Конструктор.ОткрытьАсинх();
    Исключение
        КонструкторЗанят = Ложь;
        ВызватьИсключение "Учебный конструктор не завершён: " + ОписаниеОшибки();
    КонецПопытки;
    КонструкторЗанят = Ложь;
    Если ТипЗнч(ПолученныйТекст) = Тип("Строка") Тогда
        Если ПустаяСтрока(ПолученныйТекст) Тогда
            Сообщить("Пустой текст не принят; собственный черновик сохранён");
            Сообщить(СобственныйЧерновик = ИсходныйТекст);
        Иначе
            СобственныйЧерновик = ПолученныйТекст;
            Сообщить("Принятый черновик, без выполнения: " + СобственныйЧерновик);
            Сообщить(СобственныйЧерновик = ПолученныйТекст);
        КонецЕсли;
    Иначе
        Сообщить("Текст не получен; собственный черновик сохранён");
        Сообщить(СобственныйЧерновик = ИсходныйТекст);
    КонецЕсли;
КонецПроцедуры

Разбор по шагам

  1. Создаём тот же параметрический черновик в отдельном экземпляре редактора.

  2. Включаем только РежимКомпоновкиДанных, АвтоДобавлениеПредставлений оставляем выключенным.

  3. После открытия найдите закладки Характеристики и Компоновка данных. Их наличие — визуальная проверка реального клиента.

  4. Закройте Отменой, затем сравните с первым уроком, где режим выключен.

  5. ОК принимает лишь текст; схема, настройки и процессор СКД этим уроком не создаются.

Как проверить результат

  1. Три предварительные проверки Истина. Дополнительные закладки доступны в реальном редакторе.

  2. Отмена сохраняет черновик; ОК не запускает запрос или отчёт.

  3. Python/HTML-проверки не подтверждают фактическое наличие закладок: это проверяется при запуске 1С.

Ожидаемый результат

Объяснена настройка интерфейса редактора без подмены её построением отчёта СКД.

На что обратить внимание

  1. Одинаковый текст может не измениться после переключения режима: различается доступность настройки в диалоге.

  2. Параметры &Название и &Количество не становятся автоматически значениями параметров СКД.

  3. Не называйте полученную строку МакетКомпоновкиДанных.

Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.