Версия для печати темы (https://pro1c.org.ua/index.php?s=98af6045d8348c31f37f38275000fc5f&showtopic=5757)
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Программирование в 1С Предприятие 7.7 _ Расчёт среднедневных остатков.
Автор: Олег Крам 23.12.11, 8:22
Поделитесь, пожалуйста, опытом .
Какой самый оптимальный по быстродействию алгоритм расчёта среднедневных остатков за произвольный период ?
В частности по остаткам ТМЦ.
Мой такой вариант. Запросом остатки за каждый день в таблицу значений. Затем ТЗ свернуть и усреднить.
Есть ли другие варианты ?
Автор: Vofka 23.12.11, 8:54
Цитата
Есть ли другие варианты ?
А могут быть другие варианты? Единственное что, так это хочу заметить, что запрос бы сделать 1 с разворотом по дням, а не на каждый день делать запрос.
Автор: pablo 23.12.11, 9:27
Оптимальный по быстродействию алгоритм предполагает повышенные расходы памяти и прочих ресурсов. Например, можно организовать периодический регистр сведений, который будет содержать средние остатки и заполняться при проведении документов по складу. Естественно при этом вырастет время проведения документа, но тут уже Вам решать: в какой точке быстродействие важнее.
Автор: Vofka 23.12.11, 9:39
Цитата
можно организовать периодический регистр сведений
Вышел новый релиз 7.7?
Автор: Flexy 23.12.11, 9:45
Цитата(Vofka @ 23.12.11, 9:39)
Вышел новый релиз 7.7?
Да.7.8
По теме: Взять отчет по остаткам и чуток допилить вывод именно среднедневных остатков.
Автор: pablo 23.12.11, 10:00
Виноват, не посмотрел платформу. Но применительно к 7.7 можно организовать периодический реквизит справочника Номенклатура
Автор: igmig65 23.12.11, 10:08
Цитата
Запросом остатки за каждый день в таблицу значений. Затем ТЗ свернуть и усреднить.
Для бухгалтерии это запрос к бухитогам, для ТиСа к регистру ч-з объект Запрос.
Для 1 варианта использовать цепочку БИ.ИспользоватьСубконто(ТМЦ);Выбрать/получить субконто(ТМЦ), потом выбрать получить периоды (смотреть параметры)
для 2 варианта это обычный запрос к регистру с Группировкой по ТМЦ - строки, и 2, - Группировка(День Все ВшедшиеВЗапрос) - колонки,
итоги промежуточных группировок придется собирать, например в массивах.
Автор: Vofka 23.12.11, 10:09
Цитата
Взять отчет по остаткам и чуток допилить вывод именно среднедневных остатков.
Отчет по остаткам берёт остатки на конкретную дату. А надо взять остатки на каждый день, сплюсовать их и поделить на количество дней. Это будет среднедневным остатком за определённый период.
Автор: igmig65 23.12.11, 10:14
Цитата
Отчет по остаткам берёт остатки на конкретную дату. А надо взять остатки на каждый день, сплюсовать их и поделить на количество дней. Это будет среднедневным остатком за определённый период.
Не всегда так будет правильно, в тесении периода могут быть остатки 0, ведь если в течении месяца на складе всего только 1 день был остаток 100, это ж незначит, что СрДнОст = 100/30. Нужно делить на кол-во ненулевых дней
Автор: Ardi 23.12.11, 10:52
А если в течении периода оборот был каждый день, но при этом среднедневной остаток равен нулю?
Цитата(igmig65 @ 23.12.11, 11:14)
Не всегда так будет правильно, в тесении периода могут быть остатки 0, ведь если в течении месяца на складе всего только 1 день был остаток 100, это ж незначит, что СрДнОст = 100/30. Нужно делить на кол-во ненулевых дней
Как раз на 30 и нужно делить.
Автор: Vofka 23.12.11, 11:03
Цитата
Не всегда так будет правильно, в тесении периода могут быть остатки 0, ведь если в течении месяца на складе всего только 1 день был остаток 100, это ж незначит, что СрДнОст = 100/30. Нужно делить на кол-во ненулевых дней
В любом случае на количество всех дней делить надо, потому что остаток
среднедневной и по фиг сколько на каждый отдельный день был остаток.
Автор: nysysimara 23.12.11, 11:12
Цитата из мат.спр.:"Сре́днее значе́ние — числовая характеристика множества чисел или функций; — некоторое число, заключенное между наименьшим и наибольшим из их значений. Наиболее употребительными С.з. являются:
среднее арифметическое
среднее взвешенное — усовершенствованный способ вычисления среднего арифметического
среднее гармоническое
среднее геометрическое
среднее логарифмическое
среднее значение случайной величины — то же, что математическое ожидание случайной величины
среднее значение функции
средние Колмогорова
среднее степенное
непараметрические средние — мода, медиана."
В данном случае, по-моему, нужно среднее арифметическое:
"В математике и статистике сре́днее арифмети́ческое (или просто среднее) набора чисел — это сумма всех чисел в этом наборе, делённая на их количество."
Автор: igmig65 23.12.11, 23:17
со всем выше сказанным согласен, чисто математически, но.....
Цитата
В математике и статистике сре́днее арифмети́ческое (или просто среднее) набора чисел — это сумма всех чисел в этом наборе, делённая на их количество."
Вот я и говорю, что ИНОГДА этот набор чисел должен содержать даты с ненулевыми остатками.
Автор: Ardi 24.12.11, 0:37
Цитата(igmig65 @ 24.12.11, 0:17)
Вот я и говорю, что ИНОГДА этот набор чисел должен содержать даты с ненулевыми остатками.
На какой вопрос отвечает этот отчет тому кто такой отчет смотрит?
Если поделить на число дней месяца - я понимаю ЗАЧЕМ он нужен.
Автор: igmig65 24.12.11, 2:33
Цитата(Ardi @ 24.12.11, 0:37)
На какой вопрос отвечает этот отчет тому кто такой отчет смотрит?
Если поделить на число дней месяца - я понимаю ЗАЧЕМ он нужен.
Я согласен, что вы видите среднедневные остатки, а вот зачем ОНИ ВАМ НУЖНЫ? Вот например для расчета себестоимости, мало ли зарплата, эл.энергия, бензин, и тд, если хранение есть один из немаловажных видов деятельности. Конечно все индивидуально. Я просто имел ввиду что само понятие среднедневные остатки, в тек.контексте, невсегда может применяться как чисто математическое.
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua