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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 04.07.2013, 14:26   #1  
Swordec is offline
Swordec
Участник
 
18 / 10 (1) +
Регистрация: 16.05.2013
Пакетная печать Excel
Microsoft dynamics ax 2012.
Добрый день. При попытке распечатать отчет Excel в пакете выдает следующие ошибки:
"Method 'open' in COM object of class 'Workbooks' returned error code 0x800A03EC (<unknown>) which means: Microsoft Excel cannot access the file 'C:\Users\Administrator\AppData\Local\Temp\AxReports\ТОВАРНАЯ НАКЛАДНАЯ-000368.xlsx'. There are several possible reasons:

• The file name or path does not exist.
• The file is being used by another program.
• The workbook you are trying to save has the same name as a currently open workbook."

"Cannot create Microsoft Office Excel workbook."

"File ’C:\Users\Administrator\AppData\Local\Temp\AxReports\ТОВАРНАЯ НАКЛАДНАЯ-000368.xlsx’ cannot be opened."

Оно доходит до строки m_comDocument = comWorkBooks.open(_filename) и выдает ошибку(класс comExcelDocument_RU метод openDocument).

X++:
if (m_comApplication)
        {
            comWorkBooks = m_comApplication.workBooks();

            this.finalizeCOM(m_comDocument);

            m_comDocument = comWorkBooks.open(_filename);

            comWorkBooks.finalize();

            return true;
        }
Буду признателен за помощь!
Старый 04.07.2013, 15:08   #2  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,622 / 2925 (107) +++++++++
Регистрация: 16.01.2004
Записей в блоге: 5
Мне кажется, стоит проверить вышеизложенные причины по очереди
Старый 04.07.2013, 16:33   #3  
BOAL is offline
BOAL
Участник
Аватар для BOAL
MCBMSS
Злыдни
1C
Лучший по профессии 2015
 
619 / 453 (17) +++++++
Регистрация: 28.04.2003
Адрес: Москва
На АХ2009, было два режима пакета (для совместимости).
там Ехель в пакете работал только в старом режиме, что логично, тк требует клиента запущенного.
В серверном режиме пакета нужно доделывать отчет до формирования файла и последующего его открытия где-то у заказавшего (ссылку ему на емайл слать или еще как).

Нужно понимать, что СОМ на АОС в пакетинике работает без визуализации и сам Ехель должен быть на АОС и ему виден, кк и все пути до шаблона и места сохранения.
Так что, без напильника имхо никак.
Старый 05.07.2013, 15:53   #4  
VORP is offline
VORP
Участник
Аватар для VORP
 
146 / 95 (4) ++++
Регистрация: 26.05.2006
Нашёл решение здесь:
http://social.msdn.microsoft.com/For...erver-2008-x64
Надо создать папку. Просто создать
・Windows 2008 Server x64
C:\Windows\SysWOW64\config\systemprofile\Desktop
・Windows 2008 Server x86
C:\Windows\System32\config\systemprofile\Desktop
Ошибка в самом деле пропадает. Что будет дальше неясно...
За это сообщение автора поблагодарили: Maximin (3).
Старый 05.07.2013, 19:48   #5  
Swordec is offline
Swordec
Участник
 
18 / 10 (1) +
Регистрация: 16.05.2013
Спасибо за помощь. Странность состоит в том, что у меня Windows 2008 Server x64. Я находил описание и создавал папку, но это не помогло. Сейчас я решил создать папку как для x86 и все заработало))))))
Старый 08.07.2013, 11:48   #6  
Swordec is offline
Swordec
Участник
 
18 / 10 (1) +
Регистрация: 16.05.2013
Добрый день.
Класс XMLExcelReport_RU метод processInExcel.
X++:
 case PrintMedium::Printer:

            if (!excelDocument)
            {
                excelDocument = new ComExcelDocument_RU();
            }
           
            prmMissing = new COMVariant();
            prmMissing.variantType(COMVariantType::VT_NULL);

            excelDocument.open(_filename, false);

            workbook = excelDocument.getComDocument();
            //BP deviation documented

            workbook.printOut(prmMissing,                     //fromPage
                              prmMissing,                     //toPage
                              numberOfCopies,                 //numberOfCopies
                              false,                          //preview
                              printJobSettings.deviceName()); //printerName,

            //BP deviation documented
            workbook.close(false);
            workbook.finalize();
Я пытаюсь распечатать отчет Excel в пакете, но когда доходит до workbook.printOut(), то просто зависает пока не завершить в диспетчере задач процесс Excel. Если кто-то с таким сталкивался, подскажите может какие права нужно дать на файл или com-объект. Буду очень признателен!
Старый 08.07.2013, 12:43   #7  
Deepoint is offline
Deepoint
Участник
SAP
 
60 / 14 (1) ++
Регистрация: 01.04.2011
Записей в блоге: 1
Втавлял в run отчетов на пакете. Помогло.
X++:
CodeAccessPermission permission = new InteropPermission(InteropKind::ComInterop);
;
permission.asset();
...
Старый 08.07.2013, 19:13   #8  
Swordec is offline
Swordec
Участник
 
18 / 10 (1) +
Регистрация: 16.05.2013
Не помогло
Старый 11.07.2013, 10:17   #9  
Swordec is offline
Swordec
Участник
 
18 / 10 (1) +
Регистрация: 16.05.2013
Подскажите пожалуйста как можно вывести на печать документ Excel, который лежит на сервере.
Старый 17.07.2013, 12:55   #10  
ivas is offline
ivas
Участник
Аватар для ivas
 
252 / 68 (3) ++++
Регистрация: 22.12.2005
AX2012 в пакетном режиме не поддерживает COM, как вариант можно выводить текстом в формат Excel XML.
__________________
aLL woRk aNd nO JoY MAKes jAck a dULL Boy
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Пакетная печать документов в Excel Swordec DAX: Администрирование 10 21.06.2013 18:51
Двухсторонняя печать в Excel EfimV DAX: Программирование 2 15.11.2010 13:26
Печать страниц Excel на отдельные листы kuvg DAX: Программирование 3 02.08.2010 10:55
Печать excel 2007 Bars DAX: Программирование 4 23.07.2009 09:20
Печать отчета в Excel. Axapta 3.0 Fedr Kuzmich DAX: Функционал 2 19.05.2004 18:26

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 11:08.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.