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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 04.05.2012, 14:23   #1  
Nikolaich is offline
Nikolaich
Участник
 
238 / 10 (1) +
Регистрация: 15.12.2004
прорисовка грида
добрый день. Коллеги, не подскажите, какой метод на форме/датасорсе ответственнен за прорисовку данных на гриде (ax 4.0 sp1)??
Опытным путем установил, что executeQuery на датасорсе уже отработал, но происходит "загрузка" строк в грид визуальная, то есть надо рыть в другом направлении.
Старый 04.05.2012, 14:33   #2  
Roman777 is offline
Roman777
NavAx
Аватар для Roman777
NavAx Club
 
320 / 64 (3) ++++
Регистрация: 10.02.2005
Адрес: г. Москва
Посмотрите наличие display - методов, которые используют элементы грида.
Старый 04.05.2012, 14:40   #3  
Nikolaich is offline
Nikolaich
Участник
 
238 / 10 (1) +
Регистрация: 15.12.2004
ну, они есть...
Старый 04.05.2012, 14:47   #4  
greench is offline
greench
Участник
Oracle
 
425 / 74 (3) ++++
Регистрация: 12.07.2007
Адрес: Киев
Наверное изначально нужно отталкиваться от того что вы хотите сделать. В чем заключается задача?
Старый 04.05.2012, 14:52   #5  
Roman777 is offline
Roman777
NavAx
Аватар для Roman777
NavAx Club
 
320 / 64 (3) ++++
Регистрация: 10.02.2005
Адрес: г. Москва
В таком случае нужно посмотреть, насколько долго выполняются эти методы, закешированы ли они.
Старый 04.05.2012, 14:58   #6  
Nikolaich is offline
Nikolaich
Участник
 
238 / 10 (1) +
Регистрация: 15.12.2004
Цитата:
Сообщение от greench Посмотреть сообщение
Наверное изначально нужно отталкиваться от того что вы хотите сделать. В чем заключается задача?
избавляться от дисплей-методов - задача непосильная

есть форма тяжеловесная, сверху - группа фильтрации.

проблема такая, при прорисовке данных, когда она еще не закончилась,
при вводе нескольких символов (не всех задуманных) в один из фильтров сверху, отрабатывает modified() на контроле фильтра. То есть, пользователь хотел ввести '3024'
, ввел '302' и форма уже отреагировала. Как я понял опытным путем, во время этой прорисовки происходит некая потеря фокуса с группы фильтрации на рисование данных grid, и воспринимается это как modified() на контроле.
Цель - перекрыть метод, ответственный за прорисовку, и заблокировать ввод в группу фильтрации, пока он не отработал
Старый 04.05.2012, 15:10   #7  
Roman777 is offline
Roman777
NavAx
Аватар для Roman777
NavAx Club
 
320 / 64 (3) ++++
Регистрация: 10.02.2005
Адрес: г. Москва
Цитата:
Сообщение от Nikolaich Посмотреть сообщение
избавляться от дисплей-методов - задача непосильная

есть форма тяжеловесная, сверху - группа фильтрации.

проблема такая, при прорисовке данных, когда она еще не закончилась,
при вводе нескольких символов (не всех задуманных) в один из фильтров сверху, отрабатывает modified() на контроле фильтра. То есть, пользователь хотел ввести '3024'
, ввел '302' и форма уже отреагировала. Как я понял опытным путем, во время этой прорисовки происходит некая потеря фокуса с группы фильтрации на рисование данных grid, и воспринимается это как modified() на контроле.
Цель - перекрыть метод, ответственный за прорисовку, и заблокировать ввод в группу фильтрации, пока он не отработал
В чем проблема избавиться от дисплей-методов?
Или хотя бы их оптимизировать (наверняка в них есть тяжелые запросы к базе).
А отработку фильтров по введенным значениям в поле можно перевесить на кнопку типа "обновить". Либо продумать вариант с задержкой выполнения запроса после ввода фильтра.
Старый 04.05.2012, 15:17   #8  
Nikolaich is offline
Nikolaich
Участник
 
238 / 10 (1) +
Регистрация: 15.12.2004
Цитата:
Сообщение от Roman777 Посмотреть сообщение
В чем проблема избавиться от дисплей-методов?
Или хотя бы их оптимизировать (наверняка в них есть тяжелые запросы к базе).
А отработку фильтров по введенным значениям в поле можно перевесить на кнопку типа "обновить". Либо продумать вариант с задержкой выполнения запроса после ввода фильтра.
избавиться - нет
оптимизировать - тоже нет, они итак оптимизированы, просто их много
Кнопка обновить - спору нет, но неудобно
задержка выполнения запроса - тоже не поможет, так как не в выполнении запроса дело, нужно заблокировать ввод в фильтры во время прорисовки данных
Старый 04.05.2012, 15:36   #9  
Roman777 is offline
Roman777
NavAx
Аватар для Roman777
NavAx Club
 
320 / 64 (3) ++++
Регистрация: 10.02.2005
Адрес: г. Москва
Цитата:
Сообщение от Nikolaich Посмотреть сообщение
избавиться - нет
оптимизировать - тоже нет, они итак оптимизированы, просто их много
Кнопка обновить - спору нет, но неудобно
задержка выполнения запроса - тоже не поможет, так как не в выполнении запроса дело, нужно заблокировать ввод в фильтры во время прорисовки данных
Если много дисплей-методов, то это уже говорит о том, что функционал не оптимизирован.
Про кнопку: т.е. пользователю удобнее наблюдать как рисуются строки?
Как раз если задержка на выполнение запроса скорее всего поможет, т.к. именно после запроса происходит вызов дисплей-методов.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
EP AX2009: сохранить параметры грида (фильтр, позиционирование) caper DAX: Программирование 9 01.04.2010 09:16
Переход по полям грида с помощью стрелочек на клавиатуре SorNick DAX: Программирование 16 07.10.2008 12:39
Дисплей метод таблицы который вызывается из ГРИДА 3oppo DAX: Программирование 10 23.05.2006 06:47
Кнопка быстрого рефреша грида Zabr DAX: Функционал 2 12.04.2004 16:19
Сколько раз вызывается DataMethod поля грида при инициализации этого грида? storer DAX: Программирование 2 18.11.2003 14:03

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

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

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