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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 26.11.2009, 13:20   #1  
DSPIC is offline
DSPIC
Боец
 
1,077 / 1243 (44) ++++++++
Регистрация: 11.04.2008
Grid & _ds.findRecord
А кто-нибудь знает способ, как спозиционироваться на определенную запись в гриде, если грид отображает сгруппированные записи, т.е. отсутствует RecId
Старый 26.11.2009, 14:04   #2  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,941 / 3229 (115) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Если записей немного то можно просто _ds.next() и сравнивать.

Я еще пробовал искусственно сделать recID поставив в выборку полей в запросе minOf(recId) - но это не помогло.
Старый 26.11.2009, 14:17   #3  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,361 / 2084 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Atlanta, GA, USA
А по какому полю перейти хотите?
Старый 26.11.2009, 14:27   #4  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,438 / 1775 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
А чтобы не отсутствовал RecId можно добавить по нему агрегирующую функцию
Старый 26.11.2009, 17:59   #5  
ivas is offline
ivas
Участник
Аватар для ivas
 
252 / 68 (3) ++++
Регистрация: 22.12.2005
Повторюсь)
можно импользовать такой код:
работает "мгновенно")
X++:
element.args().lookupField(fieldNum(SalesTable, SalesId));
element.args().lookupValue(queryValue("хочу сюда!"));
SalesTable_ds.executeQuery();
упс, не дочитал пост до конца) не знаю будет ли корректно работать с группировкой
__________________
aLL woRk aNd nO JoY MAKes jAck a dULL Boy

Последний раз редактировалось ivas; 26.11.2009 в 18:01.
Старый 26.11.2009, 19:47   #6  
Mykola Galak is offline
Mykola Galak
Участник
 
40 / 39 (2) +++
Регистрация: 24.01.2008
Адрес: Copenhagen
Цитата:
Сообщение от DSPIC Посмотреть сообщение
А кто-нибудь знает способ, как спозиционироваться на определенную запись в гриде, если грид отображает сгруппированные записи, т.е. отсутствует RecId
На маленьких датасорсах:
X++:
MyDatasource_ds.findValue(fieldNum(TableName, fieldName), value);
Вариан предложеный ivas очень хорош. Он ищет по значению и не делает перебора в отличии от findValue.

Если датасорсом является вью можно так:
X++:
MyDatasource_ds.findRecord(myBuffer);
Старый 26.11.2009, 21:32   #7  
SRF is offline
SRF
Участник
MCBMSS
Axapta Retail User
 
375 / 562 (19) +++++++
Регистрация: 08.08.2007
Записей в блоге: 1
Цитата:
Сообщение от Logger Посмотреть сообщение
Я еще пробовал искусственно сделать recID поставив в выборку полей в запросе minOf(recId) - но это не помогло.
На AX 4.0 работает.

Цитата:
Сообщение от ivas Посмотреть сообщение
Повторюсь)
можно импользовать такой код:
работает "мгновенно")
X++:
element.args().lookupField(fieldNum(SalesTable, SalesId));
element.args().lookupValue(queryValue("хочу сюда!"));
SalesTable_ds.executeQuery();
упс, не дочитал пост до конца) не знаю будет ли корректно работать с группировкой
Не будет, по крайней мере на AX 4.0, при позиционировании на конкретную запись, все предыдущие группировки теряются, проблема аналогична описанной здесь.

Цитата:
Сообщение от Mykola Galak Посмотреть сообщение
На маленьких датасорсах:
X++:
MyDatasource_ds.findValue(fieldNum(TableName, fieldName), value);
Вариан предложеный ivas очень хорош. Он ищет по значению и не делает перебора в отличии от findValue.

Если датасорсом является вью можно так:
X++:
MyDatasource_ds.findRecord(myBuffer);
В случае когда RecId пустой методы findValue и findRecord не позиционируют курсор на указанной записи.

А почему просто нельзя отфильтровать по определенному значению(например, методом _ds.filter)? Нужно видеть соседние записи ?
__________________
Sergey Nefedov

Последний раз редактировалось SRF; 26.11.2009 в 21:35.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
axaptapedia: Filter-by-Grid Blog bot DAX Blogs 2 30.05.2012 13:39
jinx: Drag & Drop in Masken Blog bot DAX auf Deutsch 0 16.10.2007 16:10
Dynamics AX: DAX 4.0 Filter by Grid [Update] Blog bot DAX Blogs 0 27.04.2007 17:10
Advanced programming: Grid data and view manipulations batiskaf_new DAX: Программирование 15 21.06.2006 11:44
Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

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