Страница 2 из 2
Вопрос к знатокам ЕОО (и ОО тоже))))
Добавлено: 11 Август 2017, 9:23
gromov
И правда, Гена, ну хоть чё нить разъясни а ? На самом деле есть в ЕОО нормальная вещь, кот. позволяет (должна) выйти из положения - это ExecuteDispatch. Но или ОО макрорекордер чего-то не дописывет или ExecuteDispatch не отрабатывает как надо, но, подсовываю ему параметры, кот. мне выдал меакрорекордер, он отрабатывает на 0 и результат тоже ноль. И еще, действия мышой он не фиксирует. Например, я хочу узнать, как. установить ширину колонок в таблице (Writer) - увы ...
Вопрос к знатокам ЕОО (и ОО тоже))))
Добавлено: 11 Август 2017, 9:27
Игорь Столяров
gromov писал(а): 11 Август 2017, 9:23подсовываю ему параметры, кот. мне выдал меакрорекордер
А подскажите пожалуйста, какие Вам параметры выдал "меакрорекордер" при изменении ширины колонок таблицы в OO Writer, о которых Вы пишите ?
Вопрос к знатокам ЕОО (и ОО тоже))))
Добавлено: 11 Август 2017, 9:32
Admin
gromov писал(а): 11 Август 2017, 9:23ExecuteDispatch
ExecuteDispatch еще та зараза. Некоторые макросы, уже не помню какие так и не смог повторить.
Из того что есть на вскидку (проверять нужно):
Код: Выделить всё
! autofit
SetParam('Name', 'aExtraWidth')
SetParam('Value', 0 ,OO_DATATYPE:LONG)
ExecuteDispatch('.uno:SetOptimalColumnWidthDirect')
! insert picture
SetParam('FileName',GLO:PricePicture)
ExecuteDispatch('.uno:InsertGraphic')
! hyperlink
SetParam('Hyperlink.Text',GoodsName, OO_DATATYPE:STRING)
SetParam('Hyperlink.URL','http://nkteh.ru', OO_DATATYPE:STRING)
ExecuteDispatch('.uno:SetHyperlink')
! print area
SetParam('PrintArea','$A$1:$P$' & Pos#, OO_DATATYPE:STRING)
SetParam('PrintRepeatRow','$A$1:$A$5', OO_DATATYPE:STRING)
ExecuteDispatch('.uno:ChangePrintArea')
SetParam('PrintRepeatRow','$A$4', OO_DATATYPE:STRING)
ExecuteDispatch('.uno:ChangePrintArea')
! insert annotation
SetParam('Text','Демонстрационный текст', OO_DATATYPE:STRING)
ExecuteDispatch('.uno:InsertAnnotation')
P.S. Это по EasyCalc
Вопрос к знатокам ЕОО (и ОО тоже))))
Добавлено: 11 Август 2017, 10:04
gromov
Игорь Столяров писал(а): 11 Август 2017, 9:27gromov писал(а): 11 Август 2017, 9:23подсовываю ему параметры, кот. мне выдал меакрорекордер
А подскажите пожалуйста, какие Вам параметры выдал "меакрорекордер" при изменении ширины колонок таблицы в OO Writer, о которых Вы пишите ?
В том-то и дело, что никаких ...
Вопрос к знатокам ЕОО (и ОО тоже))))
Добавлено: 11 Август 2017, 10:08
gromov
Код: Выделить всё
! копирование таблицы из Calc во Writer
Range = '$A$1:$C$' & LEFT(FORMAT(row - 1,@n_5))
r# = EC.SetParam('ToPoint',Range,OO_DATATYPE:STRING,false)
r# = EC.ExecuteDispatch('.uno:GoToCell')
r# = EC.ExecuteDispatch('.uno:Copy')
r# = EW.SetParam('SelectedFormat',10,OO_DATATYPE:LONG,false)
r# = EW.ExecuteDispatch('.uno:ClipboardFormatItems')
Вопрос к знатокам ЕОО (и ОО тоже))))
Добавлено: 11 Август 2017, 10:36
finsoftrz
Вообще, с OpenOffice все совсем не просто - очень сложная на восприятие объектная модель. По вставке таблиц в Writer я бы начал курить объект objDocument.createInstance("com.sun.star.text.TextTable"). Например, по такой ссылке пример есть, но без установки ширины:
https://support.smartbear.com/viewarticle/42202/
Ну а дальше уже читать по методам этого объекта. Интерфейс uno, насколько помню, не рекомендуют использовать.
Вопрос к знатокам ЕОО (и ОО тоже))))
Добавлено: 11 Август 2017, 10:54
gromov
finsoftrz писал(а): 11 Август 2017, 10:36Вообще, с OpenOffice все совсем не просто - очень сложная на восприятие объектная модель.
Не то слово, накручено, мама не горюй. Собственно поэтому и хочется пообщаться с разработчиком, т.к. он с этой моделью должон дружить и просвятить нас, несведующих. Таблицу в документ я таки вставил и фонт в ней поменял. Есть в ЕОО метод WriteQueue, для кот. я специально создал очередь и уже из нее создал таблицу. Можно и с колонками что-то сделать, а именно объявить их больше и потом нужные объединить. Но, господа, это же онанизм. А Геннадий молчит. Допиливает ?...
Вопрос к знатокам ЕОО (и ОО тоже))))
Добавлено: 11 Август 2017, 13:47
kreator
Ал писал(а): 11 Август 2017, 13:30
интересно - а если нужный документ делать в формате ms word с таблицами и прочим, а потом открывать в оо (write)?
А где ж его взять-то, этот ms word? Люди специально отказались от платных штук. Поэтому и есть мысля генерить Вордовские и Экселевские файлы без самого ms office. Бесплатные пакеты наверняка их смогут открывать.
Вопрос к знатокам ЕОО (и ОО тоже))))
Добавлено: 11 Август 2017, 18:25
ingasoftplus
gromov писал(а): 11 Август 2017, 9:23И правда, Гена, ну хоть чё нить разъясни а ?
сожалею по поводу задержки с суппортом, но я сам не поддерживаю продукты, а автор ЕОО сейчас в отпуске до конца недели. Как он вернется - сразу ответим!!
Вопрос к знатокам ЕОО (и ОО тоже))))
Добавлено: 11 Август 2017, 18:38
gromov
Спасибо, жду и надеюсь на положительный результат.