СКД Итоги по остаткам

1. pilotfitz 02.07.12 10:47 Сейчас в теме
Добрый день



Есть отчет по остаткам номенклатуры на каждый день, с группировками по номенклатуре и дням, с использованием дополнения по дням. Данные берутся из регистра бухгалтерии



Как получить остаток по группировке Номенклатура равный сумме остатков по дням?



Выражение Сумма(КоличествоКонечныйОстатокДт) по ресурсу КоличествоКонечныйОстатокДт дает остаток на конец периода

Выражение Сумма(ВычислитьВыражениеСГруппировкойМассив("Сумма(КоличествоКонечныйОстатокДт)","ПериодДень")) дает сумму остатков по границам периода и дням, в которых было движение



Ниже представлен пример отчета для случая, когда внутри периода движений не было



------------------------------------------------------

Номенклатура | Период | Остаток

------------------------------------------------------

Товар 1 20 <----- неправильно

День 1 10

День 2 10

День 3 10

----------------------------------------------



Спасибо
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Andrino 02.07.12 11:12 Сейчас в теме
По-моему, в этом нет никакого смысла, потому что КонечныйОстатокДт - это уже остаток на каждый конкретный день, а остаток по группировке при подчиненной детализации по дням - это остаток на конец всего периода. Так и должно быть. А суммировать конечный остаток в разные дни (10+10+10) и говорить, что это остаток в целом по Товар1 ошибочно, потому что его как было 10, так и осталось 10 - это тот же самый остаток.
3. pilotfitz 02.07.12 11:36 Сейчас в теме
Смысл есть
1) Сумма остатков по дням нужна для определения среднего остатка в день. Этот показатель используется для подсчета оборачиваемости ТМЦ за период
2) Организация оказывает услуги хранения тмц, стоимость услуг зависит от количества хранимых тмц и от времени хранения. И есть система скидок, которая тоже зависит от количества и периода хранения тмц
4. Andrino 02.07.12 12:39 Сейчас в теме
(3) pilotfitz,
Если у полей периодов и полей остатков заполнены роли, то в функциях языка выражений СКД считаться итоговые суммы по ним будут именно так - не суммированием значений в периодах, а сдвигом к последнему. В этом и смысл. Единственное исключение при заданных ролях у полей - если ты будешь передавать данные в метод общего модуля с помощью какой-нибудь функции СКД типа ТаблицаЗначений или ГрупповаяОбработка - тогда в методе модуля уже суммы будут считаться как ты опишешь.
Для задачи расчета оборачиваемости (в которой обычно и нужен среднедневной остаток) проще всего сделать так - два набора данных: в первом обороты со всей аналитикой и с полем Период (соответствующим дню), во втором выборка из виртуальной таблицы остатков с указанным параметром периодов и первым полем Период (в которое подставляется параметр Период). Наборы связываются по аналитике и полю Период с передачей в набор с остатками значения поля Период. Поле Период и поля аналитики в наборе с остатками недоступны (поставить все галки), выбирается поле Период из основного набора с оборотами. Для поля Период делается дополнение, если нужно.
5. pilotfitz 02.07.12 12:52 Сейчас в теме
(4) Способ соединения таблицы периодов с таблицей остатков - старый способ, и работает долго, т.к. рассчитывает остатки на каждую запись периода. СКД по сравнению с ним выплевывает результат с дополнениями по периодам на раз. Думал сделать красиво, но видимо придется как обычно
6. Andrino 02.07.12 13:01 Сейчас в теме
(5) pilotfitz,
Здесь нет соединения таблицы периодов с таблицей остатков. Здесь предполагается соединение набора с запросом по оборотам (где и будет период без дополнения) и набора с остатками. А дополнение периодов все равно производится средствами СКД.
7. kolya_tlt 86 02.07.12 13:21 Сейчас в теме
при данной постановке задаче возник вопрос: какого чёрта у вас складской учет на регистре бухгалтерии? боюсь уже спросить: а система скидок тоже в нём же?
8. Andrino 02.07.12 13:32 Сейчас в теме
(7) kolya_tlt,
по-моему такое обычно происходит от того, что задачи по планированию и управлению остатками ставят бухам и финикам, которые уверены, что в данных упр. учета (на регистрах накопления) данные неверны и они могут доверять только бух. проводкам :)
10. pilotfitz 02.07.12 14:27 Сейчас в теме
(8) Andrino, либо если управленческого учета нет как такового. а есть отдельные задачи, решить которые можно по данным бухгалтерии
9. pilotfitz 02.07.12 14:25 Сейчас в теме
(7) kolya_tlt, мой пример воспроизводится и на регистрах накопления, разницы нет
11. kolya_tlt 86 02.07.12 14:33 Сейчас в теме
(9) это и понятно. дело в том что скд дорисовывает в вашем случае дни и берет последнее значение показатели, а вам нужно добавить именно запись для верного расчета. поэтому кроме как в (4) быстрее не сделать. тем более с чего вы это взяли, что будет медленно?
12. pilotfitz 02.07.12 14:48 Сейчас в теме
(11) kolya_tlt, просто я не совсем понял метод 4, постараюсь разобраться
13. kolya_tlt 86 02.07.12 17:02 Сейчас в теме
я делал так: 1) получал все дни из заданного периода. 2) получите те остатки, которые получаете сейчас (видимо это виртуальная таблица остаткииобороты с периодичностью день) и по хитрому объединить полученные таблицы в одну.
хитрость аналогична получению курсов валют на каждый день в запросе
14. pilotfitz 02.07.12 17:28 Сейчас в теме
(13) kolya_tlt, спасибо, попробую разобраться
15. Visitizer 201 17.01.13 15:42 Сейчас в теме
16. pilotfitz 17.01.13 22:36 Сейчас в теме
Оставьте свое сообщение

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