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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 01.08.2014, 10:55   #1  
smailik is offline
smailik
Участник
Аватар для smailik
 
250 / 70 (3) ++++
Регистрация: 10.04.2012
Адрес: Москва
Lookup, фильтр по значению метода выбираемой таблицы
Всем добрый день.
MS DAX 2009.
Прошу совета вот в каком вопросе.
Есть форма "Форма1". На ней Grid, в Grid есть поля "Код точки доставки" и "Маршрут торгового представителя". К таблице "Маршруты торговых представителей" привязана таблица "Строки маршрутов" в которой одно из полей "Код точки доставки". Можно ли сделать так что бы при заполнении поля "Код точки доставки" на форме "Форма1" в lookup по "Маршрут торгового представителя" выпадали только те маршруты в которых есть указанный "Код точки доставки"?
На таблице "Маршруты торговых представителей" написал булевый метод который проверяет наличие точки в маршруте. Можно ли наложить в lookup range на значение этого метода? Или можно сделать как-то по другому?
Старый 01.08.2014, 11:42   #2  
Pustik is offline
Pustik
Участник
 
807 / 372 (14) ++++++
Регистрация: 04.06.2004
Лукап можно строить и по связанным таблицам
X++:
Query                   query = new Query();
    QueryBuildDataSource    queryBuildDataSource,queryBuildDataSource2;
    QueryBuildRange         queryBuildRange,queryBuildRange2;
    SysTableLookup          sysTableLookup;
       ;

    //Create an instance of SysTableLookup with the form control passed in
    sysTableLookup = SysTableLookup::newParameters(tablenum(1), this);

    //create the query datasource
    queryBuildDataSource = query.addDataSource(tablenum(1));
    queryBuildRange = queryBuildDataSource.addRange(fieldnum(1, 1));
    queryBuildRange.value('Value1');

    queryBuildDataSource2 = queryBuildDataSource.addDataSource(tablenum(2));    
    queryBuildDataSource2.joinMode(JoinMode::InnerJoin);
    queryBuildDataSource2.relations(true);
    queryBuildDataSource2.addLink(fieldnum(1, 1), fieldnum(2, 1));
    queryBuildRange2 = queryBuildDataSource.addRange(fieldnum(2, 2));
    queryBuildRange2.value('Value2');


    //Add the fields to be shown in the lookup form
    sysTableLookup.addLookupfield(fieldnum(1, 1));

    //add the query to the lookup form
    sysTableLookup.parmQuery(query);

    // Perform lookup
    sysTableLookup.performFormLookup();
а если какой-то уж очень мудреный лукап, можно подготовить временную таблицу, заранее ее по нужным критериям заполнить и на основе нее построить лукап
__________________
-Ты в гномиков веришь?
-Нет.
-А они в тебя верят, смотри, не подведи их.

Последний раз редактировалось Pustik; 01.08.2014 в 11:55.
Старый 01.08.2014, 12:04   #3  
smailik is offline
smailik
Участник
Аватар для smailik
 
250 / 70 (3) ++++
Регистрация: 10.04.2012
Адрес: Москва
пример хороший, спасибо.
Но мне нужно range наложить не на field, а на метод
можно написать что-то на подобии?
X++:
queryBuildRange.value(1.1() == true);
вариант про временную таблицу интересен. У Вас нет под рукой примера с временной таблицей?
Старый 01.08.2014, 12:08   #4  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,429 / 1772 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Цитата:
Сообщение от smailik Посмотреть сообщение
пример хороший, спасибо.
Но мне нужно range наложить не на field, а на метод
можно написать что-то на подобии?
X++:
queryBuildRange.value(1.1() == true);
Нет.


Цитата:
Сообщение от smailik Посмотреть сообщение
вариант про временную таблицу интересен. У Вас нет под рукой примера с временной таблицей?
поищите на форуме по ключевому слову parmTmpBuffer http://axforum.info/forums/search.php?searchid=26313
Старый 01.08.2014, 12:22   #5  
Pustik is offline
Pustik
Участник
 
807 / 372 (14) ++++++
Регистрация: 04.06.2004
Пример лукапа на временной таблице переопределением lookup() контрола
__________________
-Ты в гномиков веришь?
-Нет.
-А они в тебя верят, смотри, не подведи их.

Последний раз редактировалось Pustik; 01.08.2014 в 12:28.
За это сообщение автора поблагодарили: smailik (1).
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Запись в поле таблицы значения из перекрытого lookup-метода kvantono DAX: Программирование 2 30.04.2013 11:13
Lookup form, OuterJoin и фильтр Russland DAX: Программирование 45 26.10.2007 15:45
lookup не закрывается до завершения метода modified Morpheus DAX: Программирование 4 09.08.2006 16:43
Фильтр в lookup Azat DAX: Программирование 7 08.11.2005 11:40
lookup фильтр в произвольной lookup форме 111andrei DAX: Программирование 4 05.10.2005 11:28
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

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

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