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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 28.07.2006, 11:36   #1  
Paul_ST is offline
Paul_ST
Участник
 
144 / 11 (1) +
Регистрация: 26.11.2003
Адрес: Екатеринбург
Построение Report'а по Map'ам
Добрый день! Подскажите, плиз - хочется построить отчёт, у которого два DataSource - грубо говоря, Table и Trans, которые являются Map'ми. Не получается указать при инициализации отчёта - на какую конкретно таблицу (входяющую в Mappings) этим Map'ам смотреть. Буду очень признателен за советы!
__________________
Paul_ST
Старый 28.07.2006, 12:42   #2  
George Nordic is offline
George Nordic
Модератор
Аватар для George Nordic
Злыдни
 
4,479 / 1250 (50) ++++++++
Регистрация: 17.12.2003
Адрес: Moscow
Записей в блоге: 9
Мар - это, скорее, ближе к темповой таблице. Там нет данных. Это логическое объединение. Поэтому и построить отчет будет хм... затруднительно. Мой совет: используйте 2 разных отчета. Или 2 разных дизайна одного и того же отчета.

С Уважением,
Георгий
Старый 28.07.2006, 12:51   #3  
Paul_ST is offline
Paul_ST
Участник
 
144 / 11 (1) +
Регистрация: 26.11.2003
Адрес: Екатеринбург
Два разных отчёта изначально и были сделаны. Сейчас хочется единообразия, потому что в случае правок дизайна - придётся дублировать изменения.
Я нашёл в стандартном функционале пример работы отчёта (CustInvoiceJourRegister_LT) по Map (CustVendInvoiceJour). В init() там прописана инициализация: this.queryRun().setCursor(custVendInvoiceJourRegisterReport.custVendInvoiceJour()); - т.е. задаётся курсор (map), который уже инициализирован в классе. У меня почему-то подобное не проходит - пытаяьс сделать аналогично - проселектив нужную табличку в отдельном методе - при передаче её как map в setCursor() получаю ошибку - "Неправильные аргументы". Пока ничего не могу понять.
__________________
Paul_ST
Старый 28.07.2006, 13:22   #4  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,361 / 2084 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Atlanta, GA, USA
Цитата:
Сообщение от Paul_ST
Два разных отчёта изначально и были сделаны. Сейчас хочется единообразия, потому что в случае правок дизайна - придётся дублировать изменения.
Я нашёл в стандартном функционале пример работы отчёта (CustInvoiceJourRegister_LT) по Map (CustVendInvoiceJour). В init() там прописана инициализация: this.queryRun().setCursor(custVendInvoiceJourRegisterReport.custVendInvoiceJour()); - т.е. задаётся курсор (map), который уже инициализирован в классе. У меня почему-то подобное не проходит - пытаяьс сделать аналогично - проселектив нужную табличку в отдельном методе - при передаче её как map в setCursor() получаю ошибку - "Неправильные аргументы". Пока ничего не могу понять.
Во-первых, мало похоже на стандартный фнукционал
У меня нет ни класса такого, ни отчета.
А по делу - так скорей всего метод custVendinvoiceJour возвращает MAP, а вы пытаетесь туда запихнуть таблицу.
Старый 28.07.2006, 13:34   #5  
Paul_ST is offline
Paul_ST
Участник
 
144 / 11 (1) +
Регистрация: 26.11.2003
Адрес: Екатеринбург
Ну т.е. - склониться в сторону двух отдельных отчётов?

По поводу последнего - передаю я, естественно map, который присваивается предварительно нужной таблицей. Если присвоения не делать, то всё хорошо - ошибки нет, но и данных никаких отчёт не выведет.
__________________
Paul_ST
Старый 28.07.2006, 13:34   #6  
Paul_ST is offline
Paul_ST
Участник
 
144 / 11 (1) +
Регистрация: 26.11.2003
Адрес: Екатеринбург
Отчёт и класс у меня точно есть в АОТ. Axapta 3.0 SP4
__________________
Paul_ST
Старый 28.07.2006, 13:53   #7  
Russland is offline
Russland
MCTS
Аватар для Russland
MCBMSS
 
267 / 116 (4) +++++
Регистрация: 17.10.2005
Адрес: Донеччина, Україна
Есть... Есть такой отчёт.
Changed by Vaus каким-то
__________________

В глухомани, в лесу Несмотря на красу Дни проводит Лиса Патрикевна. Я никак не пойму Отчего, почему Не пускают куму На деревню
Старый 28.07.2006, 14:00   #8  
Мариночка is offline
Мариночка
Microsoft Dynamics
Аватар для Мариночка
Сотрудники Microsoft Dynamics
 
75 / 56 (2) ++++
Регистрация: 31.01.2005
Адрес: Киев
Столкнулась с той же проблемой, но в 4ке.
Ниасилила. Все вроде чики-пики и логично, но когда вытаскиваешь квериран из квери, он пустой. Ввиду отсутствия времени было сделано в итоге 2 отчета на соответствующие таблицы , хотя до этого ковырялась в этом долго.
И стандартных отчетов на мапе не нашла, даже сделала джобу, которая по аот проходится и находит все такие.
И отчета с классом в сп4 и сп5 у меня нету...
Старый 28.07.2006, 14:46   #9  
Roman777 is offline
Roman777
NavAx
Аватар для Roman777
NavAx Club
 
320 / 64 (3) ++++
Регистрация: 10.02.2005
Адрес: г. Москва
Цитата:
Сообщение от Paul_ST
Два разных отчёта изначально и были сделаны. Сейчас хочется единообразия, потому что в случае правок дизайна - придётся дублировать изменения.
Я нашёл в стандартном функционале пример работы отчёта (CustInvoiceJourRegister_LT) по Map (CustVendInvoiceJour). В init() там прописана инициализация: this.queryRun().setCursor(custVendInvoiceJourRegisterReport.custVendInvoiceJour()); - т.е. задаётся курсор (map), который уже инициализирован в классе. У меня почему-то подобное не проходит - пытаяьс сделать аналогично - проселектив нужную табличку в отдельном методе - при передаче её как map в setCursor() получаю ошибку - "Неправильные аргументы". Пока ничего не могу понять.
В приведеном вами в качестве примера отчете map не присваивается выборка из таблицы. Map заполняется в цикле по Query вот так:
PHP код:
    while (invoiceQueryRun.next())
    {
        
invoiceJour invoiceQueryRun.getNo(1);
        
custVendInvoiceJour.data(invoiceJour);
        
custVendInvoiceJour.insert();
    } 
Взято тут: \Classes\CustVendInvoiceJourRegister_LT\createCustVendInvoiceJour
Старый 28.07.2006, 16:42   #10  
Paul_ST is offline
Paul_ST
Участник
 
144 / 11 (1) +
Регистрация: 26.11.2003
Адрес: Екатеринбург
Да, кстати, код этого метода я вытаскивал.
Т.е. это окончательный аргумент в пользу того, что в данном случае Map работает наподобие временной таблицы и просто указать ему из какой таблицы выводить данные нельзя?
__________________
Paul_ST
Старый 28.07.2006, 16:49   #11  
Roman777 is offline
Roman777
NavAx
Аватар для Roman777
NavAx Club
 
320 / 64 (3) ++++
Регистрация: 10.02.2005
Адрес: г. Москва
Где именно этот аргумент?
Старый 28.07.2006, 18:21   #12  
EVGL is offline
EVGL
Banned
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
4,445 / 3001 (0) ++++++++++
Регистрация: 09.07.2002
Адрес: Parndorf, AT
Хотел бы всех огорчить. Гибкий Query сделать можно, но только что это даст? Поля отчета имеют два ключевых свойства 'Table' и 'Datafield', причем первый мап'ы не принимает. Это значит, что все поля такого отчета придется делать "дисплейными". Не уверен, что это сбережет время.
Старый 28.07.2006, 20:14   #13  
EVGL is offline
EVGL
Banned
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
4,445 / 3001 (0) ++++++++++
Регистрация: 09.07.2002
Адрес: Parndorf, AT
Поправлю себя: сделать можно. Надо использовать SectionTemplate.
Старый 31.07.2006, 07:37   #14  
Paul_ST is offline
Paul_ST
Участник
 
144 / 11 (1) +
Регистрация: 26.11.2003
Адрес: Екатеринбург
Фактически аргумент в том, что в коде класса СustVendInvoiceJourRegisterReport в map'у вставляются строки. Map затем передаётся в report CustInvoiceJourRegister_LT. Именно этот map и используется как DataSource для этого отчёта
__________________
Paul_ST
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Dynamics AX: Map Object Sorting - a real issue Blog bot DAX Blogs 7 15.10.2008 12:02
Ruslan Goncharov: Storing report design in database Blog bot DAX Blogs 0 27.08.2008 18:05
palleagermark: Change the appearance of printed report ranges Blog bot DAX Blogs 1 27.05.2008 21:21
Axapta Lessons: Auto Report as finished Blog bot DAX Blogs 0 28.10.2006 18:22

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

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

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