![]() |
#1 |
Участник
|
Ошибка при создании кредит-ноты
Добрый день!
При создании кредит-ноты по Заказу на покупку выходит ошибка: "Максимальное количество десятичных знаков для единицы хранения 0". Проверка находиться в классе InventSplitTrans.Check(). Как удалось выяснить проблема, в единице измерения номенклатур у которой десятичные знаки равны нулю. Проверили проводки у нас при закрытии склада получилось дробное сопоставление по данным номенклатурам. Теперь не понятно как выходить из данной ситуации. DAX 4.0.2501.116 SP2 MS SQL 2005 x64 |
|
![]() |
#2 |
Участник
|
|
|
![]() |
#3 |
Участник
|
Да именно так.
|
|
![]() |
#4 |
Участник
|
У вас по этой номенклатуре есть проводки на дробное количество?
|
|
![]() |
#5 |
MCITP
|
![]()
Может где-то по ходу жизни номенклатуры поменяли кол-во знаков?
__________________
Zhirenkov Vitaly |
|
![]() |
#6 |
Участник
|
По этой номенклатуре делали приход и расход, но все количество было целое. Единицу измерения могли изменить.
|
|
![]() |
#7 |
Участник
|
Цитата:
По истории сопоставления ищите первоисточник возникновения дробного сопоставления. При сопоставлении каких проводок оно в первые возникло? Последний раз редактировалось S.Kuskov; 16.06.2011 в 12:52. |
|
![]() |
#8 |
Участник
|
Смотрели в том числе и в БД, там все значения целые. Первое дробное появилось при сопоставлении. Пока думаю, что все таки меняли единицу измерения.
|
|
![]() |
#9 |
Участник
|
|
|
![]() |
#10 |
Участник
|
Что удалось выяснить на сегодня
У нас используется метод учета запасов средневзвешенная на дату. Попробовали сделать такой пример, сделали два Заказа на покупку один 20 штук другой 40 штук, с этого же склада сделали списание на -20 штук. После закрытия склада в поле QtySettled появляются дробные значения. Посмотрели в классе \Classes\InventCostItemDim\updateModelAverage, где есть следующий код: X++: qtyRemain -= this.financialOpenQty(receipt); if (qtyRemain <= 0) { settleQty = -this.financialOpenQty(issue); } else { [B]settleQty = -this.financialOpenQty(receipt) * openQtyIssue / qty;[/B] settleQty = decround(settleQty,inventAdj::settleQtyDec()); |
|
![]() |
#11 |
Участник
|
Попробовали убрать проверку в методе check класса InventSplitTrans, кредит-ноты теперь создаются, но при разноске и последующем закрытии склада, проводки разъединяются и количество становиться дробным. В принципе данный метод работает, но пугают дробные количества в проводках.
|
|
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|