1С-Предприятие 8.0. Практическое пособие разработчика


Создание отчета РейтингКлиентов - часть 2


   |ИЗ

   |    РегистрНакопления.Продажи.Обороты КАК ПродажиОбороты

   |

   |УПОРЯДОЧИТЬ ПО

   |    Доход УБЫВ";

КонецПроцедуры

 

По сравнению с предыдущими отчетами, текст запроса довольно прост; единственным интересным местом, на которое следует обратить внимание, является поле "Доход", являющееся результатом вычисления выражения:

...

   |    ПродажиОбороты.ВыручкаОборот - ПродажиОбороты.СтоимостьОборот КАК Доход

...

 

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

Добавим в процедуру следующий текст (добавленный текст выделен жирным шрифтом):

Процедура Сформировать()

   // Вставить содержимое обработчика.

   Запрос = Новый Запрос;

   Запрос.Текст =

   "ВЫБРАТЬ

   |    ПродажиОбороты.Клиент.Представление КАК Клиент,

   |    ПродажиОбороты.ВыручкаОборот - ПродажиОбороты.СтоимостьОборот КАК Доход

   |ИЗ

   |    РегистрНакопления.Продажи.Обороты КАК ПродажиОбороты [201]

   |

   |УПОРЯДОЧИТЬ ПО

   |    Доход УБЫВ";

 

   ВыборкаРезультатаЗапроса = Запрос.Выполнить().Выбрать();

   Диаграмма = ЭлементыФормы.Диаграмма;

   //запретить обновление и автотранспонирование диаграммы

   Диаграмма.Обновление = Ложь;

   Диаграмма.АвтоТранспонирование = Ложь;

   //создать единственную точку диаграммы

   ТочкаДиаграммы = Диаграмма.УстановитьТочку("Доход");

   //перебрать выборку результата запроса и создать серии

   //и значения

   Пока ВыборкаРезультатаЗапроса.Следующий() Цикл

       ТекущаяСерияДиаграммы = Диаграмма.УстановитьСерию(ВыборкаРезультатаЗапроса.Клиент);




Начало  Назад  Вперед