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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 29.06.2020, 11:28   #1  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,882 / 3148 (112) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
А можно еще фильтровать по дате времени изменения за последние 1-2 дня (с момента последнего инкрементного сбора) тогда проект совсем маленький будет и все за 15 минут пересоберется.

Но есть нюанс.
В методе
\Classes\SysProjectFilterRunBase\run
надо добавить такое изменение:

X++:
...
    while (queryRun.next())
    {
        try
        {
            sysModelElement = queryRun.get(tableNum(SysModelElement)) as SysModelElement;
            sysModelElementData = queryRun.get(tableNum(SysModelElementData)) as SysModelElementData;

            // PKoz 31.10.2019 -->
            if (sysModelElement.RootModelElement == sysModelElement.RecId &&
                sysModelElement.ElementType      == 11 // form
               )
            {
                // почему-то ядро при сборе перекрестных ссылок (и возможно при глобальной компиляции - но это надо проверить)
                // обновляет для формочек свойство modifiedDateTime текущими значениями
                // а в modifiedBy похоже переносит значение из createdBy
                // из-за этого при попытке отфильтровать  созданные измененные объекты AOT
                // за период времени - в проект набивается куча левых форм
                // У этого исправления могут быть побочные эффекты если пытаемся отфильтровать именно формы с фильтром по elementType == Form
                // но этот способ все равно неправильный, нужно фильтровать по узлам формочек, перечисляя все их типы, так как в свойствах формы все равно
                // в полях
                // createdBy/modifiedby/createdDatetime/modifiedDatetime
                // лежит лажа и на нее закладываться нельзя
                // проще просто не ставить фильтр по типу объекта (отборка идет быстро)
                // а затем выкинуть из проекта лишние узлы, которые нас не интересовали
                continue;
            }
            // PKoz 31.10.2019 <--
...
За это сообщение автора поблагодарили: mazzy (2), sukhanchik (6), Ace of Database (2), alex55 (3), Dreadlock (1).
Старый 29.06.2020, 12:57   #2  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,882 / 3148 (112) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Цитата:
Сообщение от Logger Посмотреть сообщение
А можно еще фильтровать по дате времени изменения

или датевремени создания.
Так надежнее
Теги
ax2012, cil, перекрестные ссылки, производительность

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
amer-ax: It was a great day! Blog bot DAX Blogs 3 29.12.2012 01:02
dynamicsaxbi: Better together: Microsoft Dynamics AX 2012 R2 and SQL Server Power View Blog bot DAX Blogs 0 12.12.2012 13:11
emeadaxsupport: Final Microsoft Dynamics AX 2012 R2 Content Available! Blog bot DAX Blogs 0 04.12.2012 06:12
DAX: Official Dynamics AX 2012 R2 Content (update) - Where is it, and how can you find out about updates? Blog bot DAX Blogs 0 03.12.2012 11:11
dynamicsaxtraining: Purchase Blog bot DAX Blogs 0 11.03.2012 05:25

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

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

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