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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 12.03.2005, 14:50   #1  
Yprit is offline
Yprit
Злыдни
Аватар для Yprit
Злыдни
 
419 / 93 (4) ++++
Регистрация: 22.02.2004
Адрес: СПб
Непонятки с Range в отчете
Вызываю по MeniItem отчет из формы. В init отчета получаю курсор датасурса формы и из него устанавливаю Ranges
PHP код:
cursor element.args().record();
            
this.query().dataSourceNo(1).addRange(fieldNum(table1,field1)).value(queryValue(cursor.field1));
      
this.query().dataSourceNo(1).addRange(fieldNum(table1,field2)).value(queryValue(cursor.field2)); 
Но в результате значения ranges берутся не утсановленные мной, а из SysLastValues. Когда делаю Настройки пользователя - Сброс, то первый раз все в порядке, а потом снова начинается та же фигня.

В чем дело и как лечить - не понимаю....
Старый 12.03.2005, 15:32   #2  
George Nordic is offline
George Nordic
Модератор
Аватар для George Nordic
Злыдни
 
4,479 / 1250 (50) ++++++++
Регистрация: 17.12.2003
Адрес: Moscow
Записей в блоге: 9
Смотри:

Последовательность выполнения отчета:

init
на супуере формирует query
потом prompt
читает syslastvalye, модифицирует имеющийся query, потом на супере предлагает пользователю модифицировать квери со старыми настройками.

Таким образом, чистить надо до супера в prompte. При этом пользователь не будет видеть старые свои критерии. Там же можно поставить ему новые.

С Уважением,
Георгий
Старый 12.03.2005, 15:34   #3  
Yprit is offline
Yprit
Злыдни
Аватар для Yprit
Злыдни
 
419 / 93 (4) ++++
Регистрация: 22.02.2004
Адрес: СПб
ок, заработало
Спасибо
Старый 05.08.2012, 21:08   #4  
alicedr is offline
alicedr
Участник
 
175 / 43 (2) +++
Регистрация: 06.07.2012
Адрес: Канада
Добрый день.
У меня, похоже, такая же проблема. Только "настройки пользователя-сброс" я не знаю, где делать.
В общем, есть класс, который вызывает отчет (report). В init отчета вставляю описание range:
X++:
public void init()
{
    super();
    cashSlipReport = element.args().caller();

    fromDate            = cashSlipReport.parmFromDate();
    toDate              = cashSlipReport.parmToDate();

    this.query().datasourcetable(tablenum(RCashTrans)).clearRanges();

    if (FromDate || toDate)     //в дебаггере тут даты верные, из диалога
    {
        element.query().datasourcetable(tablenum(RCashTrans)).
            addRange(fieldnum(RCashTrans, TransDate));
        element.query().datasourcetable(tablenum(RCashTrans)).
            RangeField(fieldnum(RCashTrans, TransDate)).
            value(queryRange(FromDate, toDate));
    }
}
Все работает, но диапазон дат не срабатывает, в отчет попадают все данные.
Что не так?
Рукописный fetch() в отчете отсутствует.
Старый 05.08.2012, 23:49   #5  
Alexanderis.ua is offline
Alexanderis.ua
Участник
 
53 / 40 (2) +++
Регистрация: 25.12.2008
Адрес: Киев, Украина
Ну ситуация та же вроде бы. Как Георгий писал:

Цитата:
Сообщение от George Nordic Посмотреть сообщение
Таким образом, чистить надо до супера в prompte. При этом пользователь не будет видеть старые свои критерии. Там же можно поставить ему новые.
__________________
If it ain't broke, take it apart and find out why (с)
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Range на datasource в отчете Smith DAX: Программирование 2 16.07.2007 11:06
Работа с Excel через COM и ошибка 0x800A03EC (Range.AutoFilter) gl00mie DAX: Программирование 15 30.03.2007 18:37
Непонятки с Field Sum в отчете berlioz DAX: Программирование 10 19.10.2006 10:26
Установка Range в отчёте Paul_ST DAX: Программирование 13 06.01.2004 17:33
Не срабатывает Range в отчете - почему? Zabr DAX: Программирование 7 14.07.2003 13:49

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

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

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