0
- 17.09.2020 - 08:26
|
Делаю пробный технологический отчет по справочнику, у него поле Статус - иерархический справочник. Вывод отчета через макет. Отчет должен вывести 3 уровня группировок Группы статуса - статус - элементы исходного справочника. Отчет работает но полностью отказывается группировать строки, хотя должен. Глюк или я косячу? Текст модуля ниже &НаСервере Функция СформироватьНаСервере() ОтчетОбъект = РеквизитФормыВЗначение("Отчет"); Макет = ОтчетОбъект.ПолучитьМакет("МакетЛидов"); ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок"); ОбластьСтрока = Макет.ПолучитьОбласть("Строка"); ОбластьСтатусГруппа = Макет.ПолучитьОбласть("СтатусГруппа"); ОбластьСтатус = Макет.ПолучитьОбласть("Статус"); ТабДок=Новый ТабличныйДокумент; ТабДок.Очистить(); ОбластьЗаголовок.Параметры.Заголовок = "Состояние лидов по событиям"+Символы.ПС+ "За период "+ПредставлениеПериода(НачалоДня(Период.ДатаНачала ), КонецДня(Период.ДатаОкончания)); ТабДок.Вывести(ОбластьЗаголовок); ТабДок.НачатьАвтогруппировкуСтрок(); Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | Лиды.Ссылка КАК Лид, | Лиды.СтатусЛида КАК Статус, | КОЛИЧЕСТВО(Лиды.Ссылка) КАК КолЛидов |ИЗ | Справочник.Лиды КАК Лиды | |СГРУППИРОВАТЬ ПО | Лиды.СтатусЛида, | Лиды.Ссылка |ИТОГИ | КОЛИЧЕСТВО(КолЛидов) |ПО | Статус ИЕРАРХИЯ, | Лид"; Выборка1 = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса. ПоГруппировкам); Пока Выборка1.Следующий() Цикл Если ЗначениеЗаполнено(Выборка1.Статус) Тогда Если Выборка1.Статус.ЭтоГруппа Тогда ОбластьСтатусГруппа.Параметры.СтатусЛида = Выборка1.Статус; ОбластьСтатусГруппа.Параметры.КолЛидов = Выборка1.КолЛидов; ТабДок.Вывести(ОбластьСтатусГруппа); Иначе ОбластьСтатус.Параметры.СтатусЛида = Выборка1.Статус; ОбластьСтатус.Параметры.КолЛидов = Выборка1.КолЛидов; ТабДок.Вывести(ОбластьСтатус); КонецЕсли; Иначе ОбластьСтатус.Параметры.КолЛидов = Выборка1.КолЛидов; ТабДок.Вывести(ОбластьСтатус); КонецЕсли; Выборка2 = Выборка1.Выбрать(ОбходРезультатаЗапроса.ПоГруппиро вкам); Пока Выборка2.Следующий() Цикл ОбластьСтрока.Параметры.НаименованиеЛида = Выборка2.Лид; ТабДок.Вывести(ОбластьСтрока); КонецЦикла; КонецЦикла; ТабДок.ЗакончитьАвтогруппировкуСтрок(); ТабДок.ТолькоПросмотр=Истина; ТабДок.ФиксацияСверху=5; ТабДок.ФиксацияСлева=2; Возврат ТабДок; КонецФункции | |
1
- 17.09.2020 - 13:29
| Если я правильно понимаю проблему - второй параметр метода табличного документа Вывести | |
2
- 17.09.2020 - 14:57
| То есть указав уровень Группировка заработает? Попробую. Спасибо за идею. | |
3
- 18.09.2020 - 06:00
| И чем всё закончилось? | |
| Интернет-форум Краснодарского края и Краснодара |