LibreOffice Base вылетает при обновлении формы

Автор st.inna, 21 ноября 2025, 09:08

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

st.inna

Всем здравствуйте!

Есть форма, на которой имитируется "хождение" по закладкам путем скрытия/отображения разделов.
Вверху главной формы есть выпадающий список, а также пять подчиненных форм, каждая из которых становится видна при нажатии своей кнопки, которая делает видимой/невидимой одну из этих пяти подчиненных форм.
При смене значения в выпадающем списке во всех пяти подчиненных формах информация меняется в зависимости от выбранного значения через стандартный макрос:

oControl=oEv.source.model
oForm=oControl.parent
oControl.commit
oForm.updaterow
oForm.reload

Находясь на каком-либо видимом разделе, после такого обновления, при попытке перейти по кнопкам на другие подчиненные формы LO Base вылетает напрочь. Такое впечатление, что если какая-то подчиненная форма "не видна", то она не обновляется.

Если все разделы сделать видимыми изначально (расположены подряд друг под другом), но все они не влезают на видимую часть экрана (потому что высота каждого раздела это и есть высота экрана), то после обновления главной формы Base все-рано вылетает при скроллинге формы вниз.

Но!
Если сделать масштабирование формы путем кнопки Ctrl + колесико мыши так, чтобы все разделы влезли в экран, то во всех подчиненных формах информация меняется и при дальнейшем "хождении" по разделам Base не вылетает и все работает как задумано. Такое впечатление, что важно, чтобы все формы были не просто видимыми, но и прям влезали в область экрана.

Может ли кто подсказать как это лечить? У меня Astra Linux Special Edition 1.7, LO версии 7.4.5.1

P.S. Есть другой вариант помощи: дать пример навигационной формы, где смена закладки происходит путем загрузки нужной подчиненной формы.


economist

#1
Многослойные формы встречал, работали они без вылетов, но без Астр и тп усложнений.

Вообще вылет Base нередок при большом числе поставленных флажков в свойствах БД и зависит от движка.
Примеры с подчиненными формами нужно искать на форумах офсайтов OO/LO, там Base используется намного чаще чем в рунете. Ну и помним про общую тенденцию: такие виды ПО как MS Access, OO/LO Base итд почти вымерли неспроста: они оказались вытеснены web-формами/фреймворками. Их можно использовать совместно с Base (в LO Python почти всё заводится), и часто это путь с меньшим числом граблей.
Пить не буду коньяка - читану Питоньяка!

kompilainenn

7.4.5 очень старая версия, я очень сомневаюсь, что в последних версиях конкретно эту проблему исправили, но вдруг...

Советую попробовать на 25.2 например
Поддержать разработчиков LibreOffice можно тут, а наш форум вот тут