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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 10.11.2020, 14:17   #1  
Sergey Petrov is offline
Sergey Petrov
Участник
 
80 / 19 (1) ++
Регистрация: 03.04.2007
Адрес: Saint-Petersburg, Russia
Закрытие склада во вторичной валюте
Коллеги, обнаружил что в методе класса \Classes\InventCostItemDim\updateMarking используется отбор проводок определённого типа:
X++:
    // load
    while select forupdate inventTrans
        index hint OpenItemIdx
        where inventTrans.ValueOpen         == InventTransOpen::Yes     &&
              inventTrans.ItemId            == _itemId                  &&
              inventTrans.InventRefTransId  != ''
        join inventDim
        where inventDim.InventDimId == inventTrans.InventDimId
    {
...
В классе InventCostItemDimSecCur_RU этот метод не перекрыт.
Таким образом, при закрытии склада во вторичной валюте после закрытия в основной, мы не можем отобрать нужные проводки (потому что фильтрация по inventTrans.ValueOpen == InventTransOpen::Yes) и вообще не получаем сопоставлений, аналогичных тем, что были в основной валюте.

То же самое видим в методе класса \Classes\InventCostItemDim\updateServiceItemTrans:
X++:
    while select forupdate inventTrans
        index hint OpenItemIdx
        where inventTrans.ValueOpen         == InventTransOpen::Yes         &&
              inventTrans.ItemId            == _itemId                      &&
             (inventTrans.StatusIssue       == StatusIssue::Sold            ||
              inventTrans.StatusReceipt     == StatusReceipt::Purchased)    &&
              inventTrans.DateStatus        <= inventClosing.TransDate      &&
              inventTrans.InventRefTransId  == '' //marked service item transactions will be settled according to marking principle

    {
...
Но перекрытого метода в потомке-классе InventCostItemDimSecCur_RU нет. Соответственно, результат тот же - мы не получаем сопоставлений во вторичной валюте, аналогичных сопоставлениям в основной валюте.

Заметили только что, потому что наша бизнес-логика активно использует эти сопоставления (коррекции себестоимости) в основной и во вторичной валюте.

Думаю исправить сие вручную. Но, может, кому известны какие-нибудь подводные камни?
__________________
MS Dynamics AX 2009

Kernel 5.0.1600.4110
Application 5.0.1500.6491
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Закрытие склада: обработка маркированных проводок Sergey Petrov DAX: Программирование 1 26.06.2015 12:04
Странное закрытие склада и коррекция себестоимости в наличии Aquarius DAX: Функционал 11 28.05.2010 11:45
Denis Fedotenko: Себестоимость и закрытие склада Blog bot DAX: База знаний и проекты 44 29.03.2010 14:54
Закрытие склада в валюте. NJD DAX: Функционал 1 05.10.2005 12:10
Закрытие склада в основной и вторичной валюте, отключенная корреспонденция счетов May DAX: Функционал 1 02.04.2004 13:25
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 05:44.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.