Показать сообщение отдельно
Старый 23.03.2012, 12:53   #1  
SRF is offline
SRF
Участник
MCBMSS
Axapta Retail User
 
376 / 562 (19) +++++++
Регистрация: 08.08.2007
Записей в блоге: 1
Метод inventCostItemDim\calcLaterAdjustment. Ошибка кода или проблема ядра ? И как правильно исправить ?
Добрый день.

DAX 2009 RU7, в младших версиях AX такое условие также присутствует.

X++:
...
inventSettlement.InventTransCurrency_RU   == inventTransCurrency      &&
...
В случаях когда выключен конф. ключ по закрытию запасов во вторичной валюте на СУБД улетает запрос вида 1 = ?(правда это в DAX 4.0, в DAX 2009 не проверял), точнее в случае основной валюты 1 = 0, что по сути приводит к пустой выборке.

Так вот - это проблема ядра - то что для полей по которым отключены конф. ключи условия добавляются в запрос или ошибки программистов, которые не учитывают того, что ключ может быть и не включен ?

Решит ли проблему исправление вида, т.е. после включения не возникнет ли других проблем и неожиданных результатов :

X++:
...
((! isConfigKeyEnable(....) || inventSettlement.InventTransCurrency_RU   == inventTransCurrency))      &&
...
UPD - вопрос закрыт, код работает корректно, подставляется условие 1=1.
__________________
Sergey Nefedov

Последний раз редактировалось SRF; 23.03.2012 в 13:13.
За это сообщение автора поблагодарили: Alexanderis.ua (1).