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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 31.03.2010, 14:38   #1  
Pudd is offline
Pudd
Участник
 
34 / 10 (1) +
Регистрация: 31.03.2010
Программное добавление столбцов в отчёт
Здравствуйте!!
Суть проблемы такая нужно сформировать отчёт таким образом чтоб было так:
левый столбец - верхняя строка т е
из одной таблицы выводится 1 столбец в секцию боди (тут все норм)
Ещё нодо из другой таблицы вывести столбец горизонтально (типа шапка)
т е
заголовок таблицы 1 Таблица 2 строка 1 Таблица 2 строка 2 Таблица 2 строка 3
таблица 1 строка1
таблица 1 строка2 (тут данные по запросу при объединении этих таблиц)
таблица 1 строка3
-------------------------
таблица 1 строкаN

программная структура запроса достаточно проста
Весь вопрос как вывести в отчет как я показал
в Таблице 2 строк может быть разное кол -во
Старый 31.03.2010, 14:51   #2  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от Pudd Посмотреть сообщение
Здравствуйте!!
Суть проблемы такая нужно сформировать отчёт таким образом чтоб было так:
левый столбец - верхняя строка т е
Это "отчет, растущий в ширину".

Используйте Microsoft Reporting Service и OLAP для построения отчетов, растущих в ширину.
Штатными средствами самой Аксапты делается очень сложно и трудоемко.


Если же нужно встроенным генератором отчетости, то рекомендация:
= НЕ добавляйте столбцы программно "на лету"
= А скрывайте заранее подготовленные столбцы.

Т.е. заранее подготовьте отчет с 20-30 столбцами. Добавьте еще столбец с итоговой суммой по строке и еще один столбец "Прочее" для отображения сумм, не вошедших в эти 20-30.

Далее полностью вручную делаете запрос. Заполняете названия столбцов.
Если получилось меньше, чем вы заранее подготовили, то скрываете лишние столбцы (в том числе и Прочее).
Если получилось больше, чем вы заранее подготовили, то заполняете первые 20-30, а остальное показываете суммой в колонке Прочее.

Другими словами, создайте пустографку в AOT, а программно скрывайте ненужные столбцы.
__________________
полезное на axForum, github, vk, coub.
Старый 31.03.2010, 15:14   #3  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,440 / 1775 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
А ещё такого рода "шахматные ведомости" можно выводить в Excel. Очень удобно. Но лучший вариант предложил Mazzy - используйте RS, за ним будущее
Старый 31.03.2010, 15:40   #4  
Pudd is offline
Pudd
Участник
 
34 / 10 (1) +
Регистрация: 31.03.2010
Я пытаюсь реализовать это на MSDAX 2009
а где конкретно Microsoft Reporting Service в самой аксапте (должен быть)

А Excel это наверно последний вариант (но в принципе может быть)
Старый 31.03.2010, 15:56   #5  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от Pudd Посмотреть сообщение
а где конкретно Microsoft Reporting Service в самой аксапте (должен быть)
Сервис \ Инструменты бизнес-аналитики \ *

Читайте по тегу Reporting Service и по тегу OLAP

Будет очень замечательно, если вы проставите теги, если наткнетесь на темы без тегов.
__________________
полезное на axForum, github, vk, coub.
Старый 01.04.2010, 13:03   #6  
Pudd is offline
Pudd
Участник
 
34 / 10 (1) +
Регистрация: 31.03.2010
Подскажите а где можно прочесть про класс ComExcelDocument_RU
поиск юзал чет ниче ненашёл Надо чтоб было хоть как что для начала
нашёл про xlApp = new COM('Excel.Application'); но вроде есть еще способ
Старый 01.04.2010, 13:08   #7  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,319 / 3547 (125) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
Лучше посмотрите класс SysExcelApplication - с ним более удобно работать. Плюс он понимает разницу в версиях Excel
__________________
Возможно сделать все. Вопрос времени
Старый 01.04.2010, 13:22   #8  
Pudd is offline
Pudd
Участник
 
34 / 10 (1) +
Регистрация: 31.03.2010
Мне бы примерчик какой нибудь с любым из варианов
Только чтоб было доходчиво видно что и как
Старый 01.04.2010, 14:27   #9  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,319 / 3547 (125) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
Цитата:
Сообщение от Pudd Посмотреть сообщение
Мне бы примерчик какой нибудь с любым из варианов
Только чтоб было доходчиво видно что и как
Из перекрестных ссылок:
\Classes\DocuActionCOM_Excel\classDeclaration
\Classes\LedgerBalanceSheetDimFileGifi\classDeclaration
\Classes\SysStartupCmdCheckBestPractices\updateExcelWorkbook
\Classes\SysVersionControlSystemSourceDepot\readExcelWorkbook
\Classes\ProjExportToExcelPivot
__________________
Возможно сделать все. Вопрос времени
Старый 01.04.2010, 14:30   #10  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,440 / 1775 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Пример в стандарте можно найти поиском по классам AOT. Для SysExcelApplication я нашёл - LedgerBalanceSheetDimFileGifi, для ComExcelDocument_RU будет ещё куча всего. И ещё, если уж решились на вывод в Excel, то обязательно прочтите ветку Исследование скорости экспорта данных из Axapta в Excel (коллективный эксперимент), а также Поговорим об ADO
Старый 01.04.2010, 14:38   #11  
Shakr
Гость
 
n/a
Цитата:
Сообщение от sukhanchik Посмотреть сообщение
Лучше посмотрите класс SysExcelApplication - с ним более удобно работать. Плюс он понимает разницу в версиях Excel
он быстрее ComExcelDocument_ru работает?
Старый 01.04.2010, 14:52   #12  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,440 / 1775 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Цитата:
Сообщение от Shakr Посмотреть сообщение
он быстрее ComExcelDocument_ru работает?
нет это тот-же COM, только вид сбоку
Теги
отчет

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Добавление нового поля в отчет tolstjak DAX: Программирование 4 09.10.2009 11:16
Программное добавление range в DataSource формы Lucky13 DAX: Программирование 2 09.02.2007 12:01
Отчет, заголовки столбцов Filip DAX: Программирование 8 21.02.2006 13:04
Программное добавление MenuItemButton vasiliy DAX: Программирование 9 12.01.2005 16:07
Добавление полей в стандартный отчет tolstjak DAX: Программирование 10 06.04.2004 17:50

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

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

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