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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 02.07.2018, 10:16   #1  
VORP is offline
VORP
Участник
Аватар для VORP
 
146 / 95 (4) ++++
Регистрация: 26.05.2006
Использование Like оператора в X++ SQL и кнопка перекомпилировать
Хотел сделать функцию которая подгружает лог компиляции и перекомпилирует его.
Но выяснил, что кнопка "Перекомпилировать всё" не перекомпилирует все объекты, а только некоторые.
В классе SysCompilerOutput.reCompileElement:
X++:
likePath = SysCompilerOutput::buildLikePath('\\');
в результате чего переменная likePath становится равной "\\\\*"(Четыре бэкслеша и звёздочка).

Дальше вызывается запрос:

X++:
    while select forupdate tmpCompilerOutput
        group by UtilElementType, SysUtilElementName
        where tmpCompilerOutput.TreeNodePath like likePath
    {
        compileSetInsert(tmpCompilerOutput.TreeNodePath);
    }
Который отбирает некоторые элементы из лога компиляции, которые будут перекомпилироваться. Но не тот где ошибка есть.

Вопрос: Какие элементы должны быть выбраны этим запросом в чём вообще его смысл - как отработает Like?

Мне кажется что можно было бы заменить его на просто *.

Ещё не совсем понятно если TreeNodePath не указан в group by, почему он использован внутри запроса и что в нём будет?
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
emeadaxsupport: AX Performance - Analyzing key SQL Server configuration and database settings Blog bot DAX Blogs 0 28.09.2015 14:11
aEremenko: Использование прямых запросов SQL Blog bot DAX Blogs 4 18.07.2007 10:09
Dynamics AX: SQL Server, Heart of Dynamics AX Blog bot DAX Blogs 0 13.07.2007 18:00

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 01:57.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.