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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 10.05.2012, 16:47   #1  
smailik is offline
smailik
Участник
Аватар для smailik
 
250 / 70 (3) ++++
Регистрация: 10.04.2012
Адрес: Москва
Возможно ли создать документ Excel из X++
Всем добрый день. Возможно ли создать документ Excel из X++?
я пробовал
X++:
xldoc = new ComExcelDocument_RU();
xldoc.newFile('C:\\AX\\123.xls');
ComExcelDocument_ru::newFromFile('C:\\AX\\123.xls');
не воркает
Старый 10.05.2012, 16:53   #2  
Deepoint is offline
Deepoint
Участник
SAP
 
60 / 14 (1) ++
Регистрация: 01.04.2011
Записей в блоге: 1
Нашел на просторах.
X++:
static void CreateExcelFile(Args _args)
{
    SysExcelApplication sysExcelApplication;
    SysExcelWorkbooks   sysExcelWorkbooks;
    SysExcelWorkbook    sysExcelWorkbook;
    SysExcelWorksheet   sysExcelWorksheet;
    SysExcelRange       sysExcelRange;
    COM range;
    COM characters;
    ;
 
    sysExcelApplication = SysExcelApplication::construct();
    sysExcelApplication.visible(true);
    sysExcelWorkbooks = sysExcelApplication.workbooks();
    sysExcelWorkbook = sysExcelWorkbooks.add();
    sysExcelWorksheet = sysExcelApplication.activeSheet();
    sysExcelRange = sysExcelWorksheet.range('A1');
    range = sysExcelRange.comObject();
    characters = range.characters(1);
    characters.insert('Test');
}
За это сообщение автора поблагодарили: niksen (1).
Старый 10.05.2012, 16:59   #3  
Alexanderis.ua is offline
Alexanderis.ua
Участник
 
53 / 40 (2) +++
Регистрация: 25.12.2008
Адрес: Киев, Украина
код
X++:
xldoc.newFile('C:\\AX\\123.xls');
лишь задает шаблон для создаваемой книги.
создать можно, например, так:
X++:
xldoc.newFile('', false);
xldoc.documentSaveAs(<filename>);
xldoc.closeDocument();
xldoc.finalize();
но все, как обычно, зависит от исходной задачи
__________________
If it ain't broke, take it apart and find out why (с)
Старый 10.05.2012, 17:01   #4  
smailik is offline
smailik
Участник
Аватар для smailik
 
250 / 70 (3) ++++
Регистрация: 10.04.2012
Адрес: Москва
спасибо
Старый 10.05.2012, 19:28   #5  
Gustav is offline
Gustav
Moderator
Аватар для Gustav
SAP
Лучший по профессии 2009
 
1,858 / 1152 (42) ++++++++
Регистрация: 24.01.2006
Адрес: Санкт-Петербург
Записей в блоге: 19
Цитата:
Сообщение от Deepoint Посмотреть сообщение
Нашел на просторах.
X++:
static void CreateExcelFile(Args _args)
{
    SysExcelApplication sysExcelApplication;
    SysExcelWorkbooks   sysExcelWorkbooks;
    SysExcelWorkbook    sysExcelWorkbook;
    SysExcelWorksheet   sysExcelWorksheet;
    SysExcelRange       sysExcelRange;
    COM range;
    COM characters;
    ;
 
    sysExcelApplication = SysExcelApplication::construct();
    sysExcelApplication.visible(true);
    sysExcelWorkbooks = sysExcelApplication.workbooks();
    sysExcelWorkbook = sysExcelWorkbooks.add();
    sysExcelWorksheet = sysExcelApplication.activeSheet();
    sysExcelRange = sysExcelWorksheet.range('A1');
    range = sysExcelRange.comObject();
    characters = range.characters(1);
    characters.insert('Test');
}
Давненько (http://www.axforum.info/forums/blog.php?b=60) люблю такую короткую (по кол-ву строк) конструкцию для создания нового, еще несохраненного, файла Excel:
X++:
{
    COM rng = SysExcelApplication::construct().workbooks().add().worksheets().itemFromNum(1).range('A1').comObject();
    ;
    rng.Value2('Test');
    COM::createFromObject(rng.Application()).Visible(true);
}
Меньше трех операторов у меня не получалось. И в данном случае прямо раздражает, что файл по умолчанию создается с Visible = false - целый оператор приходится тратить!
За это сообщение автора поблагодарили: Deepoint (1).
Старый 15.05.2012, 16:52   #6  
Лиса-а-а is offline
Лиса-а-а
Участник
1C
 
16 / 10 (1) +
Регистрация: 19.03.2012
Адрес: Самара
!
Подскажите возможность менять свойства Excel, например печать на 1 страницу ширину или повторение шапки отчета на каждом листе! есть ли возможность гто нить в х++ прописывать од макроса Excelм????!!!
__________________
Работа программиста и шамана имеют много общего!- Оба бормочут непонятные слова, совершают непонятные действия и не могут объяснить как оно работает....
Старый 15.05.2012, 18:22   #7  
Владимир Максимов is offline
Владимир Максимов
Участник
КОРУС Консалтинг
 
1,691 / 1195 (43) ++++++++
Регистрация: 13.01.2004
Записей в блоге: 3
Не тираньте животинку Сделайте файл шаблона Excel (расширение XLT или XLTX) и просто наполняйте его данными. Все форматирование можно выполнить в шаблоне напрямую средствами Excel.

Если не в курсе, то файл шаблона создается как обычный файл Excel, но при сохранении необходимо выбрать тип файла "Шаблон Excel".
__________________
- Может, я как-то неправильно живу?!
- Отчего же? Правильно. Только зря...
Теги
excel

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Исследование скорости экспорта данных из Axapta в Excel (коллективный эксперимент) Gustav DAX: База знаний и проекты 79 13.02.2014 13:18
проблема использования Excel через clr Batuev Artem DAX: Программирование 8 22.08.2011 18:01
Sample Design Patterns: Microsoft Dynamics AX - Remedy for slow Microsoft Excel import Blog bot DAX Blogs 0 29.05.2011 17:13
[Excel] - Несколько версий Excel на машине клиента Андре DAX: Программирование 11 07.08.2007 13:45
Возможно ли искуственно создать исключительную ситуацию. FishLog DAX: Программирование 4 03.08.2004 16:54
Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

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