|
|
#1 |
|
Участник
|
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) |
|
|
|
|
#2 |
|
Участник
|
Ошибка то какая?
Я вроде использовал подобные запросы без проблем |
|
|
|
|
#3 |
|
Участник
|
Может быть дело в использовании функции systemDateGet()? Попробуйте заключить её вызов в скобки.
DAX 2009 RU5 - Ошибка компилятора в конструкции select |
|
|
|
|
#4 |
|
Участник
|
+1
Удалось разобраться? Чем все закончилось? |
|
|
|
|
#5 |
|
Участник
|
нужно объявить переменную, присвоить ей systemDateGet(), и в селекте уже переменную использовать
видел такой workaround в стандартном коде |
|
|
|
|
#6 |
|
Участник
|
|
|
|
| Теги |
| validtimestate, ax2012 |
|
|
|