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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 01.02.2007, 14:13   #1  
fialka is offline
fialka
Участник
 
347 / 16 (1) ++
Регистрация: 05.10.2006
Адрес: Екатеринбург
отчёт из временной таблицы
Надаумте меня плизз.
Есть Report, кот. строится по InventJournalTrans (простецкий отчёт с одним DataSource и в дизайне все просто )...
В InventTable есть поле с каким -то особым свойством номенклатуры (пусть будет дорогое и дешёвое).
Так вот, как лучше сделать, чтобы в отчёте те ном-ры которые "дорогие" печатались на одном листе, а те что "дешёвые" на новом листе.
Можно конечно запиcывать все номенклатуры данного журнала во временную таблицу...
но как потом отсортировать номенклатуры дешёвые от дорогих, чтобы выводить на печать раздельно?
Старый 01.02.2007, 14:23   #2  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,361 / 2084 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Atlanta, GA, USA
Попробуйте добавить первым источником отчета (до InventJournalTrans) таблицу InventTable, и добавить сортировку по полю вашему этому особому.
Должно помочь.

Если же у вас обязательны определенные сортировки/группировки по строкам складских журналов, то можно, к примеру, перекрыть метод fetch отчета, и выполнить 2 запроса - первый по дорогоим, а второй по дешевым. А их разделить element.newPage() (вставкой новой страницы) - это чтобы временную таблицу не делать
За это сообщение автора поблагодарили: fialka (1).
Старый 02.02.2007, 09:36   #3  
fialka is offline
fialka
Участник
 
347 / 16 (1) ++
Регистрация: 05.10.2006
Адрес: Екатеринбург
сделала отчёт с методом fetch, в dataSource InvenTable и InvenJournalTrans.Пока отчёт был без display методов fetch работал, в отчёт попадали все данные и они нахадились на разных страницах, если свойства разные.Добавила display метода в отчёт - теперь выдаёт только одну запись.Подскажите, что я ещё не предусмотрела...fetch такой..public boolean fetch(){ boolean ret = true; InventJournalTrans InventJournalTrans1; QueryRun qr; WMSStoreZoneId WMSStoreZoneId; ; qr = new QueryRun(element); if (qr.prompt()) { if(element.args().record()) { while (qr.next()) { inventTable_1 = qr.get(tablenum(InventTable)); InventJournalTrans_1 = qr.get(tablenum(InventJournalTrans)); if (WMSStoreZoneId != inventTable_1.WMSStoreZoneId) { WMSStoreZoneId = inventTable_1.WMSStoreZoneId; element.newPage(); } if (qr.changed(tablenum(InventTable))) element.send(InventTable_1, 1); if (qr.changed(tablenum(InventJournalTrans))) element.send(InventJournalTrans_1, 2); } } } return ret;}WMSStoreZoneId это как раз свойство, при изменении которого нужно переходить на новую страницу...

Последний раз редактировалось fialka; 02.02.2007 в 09:53. Причина: некорректно написано сообщение
Старый 02.02.2007, 09:58   #4  
Sada is offline
Sada
Программатор
Аватар для Sada
 
1,450 / 153 (8) ++++++
Регистрация: 29.03.2005
Адрес: Толи Барнаул, толи Москва
Есть мнение, что Ваш fetch в данном виде не читабелен... Экономте Ваше и наше время и выложите в нормальном виде плиз.
Старый 02.02.2007, 09:59   #5  
fialka is offline
fialka
Участник
 
347 / 16 (1) ++
Регистрация: 05.10.2006
Адрес: Екатеринбург
)) да теперь отредактировать не могу.. пыталась сделать читабильным (
Старый 02.02.2007, 10:11   #6  
Sada is offline
Sada
Программатор
Аватар для Sada
 
1,450 / 153 (8) ++++++
Регистрация: 29.03.2005
Адрес: Толи Барнаул, толи Москва
PHP код:
public boolean fetch()

boolean ret true
InventJournalTrans InventJournalTrans1
QueryRun qr;
WMSStoreZoneId WMSStoreZoneId;

qr = new QueryRun(element); 
if (
qr.prompt()) 
{
     if(
element.args().record()) 
     { 
         while (
qr.next()) 
         { 
             
inventTable_1 qr.get(tablenum(InventTable)); 
             
InventJournalTrans_1 qr.get(tablenum(InventJournalTrans)); 
             if (
WMSStoreZoneId != inventTable_1.WMSStoreZoneId
             { 
                 
WMSStoreZoneId inventTable_1.WMSStoreZoneId
                 
element.newPage(); 
             } 
             if (
qr.changed(tablenum(InventTable))) 
                 
element.send(InventTable_11); 
             if (
qr.changed(tablenum(InventJournalTrans))) 
                 
element.send(InventJournalTrans_12); 
          } 
      } 
   } 
return 
ret;

Старый 02.02.2007, 10:15   #7  
fialka is offline
fialka
Участник
 
347 / 16 (1) ++
Регистрация: 05.10.2006
Адрес: Екатеринбург
вот-вот.. у меня так же в АХ он выглядит)) Только ещё бы работал с дисплейными полями (
Старый 02.02.2007, 10:45   #8  
Sada is offline
Sada
Программатор
Аватар для Sada
 
1,450 / 153 (8) ++++++
Регистрация: 29.03.2005
Адрес: Толи Барнаул, толи Москва
Покажите дисплей методы?
Старый 02.02.2007, 10:48   #9  
fialka is offline
fialka
Участник
 
347 / 16 (1) ++
Регистрация: 05.10.2006
Адрес: Екатеринбург
ну например такой...display FreeText NameItem(){ select ItemName from inventTable_1 where inventTable_1.ItemId == inventJournalTrans_1.ItemId; return inventTable_1.ItemName;}Теперь вот думаю, может всё-таки через временную попробывать, чтобы не было таких заморочек..
Старый 02.02.2007, 10:55   #10  
Sada is offline
Sada
Программатор
Аватар для Sada
 
1,450 / 153 (8) ++++++
Регистрация: 29.03.2005
Адрес: Толи Барнаул, толи Москва
А если просто return inventTable_1.ItemName; ?
+ ко всему переменная InventJournalTrans1 у вас в fetch не используется, зачем она?
И зачем искать в inventTable_1 если у вас это текущая запись, к ней приджоино как то inventJournalTrans_1. Я так понимаю?

Последний раз редактировалось Sada; 02.02.2007 в 11:00.
За это сообщение автора поблагодарили: fialka (1).
Старый 02.02.2007, 11:03   #11  
fialka is offline
fialka
Участник
 
347 / 16 (1) ++
Регистрация: 05.10.2006
Адрес: Екатеринбург
по сути верно...сейчас попытаюсь свежим взглядом посмотреть на всё это..
Старый 02.02.2007, 11:11   #12  
ntr is offline
ntr
Участник
 
31 / 16 (1) ++
Регистрация: 26.05.2006
В display методе - select идет по тем же переменным (inventTable_1 И InventJournalTrans_1) что и в основном запросе отчета, т.е. "сбивает" основной запрос. Объявить надо другие переменные для display метода
Старый 02.02.2007, 11:13   #13  
Sada is offline
Sada
Программатор
Аватар для Sada
 
1,450 / 153 (8) ++++++
Регистрация: 29.03.2005
Адрес: Толи Барнаул, толи Москва
Цитата:
Сообщение от ntr Посмотреть сообщение
В display методе - select идет по тем же переменным (inventTable_1 И InventJournalTrans_1) что и в основном запросе отчета, т.е. "сбивает" основной запрос. Объявить надо другие переменные для display метода
Это я и хотел сказать
Старый 02.02.2007, 11:22   #14  
fialka is offline
fialka
Участник
 
347 / 16 (1) ++
Регистрация: 05.10.2006
Адрес: Екатеринбург
всем спасибо за помощь... получилось
Старый 02.02.2007, 11:24   #15  
Sada is offline
Sada
Программатор
Аватар для Sada
 
1,450 / 153 (8) ++++++
Регистрация: 29.03.2005
Адрес: Толи Барнаул, толи Москва
Цитата:
Сообщение от fialka Посмотреть сообщение
всем спасибо за помощь... получилось
Ну вот видите как хорошо Тогда смотрим в район зеленого квадратика под аватарой
Старый 02.02.2007, 11:28   #16  
fialka is offline
fialka
Участник
 
347 / 16 (1) ++
Регистрация: 05.10.2006
Адрес: Екатеринбург
всё бы хорошо.. но у меня отключены напрочь рисунки)) регламент ))
Старый 02.02.2007, 11:30   #17  
Sada is offline
Sada
Программатор
Аватар для Sada
 
1,450 / 153 (8) ++++++
Регистрация: 29.03.2005
Адрес: Толи Барнаул, толи Москва
Цитата:
Сообщение от fialka Посмотреть сообщение
всё бы хорошо.. но у меня отключены напрочь рисунки)) регламент ))
Мде... тонкий намек не понят...
Старый 02.02.2007, 11:39   #18  
fialka is offline
fialka
Участник
 
347 / 16 (1) ++
Регистрация: 05.10.2006
Адрес: Екатеринбург
Цитата:
Сообщение от Sada Посмотреть сообщение
Ну вот видите как хорошо Тогда смотрим в район зеленого квадратика под аватарой
не видно у меня ни автар, ни зелёный квадратик (
Старый 02.02.2007, 11:53   #19  
raz is offline
raz
NavAx
Аватар для raz
NavAx Club
Лучший по профессии 2014
Лучший по профессии 2009
 
1,494 / 1065 (38) ++++++++
Регистрация: 22.07.2003
Адрес: МО
А ссылку с текстом "Одобрить сообщение" видно? Так ее и жмите.
Старый 02.02.2007, 16:26   #20  
fialka is offline
fialka
Участник
 
347 / 16 (1) ++
Регистрация: 05.10.2006
Адрес: Екатеринбург
Цитата:
Сообщение от raz Посмотреть сообщение
А ссылку с текстом "Одобрить сообщение" видно? Так ее и жмите.
так одобрила уже..ну что вытак нападаете ))
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
данные из временной таблицы в отчете алька DAX: Программирование 4 19.04.2007 17:47
Отчет, основанный на временной таблице Андре DAX: Программирование 10 21.02.2007 13:47
Отчет по временной таблице petr DAX: Программирование 3 30.11.2006 14:55
Проблема с очисткой временной таблицы v.fedorov DAX: Программирование 13 26.10.2006 23:02
Отчет по временной таблице DreamCreator DAX: Программирование 1 26.11.2004 10:03
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

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

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