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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 07.12.2007, 14:10   #1  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,361 / 2084 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Atlanta, GA, USA
? if (record) в случае join с использованием group by
Выполните у себя такое вот задание - только убедитесь что номенклатура, которая указана в макросе выше, есть в остатках на каком-то складе.
X++:
static void testIfCursorBuffer(Args _args)
{
    InventSum   inventSum;
    InventDim   inventDim;
    #define.ItemId("ESB-009")
    ;
    select inventDim
        group by InventLocationId
        join sum(AvailPhysical) from inventSum
            group by ItemId
            where inventSum.ItemId == #ItemId &&
            inventDim.inventDimId == inventSum.InventDimId;

    print inventSum.AvailPhysical;
    print inventDim.InventLocationId;
    
    if (inventSum)
        print "InventSum";
        
    if (inventDim)
        print "InventDim";

    pause;

    select sum(AvailPhysical) from inventSum
        group by ItemId
        where inventSum.ItemId == #ItemId
        join inventDim
            group by InventLocationId
            where inventDim.inventDimId == inventSum.InventDimId;

    print inventSum.AvailPhysical;
    print inventDim.InventLocationId;
    
    if (inventSum)
        print "InventSum";
        
    if (inventDim)
        print "InventDim";

    pause;
}
Результаты получаются такие:

1) before first pause:

4500
MW
InventDim

2) before second pause:

4500
MW
InventSum

Кто что думает про такое поведение?
В смысле про то, что вторая запись из join является не-проинициализированной с точки зрения АХ?
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
if (record) vs if (record.RecId) kashperuk DAX: Программирование 18 27.11.2008 18:53
jerry-dynamics: How can you make sure that the end user can not delete a record in one table if there are related records in another table? Blog bot DAX Blogs 0 16.06.2007 11:20
Fred Shen: Always use recId to know if a select statement returns a record Blog bot DAX Blogs 0 28.10.2006 16:40
InventJournalTrans DreamCreator DAX: Программирование 7 14.12.2004 14:48
Говорят вышел SP2 для Axapta 3. Кто нибуть что знает на эту тему? soin DAX: Прочие вопросы 10 13.10.2003 10:43

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

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

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