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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 24.05.2011, 09:08   #1  
timaluhs is offline
timaluhs
newborn in DAX
Аватар для timaluhs
 
102 / 10 (1) +
Регистрация: 16.12.2010
Адрес: Израиль
Цитата:
Сообщение от S.Kuskov Посмотреть сообщение
Ага. Можно и через display-метод. Только сдаётся мне, что display-метод может вызываться чаще чем ExecuteQuery.
А почему чаще? и чем это может быть плохо или хорошо? где подводные камни расставлены?
Старый 24.05.2011, 09:17   #2  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,448 / 1792 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Цитата:
Сообщение от timaluhs Посмотреть сообщение
А почему чаще?
Потому что executeQuery вызывается только в случае изменения параметров запроса. Именно в этот момент число выбранных записей может измениться. Например когда вы накладываете новый фильтр или убираете старый.
display-метод вызывается всякий раз, когда есть необходимость перерисовки содержимого окна. Например вы свернули и развернули окно.
Цитата:
Сообщение от timaluhs Посмотреть сообщение
и чем это может быть плохо или хорошо?
Это просто буде чуть больше нагружать систему. Т.е. это уже вопрос оптимизации.
Старый 24.05.2011, 10:45   #3  
timaluhs is offline
timaluhs
newborn in DAX
Аватар для timaluhs
 
102 / 10 (1) +
Регистрация: 16.12.2010
Адрес: Израиль
Что Вы подразумеваете под unbound control?
На форме определила IntEdit control. Autodecalration Yes , name RowCount1 . Eщё что-то?
В executeQuery
RowCount1 = SysQuery::countTotal( mlm_TemporaryLeaveReport_qr);
ругается :"Operand types are not compatible with the operator."

а если
RowCount1 = SysQuery::countTotal( mlm_TemporaryLeaveReport. QueryRun());
ругается :"The table mlm_TemporaryLeaveReport does not contain this function."
Старый 24.05.2011, 10:59   #4  
lev is offline
lev
Ищущий знания...
Аватар для lev
Oracle
MCBMSS
Axapta Retail User
 
1,723 / 491 (20) +++++++
Регистрация: 18.01.2005
Адрес: Москва
Цитата:
Сообщение от timaluhs Посмотреть сообщение
Что Вы подразумеваете под unbound control?
На форме определила IntEdit control. Autodecalration Yes , name RowCount1 . Eщё что-то?
В executeQuery
RowCount1 = SysQuery::countTotal( mlm_TemporaryLeaveReport_qr);
ругается :"Operand types are not compatible with the operator."

а если
RowCount1 = SysQuery::countTotal( mlm_TemporaryLeaveReport. QueryRun());
ругается :"The table mlm_TemporaryLeaveReport does not contain this function."
в методе ExecuteQuery после super() напишите:
X++:
RowCount1 = SysQuery::countTotal(this.queryRun());
у меня работает
__________________
"Страх перед возможностью ошибки не должен отвращать нас от поисков истины." (с)
С Уважением,
Елизаров Артем
Старый 24.05.2011, 11:07   #5  
timaluhs is offline
timaluhs
newborn in DAX
Аватар для timaluhs
 
102 / 10 (1) +
Регистрация: 16.12.2010
Адрес: Израиль
а почему именно после super()?
у меня super в самом конце, после всех операций.

super();
RowCount1 = SysQuery::countTotal( this.queryRun());
та же ошибка
Operand types are not compatible with the operator.
Старый 24.05.2011, 11:10   #6  
lev is offline
lev
Ищущий знания...
Аватар для lev
Oracle
MCBMSS
Axapta Retail User
 
1,723 / 491 (20) +++++++
Регистрация: 18.01.2005
Адрес: Москва
Цитата:
Сообщение от timaluhs Посмотреть сообщение
а почему именно после super()?
у меня super в самом конце, после всех операций.

super();
RowCount1 = SysQuery::countTotal( this.queryRun());
та же ошибка
Operand types are not compatible with the operator.
потому что queryRun в супере инициализируется, до супера его проста нет как объекта

про ругательство, S.Kuskov уже написал (да и я потом) присвоение контролу значения происходит через метод value().
__________________
"Страх перед возможностью ошибки не должен отвращать нас от поисков истины." (с)
С Уважением,
Елизаров Артем
Старый 24.05.2011, 11:14   #7  
timaluhs is offline
timaluhs
newborn in DAX
Аватар для timaluhs
 
102 / 10 (1) +
Регистрация: 16.12.2010
Адрес: Израиль
я после ответа увидела сообщение от S.Kuskov
Спасибо, кажется разобралась.
А где почитать про super()?
Почему иногда он вначале метода иногда в конце?
Теги
query, querybuildrange, range, фильтр

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Как правильно хранить статичный набор начальных данных в классах? mazzy DAX: Программирование 58 14.04.2011 12:10
Статистика по каждому коду номенклатуры. Как правильно построить Query? dynamax DAX: Программирование 17 14.10.2009 11:27
ERP-BLOG: Axapta, фильтр по сетке Blog bot DAX Blogs 26 05.02.2009 15:56
Исполнить сформированный фильтр radya DAX: Программирование 14 26.07.2007 20:47
Как правильно построить Query Bukovka DAX: Программирование 0 25.03.2004 11:55

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

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

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