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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 02.02.2006, 08:06   #1  
TasmanianDevil is offline
TasmanianDevil
Мрачный тип
Аватар для TasmanianDevil
Злыдни
 
886 / 389 (14) ++++++
Регистрация: 24.01.2005
Адрес: Томск
Получение текущего списка Range'ей
Подскажите пожалуйста, нигде не смог нарыть - ни в поиск, ни в документации ...
Как программно получить доступ к списку установленных на текущий момент Range'ей и вытащить все соответсвующие поля отттуда (таблица, поле, значение) ?
Старый 02.02.2006, 08:16   #2  
TasmanianDevil is offline
TasmanianDevil
Мрачный тип
Аватар для TasmanianDevil
Злыдни
 
886 / 389 (14) ++++++
Регистрация: 24.01.2005
Адрес: Томск
Через Query получаем список QueryBuildDataSource'ов, через них список Range'ей - но это список только тех, что программно или в дизайнере сделаны . А если пользователь добавил - то пользовательские ограничения не видны...

Есть на форме датасорс, к которому привязаны несколько других датасорсов(динамически привязывается). Наложено 3 Range..
запускаю форму, добавляю свои ограничения дополнительно , после закрытия диалога установки ограничений пытаюсь вытащить их список

Код:
    int i,cnti,j,cntj;
    QueryBuildDatasource qbds;
    QueryBuildRange qbr;

    RAssetTable_DS.queryRun().prompt();

    cntj=RAssetTable_DS.query().dataSourceCount();
    for(j=1;j<=cntj;j++)
    {
        qbds=RAssetTable_DS.query().dataSourceNo(j);
        cnti=qbds.rangeCount();
        for(i=1;i<=cnti;i++)
        {
            qbr=qbds.range(i);
            info(tableid2pname(qbr.table())+" - "+fieldid2pname(qbr.table(),qbr.field())+" - "+qbr.value());
        }
    }
В результате вижу только установленные программно ограничения, ручных не вижу ...

Как-то проще и правильнее можно добраться до этого списка ограничений ?

Последний раз редактировалось TasmanianDevil; 02.02.2006 в 08:42.
За это сообщение автора поблагодарили: DreamCreator (2).
Старый 02.02.2006, 08:43   #3  
Gustav is offline
Gustav
Moderator
Аватар для Gustav
SAP
Лучший по профессии 2009
 
1,858 / 1152 (42) ++++++++
Регистрация: 24.01.2006
Адрес: Санкт-Петербург
Записей в блоге: 19
Может быть, можно текст окончательного SELECTа после нажатия пользователем ОK посмотреть?
Там же уже должны сформироваться все критерии?
Другое дело, что его парсить, конечно, запарно...
Старый 02.02.2006, 09:04   #4  
raz is offline
raz
NavAx
Аватар для raz
NavAx Club
Лучший по профессии 2014
Лучший по профессии 2009
 
1,494 / 1065 (38) ++++++++
Регистрация: 22.07.2003
Адрес: МО
Попробуй вытащить из RAssetTable_DS.queryRun().Query()


PHP код:
    int i,cnti,j,cntj;
    
QueryBuildDatasource qbds;
    
QueryBuildRange qbr;

    
RAssetTable_DS.queryRun().prompt();

    
cntj=RAssetTable_DS.queryRun().query().dataSourceCount();
    for(
j=1;j<=cntj;j++)
    {
        
qbds=RAssetTable_DS.queryRun().query().dataSourceNo(j);
        
cnti=qbds.rangeCount();
        for(
i=1;i<=cnti;i++)
        {
            
qbr=qbds.range(i);
            
info(tableid2pname(qbr.table())+" - "+fieldid2pname(qbr.table(),qbr.field())+" - "+qbr.value());
        }
    } 

Последний раз редактировалось raz; 02.02.2006 в 09:10.
Старый 02.02.2006, 09:21   #5  
TasmanianDevil is offline
TasmanianDevil
Мрачный тип
Аватар для TasmanianDevil
Злыдни
 
886 / 389 (14) ++++++
Регистрация: 24.01.2005
Адрес: Томск
Спасибо большое !!
Заработало !!
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Получение экземпляра текущего Editor alex55 DAX: База знаний и проекты 36 03.11.2009 13:04
Работа с Excel через COM и ошибка 0x800A03EC (Range.AutoFilter) gl00mie DAX: Программирование 15 30.03.2007 18:37
WebComboBox - получение текущего значения IvanS DAX: Программирование 0 27.11.2006 14:58
Получение списка открытых форм Peter Savintsev DAX: Программирование 0 13.01.2003 14:04

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

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

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