|
![]() |
#1 |
Moderator
|
Цитата:
Вариант 1 - у вас просто слетела номерная серия по номеру сопоставления в модуле логистики. Поскольку никаких проверок уникальности там нету, система будет молча вставлять записи со значением SettleTransId уже использованой в прошлых месяцах. Вариант 2 - доработки. (Маловероятно - тяжело представить кому бы может потребоваться этот кусок кода менять и зачем). |
|
![]() |
#2 |
Участник
|
Увы, но так работает стандарт, стек выглядит примерно так InventCostItemDim\updateReceiptAdjustment\updateReceiptAdjustmentTrans\updateSettlementReceipt - в нем хорошо видно, что в некоторых случаях система создает корректировки с уже существующим SettleTransId.
Перед основными коррекциями происходит следующее - алгоритм пробегает по всем частично сопоставленным проводкам прихода и проверяет сумму сопоставления текущего и рассчитанного по следующей формуле: себестоимость * кол-во сопоставленное / общее кол-во в проводке, и если суммы различны и она превышает порог указанный в параметрах закрытия, то система формирует коррекцию по данной проводке прихода и рассчитанную сумму размазывает на все проводки, которые связаны с указанной проводкой, при этом корректировки и формируются с новой датой закрытия и существующим SettleTransId и еще в этот момент система не смотрит открыта ли связанная проводка или нет, таким вот образом система может подкорректировать ранее закрытую проводку. Это хорошо заметно становится, если использовать средневзвешенную модель в DAX 2009 и выше, если у вас виртуальный перенос который создает система используется в нескольких закрытиях(например приход был в одном периоде закрытия, а расходы в нескольких), то вероятность получить указанные коррекции увеличивается.
__________________
Sergey Nefedov |
|
|
За это сообщение автора поблагодарили: fed (5), S.Kuskov (1), ashu (1). |
![]() |
#3 |
Участник
|
Можно ли как-то решить эту проблему, т.е. избавиться от этих корректировочных проводок?
|
|
![]() |
#4 |
Участник
|
А что это за ситуация такая? Когда такая разница возможна? После выполнения операции корректировки открытых проводок?
|
|
![]() |
#5 |
Moderator
|
Да - после анализа кода - забераю свои слова назад. Действительно система может склонировать сопоставления прошлых периодов, подменив там номер ваучера и дату (и конечно же суммы коррекции всякие), но оставив SettleTransId.
|
|
![]() |
#6 |
Участник
|
Коллеги, как Вы считаете, это правильно трогать ранее закрытую проводку? Я, так понимаю, что после таких коррекций она становится открытой и снова участвует в расчете себестоимости? Или я где-то ошибаюсь?
__________________
-Ты в гномиков веришь? -Нет. -А они в тебя верят, смотри, не подведи их. Последний раз редактировалось Pustik; 08.05.2014 в 18:11. |
|
![]() |
#7 |
Moderator
|
Цитата:
Если эту операцию коррекции закрытых проводок заблокировать (это нелегко, но в целом возможно), то обороты по переносу останутся не-нулевыми (то есть -со склада А списали больше чем на склад Б пришло). Я раздумывал над вариантом когда все коррекции закрытых приходов автоматически списываются на прибыли и убытки и даже писал об этом вот в этой вот теме. Однако же, этот вариант тоже имеет один очень и очень заметный минус: Возможно через цепочку переносов целевой товар все еще находится где-то на предприятии. По хорошему - в такой ситуации надо было коррекцию прогнать через все переносы и производства (пусть даже закрытые) и дотащить до того места где товар находится. А мы на первом же закрытом переносе все списали в прибыли и убытки... Тоже вариант так себе, на самом деле. В общем - я на самом деле не вижу внятного способа решения данной проблемы. |
|
|
За это сообщение автора поблагодарили: Pustik (2), Dolores (1). |
Теги |
выверка, закрытие склада, как правильно, себестоимость |
|
|