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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 18.11.2020, 09:46   #1  
Ace of Database is offline
Ace of Database
Участник
Аватар для Ace of Database
 
877 / 649 (23) +++++++
Регистрация: 14.10.2004
Есть универсальный способ находить заданные пользователем фильтры в то числе если пользователь задал фильтр по полю, изначально не прошитому в Query.

Данная функция возвращает значение фильтра по заданному Query, коду таблицы и коду поля в таблице.Если фильтр не найден или не задан, то возвращает пустую строку.

X++:
    str     getRangeValue(Query _query, TableId _tableId, FieldId _fieldId)
    {
        QueryBuildDataSource    innerQbds;
        QueryBuildRange         innerQbr;
        int                     idx;
        str                     ret;

        innerQbds = _query.dataSourceTable(_tableId);

        if (innerQbds && innerQbds.enabled())
        {
            innerQbr = innerQbds.findRange(_fieldId);
            if (innerQbr && innerQbr.value())
            {
                ret = innerQbr.value();
            }
            else
            {
                for (idx = 1; idx <= _query.queryFilterCount(); idx++)
                {
                    if (_query.queryFilter(idx).dataSource().name() == innerQbds.name() && _query.queryFilter(idx).value())
                    {
                        ret = _query.queryFilter(idx).value();
                        break;
                    }
                }
            }
        }

        return ret;
    }
Для вашего случая вызов этой функции будет выглядеть так:
X++:
getRangeValue(q, tableNum(CustTransOpen), fieldnum(CustTransOpen, dueDate));
__________________
Мои утилиты для Аксапты версий 3.0-2012: http://aceofdatabase.blogspot.com/

Последний раз редактировалось Ace of Database; 18.11.2020 в 09:52.
За это сообщение автора поблагодарили: sukhanchik (6), alicedr (1).
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
littleax: Simple Rest API in D365FO, D365F, D365SCM Blog bot DAX Blogs 0 23.06.2020 14:12
sertandev: How to receive D365FO push notifications using Azure Notification Hubs Blog bot DAX Blogs 0 04.07.2019 18:11
sertandev: How to integrate D365FO with Microsoft Flow using the new Business Events Blog bot DAX Blogs 0 23.05.2019 16:11
erconsult: Copy-paste with keyboard script 2: from Excel to D365FO Blog bot DAX Blogs 0 03.08.2018 11:12

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

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

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