Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
03 апр 2025, 23:18

Отчет по продажам (по месяцам)

Автор sali, 06 фев 2025, 09:29

0 Пользователей и 1 гость просматривают эту тему.

Максим75

sali, почитайте это, может поможет https://forum.mista.ru/topic/472337

или поищите на просторах сети как вывести в СКД среднее рядом с итогами, наверняка кто-то реализовывал такое.

sali

Максим75, спасибо вам за помощь, знаю замучил вас :zebzdr: однако там не то что нужно (пригодиться) , но пока не то

Максим75

sali, смотрите, что надо сделать.

среднее в запросе считать не надо, для этих целей есть СКД.
в запросе посчитайте все что нужно и еще дополнительно количество месяцев (через разность дат, как у Вас, только посмотрите, может еще плюс 1 надо сделать).
потом в СКД делаете вычисляемое поле, называете его среднее и без какие либо формул.
в ресурсах делаете ресурс по этому полю, в выражении пишите Сумма(Количество)/КоличествоМесяцев (только вот не прямо так, а заменить на свои алиасы).
В настройках вывода делаете таблицу, в колонках идет период, а потом детальные записи (они не вложены в период, а идут как еще одна колонка). В этих детальных записях в выбранных полях снимаете галку Авто и добавляете туда ресурс среднее.
Если все сделаете правильно, у Вас будут идти по столбцам месяцы, потом итоговое значение и после итогов вот это среднее.

sali

Цитата: Максим75 от 07 фев 2025, 14:45может еще плюс 1 надо сделать)
да вы знаете, я после еще обдумал весь отчет и понадобиться не плюс 1 поле, а несколько.
первое поле оно будет считать количество продаваемых месяцев - это те месяца в которых были продажи. здесь нам понадобится функция выбор когда тогда, где первое условие будет 1 с условием что продажи больше или меньше 0 (меньше т к возвраты учитываются) , а 0 это где нет их.

второе поле будет разность дат, но это просто дополненное поле реквизита из календаря

третье как раз таки среднее - числовое поле, ресурсное с формулой Сумма(Количество) / Сумма(КОличествоПродМесяцев)

sali

Максим75, здравствуйте, еще раз и извините. все же как в запросе прописать условие если в выбранный период в каком из месяцев была продажа то = 1, если нет то 0
в выбор когда тогда не могу додумкать

Максим75

sali, смотрите, у Вас сколько уровней группировок по строкам? одна (клиент) или две (клиент плюс товар)?
что Вы подразумеваете под "была продажа"? была любая продажа по любому клиенту? или любая продажа по конкретному клиенту?

потому как Вам среднее надо будет считать по верхнему уровню группировки, а если есть еще и второй уровень, то и по второму, а там могут быть варианты, что конкретный товар продавался немного не так, как вообще продажа клиенту (ну т.е. в какой-то месяц конкретный товар конкретному клиенту не продавался, и у клиента кол-во месяцев продажи может быть допустим 5, а вот конкретного товара этому клиенту допустим 4). Тогда как Вы будете среднее считать? Понимаете о чем я?

sali

sali, или я уже туплю с этим заданием конкретно и просто сделать проверку на количество < и > 0 ......... простите

sali

Максим75, "была продажа" - была продажа товара в этом месяце или нет. он же в одном месяце может не продаваться или возвратиться, в другом продастся и как раз количество продаваемых месяцев узнать то нужно для Среднего вычета.
Цитата: Максим75 от 10 фев 2025, 13:17уровней группировок по строкам?
по группе контрагентов отбор идет

Максим75

sali, т.е по строкам группировка одна.
тогда вообще все просто - окончательный вариант выборки просто группируете по контрагенту и применяете агрегатную функцию КоличествоРазличных к периоду (там где продажи считали). А потом к выборке левым соединением вот с этим набором данных соединяете по клиенту и сможете получить кол-во месяцев продаж конкретному клиенту.

sali

Цитата: Максим75 от 10 фев 2025, 13:25применяете агрегатную функцию КоличествоРазличных к периоду (там где продажи считали).
то бишь во временной таблице с данными (где выбираю контрагента, товар, количество...) поле период нужно переписать на
количество(различные вт_реализацияоборот.период)?

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск