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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 02.02.2007, 12:29   #21  
konopello is offline
konopello
SAP
SAP
 
628 / 76 (4) ++++
Регистрация: 08.11.2005
Адрес: Минск
Цитата:
hwndChild = winapi::getWindow(hWnd, #GW_CHILD);
да я уже понял.

сделал вот так но результата нет

Код:
void setApplicationName(Name _name)
{
    #WinApi
    HWND                    hwnd;
    HWND                    hwndChild;
    ;

    if (m_comApplication)
    {

        hwnd = m_comApplication.Hwnd();
        info(winapi::getWindowText(hWnd)); //  = MS - template1
        winapi::setWindowText(hwndChild, _name);
        info(winapi::getWindowText(hWnd)); //  = MS -template1, а далжно MS - name
    }
}
Старый 02.02.2007, 12:33   #22  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,361 / 2084 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Atlanta, GA, USA
Цитата:
Сообщение от konopello Посмотреть сообщение
да я уже понял.

сделал вот так но результата нет

Код:
void setApplicationName(Name _name)
{
    #WinApi
    HWND                    hwnd;
    HWND                    hwndChild;
    ;
 
    if (m_comApplication)
    {
 
        hwnd = m_comApplication.Hwnd();
        info(winapi::getWindowText(hWnd)); //  = MS - template1
        winapi::setWindowText(hwndChild, _name);
        info(winapi::getWindowText(hWnd)); //  = MS -template1, а далжно MS - name
    }
}
Может все таки изменить на
X++:
        winapi::setWindowText(hwnd, _name);
Старый 02.02.2007, 12:38   #23  
Sada is offline
Sada
Программатор
Аватар для Sada
 
1,450 / 153 (8) ++++++
Регистрация: 29.03.2005
Адрес: Толи Барнаул, толи Москва
А где у Вас hwndChild инициализируется?
Ой опередели
Старый 02.02.2007, 12:40   #24  
konopello is offline
konopello
SAP
SAP
 
628 / 76 (4) ++++
Регистрация: 08.11.2005
Адрес: Минск
да спасибо

Код:
void setApplicationName(Name _name)
{
    #WinApi
    HWND                    hwnd;
    ;

    if (m_comApplication)
    {

        hwnd = m_comApplication.Hwnd();
        info(winapi::getWindowText(hWnd));
        winapi::setWindowText(hwnd, _name);
        info(winapi::getWindowText(hWnd)); //показывает правельно а в физическом окошке MS - template1
    }
}
Старый 02.02.2007, 12:42   #25  
Sada is offline
Sada
Программатор
Аватар для Sada
 
1,450 / 153 (8) ++++++
Регистрация: 29.03.2005
Адрес: Толи Барнаул, толи Москва
Мож хэндл не тот?
Старый 02.02.2007, 12:45   #26  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2479 (88) +++++++++
Регистрация: 20.08.2005
Не очень устойчивый способ.
Если создать или открыть еще одну книгу, то заголовок сбросится. Кроме того, в SaveAs так и остается старое имя

PS Достаточно нажать на название листа, что бы сбросилось
__________________
Axapta v.3.0 sp5 kr2

Последний раз редактировалось AndyD; 02.02.2007 в 12:50.
Старый 02.02.2007, 12:47   #27  
konopello is offline
konopello
SAP
SAP
 
628 / 76 (4) ++++
Регистрация: 08.11.2005
Адрес: Минск
Цитата:
Не очень устойчивый способ.
Если создать или открыть еще одну книгу, то заголовок сбросится. Кроме того, в SaveAs так и остается старое имя
да согласен но еще вчера у меня и его не было, может идеи есть??
Старый 02.02.2007, 12:49   #28  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,361 / 2084 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Atlanta, GA, USA
Хм. У меня все нормально. Меняется без проблем.

Правда при сохранении название файла он все равно предлагает схожее с именем шаблона, как и ожидалось.
Старый 02.02.2007, 12:55   #29  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2479 (88) +++++++++
Регистрация: 20.08.2005
Могу предложить такой вариант - менять не название Template1 и т.д., а текст перед ним (Microsoft Excel). Т.е. не "Microsoft Excel - Template1", а "НАЗВАНИЕ - Template1". Меняется через Application.Caption()
__________________
Axapta v.3.0 sp5 kr2
Старый 02.02.2007, 16:09   #30  
konopello is offline
konopello
SAP
SAP
 
628 / 76 (4) ++++
Регистрация: 08.11.2005
Адрес: Минск
Цитата:
Хм. У меня все нормально. Меняется без проблем.
На каком этапе происходит изменение названия, я пытаюсь сразу же после создания Application. А то что
Цитата:
Правда при сохранении название файла он все равно предлагает схожее с именем шаблона, как и ожидалось.
так это я знал, у нас просто пооткрывают этих отчетов а ориентироваться где какой не могут вот и плачутся.
Старый 02.02.2007, 16:18   #31  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2479 (88) +++++++++
Регистрация: 20.08.2005
Так сделайте через Caption - вставляйте название отчета и будет нормально видно
__________________
Axapta v.3.0 sp5 kr2
За это сообщение автора поблагодарили: konopello (1).
Старый 02.02.2007, 16:46   #32  
konopello is offline
konopello
SAP
SAP
 
628 / 76 (4) ++++
Регистрация: 08.11.2005
Адрес: Минск
Цитата:
Так сделайте через Caption - вставляйте название отчета и будет нормально видно
Да думаю так и придется просто пока нет времени проверить другим занет.
Старый 11.03.2010, 15:18   #33  
DSPIC is offline
DSPIC
Боец
 
1,077 / 1243 (44) ++++++++
Регистрация: 11.04.2008
Несколько по-другому решил такую же проблему. Идея в следующем:
1) Копируем шаблон отчета (*.xlt) во временную папку (WinApi::getTempPath()), одновременно присвоив ему нужное имя
2) Печатаем отчет на основе скопированного и переименованного шаблона из временной папки
3) Удаляем скопированный шабон.

Способ чуть более тяжелее, но и "чуть" более надежнее, при этом позволяет делать SaveAs с управляемым именем.
Недостатоки
1. Копирование файла
2. Excel, собако, таки приписывает в конце единичку

X++:
FileNameOpen copyAndRenameTemplate(FileNameOpen _templateFilePath, FileName _newFileName)
{
    FilePath        filePath;
    FileName        fileName;
    FileExtension   fileExt;
    Counter         fileIdx;
    ;

    [filePath, fileName, fileExt] = fileNameSplit(_templateFilePath);

    tmpTempaleFilePath            = WinApi::getTempPath() + _newFilename + fileExt;

    if ( WinApi::fileExists(_templateFilePath) && WinApi::fileExists2(WinApi::getTempPath()) )
    {
        tmpTempaleFilePath = WinApi::getTempPath() + _newFilename + fileExt;

        WinApi::copyFile(_templateFilePath, tmpTempaleFilePath, true);
    }

    return tmpTempaleFilePath;
}
X++:
void deleteTmpTempaleFile()
{
    ;
    if (WinApi::fileExists(tmpTempaleFilePath))
        WinApi::deleteFile(tmpTempaleFilePath);
}
X++:
try
    {
        reportTemplateFile = this.copyAndRenameTemplate(reportTemplateFile, newFileName);

        excel = new ComExcelDocument_RU();

        excel.open(reportTemplateFile, false);

        this.deleteTmpTempaleFile();

        this.printReport();

        excel.visible(true);
    }

Последний раз редактировалось DSPIC; 11.03.2010 в 15:23.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Сохранение документа Excel Soup DAX: Программирование 15 07.06.2021 14:36
Ошибка при сохранении документа в MS Excel Breeze DAX: Программирование 13 23.01.2009 15:48
Как вставить в Excel имя из аксапты? Prof DAX: Программирование 2 23.09.2005 13:50
Форматирование Excel-документа из Axapta kostas DAX: Программирование 6 14.04.2004 14:52
Русская локализация Axapta 3 ? SlavaK DAX: Администрирование 59 01.07.2003 22:38

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

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

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