![]() |
|
Добавить данные о количестве контрагентов в отчет продажи УТ 10.3 | ☑ | ||
---|---|---|---|---|
0
davlen86
28.06.18
✎
05:24
|
Доброго времени суток, уважаемые форумчане! Прошу помочи в непростой ситуации, явно кто то уже решал такую задачу, у самого не получается сделать. Собственно задача: Нужно в стандартный отчет "Продажи" УТ 10.3 добавить данные о количестве контрагентов. Вся сложность в том что отчет этот формируется с помощью Универсального отчета, если бы он был на СКД решить это гораздо проще. Делаю так в модуле отчета в процедуре УстановитьНачальныеНастройки(ДополнительныеПараметры = Неопределено) Экспорт добавил строчки:
УниверсальныйОтчет.ДобавитьПолеРесурс("КоличествоТТ", "Количество(Различные ИсточникДанных.Контрагент)", "Количество ТТ"); УниверсальныйОтчет.ДобавитьПоказатель("КоличествоТТ", "Количество ТТ", Ложь, "ЧЦ=10"); |
|||
1
davlen86
28.06.18
✎
05:28
|
Сначала ругалось что Номенклатура находится не в группе, для этого написал процедуру уже в модуле Универсального отчета, которая обрабатывает сформированный текст запроса перед тем как присвоить его в текст построителя отчета, чтобы появился в тексте раздел "СГРУППИРОВАТЬ ПО". Ошибка теперь не выходит, но в поле выводит совсем неправильное количество контрагентов.
|
|||
2
davlen86
28.06.18
✎
05:29
|
Подскажите плиз, как это можно сделать, что я делаю не так.
|
|||
3
VladZ
28.06.18
✎
05:40
|
Оставь типовой как есть. Сделай свой на СКД.
|
|||
4
davlen86
28.06.18
✎
05:46
|
(3) я бы с радостью. Но заказчик хочет видеть именно в типовом.
|
|||
5
mehfk
28.06.18
✎
05:56
|
Запрос корректный?
УниверсальныйОтчет.ПостроительОтчета.ПолучитьЗапрос() |
|||
6
davlen86
28.06.18
✎
05:58
|
(5) Запрос уж слишком большой получается, кучу свойств добавляется. Сейчас попробую вытяну то что относится к количеству контрагентов.
|
|||
7
davlen86
28.06.18
✎
06:05
|
(5) Поставил точку останова в модуле формы отчета Продажи в процедуре
Процедура СформироватьОтчет(ТабличныйДокумент) Экспорт // Перед формирование отчета можно установить необходимые параметры универсального отчета. УниверсальныйОтчет.СформироватьОтчет(ТабличныйДокумент); КонецПроцедуры // СформироватьОтчет() Очень удивительный запрос получил в итоге: ВЫБРАТЬ РАЗРЕШЕННЫЕ ИсточникДанных.Контрагент КАК Контрагент, ПРЕДСТАВЛЕНИЕ(ИсточникДанных.Контрагент) КАК КонтрагентПредставление, НАЧАЛОПЕРИОДА(ИсточникДанных.Период, МЕСЯЦ) КАК ПериодМесяц, ИсточникДанных.Номенклатура КАК Номенклатура, ПРЕДСТАВЛЕНИЕ(ИсточникДанных.Номенклатура) КАК НоменклатураПредставление, ИсточникДанных.КоличествоОборот КАК КоличествоОборот, ИсточникДанных.СтоимостьОборот КАК СтоимостьОборот ИЗ РегистрНакопления.Продажи.Обороты(&ДатаНач, &ДатаКон, Регистратор, (Контрагент В ИЕРАРХИИ(&Параметр1)) И Номенклатура В ИЕРАРХИИ(&Параметр2)) КАК ИсточникДанных СГРУППИРОВАТЬ ПО ИсточникДанных.Номенклатура, ИсточникДанных.Контрагент, ИсточникДанных.КоличествоОборот, ИсточникДанных.СтоимостьОборот, НАЧАЛОПЕРИОДА(ИсточникДанных.Период, МЕСЯЦ) УПОРЯДОЧИТЬ ПО СтоимостьОборот УБЫВ ИТОГИ СУММА(КоличествоОборот), СУММА(СтоимостьОборот) ПО ОБЩИЕ, Контрагент ИЕРАРХИЯ КАК Контрагент, ПериодМесяц КАК ПериодМесяц АВТОУПОРЯДОЧИВАНИЕ А в отчет выводятся данные Количестов ТТ, но неправильные, откуда интересно он их берет тогда. |
|||
8
davlen86
28.06.18
✎
06:46
|
ап
|
|||
9
davlen86
28.06.18
✎
07:01
|
все оказалось довольно просто))). На будущее если кому то понадобится в модуле отчета Продажи необходимо добавить:
УниверсальныйОтчет.ДобавитьПолеРесурс("КоличествоТТ", "ИсточникДанных.Контрагент", "Количество ТТ"); вместо того что было написано ранее в (0), и в модуле объекта Унив. отчет вставить код перед тем как передать текст запроса в построитель: ТекстЗапроса = СтрЗаменить(ТекстЗапроса,"СУММА(КоличествоТТ)","Количество(Различные КоличествоТТ)"); |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |