Конференция "Corba" » Работа с OOCalc Делфи 6 [Delphi, Windows]
 
  • ZeRtg (10.12.07 19:35) [0]
    Здравствуйте.
    Моя цель - записать в OOCalc документ Массив данных. для этого мне нужно докопаться до компонента XCellRangeData в OO.SDK
    Путь мне представляется таким: ServiceMananer->Desktop->XcomponentLoader->XspreadSheetDocument->XspreadSheet->Xsheet->CellRange->XCellRangeData->setDataArray
    Далее следует код:

    serviceManager := CreateOleObject('com.sun.star.ServiceManager');
     desktop := serviceManager.createInstance('com.sun.star.frame.Desktop');
     calc2:= desctop.loadComponentFromURL(convertToURL(DestFileName) , '_blank', 0, mypropo);
    xSheets:= calc2.createinstance('com.sun.star.sheet.XSpreadsheets');


    На последней сроке выдет Эксепшн о том, что XspreadSheet не зарегистрированно.
    Буду благодарен за Ваши соображения по этому поводу.

    С ув. Алексей
  • tesseract © (11.12.07 22:04) [1]
    OО имеет неплохую документацию. Да и написан на java, COM у него несколько хромает. Ты в общем как раз ссылку берешь из JAVA, а не Com.
  • ZeRtg (13.12.07 14:22) [2]
    Здравствуйте Tesserast
    Какую ссылку?
    Я подключаюсь в интерфейсу при помощи COM технологии.
    Да, ОО имеет неплохую документацию по Джава, но Джава немного отличается от Делфи, хотя бы тем, что в Джаве не используется СОМ технология, а напрямую подключаются интерфейсы.
    Вобщем, я уже разобрался с жтой проблемой, но у меня назрел новый вопрос: в функцию SetDataArray передается вариантный массив. Но, насоклько я понял  - какого-то особого типа. Хотелось бы узнать- каким образом мне заполнять данный массив?
  • tesseract © (13.12.07 14:53) [3]

    > в функцию SetDataArray передается вариантный массив. Но,
    >  насоклько я понял  - какого-то особого типа. Хотелось бы
    > узнать- каким образом мне заполнять данный массив?


    Вообще это COM-вский SafeArray. Delphi автоматом должен преобразовывать его к Variant-ому.

    Можешь впрямую  :  SafeArrayGetElement/ SafeArrayPutElement
 
Конференция "Corba" » Работа с OOCalc Делфи 6 [Delphi, Windows]
Есть новые Нет новых   [120350   +22][b:0][p:0.001]