powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / PB и OpenOffice Calc
18 сообщений из 18, страница 1 из 1
PB и OpenOffice Calc
    #36252531
VanoR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поделитесь плиз кто-нибудь куском кода, в котором есть пример работы из РВ с OpenOffice Calc.
Конкретно интересуют примеры работы с ячейками, областью выделения.
ато никак не получается перевести с Excel куски
Код: plaintext
1.
2.
3.
4.
5.
6.
.o.Range(o.ActiveCell,o.ActiveCell.Offset( 50  ,  30  )).UnMerge
o.Range(o.ActiveCell,o.Cells( 1000 , 255 )).Borders.LineStyle =  0 	
o.ActiveSheet.Range("$A$1001").Activate
o.Range(o.CurrentSelection,o.Cells( 1000 , 255 )).ClearContents
o.ActiveSheet.Columns( ll_col + cols_cnt -  1  ).ColumnWidth= 
o.ActiveSheet.Paste()
o.ActiveCell.Offset(i -  1 , 1 ).Value =s 

Везде где ни сунься с OpenOffice, нужно новый Ole создавать.
С открытием, закрытием разобрался, а вот сячейками, присвоением туда данных все никак, уже мозг сломал, куда где какой новый Оле создать и как к нему обратиться
...
Рейтинг: 0 / 0
PB и OpenOffice Calc
    #36255381
VanoR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
PB и OpenOffice Calc
    #36255400
VanoR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
PB и OpenOffice Calc
    #36271808
VanoR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как прицепиться к уже открытому OO Calc?
o.ConnectToObject("","com.sun.star.ServiceManager") возвращает -5


o.ConnectToNewObject("com.sun.star.ServiceManager") работает, но не то
o.ConnectToObject("","Excel.Application") тоже работает
...
Рейтинг: 0 / 0
PB и OpenOffice Calc
    #36277981
Вульф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
OpenOffice
бррр, как вспомню, так меня аж передергивает,
эти километры непонятной документации.
А необходимо было всего лишь перевести небольшой функционал по экспорту-импорту в Ёксель.
меня похоже надо было в психушку сдавать, когда у меня крыша от всего этого ехала.
Одно радует - мы отказались от ЁпенОфиса еще до того как за мной приехали люди в белых халатах
...
Рейтинг: 0 / 0
PB и OpenOffice Calc
    #36278720
VanoR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
за мной похоже тоже скора приедут :)
...
Рейтинг: 0 / 0
PB и OpenOffice Calc
    #36279772
VanoR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
почему может так быть
выполняется кусок скрипта
Код: plaintext
1.
2.
3.
oDispatcher.executeDispatch(oFrame, ".uno:GoToCell", "",  0 ,la_openargs[])
oDispatcher.executeDispatch(oFrame, ".uno:Copy", "",  0 , guo_ooc.la_openargs )
s = Clipboard()
messagebox('',s)
messagebox открывается пустой
а если выполняю это же пошагово под отладчиком, то messagebox('',s) выдает нормальный результат
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
	    2 . 00 	    1 . 00 	    5 . 00 		    5 . 00 
	    2 . 00 	    1 . 00 	    5 . 00 		    5 . 00 
	    2 . 00 	    1 . 00 	    5 . 00 		    5 . 00 
	    2 . 00 	    1 . 00 	    5 . 00 		    5 . 00 
	    2 . 00 	    1 . 00 	    5 . 00 		    5 . 00 
    4 . 00 	    2 . 00 	    1 . 00 	    5 . 00 		    5 . 00 
    3 . 00 	    2 . 00 	    1 . 00 	    5 . 00 		    5 . 00 
	    2 . 00 	    1 . 00 	    5 . 00 		    5 . 00 
	    2 . 00 	    1 . 00 	    5 . 00 		    5 . 00 
	    2 . 00 	    1 . 00 	    5 . 00 		    5 . 00 
	    2 . 00 	    1 . 00 	    5 . 00 		    5 . 00 
	    2 . 00 	    1 . 00 	    5 . 00 		    5 . 00 
толи Copy не успевает отработать... никак не въеду
чего ему может не нравится?
...
Рейтинг: 0 / 0
PB и OpenOffice Calc
    #36279869
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VanoRтоли Copy не успевает отработать... никак не въеду
чего ему может не нравится?
Поставьте sleep(1) и yield() перед clipboard и проверьте...
...
Рейтинг: 0 / 0
PB и OpenOffice Calc
    #36279889
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VanoRа если выполняю это же пошагово
Возможно, команды выполняются асинхронно, например в другом потоке.
Попробуйте в цикле чередуя с Sleep() опрашивать клипборд пока там не изменится значение или не истечет максимально допустимое время ожидания.
...
Рейтинг: 0 / 0
PB и OpenOffice Calc
    #36279900
VanoR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Локшин МаркПоставьте sleep(1) и yield() перед clipboard и проверьте...
ставил и перед clipboard и перед oDispatcher.executeDispatch(oFrame, ".uno:Copy", "", 0, guo_ooc.la_openargs )
не помогает :(
...
Рейтинг: 0 / 0
PB и OpenOffice Calc
    #36279928
VanoR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly MoskovskyVanoRа если выполняю это же пошагово
Возможно, команды выполняются асинхронно, например в другом потоке.
Попробуйте в цикле чередуя с Sleep() опрашивать клипборд пока там не изменится значение или не истечет максимально допустимое время ожидания.
сделал
Код: plaintext
1.
2.
3.
4.
5.
do while true
	sleep( 1 )
	yield() 
	s = Clipboard()
	if len(s) >  0  then exit
loop
помогло... спасибо :)
доделаю теперь, чтоб постоянно в этом цикле не остаться... и нормально будет
...
Рейтинг: 0 / 0
PB и OpenOffice Calc
    #36279960
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VanoRпомогло... спасибо :)
доделаю теперь, чтоб постоянно в этом цикле не остаться... и нормально будет
Учтите также что в клиборде могут находиться данные и до выполнения вашего кода.

И Sleep(1) - наверно черезчур много, поставьте Sleep(0.1)
...
Рейтинг: 0 / 0
PB и OpenOffice Calc
    #36279975
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly MoskovskyИ Sleep(1) - наверно черезчур много, поставьте Sleep(0.1)
Я вспомнил, что вроде дробные - нельзя.
Ну тогда - 1 либо использовать WinAPI Sleep, где аргумент - миллисекунды
...
Рейтинг: 0 / 0
PB и OpenOffice Calc
    #36279985
VanoR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly MoskovskyУчтите также что в клиборде могут находиться данные и до выполнения вашего кода.
я не весь скрипт привел...
перед всем этим у меня стоит Clipboard('')
...
Рейтинг: 0 / 0
PB и OpenOffice Calc
    #36280007
VanoR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly MoskovskyAnatoly MoskovskyИ Sleep(1) - наверно черезчур много, поставьте Sleep(0.1)
Я вспомнил, что вроде дробные - нельзя.
Ну тогда - 1 либо использовать WinAPI Sleep, где аргумент - миллисекунды
в моем случае Sleep(1) нормально подходит
поставил счетчик в цикле... получилось 4 раза успел clipboard запросить прежде чем выйти
...
Рейтинг: 0 / 0
PB и OpenOffice Calc
    #36280047
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А если в это время пользователь что-то в клипбоард заносит? По-моему такая техника передачи через clipboard порочна изначально.
...
Рейтинг: 0 / 0
PB и OpenOffice Calc
    #36280074
VanoR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Локшин МаркА если в это время пользователь что-то в клипбоард заносит?возможно, но практически нереально
Локшин МаркПо-моему такая техника передачи через clipboard порочна изначально.в моем случае клипбоард, значительно сокращает время вытаскивания данных из таблицы, нежели это делать поячеечно
...
Рейтинг: 0 / 0
PB и OpenOffice Calc
    #36280527
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VanoRЛокшин МаркА если в это время пользователь что-то в клипбоард заносит?возможно, но практически нереально

Реально, я прверял еще лет 10 назад.
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / PB и OpenOffice Calc
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]