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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 29.05.2007, 11:01   #1  
PT is offline
PT
Участник
Аватар для PT
 
22 / 10 (1) +
Регистрация: 11.08.2004
Адрес: Сибирь
OpenOffice форматирование
Привет всем. Я создаю документ OpenOffice эл.табл . Вставляю туда текст. Все нормально. Но совершенно не получается его отформатировать из кода. Хотя бы шрифт изменить и формат ДатаВремя назначить ячейке..
вот код, подскажите
X++:
static void oo_2(Args _args)
{
    COM OpenOffice;
    COM oDeskTop;
    COM oDocument;
    COM oscr;
    COM oSheets;
    COM oRange;
    COM oSheet;
    COM oNumberFormats;
    COM oFormat;
    COM oMassiv;
    COM oSaveParam;
    COM oLocale;
    COM oParam;
    COM oAAA;
    COM oText;
    int i;
    COMVariant arg;
    COMVariant byte;
    Array arr = new Array(Types::String);

    //Создание экземпляра OpenOffice.org
    OpenOffice = new Com("com.sun.star.ServiceManager");
    oDeskTop = OpenOffice.CreateInstance("com.sun.star.frame.Desktop");

    // create and initialize a COMVariant object
    arg  = COMVariant::createFromArray(arr);

    //Создание документа
    oDocument = oDeskTop.LoadComponentFromURL("private:factory/scalc", "_blank", 0, arg);
    oSheets   = oDocument.getSheets();
    oSheet    = oSheets.getByIndex(0);
    oNumberFormats = oDocument.getNumberFormats();
    oLocale   = OpenOffice.bridge_GetStruct( "com.sun.star.lang.Locale" );
    oParam=OpenOffice.bridge_GetStruct('com.sun.star.beans.PropertyValue');
    byte      = COMVariant::createFromStr("com.sun.star.util.NumberFormat.DATETIME");
//    oFormat   = oNumberFormats.getStandardFormat(arg.byte(2),olocale);
    for(i=1; i<15;i++)
        {
        oRange = oSheet.getCellByPosition(1,i);
        oRange.Setstring('Прелесть какая');
        oRange = oSheet.getCellByPosition(2,i);
        oRange.SetValue(i);
        oRange = oSheet.getCellByPosition(3,i);
        oRange.SetString(date2str(today(),123,2,2,2,2,4));
        oRange = oSheet.getCellByPosition(4,i);
        oRange.SetString(today());
        oText  = oRange.Text();//
        print(oText.charHeight());
        oAAA   = oText.createTextCursor();
        print(oAAA.charHeight());
        oAAA.CharHeight(25);
        print(oAAA.charHeight());
        oParam.Name("Bold");
        oParam.Value("true");
        //oRange.setFormat(oFormat);
        }
     oRange = oSheet.getCellRangeByName("C1:C10");
     pause;

    oSaveParam=oDocument.setPropertyValue("FilterName","MS Excel 97");
    }
Теги
документация

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Как открыть шаблон в OpenOffice? PT DAX: Программирование 28 16.12.2010 06:13
DeniZone: OpenOffice and Dynamics ax Blog bot DAX Blogs 0 12.12.2008 13:05
Ищу класс для работы с OpenOffice kBace4ka DAX: Программирование 9 12.12.2007 10:57
Axapta+OpenOffice mmm DAX: Программирование 3 20.02.2007 16:50
Axapta i OpenOffice januszek DAX: Прочие вопросы 3 15.11.2004 14:31

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

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

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