AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Функционал
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 01.08.2008, 00:44   #1  
Qaz Qwerty is offline
Qaz Qwerty
китайский стажер
 
152 / 37 (2) +++
Регистрация: 12.05.2008
О "Check Cost Price" в закрытии склада DAX4
В закрытии склада есть две проверочные процедуры, которые нигде толком не описаны. Так как меня попросили объяснить как вообще работает все закрытие склада, то пришлось начать разбираться с того, в каком случае оно не работает.
Одна из процедур - проверка CostPrice.

Может быть кому-нибудь тоже будет полезно знать логику, так что делюсь:

1. Идем по таблице InventTrans, группировки InventTransId, Voucher, TransType, TransRefId, DateFinancial, учитываем следующие условия:
• receipts.ValueOpen = InventTransOpen::Yes
• receipts.StatusIssue = StatusIssue::None
• receipts.StatusReceipt = StatusReceipt::Purchased
• receipts.TransType != InventTransType::InventTransfer
• receipts.TransType != InventTransType::WMSTransport
• receipts.TransType != InventTransType::QuarantineOrder
• receipts.TransType != InventTransType::Production or not ignoreProduction (из диалога)
• receipts.PackingSlipReturned == NoYes::No
• receipts.DateFinancial <= toDate или пустое toDate из диалога
• receipts.Qty > 0

2. Считаем InventTrans.CostAmountStd = currency::amount((InventTrans.CostAmountPosted + InventTrans.CostAmountAdjustment)/ InventTrans.Qty);
3. receiptCostPricePcsMax = CostPricePcsMaxValue в inventParameters;
4. Если costPriceBase из диалога не CostPriceBase::Median, то baseCostPricePcs = inventCostPricePcs = standart Cost Price из InventTable и InventDim, иначе baseCostPricePcs = medianCostPricePcs = currency::amount((receipt.CostAmountStd + prevValue)/2); где мы берем две средние записи из InventTrans для расчета
5. minDeviation, maxDeviationPercent (по умолчанию 50%) – из диалога к отчету
6. Печатаем следующие транзакции с сообщениями об ошибках
• baseCostPricePcs < 0
• receipt.CostAmountStd < 0
• receipt.CostAmountStd > receiptCostPricePcsMax
• baseCostPricePcs >= 0 and abs(receipt.CostAmountStd - baseCostPricePcs) > minDeviation)
• baseCostPricePcs >= 0 and abs(receipt.CostAmountStd - baseCostPricePcs) > minDeviation) and deviation > maxDeviationPercent; где deviation = abs(receipt.CostAmountStd - baseCostPricePcs)*100 / baseCostPricePcs
Теги
ax4.0

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Denis Fedotenko: Себестоимость и закрытие склада Blog bot DAX: База знаний и проекты 44 29.03.2010 14:54
Cost price + FIFO? Jzo DAX: Функционал 1 30.06.2006 13:46
Закрытие склада. Параметр "Спецификация" DenWolf DAX: Функционал 0 05.06.2006 14:46
Финансовые проблемы при Закрытии склада Владимир Ю. DAX: Функционал 6 28.06.2005 20:00
Говорят вышел SP2 для Axapta 3. Кто нибуть что знает на эту тему? soin DAX: Прочие вопросы 10 13.10.2003 10:43

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 02:05.