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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 18.01.2005, 19:19   #1  
konfet is offline
konfet
Снова балуюсь косаптой :)
 
143 / 50 (2) ++++
Регистрация: 23.04.2003
Адрес: Moscow
Talking Временные таблицы в отчетах
Есть такой таск. Люди хотят видеть некий отчет с вложенными группировками и подитогами (стандартный пример - остатки товара по складским аналитикам).

В Axapta этого можно добится, устанавливая у полей ветки Sorting запроса отчета свойства AutoHeader и AutoSum плюс добавляя в AutoDesignSpec поля суммирования и устанавливая у них свойство SumAll.

Работает отлично, но только когда отчет смотрит в постоянную (не temporary) таблицу.
В моем же случае "источник" - это temporary table, формируемая извне по некоему сложному алгоритму.
Перекрыл метод fetch... данные отчет "засосал", но функциональность вложенных группировок и подитогов по ним работать при этом перестала :-(

Так как сроки, по обыкновению, поджимают - сделал суперизвращенное решение: из временной таблицы данные копируются в постоянную, по этим данным формируется отчет, после чего данные из постоянной таблицы стираются :-))))

Вопрос к уважаемому All: как ГРАМОТНО сделать аксаптовский отчет с вложенными (3 штуки) группировками и подитогами по ним, основанный не на "постоянной" таблице. Знает ли кто соответствующий пример в стандартной функциональности?
__________________
Бесты и регарды!
Старый 18.01.2005, 19:53   #2  
macklakov is offline
macklakov
NavAx
Аватар для macklakov
 
2,251 / 980 (37) +++++++
Регистрация: 03.04.2002
Не совсем понял, зачем перекрывать fetch, если данные все равно закачиваются во временную таблицу?
__________________
Isn't it nice when things just work?
Старый 18.01.2005, 20:26   #3  
konfet is offline
konfet
Снова балуюсь косаптой :)
 
143 / 50 (2) ++++
Регистрация: 23.04.2003
Адрес: Moscow
Ну как - чтобы получить собсно данные для отчета...

Чтобы заполнить временную таблицу данными, выводимыми в отчет - надо написать что-то вроде

public boolean fetch()
{
;

TmpTable = Cls.getTmpTable();
while select TmpTable
{
this.send(TmpTable);
}

return true;
}

Если просто, скажем в Init, не перекрывая fetch-а написать

public void init()
{
TmpTable = Cls.getTmpTable();
super();
}

то сволочная аксапта пишет "отчет не содержит данных".

А как только перекрываешь fetch - подгуппы и подитоги перестают работать, т.е. нуль внимания на свойства AutoHeader и AutoSum в запросе отчета :-(
Или может я неправильно делаю вообще?
__________________
Бесты и регарды!
Старый 19.01.2005, 09:26   #4  
Ser is offline
Ser
NavAx
 
99 / 14 (1) ++
Регистрация: 04.03.2002
Адрес: Москва
Цитата:
Если просто, скажем в Init, не перекрывая fetch-а написать

public void init()
{
TmpTable = Cls.getTmpTable();
super();
}

то сволочная аксапта пишет "отчет не содержит данных".
попробуйте в prompt после super() добавить

this.queryRun().setCursor(TmpTable);
__________________
Чудес не бывает (c), истина где-то рядом (c)...
Старый 19.01.2005, 10:34   #5  
konfet is offline
konfet
Снова балуюсь косаптой :)
 
143 / 50 (2) ++++
Регистрация: 23.04.2003
Адрес: Moscow
Ser - огромное спасибо, после SetCursor всё заработало в лучшем виде!
__________________
Бесты и регарды!
Старый 19.01.2005, 11:32   #6  
macklakov is offline
macklakov
NavAx
Аватар для macklakov
 
2,251 / 980 (37) +++++++
Регистрация: 03.04.2002
Цитата:
Изначально опубликовано konfet
...сволочная аксапта пишет "отчет не содержит данных"...
Ну зачем так ругаться! Все она правильно написала
__________________
Isn't it nice when things just work?
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
И снова Query и временные таблицы Def DAX: Программирование 19 08.12.2006 15:46
Не страшно ли временные таблицы временно сделать постоянными? Gustav DAX: Программирование 11 09.02.2006 11:04
Временные таблицы должны быть вложенными (inner)... Deep Dreamer DAX: Программирование 14 08.09.2005 16:23
Временные таблицы Diamond DAX: Программирование 3 30.12.2003 09:33
Временные таблицы в запросе Dron AKA andy DAX: Программирование 4 06.09.2002 12:14

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

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

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