01.02.2007, 14:13 | #1 |
Участник
|
отчёт из временной таблицы
Надаумте меня плизз.
Есть Report, кот. строится по InventJournalTrans (простецкий отчёт с одним DataSource и в дизайне все просто )... В InventTable есть поле с каким -то особым свойством номенклатуры (пусть будет дорогое и дешёвое). Так вот, как лучше сделать, чтобы в отчёте те ном-ры которые "дорогие" печатались на одном листе, а те что "дешёвые" на новом листе. Можно конечно запиcывать все номенклатуры данного журнала во временную таблицу... но как потом отсортировать номенклатуры дешёвые от дорогих, чтобы выводить на печать раздельно? |
|
01.02.2007, 14:23 | #2 |
Участник
|
Попробуйте добавить первым источником отчета (до InventJournalTrans) таблицу InventTable, и добавить сортировку по полю вашему этому особому.
Должно помочь. Если же у вас обязательны определенные сортировки/группировки по строкам складских журналов, то можно, к примеру, перекрыть метод fetch отчета, и выполнить 2 запроса - первый по дорогоим, а второй по дешевым. А их разделить element.newPage() (вставкой новой страницы) - это чтобы временную таблицу не делать |
|
|
За это сообщение автора поблагодарили: fialka (1). |
02.02.2007, 09:36 | #3 |
Участник
|
сделала отчёт с методом 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 |
Программатор
|
Есть мнение, что Ваш fetch в данном виде не читабелен... Экономте Ваше и наше время и выложите в нормальном виде плиз.
|
|
02.02.2007, 09:59 | #5 |
Участник
|
)) да теперь отредактировать не могу.. пыталась сделать читабильным (
|
|
02.02.2007, 10:11 | #6 |
Программатор
|
PHP код:
|
|
02.02.2007, 10:15 | #7 |
Участник
|
вот-вот.. у меня так же в АХ он выглядит)) Только ещё бы работал с дисплейными полями (
|
|
02.02.2007, 10:45 | #8 |
Программатор
|
Покажите дисплей методы?
|
|
02.02.2007, 10:48 | #9 |
Участник
|
ну например такой...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 |
Программатор
|
А если просто return inventTable_1.ItemName; ?
+ ко всему переменная InventJournalTrans1 у вас в fetch не используется, зачем она? И зачем искать в inventTable_1 если у вас это текущая запись, к ней приджоино как то inventJournalTrans_1. Я так понимаю? Последний раз редактировалось Sada; 02.02.2007 в 11:00. |
|
|
За это сообщение автора поблагодарили: fialka (1). |
02.02.2007, 11:03 | #11 |
Участник
|
по сути верно...сейчас попытаюсь свежим взглядом посмотреть на всё это..
|
|
02.02.2007, 11:11 | #12 |
Участник
|
В display методе - select идет по тем же переменным (inventTable_1 И InventJournalTrans_1) что и в основном запросе отчета, т.е. "сбивает" основной запрос. Объявить надо другие переменные для display метода
|
|
02.02.2007, 11:13 | #13 |
Программатор
|
|
|
02.02.2007, 11:22 | #14 |
Участник
|
всем спасибо за помощь... получилось
|
|
02.02.2007, 11:24 | #15 |
Программатор
|
|
|
02.02.2007, 11:28 | #16 |
Участник
|
всё бы хорошо.. но у меня отключены напрочь рисунки)) регламент ))
|
|
02.02.2007, 11:30 | #17 |
Программатор
|
|
|
02.02.2007, 11:39 | #18 |
Участник
|
|
|
02.02.2007, 11:53 | #19 |
NavAx
|
А ссылку с текстом "Одобрить сообщение" видно? Так ее и жмите.
|
|
02.02.2007, 16:26 | #20 |
Участник
|
|
|
|
Похожие темы | ||||
Тема | Ответов | |||
данные из временной таблицы в отчете | 4 | |||
Отчет, основанный на временной таблице | 10 | |||
Отчет по временной таблице | 3 | |||
Проблема с очисткой временной таблицы | 13 | |||
Отчет по временной таблице | 1 |
|