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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 02.02.2007, 11:32   #1  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2494 (89) +++++++++
Регистрация: 20.08.2005
Еще один способ - отключение реагирования на DDE запросы в процессе-обработчике. Перед закрытием Excel параметр восстановить обратно (В обязательном порядке!!! Иначе открыть файл из проводника не получится).
X++:
static void ExcelImportTest(Args _args)
{
    ComExcelDocument_Ru excel = new ComExcelDocument_Ru();
    com doc;
    com app;
    com sheet;
    com range;
    ComVariant var;
    boolean ignore;
    ;
    excel.open("c:\\Temp\\Test.xls", false);

    doc = excel.getComDocument();
    app = doc.application();
    ignore = app.IgnoreRemoteRequests();
    app.IgnoreRemoteRequests(true);

    try
    {
        sheet = app.activesheet();
        range = sheet.range("A1:J1");
        while (true)
            var = range.value();
    }
    catch
    {
        info("catch"); // из обработки вываливаемся по брейку
    }
    app.IgnoreRemoteRequests(ignore);
    app.quit();
}
Минусы - нельзя будет организовать обмен с Excel через DDE.
__________________
Axapta v.3.0 sp5 kr2
За это сообщение автора поблагодарили: fomenka (1), gl00mie (3), Romsrs (1).
Старый 02.02.2007, 12:01   #2  
Romsrs is offline
Romsrs
Участник
 
4 / 10 (1) +
Регистрация: 14.07.2006
Всем большое спасибо!

2 AndyD
Отдельное спасибо! Последний способ помог!
Старый 10.06.2008, 10:34   #3  
Dronas is offline
Dronas
Участник
 
213 / 14 (1) ++
Регистрация: 16.11.2004
Цитата:
Сообщение от AndyD Посмотреть сообщение
Еще один способ - отключение реагирования на DDE запросы в процессе-обработчике. Перед закрытием Excel параметр восстановить обратно (В обязательном порядке!!! Иначе открыть файл из проводника не получится).
X++:
static void ExcelImportTest(Args _args)
{
    ComExcelDocument_Ru excel = new ComExcelDocument_Ru();
    com doc;
    com app;
    com sheet;
    com range;
    ComVariant var;
    boolean ignore;
    ;
    excel.open("c:\\Temp\\Test.xls", false);

    doc = excel.getComDocument();
    app = doc.application();
    ignore = app.IgnoreRemoteRequests();
    app.IgnoreRemoteRequests(true);

    try
    {
        sheet = app.activesheet();
        range = sheet.range("A1:J1");
        while (true)
            var = range.value();
    }
    catch
    {
        info("catch"); // из обработки вываливаемся по брейку
    }
    app.IgnoreRemoteRequests(ignore);
    app.quit();
}
Минусы - нельзя будет организовать обмен с Excel через DDE.
После этого кода excel перестал открывать файлы, кликаешь на файл, открывается excel, файл можно после этого открыть только через меню Может кто в курсе ка полечить?
Теги
com connector, excel, импорт, com-объект

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
работа 1С из Аксапты через COM _scorp_ DAX: Программирование 7 22.08.2008 15:45
Работа с Excel через COM в DAX 4.0 Paul_ST DAX: Программирование 4 17.07.2007 16:45
Excel COM в тонком и толстом клиенте Goldy DAX: Программирование 10 07.07.2006 21:40
связь с 1С через COM rinugun DAX: Программирование 9 03.12.2004 11:28
Экспорт в Excel через WorkBooks.OpenText() Владимир Максимов DAX: Программирование 2 09.04.2004 17:16

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

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

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