Как стать автором
Обновить

Комментарии 45

А когда пофиксите размер заголовка окна, он занимает слишком много места.
Скриншот
image
Какой размер монитора и разрешение? Мы сами решаем, как масштабировать интерфейс. Но странно, что внутренность не увеличена, а только шапка приложения.
14" 1920×1080. Никаких перенастроек размера элементов на экране не делал (scale and layout 100%). Что интересно, если подключить внешний монитор и перетащить окно на него, то все становится нормально, перетаскиваем назад и опять большое.
Спасибо, будем разбираться. Тестировали на похожем ноутбуке — все было отлично. Посмотрю еще. Масштаб системы мы не учитываем. Ориентируемся на dpi устройства. И при переносе с монитора с на монитор — анализируем новый.
Windows 10 по умолчанию, считает такое разрешение недопустимым для таких маленьких экранов и автоматически увеличивает DPI. Столкнулся с этим на своем ноутбуке. Вообще 10-ка, довольно свободно себя чувтствует с переключением DPI не оповещая об этом пользователя, если понимает, что текст будет мелким и плохо читаемым.
Это да. Из-за этого много проблем. Например имея два монитора — 4K c двойным масштабированием системы и обычный монитор — даже MS Office мутный при перетаскивании на другой монитор. Но мы запрещаем скейлить наще приложение. И сами все рассчитываем и решаем как скейлить интерфейс и сами редакторы. И у нас перетаскивается отлично. Не можем повторить пока этот баг.
Спасибо! Нашел проблему. С обновлением поправится.

А, ну вот, решаете сами, а лучше бы читали переменные окружения, как умеет делать Qt.

Qt неправильно работает с переносом окон на мониторы с разным масштабированием системы. Так что мы уж точно делаем лучше. А баги мы поправим. Тем более у нас в QWidget встраивается свое окно, которое знать не знает о том, как использует настройки системы Qt.

Аналогичная проблема. Планшет Chuwi Hi12, экран HiDPI 2K, KDE, Ubuntu 17.10, в настройках KDE нецелочисленное масштабирование, допустим, 1.8. Onlyoffice открывается маленьким окном. Chromium, Qt5 масштабируются правильно.

Да. В новой версии есть баг с масштабом в Ubuntu. Он заведен и будет поправлен к следующему обновлению
Конвертер макросов из VBA в JavaScript не планируете делать?
Планируем.
А из JS в VBA тоже планируете?
Основное — это конечно открыть файл. Пока нет.
Крутой пример того, что не следует делать макросами)
Это пример, демонстрирующий возможности. Вместо добавления данных может быть использование существующих и работа с ними / редактирование их. Пойдет?
Хотелось бы узнать, почему из всех возможных вариантов был выбран именно JS?
Самый распространенный язык. И один из самых простых. И есть веб-версия редактора еще.
Веб-версия — весомый аргумент. Есть ли совместимость с макросами Google Docs?
Нет, совместимости нет, не ставили такую задачу. Все, кто обращался — просили VBA. А делать точно такое апи как в гуглдокс — не стали.
Ясно, благодарю за ответ.
У меня с интеграцией сложности как раз с nextcloud. Указываю локальный адрес типа 192.168.100.100/nextcloud, но подключение не происходит. В какие логи смотреть?
Интеграция с nextcloud описана здесь и здесь. Если остались вопросы — то обратитесь сюда. Мы обязательно поможем.
Спасибо большое, еще раз перечитаю мануал.
Кажется понял свою ошибку. Насколько корректно будет, если я вынесу сервер OnlyOffice на отдельную виртуальную машину, чтобы изолировать максимально от NextCloud?
Получится отличный рабочий вариант.
Главное, чтоб они друг друга видели (сейчас при подключении сервера документов в админке nextcloud есть проверка доступности с обеих сторон, если есть проблемы с доступом, nextcloud предупредит об этом).
Особенно это удобно, когда один сервер документов используют одновременно несколько Next(own)Cloud'ов и им подобных.
Спасибо, я стараюсь просто изолировать крупные сервисы отдельно друг от друга.
Просто установленные плагины работают для всех документов (то есть, привязаны к редакторам), а макросы — только конкретного документа (то есть, привязаны к файлу).


Я храню макросы в файлах
C:\Users\%user%\AppData\Roaming\Microsoft\Excel\XLSTART\PERSONAL.XLSB
C:\Users\%user%\Documents\Templates\Normal.dotm
И они доступны для всех документов.
Не совсем понятна область видимости ваших макросов в зависимости от местоположения таковых макросов.

oSheet.GetRange('D29').SetValue('=SUM(D3:D27)');


Тут несколько сомнений:
  • Привык работать в нотации R1C1 в листе и с номерами колонок-столбцов из макросов. Эти вот FW190 меня обескураживают. И это не говоря о том, что это строковая константа, которую надо будет вручную нанизывать скриптом.
  • Неясно как быть с локализацией — вдруг окажется, что в некоем документе будет или надо будет писать =СУММА(Г3: Г27)


А из JS в VBA тоже планируете? — Пока нет

Это был бы неплохой ответ на вопрос о Microsoft макросах — налету сконвертить в js, исполнить. При изменении сконвертить обратно. С сообщениями о несовместимости некоторых команд.
Можно писать и СУММА и SUM. Но мы будем настаивать на английском варианте в макросах. Конвертация — да. Круто бы. Будем работать, но задача не первоочередная.
«Привык работать в нотации R1C1 в листе и с номерами колонок-столбцов из макросов»

Так MS Excel умеет в обоих нотациях работать, включается-выключается галочкой и формулы сами переписываются в другой нотации. Думаю что это можно предложить и для OnlyOffice если говорить про формулы.
Если про макросы — то указания на клетки для обработки должны быть в полной нотации, т.к. нет начальной точки откуда считать. Т.е. в части oSheet.GetRange('D29').SetValue непонятно как можно в R1C1 записать адрес.
А формулы внутри можно в любой.
Это R4C29
Нотация:
R4 — всегда четвёртая колонка;
R — текущая колонка;
R[-4] — колонка на 4 левее.

With Worksheets(1) 
    .Range(.Cells(1, 1), .Cells(10, 10)).Borders.LineStyle = xlThick 
End With
Добавим возможность такой записи.
Верно
.Cells(1,1) — очень хорошо для макросов, я сам так пользуюсь
А вот формулы в листе писать в RC довольно сложно, ибо если ориентироваться на «R4C29», то это абсолютная ссылка, при протягивании она не будет меняться. Если делать относительной, то там будет вид RC[5], и чтобы понять куда иммено ссылается надо сначала вычислить свою колонку, потом прибавить к ней 5, и только тогда увидишь. А если это еще и между листами, то вообще сложнее (для человека). Гораздо проще запоминать «F5», и искать его на другом листе…
Ну или это дело привычки, но я так и не освоил. Дико бесит когда 1С (даже самые свежие) при экспорте в Excel обязательно включает R1C1, это применяется и другим файлам, и тебе приходится это выключать руками, причем через меню.
А вы нажмите F2 или Trace Precedents — все влияющие ячейки, аргументы функций подсвечиваются.
Это помогает всегда.
image
Зато RC[5] — это всегда правее на 5 колонок, это не в голове считать какая там пятая буква от начальной.
Да и в режиме вставки (регулируется клавишей F2) можно смело шагать курсором к ячейке, без оглядки на какие бы то ни было координаты.
;-)
дело привычек :)
Может вы знаете как переключалку R1C1 вывести хотя бы в в QAT?

Написать макрос из одной строчки и вывести его я знаю, но у меня есть аллегрия на файл personal.xls (плохо себя ведет когда нужно несколько Excel-ей открыть)
Эх… Я именно однострочным макросом:
image.prntscr.com/image/wN_a7GpTRBaWSroM5PvYng.png
Но когда я открываю несколько экселей — следующие получают на общий personal в режиме reaonly, потому остальные экземпляры видят и кнопки, и макросы.
" Если бы у Microsoft был какой-то скриптовый язык, мы бы с радостью его поддержали. "

Начиная с Office 2013 / Office 365 у Microsoft есть вполне скриптовый язык, и он даже вполне рабочий. Зовется «Office API».
Официально на нем в первую очередь надо писать «приложения» для Store Add-In ов для Офиса, но в принципе можно и просто писать.
Они ушли от VBA специально чтобы офис в облаке мог работать с «макросами».
Посмотрите, довольно интересный

Excel.run(function (ctx) {
var activeWorksheet = ctx.workbook.worksheets.getActiveWorksheet();
activeWorksheet.getRange("A1:C3").values = 7;
return ctx.sync().then(function () {
console.log("Success! Set single value in range A1:C3.");
});
}).catch(function(error) {
console.log("Error: " + error);
});
Проблемы с обновлением серверной части в rpm все так же существует? Мы до сих пор не обновились до последней версии (не считая эту) так как обновление убивает OnlyOffice, тех поддержка ничего внятного не решила, предложив обновляться вручную а это простой сервиса на несколько часов и только силами вашей тех поддержки.

Проблем с обновлением серверной части в rpm нет.
Обновление производится средствами пакетного менеджера или нашим установочным скриптом с пробросом параметра update
После обновления компонентов нужно запустить скрипт communityserver-configure.sh

Вы странные люди. На linux.org.ru, opennet.ru и здесь, на Хабре, просили присылать вам неправильно открывающиеся у вас документы на support@onlyoffice.com. Присылал docx — в ответ была отписка, что поддержка некоммерческой версии не осуществляется, присылал odt — что это не основной формат. И так раза 3 минимум, после чего забил что-либо присылать. На files@ есть смысл присылать..?

Мы смотрим все присланные файлы. Смысл присылать однозначно есть. Спасибо.
НЛО прилетело и опубликовало эту надпись здесь

А можно как в Excel написать функцию, которую потом можно было бы использовать в формуле?

Зарегистрируйтесь на Хабре , чтобы оставить комментарий