Openoffice и ява скрипт, ХЕЛП!

[ Версия для печати ]
Добавить в Facebook Добавить в Twitter Добавить в Вконтакте Добавить в Одноклассники
  [ ОТВЕТИТЬ ] [ НОВАЯ ТЕМА ]
RusLAN
13.09.2007 - 10:57
Статус: Offline


Хохмач

Регистрация: 21.03.06
Сообщений: 683
0
камрады, огромна просьба если кто сталкивался с таким - ПОМОЖЫТЕ!!!! pray.gif

карочи суть такова, пр помощи javascript в ОпенОфисе нада создать книгу, в которую нада напихать кучу диаграмм.... как создавать документ я знаю, а вот диаграммы... хз, ругается собака...

делаю, я сиё действо на адинэсине с применением MSScriptControl

приведу маленький кусочек кода:

Цитата

Скрипт=СоздатьОбъект("MSScriptControl.ScriptControl");
Скрипт.language="javascript";

Массив=Скрипт.eval("new Array()");

СервисМанагер=СоздатьОбъект("com.sun.star.ServiceManager");
Скрипт.AddObject("СервисМанагер",СервисМанагер);


ЗначенияПараметра=Скрипт.Eval("СервисМанагер.Bridge_GetStruct('com.sun.star.beans.PropertyValue')");
ЗначенияПараметра.Name="Hidden";
ЗначенияПараметра.Value=-1;
Массив.push(ЗначенияПараметра);

Стол=СервисМанагер.createInstance("com.sun.star.frame.Desktop");
Документ=Стол.LoadComponentFromURL("private:factory/scalc","_blank",0,Массив);
Документ.lockControllers();
Документ.addActionLock();

Листы=Документ.getSheets();
Лист=Листы.getByIndex(0);

ChartCollection=Лист.Charts;

Rect=Скрипт.Eval("СервисМанагер.Bridge_GetStruct('com.sun.star.awt.Rectangle')");
Rect.X=10;
Rect.Y=10;
Rect.Width=100;
Rect.Height=50;

Addresses=Скрипт.Eval("СервисМанагер.Bridge_GetStruct('com.sun.star.table.CellRangeAddress')");

ChartCollection.AddNewByName("MyChart",Rect,Addresses,true,false);


и вот на этом месте ChartCollection.AddNewByName("MyChart",Rect,Addresses,true,false); затыкается с воплями " [automation bridge] : [automation bridge] UnoConversionUtilities<T>::dispatchExObject2Sequence
Conversion of dispatch object to Sequence failed!
"

соответственно возникает вопрос: чо делать?! upset.gif

ЗЫ диаграмму нада не проста вставлять, а вставлять в определенную позицию, с определенными размерами и определенным стилем.

ЗЗЫ есть метод добавления диаграммы
Цитата
.............................
dispatcher = СервисМанагер.CreateInstance("com.sun.star.frame.DispatchHelper");
Params1=Скрипт.eval("new Array()");
ParamValue=Скрипт.Eval("СервисМанагер.Bridge_GetStruct('com.sun.star.beans.PropertyValue')");
ParamValue.Name="ColHeaders";
ParamValue.Value=true;
Params1.push(ParamValue);
ParamValue.Name="RowHeaders";
ParamValue.Value=true;
Params1.push(ParamValue);
ParamValue.Name="InNewTable";
ParamValue.Value=1;
Params1.push(ParamValue);
ParamValue.Name="RangeList";
ParamValue.Value="$Лист1.$B$23:$G$29";
Params1.push(ParamValue);

dispatcher.executeDispatch(Документ.CurrentController.Frame,".uno:InsertObjectChart","",0,Params1);


такой метод тоже не дает больших результатов - вставляется почемуто только одна диаграмма...

воть в общем такаявот ситуевина.... карочи ХЕЛПМИ!!!! pray.gif
 
[^]
Yap
[x]



Продам слона

Регистрация: 10.12.04
Сообщений: 1488
 
[^]
RusLAN
3.10.2007 - 10:52
0
Статус: Offline


Хохмач

Регистрация: 21.03.06
Сообщений: 683
лана, закрыли тему.
фсем спасиба хто принемал гарячее участийэ ф апсушдении этай праблемы!

ЗЫ исле фдрук каму интересна буит: фтыкать сюдыть
 
[^]
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии. Авторизуйтесь, пожалуйста, или зарегистрируйтесь, если не зарегистрированы.
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) Просмотры темы: 2562
0 Пользователей:
[ ОТВЕТИТЬ ] [ НОВАЯ ТЕМА ]


 
 



Активные темы