29.05.2006, 17:16 | #1 |
Участник
|
остатки товара по поставщику и уровню асс. классификатора
Есть отчет который считает остатки на дату в разрезе аналитки по складу и поставщику используя метод стандартного класса InventSumDatePhysicalDim:nHandQty( ...) http://axapta.mazzy.ru/lib/inventsum...atePhysicalDim.
Но работает он с поставщиком почему то не-корректно, по всем поставщикам одна и та же сумма, вообщем что-то не так, из-за чего это может быть? Почему не работает с поставщиком? Пример кода: void initFromDateOnHand(TransDate _transdate, ItemId _itemId, InventLocationId _InventLocationId, VendAccount _vendAccount = '') { VendInvoiceTrans lastVendInvoiceTrans = VendInvoiceTrans::findLast(_itemId, _transDate, _vendAccount); RetailShopItem retailShopItem = RetailShopItem::find(InventLocation::find(_InventLocationId).InventLocationId, _itemId); InventDim inventDim; InventDimParm InventDimParm; InventTrans inventTrans; ; inventDim.InventLocationId = _InventLocationId; inventDim.VendAccount = _vendAccount; InventDimParm.VendAccountFlag = NoYes::Yes; InventDimParm.InventLocationIdFlag = NoYes::Yes; InventDimParm.ItemIdFlag = NoYes::Yes; this.ItemId = _itemId; this.ItemRangeId = InventTable::find(_itemId).ItemRangeId; this.Qty = InventSumDatePhysicalDim:nHandQty(_transdate, _itemId, inventDim, InventDimParm); if ( lastVendInvoiceTrans ) { this.Price = lastVendInvoiceTrans.costValue() / lastVendInvoiceTrans.Qty; this.CostAmount = this.Price * this.Qty; } else { if ( this.Qty ) { this.CostAmount = InventSumFinancial::newParameters(_transdate, _itemId, inventDim, InventDimParm).value(); this.Price = this.CostAmount / this.Qty; } } this.RetailPrice = retailShopItem.RetailPrice; this.RetailAmount = retailShopItem.RetailPrice * this.Qty; } |
|