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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 29.03.2011, 12:53   #1  
vr is offline
vr
Участник
 
7 / 10 (1) +
Регистрация: 29.11.2004
Адрес: Москва
Ax и внешние отчетники
Доброго дня!

Подскажите пожалуйста, есть ли у кого опыт РЕАЛЬНОГО использования внешних отчетников для печати из Аксапты первичных документов - накладная, с/ф? Причем, как вы понимаете, корректными являются решения, где программным образом реализована логика правильного расчета и переноса на 2-ю и последуюшие страницы табличной части (например - хоть одна строка таблицы д.б. была напечатана на последней странице документа).

Очень интересует сталкивался ли кто-нибудь с подобными решениями на OpenOffice. А то ведь он у нас вроде как в качестве госта утвержден для электронного обмена. Ну или просто в Экселе, кто-нибудь что-то подобное далал?
Старый 29.03.2011, 13:27   #2  
George Nordic is offline
George Nordic
Модератор
Аватар для George Nordic
Злыдни
 
4,479 / 1250 (50) ++++++++
Регистрация: 17.12.2003
Адрес: Moscow
Записей в блоге: 9
Смотрели RS. Не понравилось - очень тяжело рисовать формы, если требуется подгонка по миллиметрам. Следовательно, отрисовка форм потребовала бы огромного количества трудозатрат. Плюс непонятно, кто, когда и сколько напечатал - для контроля пришлось бы дописывать механизм. Разумеется, возникли вопросы с доступом, потому что RS запускался с системной учетной записью и полным доступом к данным. я не говорю про RLS... В итоге отказались. Это было на DAX 3.0.

Сейчас механизмы доступа и контроля доступа к данным изменились и позволяют использовать все стандартные ограничения и РЛС. Однако трудоемкость отрисовки шаблонов и контроля напечатанных экземпляров осталась.

С Уважением,
Георгий
Старый 29.03.2011, 14:14   #3  
Zabr is offline
Zabr
Участник
Axapta Retail User
 
1,202 / 345 (14) ++++++
Регистрация: 26.06.2002
Адрес: Москва
Из документов не в аксаптовском формате выводим только:
- в Excel товарно-транспортную накладную
- в Word Акт о расхождении при приемке ТМЦ
Обязательность строки на последнем листе в этих формах не реализовывалась. Да, согласен, это большой геморрой.
Старый 29.03.2011, 14:47   #4  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,622 / 2925 (107) +++++++++
Регистрация: 16.01.2004
Записей в блоге: 5
Цитата:
Сообщение от George Nordic Посмотреть сообщение
Смотрели RS. Не понравилось - очень тяжело рисовать формы, если требуется подгонка по миллиметрам.
А с чем вы сравнивали?
Старый 29.03.2011, 14:58   #5  
jkspb is offline
jkspb
Участник
 
18 / 20 (1) +++
Регистрация: 03.03.2009
Цитата:
Сообщение от vr Посмотреть сообщение
..у кого опыт РЕАЛЬНОГО использования внешних отчетников для печати из Аксапты первичных документов
Есть практика печати отчетности через Ексель, в том числе и первички, в том числе и массовая печать. А в чем загвоздка?
Старый 29.03.2011, 15:20   #6  
vr is offline
vr
Участник
 
7 / 10 (1) +
Регистрация: 29.11.2004
Адрес: Москва
Загвоздка в корректной печати табличной части - чтобы не получилось : таблица и сумма на одной странице , а подписи на другой.
Такие документы подписывать побаиваются.
У вас такой проблемы с Экселем нет ?
Старый 29.03.2011, 15:48   #7  
jkspb is offline
jkspb
Участник
 
18 / 20 (1) +++
Регистрация: 03.03.2009
Такой проблемы с екслем нету. Печать же идет программно, соответственно, разработчик сам управляет процессом разбивки на страницы.
Старый 29.03.2011, 15:50   #8  
jkspb is offline
jkspb
Участник
 
18 / 20 (1) +++
Регистрация: 03.03.2009
Точнее будет так, ексель используется для отображения на экран, вывод на принтер, а ему на вход передается уже целиком готовый файл, с полностью готовой разбивкой на страницы, шапками на каждой странице, колонтитулами и прочее.
Старый 29.03.2011, 16:17   #9  
vr is offline
vr
Участник
 
7 / 10 (1) +
Регистрация: 29.11.2004
Адрес: Москва
Интересно все-таки а с OpenOffice такая фишка пройдет?
Старый 29.03.2011, 16:24   #10  
jkspb is offline
jkspb
Участник
 
18 / 20 (1) +++
Регистрация: 03.03.2009
Смотря как вы будете с ним работать. В частности в ексель передается хмл файл, в екселевском формате, думаю OpenOffice тоже умеет проделать подобные штуки. В любом случае, тем или иным способом есть возможность управлять OpenOffice, есть возможность сформировать файл в удобном формате, остается только открывать готовые файлы. В любом случае нужно будет писать соответствующую обертку.
Старый 29.03.2011, 16:46   #11  
George Nordic is offline
George Nordic
Модератор
Аватар для George Nordic
Злыдни
 
4,479 / 1250 (50) ++++++++
Регистрация: 17.12.2003
Адрес: Moscow
Записей в блоге: 9
Цитата:
Сообщение от belugin Посмотреть сообщение
А с чем вы сравнивали?
C Excel. Есть же стандартные шаблоны. Например РК - Настрока - Формы - Настройка форм, можно выбрать "Формат Российских Отчетов". А в Ёхеле все можно до миллиметров нарисовать, и логирование вести - кто когда какой отчет запустил, и РЛС работает, и доступ... Красота. Только формируются иногда долго, если генератором пользоваться, но тоже решаемо все, при наличии рук.

Георгий
Старый 29.03.2011, 17:05   #12  
vr is offline
vr
Участник
 
7 / 10 (1) +
Регистрация: 29.11.2004
Адрес: Москва
Цитата:
Сообщение от jkspb Посмотреть сообщение
Смотря как вы будете с ним работать. В частности в ексель передается хмл файл, в екселевском формате, думаю OpenOffice тоже умеет проделать подобные штуки. В любом случае, тем или иным способом есть возможность управлять OpenOffice, есть возможность сформировать файл в удобном формате, остается только открывать готовые файлы. В любом случае нужно будет писать соответствующую обертку.
А небольшой примерчик можно привести. Интересно как можно передать подобное форматирование в Эксель?
Старый 29.03.2011, 19:20   #13  
jkspb is offline
jkspb
Участник
 
18 / 20 (1) +++
Регистрация: 03.03.2009
Для этого вам нужен шаблон в формате xml для ексель.
Создаете новый документ и сохраните его в формате "таблица xml 2003 (*.xml)".
При работе с шаблоном можно выделить 2 типа данных, требующих заполнения6 статические (дата отчета, номер документа и т.д.) и динамические (табличная часть, подписи, итоги).
Для статичных данных нам требуется сама ячейка, для динамических - формат оформления (преимущественно).
В обоих случаях используются именованные ячейки екселя (Формулы\Диспетчер имен\Присвоить имя).
Сам формат екселя предполагает только работу с базовыми возможностями екселя, т.е всякие графики, сводные таблицы формат не поддерживает. Доступ к этим возможностям осуществляется при помощи объекта COM, после того, как файл с данными.
Для работы вам нужно реализовать обертку, при помощи которой будет открываться файл, осуществляться поиск узлов, добавление новых узлов, их атрибутов и свойств.
Ну, а дальше, используя обертку, открываете файл, находите нужные "статичные именованные ячейки", заполняете значениями, используя формат элементов табличной части, создаете стоки таблицы, самостоятельно определяя по некоторому алгоритму, когда нужно вставить итоги по странице, которые вы накапливаете, вставить разрыв страницы, скопировать шапку для нового листа, сохраняете изменения в новом файле, передаете объекту СОМ екселя и отображаете, или печатаете.
Для вставки разрыва страницы, вам нужно в *.xml файлы вставить соответствующие узлы. Какой именно? Вставьте в екселе разрыв страницы, сохраните изменения и посмотрите при помощи какого-либо редактора, что изменилось.
Для работы с хмл использую семейство классов XMLElement, XMLDocument (см. форум, "гугл" - статей достаточно).
Использовать СОМ екселя для создание документа - не рекомендую, очень медленно. Можете использовать для вызова дополнительных функций (например, графиков).
Есть вариант работы с екселем через DDE.
Думаю, что проблем с прямым доступом к OpenOffice не должно быть. В любом случае всегда можно реализовать обертку через стороннее приложение, dll-ку.
За это сообщение автора поблагодарили: vr (1).
Старый 29.03.2011, 19:26   #14  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,622 / 2925 (107) +++++++++
Регистрация: 16.01.2004
Записей в блоге: 5
Цитата:
Сообщение от George Nordic Посмотреть сообщение
C Excel. Есть же стандартные шаблоны. Например РК - Настрока - Формы - Настройка форм, можно выбрать "Формат Российских Отчетов". А в Ёхеле все можно до миллиметров нарисовать
В SSRS тоже с точностью до миллиметра, если я не ошибаюсь. Мне не хватало только вертикальных объединенных ячеек.

Цитата:
, и логирование вести - кто когда какой отчет запустил
А чем это не подходит? http://www.mssqltips.com/tip.asp?tip=1908
За это сообщение автора поблагодарили: George Nordic (1).
Старый 30.03.2011, 11:57   #15  
vr is offline
vr
Участник
 
7 / 10 (1) +
Регистрация: 29.11.2004
Адрес: Москва
Спасибо огромное! Сейчас буду пробовать.

Вопрос:
При работе с шаблоном Exel в формате xml непонятно каким образом рассчитать места длдя вставки разрыва страницы, ведь высота строк табличной части меняется в зависимости от длины наименования

Последний раз редактировалось vr; 30.03.2011 в 12:05.
Старый 30.03.2011, 13:43   #16  
MikeR is offline
MikeR
MCT
Аватар для MikeR
MCBMSS
Лучший по профессии 2015
Лучший по профессии 2014
 
1,628 / 627 (24) +++++++
Регистрация: 28.11.2005
Адрес: просто землянин
Цитата:
Сообщение от belugin Посмотреть сообщение
В SSRS тоже с точностью до миллиметра, если я не ошибаюсь. Мне не хватало только вертикальных объединенных ячеек.
Очень не хватает возможности авто позиционирования в группе наподобие дизайна аксовской формы, а так технология мощная. И не нашел выравнивания одних контролов относительно других.
__________________
Axapta book for developer
Старый 30.03.2011, 16:30   #17  
VORP is offline
VORP
Участник
Аватар для VORP
 
146 / 95 (4) ++++
Регистрация: 26.05.2006
Цитата:
ведь высота строк табличной части меняется в зависимости от длины наименования
Можно воспользоваться функцией
System.Windows.Forms.TextRenderer::MeasureText с флагами WordBreak, TextBoxControl.
Старый 30.03.2011, 16:50   #18  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,622 / 2925 (107) +++++++++
Регистрация: 16.01.2004
Записей в блоге: 5
Цитата:
Сообщение от MikeR Посмотреть сообщение
Очень не хватает возможности авто позиционирования в группе наподобие дизайна аксовской формы, а так технология мощная.
В тулзах SSRS для Ax2009 разве нет такого режима?

Цитата:
И не нашел выравнивания одних контролов относительно других.
В тулбаре есть кнопки для взаимного выравнивания контролов.
Старый 31.03.2011, 09:45   #19  
MikeR is offline
MikeR
MCT
Аватар для MikeR
MCBMSS
Лучший по профессии 2015
Лучший по профессии 2014
 
1,628 / 627 (24) +++++++
Регистрация: 28.11.2005
Адрес: просто землянин
Цитата:
Сообщение от belugin Посмотреть сообщение
В тулзах SSRS для Ax2009 разве нет такого режима?



В тулбаре есть кнопки для взаимного выравнивания контролов.
Есть rectangle, но это не совсем то...
Миниатюры
Нажмите на изображение для увеличения
Название: Tools.jpg
Просмотров: 281
Размер:	73.0 Кб
ID:	6710  
__________________
Axapta book for developer
Старый 31.03.2011, 10:05   #20  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,622 / 2925 (107) +++++++++
Регистрация: 16.01.2004
Записей в блоге: 5
Цитата:
Сообщение от MikeR Посмотреть сообщение
Есть rectangle, но это не совсем то...
Я имел ввиду кнопки для выравнивания
Изображения
 
За это сообщение автора поблагодарили: MikeR (2).
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
axinthefield: Dynamics AX Event IDs Blog bot DAX Blogs 0 01.03.2011 22:11
daxdilip: Whats New in Dynamics AX 2012 (A brief extract from the recently held Tech Conf.) Blog bot DAX Blogs 7 31.01.2011 12:35
semanticax: Dynamics AX 2009 Installation - Application Blog bot DAX Blogs 0 22.12.2010 08:11
axStart: Microsoft Dynamics AX 2009 Hot Topics Web Seminar Series Blog bot DAX Blogs 0 06.08.2008 12:05
Arijit Basu: AX 2009 - Quick Overview Blog bot DAX Blogs 4 19.05.2008 14:47

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

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

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