Сравнить ОриентацияМетокСводнойДиаграммы.ВсеУровниГоризонтально на собственной иерархии

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

Сводная диаграмма получает РезультатЗапроса с итогами по настоящему собственному иерархическому справочнику. Строковое название товара не выдаётся за иерархию.

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

Тело процедуры кнопки своей обычной формы, толстый клиент: сначала дополнительный блок источника, затем основной.

Подготовка

  1. В отдельной учебной конфигурации создайте свой иерархический справочник УчебныеИзданияДиаграммы: иерархия групп и элементов, код Строка 10 с автонумерацией, наименование 100, не менее двух уровней.

  2. Используйте обычную форму своей обработки в толстом клиенте. В теле одной процедуры её кнопки сначала выполните дополнительный блок, затем основной; клиентский код без директив управляемой формы.

  3. Каждый ручной запуск создаёт новую собственную группу и два элемента в своём учебном справочнике. Не заменяйте его рабочей номенклатурой. В сборке HTML записи не создавались.

  4. Снимок нужен только для показа в толстом клиенте, файл на диск и печать не используются.

Диаграмма = Новый СводнаяДиаграмма;
Диаграмма.ТипСводнойДиаграммы = ТипСводнойДиаграммы.Гистограмма;
Диаграмма.ИсточникДанных = Результат;
Измерение = Диаграмма.Точки.Добавить("Товар");
Измерение.КоличествоОткрытыхУровней = 2;
Диаграмма.Ресурсы.Добавить("Количество");
Диаграмма.ОбластьПостроения.ОриентацияМетокГоризонтальнойШкалы = ОриентацияМетокСводнойДиаграммы.ВсеУровниГоризонтально;
Диаграмма.ОбластьЗаголовка.Текст = "Свои издания: 3 и 5, итог группы 8";
Диаграмма.Обновить();
Снимок = Диаграмма.ПолучитьКартинку(800, 450, ФорматКартинки.PNG);
Лист = Новый ТабличныйДокумент;
Рисунок = Лист.Рисунки.Добавить(ТипРисункаТабличногоДокумента.Картинка);
Рисунок.Картинка = Снимок;
Рисунок.АвтоРазмер = Ложь;
Рисунок.Лево = 5;
Рисунок.Верх = 5;
Рисунок.Ширина = 160;
Рисунок.Высота = 90;
Лист.Показать("Собственная сводная диаграмма");
Сообщить("Источник — свои ссылки, а не строковые имена товаров");
До основного блока в той же процедуре: своя настоящая иерархия и результат запроса
Группа = Справочники.УчебныеИзданияДиаграммы.СоздатьГруппу();
Группа.Наименование = "Учебные издания";
Группа.Записать();
Книга = Справочники.УчебныеИзданияДиаграммы.СоздатьЭлемент();
Книга.Родитель = Группа.Ссылка;
Книга.Наименование = "Учебная книга";
Книга.Записать();
Тетрадь = Справочники.УчебныеИзданияДиаграммы.СоздатьЭлемент();
Тетрадь.Родитель = Группа.Ссылка;
Тетрадь.Наименование = "Учебная тетрадь";
Тетрадь.Записать();
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("Книга", Книга.Ссылка);
Запрос.УстановитьПараметр("Тетрадь", Тетрадь.Ссылка);
Запрос.Текст = "ВЫБРАТЬ &Книга КАК Товар, 3 КАК Количество
|ОБЪЕДИНИТЬ ВСЕ
|ВЫБРАТЬ &Тетрадь, 5
|ИТОГИ СУММА(Количество) ПО Товар ИЕРАРХИЯ";
Результат = Запрос.Выполнить();
Сообщить("Только собственная группа и два собственных издания");

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

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

  2. Назначаем результат источником сводной диаграммы, выбираем измерение Товар и ресурс Количество.

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

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

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

  2. Настройка относится к подписям горизонтальной шкалы; это не поворот столбцов в горизонтальную гистограмму.

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

Настройка показана на действительной собственной иерархии с понятными числами и ограничениями статического показа.

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

  1. ИсточникДанных получает РезультатЗапроса, не ТаблицаЗначений напрямую.

  2. Обычная Диаграмма и СводнаяДиаграмма имеют разные поля / свойства. Рисунок — лишь статический снимок, не интерактивный редактор сводной.

  3. Код 1С при сборке HTML не исполнялся, рабочая конфигурация и её данные не изменялись.

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

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

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

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

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