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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 20.12.2011, 13:59   #1  
Ace of Database is offline
Ace of Database
Участник
Аватар для Ace of Database
 
877 / 649 (23) +++++++
Регистрация: 14.10.2004
Нет, все-таки и в АХ30 вместо '==' toString выдает '=' и вместо '||' выдает 'or'.
Видимо, я спутал случаи, когда надо кусок кода из Аксапты вырезать и анализировать через SQL Management Studio

Указанный ниже джоб выдает практически одинаковые результаты в АХ30 и в АХ2009

В АХ30 результат такой:
SELECT * FROM InventTable WHERE ((ItemId = 123 OR ItemId = 124)) EXISTS JOIN * FROM InventTableModule WHERE InventTable.ItemId = InventTableModule.ItemId AND ((ModuleType = Склад))

В АХ2009 результат такой:
SELECT FIRSTFAST * FROM InventTable WHERE ((ItemId = N'123' OR ItemId = N'124')) EXISTS JOIN FIRSTFAST * FROM InventTableModule WHERE InventTable.ItemId = InventTableModule.ItemId AND ((ModuleType = 0))

Кстати, очень умно Аксапта2009 добавляет FirstFast, видимо, чувствует, что идет фильтрация по уникальному индексу. И еще удобно, что вместо "Склад" пишет значение 0.

PHP код:
static void Job471(Args _args)
{
    
Query                   Query;
    
QueryRun                QueryRun;
    
QueryBuildDatasource    qbds;
    ;
    
Query = new Query();
    
qbds Query.addDataSource(tableNum(InventTable));
    
qbds.addRange(fieldNum(InventTableItemId)).value("123, 124");

    
qbds qbds.addDataSource(tableNum(InventTableModule));
    
qbds.addRange(fieldNum(InventTableModuleModuleType)).value(queryValue(ModuleInventPurchSales::Invent));
    
qbds.addLink(fieldNum(InventTableItemId), fieldNum(InventTableModuleItemId));
    
qbds.joinMode(JoinMode::ExistsJoin);

    
QueryRun = new QueryRun(Query);
    
info(QueryRun.query().dataSourceNo(1).toString());


Последний раз редактировалось Ace of Database; 20.12.2011 в 14:02.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
emeadaxsupport: Reporting Extensions Installation Fails to install on SQL 2008 Reporting services after applying 959494 and 957312 Blog bot DAX Blogs 1 23.06.2011 14:27
axinthefield: SQL Server Trace Flags for Dynamics AX Blog bot DAX Blogs 0 23.11.2010 21:11
Connection к другому SQL Server Poleax DAX: Программирование 5 19.10.2010 10:49

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

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

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