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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 05.02.2013, 19:22   #1  
plumbum is offline
plumbum
Участник
Соотечественники
 
182 / 86 (3) ++++
Регистрация: 07.12.2007
Адрес: Vienna, AT
validTimeState не работает для join
Заметил одну особенность нововведения в AX2012 (validTimeState):

если в запросе указать эту функцию к главное таблице, все пройдет "гладко". Однако, если тоже самое проделать для подчененной таблицы из Join, компилятор сгенирирует ошибку:

X++:
LogisticsPostalAddressView   address;
    DirPartyLocation             location;
    DirPartyTable                party;
    utcDateTime                  fromDateTime = DateTimeUtil::anyToDateTime(dateNull());
    utcDateTime                  toDateTime   = DateTimeUtil::utcNow();
    
    ;
    
    //1. no compilation error
    select firstOnly validTimeState(fromDateTime, toDateTime)
            * from location
        join party
        where party.Name  like "*plumbum*"
           && party.RecId ==   location.Party
        join address
            where address.countryRegionId == "UA";
    
    //2. compilation error
    select firstOnly party
        where party.Name like "*plumbum*"
        join validTimeState(dateNull(), systemDateGet()) // the error is here
            * from location
            where location.Party == party.RecId
        join address
            where address.countryRegionId == "UA";
интересно, это недоработка или умышленное ограничение, связанное с планом построения запроса...
__________________
http://www.axdevposts.blogspot.com
Пришел, уведел.... отойди, дай другому увидеть!

Последний раз редактировалось plumbum; 05.02.2013 в 19:23. Причина: правописание (blush)
Старый 06.02.2013, 00:41   #2  
lvan is offline
lvan
Участник
Аватар для lvan
Лучший по профессии 2014
 
858 / 82 (4) ++++
Регистрация: 15.04.2011
Записей в блоге: 1
Ошибка то какая?
Я вроде использовал подобные запросы без проблем
Старый 06.02.2013, 07:47   #3  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,438 / 1775 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Может быть дело в использовании функции systemDateGet()? Попробуйте заключить её вызов в скобки.
DAX 2009 RU5 - Ошибка компилятора в конструкции select
Старый 21.03.2013, 13:23   #4  
PavelSR is offline
PavelSR
Участник
 
98 / 10 (1) +
Регистрация: 25.05.2006
+1

Удалось разобраться?
Чем все закончилось?
Старый 22.03.2013, 12:02   #5  
lvan is offline
lvan
Участник
Аватар для lvan
Лучший по профессии 2014
 
858 / 82 (4) ++++
Регистрация: 15.04.2011
Записей в блоге: 1
нужно объявить переменную, присвоить ей systemDateGet(), и в селекте уже переменную использовать
видел такой workaround в стандартном коде
Старый 22.03.2013, 12:43   #6  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,438 / 1775 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Цитата:
Сообщение от lvan Посмотреть сообщение
нужно объявить переменную, присвоить ей systemDateGet(), и в селекте уже переменную использовать
видел такой workaround в стандартном коде
Достаточно заключить вызов systemDateGet() в скобки. См. ссылку, которую я привёл в своём первом сообщении.
Теги
validtimestate, ax2012

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
addicted2ax: Dynamics AX 2012 & SQL Server 2008R2: Cross Join vs. Inner Join – Houston we have *NO* Problem Blog bot DAX Blogs 0 20.12.2012 20:11
Непонятка с exist join-ом... Didukh84 DAX: Программирование 13 03.04.2008 13:34
AX UK: Join the Virtual Partner Community Blog bot DAX Blogs 0 26.03.2008 04:17
2 и более OUTER JOIN к одному паренту Ronin DAX: Программирование 21 19.12.2005 13:42
JOIN программно на форме не работает rohlenko DAX: Программирование 2 31.03.2005 15:41

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

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

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