Подскажите с отчетом, будто занимаюсь извращением

1. Гость 21.06.23 18:26
Подскажите пожалуйста я на правильном пути или нет. Вроде как отчет строится, но ощущение будто занимаюсь каким то извращением. Не знаю как дальше колонку итоги подводить, так как она подводится везде по разному, где сумма полей за все периоды, где сумма некоторых полей, где не сумма а среднее. Так же не знаю как создать строку месячный прогноз. Подскажите пожалуйста и наведите на правильную сторону
ВЫБРАТЬ
	"Отчет по работе ИМ" КАК Раздел,
	Сумма(РеализацияТоваровУслуг.СуммаДокумента) КАК Значение,
	НАЧАЛОПЕРИОДА(РеализацияТоваровУслуг.Дата, ДЕНЬ) КАК Дата,
	ВЫБОР КОГДА 
		ПартнерыСегмента.Сегмент.Наименование = "Розница" 
			Тогда "Выручка розница" 
		КОГДА ПартнерыСегмента.Сегмент.Наименование = "МелкийОпт" ИЛИ ПартнерыСегмента.Сегмент.Наименование = "СЦ"  
			Тогда "Выручка МелкийОпт"
		КОНЕЦ КАК Сегмент
	ПОМЕСТИТЬ Выручка 
ИЗ
	Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПартнерыСегмента КАК ПартнерыСегмента
		ПО (РеализацияТоваровУслуг.Партнер = ПартнерыСегмента.Партнер)
ГДЕ 
	НЕ ПартнерыСегмента.Сегмент = Значение(Справочник.СегментыПартнеров.ПустаяСсылка)
	И РеализацияТоваровУслуг.Дата МЕЖДУ &НачалоПериода И &КонецПериода
	И ПартнерыСегмента.Сегмент.Наименование В ("МелкийОпт", "Розница", "СЦ")
СГРУППИРОВАТЬ ПО
	НАЧАЛОПЕРИОДА(РеализацияТоваровУслуг.Дата, ДЕНЬ),
	ПартнерыСегмента.Сегмент 
	
;

ВЫБРАТЬ
	"Отчет по работе ИМ" КАК Раздел,
	Сумма(Выручка.Значение) КАК Значение,
	Выручка.Дата КАК Дата,
	"Общая выручка" КАК Сегмент
ПОМЕСТИТЬ ОбщаяВыручка 
ИЗ
	Выручка КАК Выручка
СГРУППИРОВАТЬ ПО 
	Выручка.Дата
;

ВЫБРАТЬ
	"Заказы" КАК Раздел, 
	КОЛИЧЕСТВО(ЗаказКлиента.Ссылка) как Значение,
	НАЧАЛОПЕРИОДА(ЗаказКлиента.Дата, ДЕНЬ) КАК Дата,
	"Сделки" КАК Сегмент
	ПОМЕСТИТЬ КолВоСделок
ИЗ
	Документ.ЗаказКлиента КАК ЗаказКлиента
ГДЕ
	ЗаказКлиента.Дата МЕЖДУ &НачалоПериода И &КонецПериода
СГРУППИРОВАТЬ ПО
	НАЧАЛОПЕРИОДА(ЗаказКлиента.Дата, ДЕНЬ)
	
;

ВЫБРАТЬ
	"Отчет по работе ИМ" КАК Раздел, 
	ВЫРАЗИТЬ(ОбщаяВыручка.Значение / КолВоСделок.Значение КАК ЧИСЛО(10,0)) КАК Значение,
	ОбщаяВыручка.Дата как Дата, 
	"Средний чек" КАК Сегмент
	
ПОМЕСТИТЬ СреднийЧек
ИЗ 
	ОбщаяВыручка как ОбщаяВыручка
	ЛЕВОЕ СОЕДИНЕНИЕ КолВоСделок КАК КолВоСделок
	ПО ОбщаяВыручка.Дата = КолВоСделок.Дата
;

ВЫБРАТЬ 
	"Отмена заказов" КАК Раздел, 
	ЕстьNull(КОЛИЧЕСТВО(УП_Сделка.Ссылка), 0) КАК Значение,
	НАЧАЛОПЕРИОДА(УП_ИсторияСтатусовСделок.ДатаУстановки, День) КАК Дата,
	УП_Сделка.ПричинаОтказа КАК Сегмент
ПОМЕСТИТЬ ОтменаЗаказов
ИЗ
	Документ.УП_Сделка КАК УП_Сделка
		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.УП_ИсторияЭтаповСделок КАК УП_ИсторияСтатусовСделок
		ПО УП_Сделка.Ссылка = УП_ИсторияСтатусовСделок.Сделка
			И (УП_ИсторияСтатусовСделок.Этап.Тип = ЗНАЧЕНИЕ(Перечисление.УП_ТипыЭтаповВоронки.ЗавершенНеудачно))
		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.УП_ВзаимодействияПоСделкам КАК УП_ВзаимодействияПоСделкам
			ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ВыручкаИСебестоимостьПродаж КАК ВыручкаИСебестоимостьПродаж
			ПО УП_ВзаимодействияПоСделкам.Взаимодействие = ВыручкаИСебестоимостьПродаж.ЗаказКлиента
				И (ВыручкаИСебестоимостьПродаж.Регистратор ССЫЛКА Документ.ВозвратТоваровОтКлиента)
		ПО УП_Сделка.Ссылка = УП_ВзаимодействияПоСделкам.Сделка
			И (УП_ВзаимодействияПоСделкам.Взаимодействие ССЫЛКА Документ.ЗаказКлиента)
			И (НЕ УП_ВзаимодействияПоСделкам.Взаимодействие.ПометкаУдаления)
ГДЕ
	УП_Сделка.ПометкаУдаления = ЛОЖЬ
	И УП_Сделка.ЭтапВоронки.Тип = ЗНАЧЕНИЕ(Перечисление.УП_ТипыЭтаповВоронки.ЗавершенНеудачно)
	И УП_ИсторияСтатусовСделок.ДатаУстановки МЕЖДУ &НачалоПериода И &КонецПериода
СГРУППИРОВАТЬ ПО
	НАЧАЛОПЕРИОДА(УП_ИсторияСтатусовСделок.ДатаУстановки, День),
	УП_Сделка.ПричинаОтказа
;

ВЫБРАТЬ
	"Отмена заказов" КАК Раздел, 
	ВЫРАЗИТЬ(Сумма(ОтменаЗаказов.Значение/ КолВоСделок.Значение) * 100 КАК ЧИСЛО(3, 1))  КАК Значение,
	ОтменаЗаказов.Дата как Дата, 
	"Конверсия отказов" КАК Сегмент
ПОМЕСТИТЬ ДопПоляОтменЗаказов 
ИЗ 
	ОтменаЗаказов как ОтменаЗаказов
	ЛЕВОЕ СОЕДИНЕНИЕ КолВоСделок КАК КолВоСделок
	ПО ОтменаЗаказов.Дата = КолВоСделок.Дата
СГРУППИРОВАТЬ ПО	
	ОтменаЗаказов.Дата
ОБЪЕДИНИТЬ ВСЕ 

	ВЫБРАТЬ
	"Отмена заказов" КАК Раздел, 
	ВЫРАЗИТЬ(ОтменаЗаказов.Значение/ КолВоСделок.Значение * 100 КАК ЧИСЛО(3, 1))  КАК Значение,
	ОтменаЗаказов.Дата как Дата, 
	"Конверсия отказов оплат" КАК Сегмент
ИЗ 
	ОтменаЗаказов как ОтменаЗаказов
	ЛЕВОЕ СОЕДИНЕНИЕ КолВоСделок КАК КолВоСделок
	ПО ОтменаЗаказов.Дата = КолВоСделок.Дата
ГДЕ
	ОтменаЗаказов.Сегмент.Наименование = "Отсутствие оплаты клиентом" 
;

ВЫБРАТЬ ОбщаяВыручка.* ИЗ ОбщаяВыручка ОБЪЕДИНИТЬ ВСЕ 
ВЫБРАТЬ Выручка.* ИЗ Выручка ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ КолВоСделок.* ИЗ КолВоСделок ОБЪЕДИНИТЬ ВСЕ 
ВЫБРАТЬ СреднийЧек.* ИЗ СреднийЧек ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ ОтменаЗаказов.* ИЗ ОтменаЗаказов ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ ДопПоляОтменЗаказов.* ИЗ ДопПоляОтменЗаказов


Показать
Прикрепленные файлы:
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. user1826630 21.06.23 20:25 Сейчас в теме
(1)
но ощущение будто занимаюсь каким то извращением.
Если нравится, то зачем останавливаться? Наслаждайся! (И ни с кем не делись)
3. Kiva1526 21.06.23 21:02 Сейчас в теме
(2)Если бы я понимал что веду себя в правильную сторону, то бы наслаждался. А пока я в неведении 😂
4. user1826630 21.06.23 21:21 Сейчас в теме
(3) Но есть нюанс...
5. user1826630 21.06.23 21:23 Сейчас в теме
Начни с того, чтобы не использовать в запросах харкодные сравнения.
Что станет с твоим отчетом, если кто-то в системе поменяет наименование сегмента?
6. Kiva1526 21.06.23 21:54 Сейчас в теме
(4) а как тогда найти именно эти сегменты в отчете? По коду? Или как то еще можно ? Они же произвольно создаются пользователями и признаков у них никаких нет
7. user1826630 21.06.23 21:56 Сейчас в теме
(6) Про слова "предопределенные элементы" или "сохраняемые настройки" - забудь как о страшном сне!
Они же произвольно создаются пользователями
Может и в программный код пользователи сами их прописывают???
8. Kiva1526 21.06.23 22:30 Сейчас в теме
(7) Типа вместо Сегмент.наименование = «МелкийОпт», сделать Сегмент = &Сегмент и в модуле обьекта при компоновке результата поместить в эти параметры нужные параметры? Просто эти элементы справочника не предопределенные, поэтому ваще хз как их по другому найти
9. user1826630 21.06.23 22:34 Сейчас в теме
(8) Я разве зря намекнул про хранимые настройки?
10. Kiva1526 21.06.23 22:50 Сейчас в теме
(9)С этим вроде как понял, завтра буду пробовать. Спасибо большое) Есть что еще не так в моем подходе ?
Внимание! Не забывайте отмечать решение на ваш вопрос, если оно найдено. Это повысит ваш рейтинг на форуме.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот