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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 18.02.2005, 12:45   #1  
Zabr is offline
Zabr
Участник
Axapta Retail User
 
1,200 / 345 (14) ++++++
Регистрация: 26.06.2002
Адрес: Москва
Отчет: перекрытие fetch() убивает буфер записи в display-методе
Проблема в отчете, очень похожа на баг Аксапты.
Есть display-метод, ищущий что-то по текущей записи .датасорса отчета. После перекрытия метода fetch() отчета в этом методе запись датасорса оказывется недоступна. В fetch() написано примерно так:

PHP код:
    qr = new QueryRun(this.query());
    if(
qr.prompt())
    {
      while(
qr.next())
        {
            
sOrder qr.get(tablenum(SalesTable));
            
this.send(sOrder);
        }
    } 
Пробема лечится тем, что sOrder расшаривается в classDeclaration() отчета, и обращение в display-методе идет по имени этого расшаренного буфера, а не непосредственно по имени датасорса (спасибо за совет George Nordic'у).
Однако это - явно обходной путь. В чем причина такого поведения системы? Думаю -это ошибка. Если не баг - то есть ли способ, скажем, более "правильно" перекрыть fetch() чтобы не пришлось переписывать все display-методы ?
Старый 18.02.2005, 18:45   #2  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
Есть.

Если у вас в Query есть DataSource c именем SalesTable, тогда так:
PHP код:
qr = new QueryRun(this.query());

if(
qr.prompt())
{
  while(
qr.next())
    {
        
SalesTable qr.get(tablenum(SalesTable));
        
this.send(SalesTable);
    }

На сколько я помню, никто не обещал, что метод send() обновляет DataSource. Он только вызывает executeSection() для связанных секций.
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Выделенные записи на форме в отчёт/форму Sada DAX: Программирование 32 12.02.2011 20:12
получить контрол в display методе Omeo DAX: Программирование 1 23.01.2009 11:56
Динамические контролы в отчете основанные на display-методе petr DAX: Программирование 19 18.09.2006 15:29
Можно ли в display методе узнать для какого FormControl'а этот метод вызван? Dudnik Anton DAX: Программирование 3 01.02.2006 12:22
Не копирует из display-метода в буфер обмена akvi DAX: Программирование 6 08.12.2005 13:14

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

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

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