Среднеежемесячный остаток за период

Опубликовал Виталий Криволапов (Vit aka proger) в раздел Отчеты - Управленческие

Обработка выводит за период, по дням: остаток на день, продажи за предыдущие 30 дней, запас дней (количество дней на которые хватит этого остатка, при сохранении уровня продаж) и расcчитывает средний запас дней за период.

Обработка потребовалась для оценки работы менеджера по закупкам. В СКД выводимые данные почему-то отличались от полученных в запросе (кто знает объясните!).

Обработка создавалась для УПП, должна работать в УТ и в других конфах где есть регистры накоплений ТоварыНаСкладах и Продажи

Заголовок придумал не сам :)

Скачать файлы

Наименование Файл Версия Размер
Среднеежемесячный остаток за период
.epf 11,07Kb
11.09.14
95
.epf 11,07Kb 95 Скачать

См. также

Комментарии
1. Александр Рытов (Арчибальд) 2655 07.08.09 10:35 Сейчас в теме
Автора СРЕДНЕЕЖЕМЕСЯЧНОГО названия в студию! ;))
2. Сергей (Che) Коцюра (CheBurator) 3376 07.08.09 10:55 Сейчас в теме
(1) да, это - сильно!
.
Люди, которые водят хороводы - хороводоводы.
А люди, которые изучают творчество хороводоводов - хороводоводоведы.
Еще есть любители хороводоводоведов - хороводоводоведофилы.
Значит, люди, которые боятся любителей тех, кто изучает любителей хороводов - хороводоводоведофилофобы.
А те, кто на всём этом зацикливается - хороводоводоведофилофобоманы.
3. Аркадий Кучер (Abadonna) 3667 07.08.09 11:02 Сейчас в теме
(1,2) У моих подруг среднеежемесячные, к счастью, не совпадают ;)
4. Виталий Криволапов (Vit aka proger) 103 07.08.09 11:13 Сейчас в теме
автор в общем и не виноват, ему пришла директива с методикой расчета бонуса с таким словосочитанием. А я после выяснения глубокого смысла этих слов оставил историческое название. только на последнем этапе выкладывания обработки я осмыслено прочитал заголовок.
Резюме: "конвеер" враг креатива!
5. Игорь М. (Helper) 2 07.08.09 23:23 Сейчас в теме
Данные отчёта выводятся неверные. Тестировал на рабочей УТ 10.2 Допустим за месяц продано 10 шт. товара. Отчёт выводит, что эти 10 шт. проданы в последний день (из настройки отчёта). За предыдущий - за минусом того, что реально было продано в последний. И т.д.
6. Игорь М. (Helper) 2 08.08.09 13:35 Сейчас в теме
(5) Вернее, считает согласно логике отчёта корректно, но тогда, либо переименовать поле "Продано" на "Продано за месяц" (именно за месяц, а не за выставленный в отчёте период - так рассчитываются данные в отчёте), либо подредактировать отчёт, чтобы были оба показателя. Это более понятно пользователю.
7. Виталий Криволапов (Vit aka proger) 103 11.08.09 10:33 Сейчас в теме
(6) так написано же в описании "продажи за предыдущие 30 дней", по продажам и остаткам за период есть стандартные отчеты.
Смысл отчета в том чтобы оценить работу закупщика, определив, когда были низкие запасы на складах и усреднить.
8. Виталий Криволапов (Vit aka proger) 103 11.08.09 11:03 Сейчас в теме
Пожоже описание не понятно объясню "на пальцах": вы хотите оценить работу закупщика за первые 10 дней июля берете остатки товаров на 01.07.2009 и продажи за предыдущие 30 дней, с 01.06 по 01.07 (почему не за месяц не знаю, наверное так точнее) затем продажи/30 -> средняя продажа за день после этого остаток/(средняя продажа за день) -> запас дней, величина которая показывает на сколько дней хватит товара, при условии сохранения уровня спроса. Затем вы делаете аналогичные расчеты за 02, 03, ... 10 июля и выводите среднее число дней запаса. Это нужно сделать для каждой позиции номенклатуры. В результате вы видите запас какого товара меньше критичной для вас величины (min запас) и больше другой не менее критичной величины (max запас). Суть первого: клинту не хватит товара и он купит в другом месте, суть второго: деньги заморожены в товаре и то и другое плохо, поэтому бонус закупщика зависит от того как много позиций находятся в указанном пределе.
для этого собственно и нужен отчет.
9. konsul_mart.ru (Константин С.) 11.08.09 15:30 Сейчас в теме
Ощибка при формирования Шапки отчета.
10. Игорь М. (Helper) 2 13.08.09 11:44 Сейчас в теме
А как формируется показатель - Итого запас? А то, например, вижу следующие данные по определённой номенклатуре:
период с 10.07.09 по 10.08.09
продано 30 шт. товара - последняя продажа была 31.07.09
товара на складе нет, а в поле Итого запас: 35,64 шт.
11. Виталий Криволапов (Vit aka proger) 103 14.08.09 13:33 Сейчас в теме
(9) если не сложно выложи ошибку полностью и укажи в какой конфигурации ты запускаешь отчет
(10) Итого запас дней - среднее значение запаса дней за период:
ВЫБРАТЬ
Остатки.ПериодДень КАК ПериодДень,
Остатки.Номенклатура КАК Номенклатура,
ЕСТЬNULL(Остатки.КоличествоКонечныйОстаток, 0) КАК Остаток,
СУММА(ЕСТЬNULL(Продажи.КоличествоОборот, 0)) КАК Количество,
ВЫБОР
КОГДА СУММА(Продажи.КоличествоОборот) = NULL
ТОГДА 0
КОГДА СУММА(Продажи.КоличествоОборот) <= 0
ТОГДА 0
ИНАЧЕ Остатки.КоличествоКонечныйОстаток / (СУММА(Продажи.КоличествоОборот) / 30)
КОНЕЦ КАК ЗапасДней
ИЗ
РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(&НачалоПериода, &КонецПериода, авто, Движения, ) КАК Остатки
ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.Продажи.Обороты(ДОБАВИТЬКДАТЕ(&НачалоПериода, ДЕНЬ, -30), &КонецПериода, авто, ) КАК Продажи
ПО Остатки.Номенклатура = Продажи.Номенклатура
И Остатки.ХарактеристикаНоменклатуры = Продажи.ХарактеристикаНоменклатуры
И (Продажи.ПериодДень МЕЖДУ ДОБАВИТЬКДАТЕ(Остатки.ПериодДень, ДЕНЬ, -30) И Остатки.ПериодДень)
ГДЕ
Остатки.Номенклатура В ИЕРАРХИИ(&Номенклатура)

СГРУППИРОВАТЬ ПО
Остатки.ПериодДень,
Остатки.Номенклатура,
Остатки.КоличествоКонечныйОстаток

УПОРЯДОЧИТЬ ПО
ПериодДень
ИТОГИ
СУММА(Остаток),
СУММА(Количество),
СРЕДНЕЕ(ЗапасДней)
ПО
ОБЩИЕ,
Номенклатура,
ПериодДень
АВТОУПОРЯДОЧИВАНИЕ
12. Виталий Криволапов (Vit aka proger) 103 14.08.09 13:36 Сейчас в теме
У меня вопрос что нужно сделать, чтобы указанный выше запрос выдавал адекватные результаты в СКД?
13. konsul_mart.ru (Константин С.) 14.08.09 14:12 Сейчас в теме
Типовая УПП релиз 19.
ругается на отсутвие Параметра,
14. Виталий Криволапов (Vit aka proger) 103 17.08.09 09:39 Сейчас в теме
(13) пример описания ошибки:
{Форма.Форма(14,3)}: Переменная не определена (кодМагазина)
<<?>>кодМагазина = СокрЛП(Константы.ЭтотСклад.Получить().Код
15. Buffalobug 11.02.10 14:03 Сейчас в теме
{Форма.Форма(101)}: Поле объекта не обнаружено (ЗапасДней)
ОбластьВид.Параметры.ЗапасДней = ПредЗапасДней;
Оставьте свое сообщение