Передать полный свой вариант с собственным ключом и названием

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

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

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

Обработчик кнопки своей обычной формы запуска, толстый клиент; целевая форма собственного отчёта управляемая.

Подготовка

  1. В своей учебной конфигурации создайте Отчеты → УчебныеКнигиСКД. У отчёта откройте ОсновнаяСхемаКомпоновкиДанных и сохраните её макетом ОсновнаяСхемаКомпоновкиДанных.

  2. В конструкторе СКД создайте источник Local и набор-запрос Книги. Вставьте приведённый запрос двух константных строк; это не чтение рабочих справочников. Доступные поля Наименование, Количество, Сумма заполните автоматически.

  3. В настройках схемы создайте вариант Подробно: выбраны Наименование, Количество, Сумма; структура — группировка Детальные записи. Второй вариант Кратко: Наименование и Сумма, также Детальные записи. Первым оставьте Подробно; у обоих задайте понятное представление.

  4. Мастером создайте у своего отчёта управляемую форму ОтчетКниг, тип Основная, со стандартными командами Сформировать / Настройки. Основной реквизит Отчет типа ОтчетОбъект.УчебныеКнигиСКД должен остаться основным.

  5. Проверьте штатный реквизит Результат типа ТабличныйДокумент и связанное поле ПолеРезультата с путём Результат. Если мастер дал другое имя, согласуйте именно этот свой реквизит и связь штатной команды, не добавляйте второй результат.

  6. Добавьте свои реквизиты Статус Строка 200 и ЧислоФормирований Число 10.0, разместите на форме. События отчётной формы назначаются самой форме, не полю результата и не модулю объекта отчёта.

  7. Для уроков сохранения у конфигурации оставьте незаданными ХранилищеВариантовОтчетов и ХранилищеПользовательскихНастроекОтчетов: используется стандартное внутреннее хранилище собственной учебной базы. Пользователю нужно право СохранениеДанныхПользователя. Сохраняйте и загружайте только свои именованные настройки этого отчёта.

  8. Каждый пример самостоятельный. Формируйте только этот собственный отчёт; рабочие настройки, печать и сохранение в чужие хранилища не используются. BSL здесь не исполнялся.

  9. Для этого запуска создайте отдельную свою обработку с обычной формой и кнопкой ОткрытьСвойОтчет. Основной блок — нажатие этой кнопки, толстый клиент. Не переносите получение макета / источника доступных настроек непосредственно в тонкий клиент.

  10. Открывается именно подготовленная управляемая основная форма ОтчетКниг своего отчёта. Полный путь задан явно; владелец — открытая собственная форма запуска. Нет рабочих источников и произвольных имён конфигураций.

  11. Подробно должен быть первым вариантом сохранённой своей схемы, как задано в подготовке. Полные настройки передаются вместе с собственными ключом и представлением; приоритет у Вариант, поэтому UUID не объявляется ключом уже существующего хранилища.

Процедура ОткрытьСвойОтчет(Кнопка)
    ПараметрыОтчета = Новый Структура;
    Схема = Отчеты.УчебныеКнигиСКД.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");
    НастройкиВарианта = Схема.ВариантыНастроек[0].Настройки;
    НастройкиВарианта.ДополнительныеСвойства.Вставить("ПамяткаКниг", "Передан свой Подробно");
    ПараметрыОтчета.Вставить("Вариант", НастройкиВарианта);
    ПараметрыОтчета.Вставить("КлючВарианта", Новый УникальныйИдентификатор);
    ПараметрыОтчета.Вставить("ПредставлениеВарианта", "Свой подробный вариант книг");
    ПараметрыОтчета.Вставить("СформироватьПриОткрытии", Истина);
    ФормаОтчета = ПолучитьФорму("Отчет.УчебныеКнигиСКД.Форма.ОтчетКниг",
        ПараметрыОтчета, ЭтаФорма, Новый УникальныйИдентификатор);
    ФормаОтчета.Открыть();
    Сообщить("Открыт только собственный отчёт книг");
КонецПроцедуры
Конструктор СКД своего отчёта: запрос двух константных строк, не BSL
ВЫБРАТЬ
    "Учебная книга" КАК Наименование,
    3 КАК Количество,
    750 КАК Сумма
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ "Учебная тетрадь", 5, 200

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

  1. Подготовьте свой отчёт и сохранённую СКД с двумя строками.

  2. Из своей формы запуска сформируйте точные входные параметры.

  3. Откройте отчёт и сравните форму, слой настроек и строки результата согласно выбранному параметру.

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

  1. Форма получает три выбранных поля Подробно из реальной своей схемы и указанное представление.

  2. Ключ используется как идентификатор переданного варианта. Поиск сохранённого чужого варианта по несуществующему UUID не имитируется: Вариант передан явно.

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

Входной параметр связан с собственным реальным источником настроек и настоящей формой отчёта.

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

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

  2. Вариант, пользовательские и фиксированные настройки — разные слои; приоритет явно переданного объекта описан перед кодом.

  3. Код 1С здесь не исполнялся; рабочие базы, печать и чужие хранилища не изменялись.

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

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

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

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

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