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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 10.11.2008, 11:27   #1  
miklenew is offline
miklenew
Участник
Аватар для miklenew
MCBMSS
1C
Лучший по профессии 2009
 
1,688 / 433 (18) +++++++
Регистрация: 10.07.2006
Адрес: г. Ликино-Дулёво
Вопрос по force*
Есть класс InventSumOpenTransact\setValueQty()
В нём код
X++:
        while select forcePlaceholders forceSelectOrder forceNestedLoop inventTrans
            index hint OpenItemIdx
            where inventTrans.itemId            == itemId                       &&
                  inventTrans.valueOpen         == InventTransOpen::Yes         &&
                  inventTrans.statusReceipt     >= StatusReceipt::None          &&
                  inventTrans.statusReceipt     <= StatusReceipt::Purchased     &&
                  inventTrans.statusIssue       >= StatusIssue::None            &&
                  inventTrans.statusIssue       <= StatusIssue::Sold            &&
                  inventTrans.dateFinancial     <= perDate
        #inventDimJoin(inventTrans.inventDimId,inventDim,inventDimCriteria,inventDimParm,dimIdIdx)
        {
            this.add(inventTrans);
        }
Он выдаёт мне не правильное значение inventTrans.CostAmountPosted
Если делаю убираю force*, правильное значение
X++:
        while select inventTrans
            index hint OpenItemIdx
            where inventTrans.itemId            == itemId                       &&
                  inventTrans.valueOpen         == InventTransOpen::Yes         &&
                  inventTrans.statusReceipt     >= StatusReceipt::None          &&
                  inventTrans.statusReceipt     <= StatusReceipt::Purchased     &&
                  inventTrans.statusIssue       >= StatusIssue::None            &&
                  inventTrans.statusIssue       <= StatusIssue::Sold            &&
                  inventTrans.dateFinancial     <= perDate
        #inventDimJoin(inventTrans.inventDimId,inventDim,inventDimCriteria,inventDimParm,dimIdIdx)
        {
            this.add(inventTrans);
        }
Если делаю так, тоже правильно
X++:
        inventTrans.disableCache(true);
        while select forcePlaceholders forceSelectOrder forceNestedLoop inventTrans
            index hint OpenItemIdx
            where inventTrans.itemId            == itemId                       &&
                  inventTrans.valueOpen         == InventTransOpen::Yes         &&
                  inventTrans.statusReceipt     >= StatusReceipt::None          &&
                  inventTrans.statusReceipt     <= StatusReceipt::Purchased     &&
                  inventTrans.statusIssue       >= StatusIssue::None            &&
                  inventTrans.statusIssue       <= StatusIssue::Sold            &&
                  inventTrans.dateFinancial     <= perDate
        #inventDimJoin(inventTrans.inventDimId,inventDim,inventDimCriteria,inventDimParm,dimIdIdx)
        {
            this.add(inventTrans);
        }
Один раз уже с этим сталкивался.
Только тогда не обратил внимание что это из-за force*
Код был мой и за результаты был уверен спокойно поставил inventTrans.disableCache(true) и всё ок.
Может кто-то обяснит почему с использованием force* могут данные не актуальные вернуться. Может на Oracle какие-нибудь дополнительные настройки поставить, чтоб правильно запрос отрабатывал.
__________________
Энергия молодых и неравнодушных способна изменить мир к лучшему.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Вопрос по модулю Расчеты с персоналом. Выплата заработной платы. Keks DAX: Функционал 7 28.12.2009 10:31
Вопрос по созданию отчета asd1274 DAX: Программирование 6 05.12.2008 21:44
Вопрос по Проектам PSA DAX: Функционал 35 19.01.2007 22:26
Еще вопрос про покрытие по аналитикам в Сводном планировании rt2 DAX: Функционал 3 24.03.2006 18:56
расчеты с персоналом. НДФЛ. вопрос чайника shumelka DAX: Функционал 2 25.03.2004 11:36

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

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

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