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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 27.02.2009, 12:38   #1  
Dima_Dima is offline
Dima_Dima
Участник
 
144 / 11 (1) +
Регистрация: 09.10.2008
Вызов формы с заранее заданым фильтром.
Всем здравствуйте, у меня вопрос: где и как нужно создать query, чтобы форма открывалась с заранее заданым фильтром, ну скажем по одному полю?

Спасибо заранее.

Последний раз редактировалось Dima_Dima; 27.02.2009 в 12:43.
Старый 27.02.2009, 12:42   #2  
Eldar9x is offline
Eldar9x
MCTS
Аватар для Eldar9x
Oracle
MCBMSS
 
1,064 / 166 (8) ++++++
Регистрация: 29.09.2006
Адрес: Казань
только программинг. В ините датасорсов формы
За это сообщение автора поблагодарили: Dima_Dima (1).
Старый 27.02.2009, 12:47   #3  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от Dima_Dima Посмотреть сообщение
Всем здравствуйте, у меня вопрос: где и как нужно создать query, чтобы форма открывалась с заранее заданым фильтром, ну скажем по одному полю?

Спасибо заранее.
если это поле связи, то ничего программить не нужно. Читайте про DynaLink
__________________
полезное на axForum, github, vk, coub.
За это сообщение автора поблагодарили: Dima_Dima (1).
Старый 27.02.2009, 13:36   #4  
Vals is offline
Vals
Аманд
Аватар для Vals
Компания АМАНД
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2009
 
1,766 / 507 (20) +++++++
Регистрация: 27.02.2002
Адрес: Pass partout, Москва
Если форму добавить в избранное, затем по ней сделать фильтр, то открываться она будет с этим фильтром. Программировать ничего не нужно.
В избранном фильтр редактируется и перенастраивается.

Тренинг Введение в AX 4.0
За это сообщение автора поблагодарили: mazzy (2), petr (2), Dima_Dima (1).
Старый 27.02.2009, 13:52   #5  
Ivanhoe is offline
Ivanhoe
Участник
Аватар для Ivanhoe
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
4,143 / 2156 (80) +++++++++
Регистрация: 29.09.2005
Адрес: Санкт-Петербург
С избранным понятно, на форуме уже как-то писали.
Но "Избранное" не всегда удобно и в итоге может превратиться в аналог Главного меню.

Никто не делал доработку, чтобы фильтр по-умолчанию можно было отметить, например, галкой в настройках фильтра формы?
__________________
Ivanhoe as is..
Старый 27.02.2009, 14:40   #6  
ZVV is offline
ZVV
MCITP
MCP
Oracle
MCBMSS
 
1,006 / 246 (11) ++++++
Регистрация: 13.02.2004
Адрес: Минск
->
Цитата:
Сообщение от Eldar9x Посмотреть сообщение
только программинг. В ините датасорсов формы
Вообще-то есть ещё свойство Index у источника данных!
__________________
Zhirenkov Vitaly
Старый 27.02.2009, 14:43   #7  
ice is offline
ice
Участник
Аватар для ice
Лучший по профессии 2014
 
1,731 / 406 (17) +++++++
Регистрация: 23.03.2006
Цитата:
Сообщение от ZVV Посмотреть сообщение
Вообще-то есть ещё свойство Index у источника данных!
оно используется не для фильтра, а для сортировки
За это сообщение автора поблагодарили: ZVV (1).
Старый 27.02.2009, 14:58   #8  
Eldar9x is offline
Eldar9x
MCTS
Аватар для Eldar9x
Oracle
MCBMSS
 
1,064 / 166 (8) ++++++
Регистрация: 29.09.2006
Адрес: Казань
Цитата:
Цитата:
Сообщение от ZVV
Вообще-то есть ещё свойство Index у источника данных!
оно используется не для фильтра, а для сортировки
[]
подумалось... а круто было бы, если датасорсы форм были в виде query (c фильтрами, сортировками)
Старый 27.02.2009, 15:14   #9  
ZVV is offline
ZVV
MCITP
MCP
Oracle
MCBMSS
 
1,006 / 246 (11) ++++++
Регистрация: 13.02.2004
Адрес: Минск
->
Цитата:
Сообщение от ice Посмотреть сообщение
оно используется не для фильтра, а для сортировки
упс.. виноват, был невнимателен...
__________________
Zhirenkov Vitaly
Старый 27.02.2009, 15:48   #10  
Dima_Dima is offline
Dima_Dima
Участник
 
144 / 11 (1) +
Регистрация: 09.10.2008
Цитата:
Сообщение от Vals Посмотреть сообщение
Если форму добавить в избранное, затем по ней сделать фильтр, то открываться она будет с этим фильтром. Программировать ничего не нужно.
В избранном фильтр редактируется и перенастраивается.

Тренинг Введение в AX 4.0
спасибо, это я знаю. Нужно именно программно.
Старый 27.02.2009, 15:53   #11  
Dima_Dima is offline
Dima_Dima
Участник
 
144 / 11 (1) +
Регистрация: 09.10.2008
В init() делаю так:
X++:
Query                               query    =   new Query();
QueryBuildDataSource       QBDS   =   query.addDataSource(tablenum(smmBusRelTable));
QueryBuildRange               QBR      =   QBDS.addRange(fieldnum(smmBusRelTable, BusRelTypeId));
.
.
.
super();
QBR.value(queryValue('BalaBala'));
правильно? Или чего-то не усмотрел?
Старый 27.02.2009, 15:55   #12  
Eldar9x is offline
Eldar9x
MCTS
Аватар для Eldar9x
Oracle
MCBMSS
 
1,064 / 166 (8) ++++++
Регистрация: 29.09.2006
Адрес: Казань
Цитата:
Нужно именно программно.
Первая же форма в аоте (address) покажет как это делается. Правда там используется
dataSourceNo. Я бы использовал global::findOrCreateRange_W() вкупе с dataSourceTable()

upd
Цитата:
правильно? Или чего-то не усмотрел?
Если на форме есть датасорс с smmBusRelTable, то так
X++:
super()

findOrCreateRange_W(this.queryRun() ? this.queryRun().query().dataSourceTable(smmBusRelTable) :
 this.query().dataSourceTable(smmBusRelTable), fieldnum(smmBusRelTable, BusRelTypeId), queryValue('BalaBala'))

Последний раз редактировалось Eldar9x; 27.02.2009 в 16:02.
Старый 27.02.2009, 16:31   #13  
ice is offline
ice
Участник
Аватар для ice
Лучший по профессии 2014
 
1,731 / 406 (17) +++++++
Регистрация: 23.03.2006
Цитата:
Сообщение от Dima_Dima Посмотреть сообщение
В init() делаю так:
X++:
Query                               query    =   new Query();
QueryBuildDataSource       QBDS   =   query.addDataSource(tablenum(smmBusRelTable));
QueryBuildRange               QBR      =   QBDS.addRange(fieldnum(smmBusRelTable, BusRelTypeId));
.
.
.
super();
QBR.value(queryValue('BalaBala'));
правильно? Или чего-то не усмотрел?
неправильно, не нужно создавать новый квери, а использовать существующий
Старый 27.02.2009, 16:32   #14  
Vals is offline
Vals
Аманд
Аватар для Vals
Компания АМАНД
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2009
 
1,766 / 507 (20) +++++++
Регистрация: 27.02.2002
Адрес: Pass partout, Москва
Ладно, традиционный вопрос: для реализации какого процесса делается данная функциональность?

И это запрос будет действовать для всех пользователей?
Кто будет работать со всеми данными?
Может правами доступа сделать?
Старый 27.02.2009, 17:03   #15  
Dima_Dima is offline
Dima_Dima
Участник
 
144 / 11 (1) +
Регистрация: 09.10.2008
Цитата:
Сообщение от Vals Посмотреть сообщение
Ладно, традиционный вопрос: для реализации какого процесса делается данная функциональность?
для обычного в CRM-модуле.

Цитата:
Сообщение от Vals Посмотреть сообщение
И это запрос будет действовать для всех пользователей?
абсолютно

Цитата:
Сообщение от Vals Посмотреть сообщение
Кто будет работать со всеми данными?
KeyUser
Старый 27.02.2009, 21:02   #16  
Vals is offline
Vals
Аманд
Аватар для Vals
Компания АМАНД
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2009
 
1,766 / 507 (20) +++++++
Регистрация: 27.02.2002
Адрес: Pass partout, Москва
Тогда используйте RLS

Цитата:
для обычного в CRM-модуле.
Нам ваши секреты не нужны

Вопрос к тому процессу, который объясняет, почему все работают с фильтром и только один видит ВСЕ строки?
Если в CRM большой-большой начальник ведёт список подружек, то используйте предназначенный для таких случаев механизм - права доступа на уровне записей.

Последний раз редактировалось Vals; 27.02.2009 в 21:09.
Старый 02.03.2009, 15:14   #17  
Dima_Dima is offline
Dima_Dima
Участник
 
144 / 11 (1) +
Регистрация: 09.10.2008
Цитата:
Сообщение от Vals Посмотреть сообщение
Тогда используйте RLS
чтобы это могло быть?
Старый 02.03.2009, 15:27   #18  
Vals is offline
Vals
Аманд
Аватар для Vals
Компания АМАНД
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2009
 
1,766 / 507 (20) +++++++
Регистрация: 27.02.2002
Адрес: Pass partout, Москва
Record Level Security - Права доступа на уровне записи
Старый 02.03.2009, 15:31   #19  
Dima_Dima is offline
Dima_Dima
Участник
 
144 / 11 (1) +
Регистрация: 09.10.2008
Цитата:
Сообщение от Vals Посмотреть сообщение
Record Level Security - Права доступа на уровне записи
благодарю!!!
но мне нужно именно программно....
Старый 02.03.2009, 15:35   #20  
Vals is offline
Vals
Аманд
Аватар для Vals
Компания АМАНД
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2009
 
1,766 / 507 (20) +++++++
Регистрация: 27.02.2002
Адрес: Pass partout, Москва
В RLS вам не надо программировать - просто настроить.
Если хотите - назовите этот процесс программированием

И вообще, делайте так, как Вам советуют!
Теги
rls, программно, фильтр, форма

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Вызов формы из lookup форму vitaly85 DAX: Программирование 7 24.01.2008 18:12
Автоматический вызов lookup при запуске формы demID DAX: Программирование 6 24.09.2004 17:34
Вызов формы из сода X++ Хилари DAX: Программирование 4 26.04.2004 20:15
Вызов формы, не модифицируя ее заголовка AndrewP DAX: Программирование 1 04.07.2003 14:20
Русская локализация Axapta 3 ? SlavaK DAX: Администрирование 59 01.07.2003 22:38
Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

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