JavaScript в Открытых Офисах

Автор calc4fem, 16 декабря 2013, 21:31

0 Пользователи и 1 гость просматривают эту тему.

calc4fem

Например можно писать пользовательские функции в Google Spreadsheets
https://developers.google.com/apps-script/execution_custom_functions

function in2mm(inNum) {
 // Function to convert from INCHES to MILLIMETERS
 var outNum = 0;     // this will hold the answer
 var factor = 25.4;  // multiply input by this factor to get output
 if (typeof inNum != "number") {  // check to make sure input is a number
   throw "input must be a number";  // throw an exception with the error message
 }
 outNum = inNum * factor;  // calculate the answer
 return outNum;  // return the answer to the cell which has the formula
}



Но в открытых офисах попытка проделать то же самое не приводит к результату.
https://forum.openoffice.org/en/forum/viewtopic.php?f=9&t=30664#p158532

Это очень жаль на самом деле, потому что полноценная имплементация открытых языков в Открытый Офис моментально бы привела к росту полезных приложений и росту популярности (в первую очередь из за огромного богатства открытых кодов написанных на данных языках. К сожалению в основном форсятся совершенно ненужные вещи типа улучшенной поддержки какого нибудь старого RTF и прочей ерунды а не это (меритократия слабое место на самом деле).
Но вот вопрос - можно ли тем не менее заставить такую функцию (например на Java Script) работать в открытом офисе (хотя бы посредством привлечения некоторого промежуточного кода на basic)?
Может быть я не верно понял, но по моему это можно сделать каким то образом через ссылку на скрипт (вероятно обработчик ошибок также понадобится)
Смысл данного действа - практиковаться в javascript не выходя из открытого офиса. Речь идет о разного рода простых расчетных приложениях, которые удобно разрабатывать в электронных таблицах


Hasim

Что-то вроде этого есть на таком (и, видимо, заброшенном) форуме:
Javascript & Basic - пример взаимодействия

calc4fem

Цитата: Hasim от 17 декабря 2013, 01:54
Что-то вроде этого есть на таком (и, видимо, заброшенном) форуме:
Javascript & Basic - пример взаимодействия

Продублирую тут, если он заброшенный
(вообще было бы хорошо все такие вещи куда то сохранять)
У меня получилось воспроизвести пример
но только если js сохранен в OpenOffice macros разделе (не в пределах файла)
Не совсем уловил как все таки это дело работает (в том числе и с вашими примерами по Python), как именно на функцию на js сослаться, притом так чтобы это работало четко во взаимосвязи
жаль что мало документации на эту тему.

[вложение удалено Администратором]

Hasim

Цитата: calc4fem от 18 декабря 2013, 00:16(в том числе и с вашими примерами по Python)
М-да, я сначала удивился этим словам, а потом, когда залез на тот форум, неожиданно обнаружил, что действительно что-то написал по этому поводу.
И вспомнил, что, прочитав про взаимодействие скриптовых языков с Basic, даже что-то пытался сделать похожее. Увы, с тех пор так засосали серые будни, что напрочь про это забыл. Склероз, однако.

Цитата: calc4fem от 18 декабря 2013, 01:16
но только если js сохранен в OpenOffice macros разделе (не в пределах файла)
Точно не могу сказать, не помню, но вроде бы нужно "...location=share" заменить на "...location=document".
Хотя, возможно, ошибаюсь.

Если вы будете серьезно заниматься исследованиями по этой теме "Скриптовые языки и Открытый офис (в т.ч. Basic)", то выкладывайте ваши разработки здесь для других пользователей.