Имя: Пароль:
1C
1С v8
Как прикрутить к отчету "Продажи" такое?
0 tciban
 
13.08.21
09:38
Уважаемые коллеги, приветствую. Вот возник вопрос из спортивного интереса. УПП 1.2, обычные формы. Человек хочет получать в отчете следующую информацию количество договоров по менеджеру по которым есть продажи всех 5 наименований из заданного списка. Понятно что отдельным запросом, да на СКД это делается за 5 минут (преувеличиваю наверное про 5 :), кароче сделал уже, но вопрос другой!

Изначальное желание клиента было прикрутить получение этой инфы к типовому отчету Продажи, который как известно (тем кто имел дело с УПП и УТ) строиться по оборотному регистру продажи и реализован на основе древнего механизма Универсальный Отчет. Ну т.е. там простой запрос к регистру продажи, из него берется все и построителем выводится так или сяк. И вот хочу спросить тех, кто имел дело с этим механизмом - можно ли к этому типовому прикрутить получение требуемой информаци?

Если че - спрашивайте, уточняйте детали! Просто интересно как такое можно сделать, не меняя имеющегося функционала отчета Продажи :)
1 mistеr
 
13.08.21
09:40
(0) Нельзя. Скопируй отчет Продажи, переделай на СКД и крути там что хочешь.
2 ДенисЧ
 
13.08.21
09:41
Прикрутить можно.
Но не нужно.
3 tciban
 
13.08.21
09:44
(2) Ну я чисто из спортивного интереса интересуюсь - как?
4 ДенисЧ
 
13.08.21
09:46
(3) Нужно заставить себя посмотреть запрос )))
Хотя, если мне эклер не изменяет, нет там запроса. Так что придётся вприсядку. И напляшешься, и на..............ся.
5 tciban
 
13.08.21
09:49
Поскольку речь идет про архаичные технологии начала века, хочу напомнить - там все через Универсальны отчет сделано, вначале идет настройка программная типа "УниверсальныйОтчет.ИмяРегистра = "Продажи";", новые сведения добавляются типа так "УниверсальныйОтчет.ДобавитьПолеРесурс("КоличествоSKU",  "Номенклатура", "Количество SKU", "КОЛИЧЕСТВО(РАЗЛИЧНЫЕ Номенклатура)");", а отборы типа так: "УниверсальныйОтчет.ДобавитьОтбор("Номенклатура");"

Так что количество разных номенклатур проданних получить не сложно, т.е. накладываем наш список как отбор по номенклатуре, получаем кто сколько продал разных, а вот как зафильтпровать потом тот факт что кто то продавал все 5 из списка, этого не понимаю.
6 ДенисЧ
 
13.08.21
09:51
(5) Ответ простой. Отказаться от механизма заполнения запроса по регистру и написать его руками.
Я ж говорю - вприсядку.
7 tciban
 
13.08.21
09:51
(4) и запрос там в принципе есть. И до текста его добраться можно. Но я хочу понять, можно ли это сделать средствами, которые предоставили разработчики (см. выше).
8 ДенисЧ
 
13.08.21
09:52
(7) а, вприсядку не хочешь? Ты против ЗОЖа???
Тогда ответ прост - никак.
9 tciban
 
13.08.21
09:54
(8) Ну это смотря что понимать под "присядкой"! Я за изначальную. кондовую "присядку" что пришла к нам от предков. Без новомодных бейкденсов и прочего!
10 Мультук
 
гуру
13.08.21
09:55
(0)
>> Скопируй отчет Продажи, переделай на СКД и крути там что хочешь.

Присоединяюсь. Делал нечто подобное, пришлось уйти на СКД.
1) Заказчик привык к форме настройки от универсального отчета. Пришлось сделать ее копию и написать преобразование настройки -> СКД, скд - >Настройки
2) Заказчик "внезапно" захотел подменить открытие стандартного отчета на новый СКД-шный. Вот только конфа не в курсе, что теперь новый отчет не совсем такой, как типовой
3) И т.д.
11 ДенисЧ
 
13.08.21
09:56
(9) Если хочешь научиться вприсядку, то (извини за политику) смотри сольное выступление загорелого козака на олимпиаде )))
12 mistеr
 
13.08.21
09:57
(9) Ты сначала напиши нужный запрос, отладь, потом посмотри на него и пойми, что (1) гораздо проще. Никакого смысла цепляться за предков в УПП нет.
13 tciban
 
13.08.21
09:58
Перефразирую свой вопрос. Можно ли получить из регистра "Продажи" количество различных договоров по которым были продажи всех 5 наименований из жестко заданного списка одним запросом, без временных таблиц.
14 tciban
 
13.08.21
10:01
(9) Запрос давно написан. Больше времени ушло на попытки понять что же нужно заказчику. Вот этот запрос:
ВЫБРАТЬ
    ПродажиОбороты.Контрагент.ОсновнойМенеджерПокупателя КАК Менеджер,
    ПродажиОбороты.Контрагент КАК Контрагент,
    ПродажиОбороты.ДоговорКонтрагента КАК Договор,
    КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ПродажиОбороты.Номенклатура) КАК КоличествоSKU
ПОМЕСТИТЬ втКоличествоSKU
ИЗ
    РегистрНакопления.Продажи.Обороты(
            НАЧАЛОПЕРИОДА(&ДатаН, ДЕНЬ),
            КОНЕЦПЕРИОДА(&ДатаК, ДЕНЬ),
            Авто,
            Номенклатура В ИЕРАРХИИ (&Топ5)
                И НЕ Контрагент В ИЕРАРХИИ (&ГруппыИсключения)) КАК ПродажиОбороты

СГРУППИРОВАТЬ ПО
    ПродажиОбороты.Контрагент.ОсновнойМенеджерПокупателя,
    ПродажиОбороты.Контрагент,
    ПродажиОбороты.ДоговорКонтрагента
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ РАЗЛИЧНЫЕ
    втКоличествоSKU.Менеджер КАК Менеджер,
    КОЛИЧЕСТВО(РАЗЛИЧНЫЕ втКоличествоSKU.Договор) КАК АКБСТоп5
ИЗ
    втКоличествоSKU КАК втКоличествоSKU
ГДЕ
    втКоличествоSKU.КоличествоSKU = &MaxSKU

СГРУППИРОВАТЬ ПО
    втКоличествоSKU.Менеджер

УПОРЯДОЧИТЬ ПО
    Менеджер
15 mistеr
 
13.08.21
10:04
(14) Переделай ВТ на подзапрос, в чем проблема?

Но плат может поплыть, сам понимаешь.
16 mistеr
 
13.08.21
10:04
(15) *план*
17 VladZ
 
13.08.21
10:19
(0) Сделай отдельный отчет.
18 Kassern
 
13.08.21
10:20
(15) и чем подзапрос лучше временной таблицы?
19 mistеr
 
13.08.21
10:22
(18) У ТС спроси.
20 ДенисЧ
 
13.08.21
10:22
(18) Тем, что построитель (который в исходной постановке) - не умеет временные таблицы.
21 tciban
 
13.08.21
10:33
(17) Отдельный отчет я уже сделал :)
22 tciban
 
13.08.21
10:34
(18) Дело не в нем! Временная таблица конечно лучше. Как ее уложить в парадигму универсального отчета из УПП 1.2?
23 tciban
 
13.08.21
10:35
(20) Вот Денис правильно все понял!!!
24 viktor_vv
 
13.08.21
10:53
(22) Так в универсальном же можно просто запрос произвольный , ну разве что в построитель загоняется с ограничениями построителя.
25 Kassern
 
13.08.21
10:55
(20) бяда...построителем толком не работал, не знал что там с временными таблицами все плохо.
26 viktor_vv
 
13.08.21
10:55
(24) + Вот УПП 1.2 не уверен, что там также как в УПП 1.3
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший