еще 2 вопроса - название поля и субформа

Автор at0mix, 16 июля 2022, 17:34

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

at0mix

к сожалению документация на либра-бейз настолько куцая что ответов там не нашел. в инете тоже.

1. если создавать форму по тупому в мастере - то в процессе определяется какие поля базы будут в форме и задается текст - название поля.
если делать вручную через редактор - поле создается, но где и как прописать название этого поля - я не нашел - хотя протыкал все кнопки что увидел %(
а мне нужно сделать несколько вычисляемых полей не привязанных к таблицам баз - они по запросу вычисляются каждый раз

2. в процессе выяснилось что нужны еще 2 таблицы.
можно ли в существующую форму добавить вывод из других таблиц?
или для этого нужны обязательно субформы? если да то как их создать в режиме редактирования?
каждый раз при изменениях начинать конструктор сначала не самое приятное занятие.

sokol92

Цитата: at0mix от 16 июля 2022, 17:34где и как прописать название этого поля
Один из путей: Menu / Form / Form Navigator.

Содержательный пример работы в "нестандартных условиях" недавно @RobertG выложил здесь.
Владимир.

economist

1. Мастер вреден, если нужны оторванные от БД поля.

2. Рассмотрите не вывод неск таблиц в Форме, а создание одного View из неск таблиц и отражение на форме именно View, в удобном контроле, который называется Таблица (XGRID). С ним все будет проще. 
Руб. за сто, что Питоньяк
Любит водку и коньяк!
Потому что мне, без оных, -
Не понять его никак...

at0mix

Цитата: economist от 16 июля 2022, 20:24
1. Мастер вреден, если нужны оторванные от БД поля.

2. Рассмотрите не вывод неск таблиц в Форме, а создание одного View из неск таблиц и отражение на форме именно View, в удобном контроле, который называется Таблица (XGRID). С ним все будет проще.
1. полностью согласен.но (много нецензурных слов) к сожалению кроме краткого описания базовых операций типа как в мастере быстро сляпать доков я не нашел %( я умею читать и даже писать - но не привык наощупь тыкать в кнопки надеясь что все же попаду в нужную...
основная проблема - для меня - не мог найти более подробное описание системы.

2. куда рыть что читать по поводу view? это тоже форма? режим формы? или отдельное направление?
как его сделать?

kompilainenn

Есть английский гайд по Base, надо?
Поддержать разработчиков LibreOffice можно тут, а наш форум вот тут

at0mix


economist

#6
Цитата: at0mix от 16 июля 2022, 21:38куда рыть что читать по поводу view

Представление (view) - это в #2 понятие из мира языка SQL, позволяющее создавать "виртуальную таблицу" и отображать данные из неск. физических таблиц в одной:

CREATE VIEW viewC AS
SELECT * FROM tableA
UNION
SELECT * FROM tableB

или
CREATE VIEW viewC AS SELECT A.*, B.col1 FROM A LEFT JOIN B WHERE ...

Из такого view можно показать нужное в XGRID (контрол Таблица - это еще один view SQL-запрос с сортировкой и фильтрацией для использования в составе Форм, Диалогов в Base, Calc, Writer, Impress). XGRID может использоваться для правки БД - без и с макросом.

Мы живем в мире данных, они живут в RBDMS/СУБД, откуда их принято брать/класть с помощью языка SQL. А OpenOffice|LibreOffice - единственные на сегодня офисные пакеты, которые из коробки пригодны для построения мощных офисных приложений, основанных на данных. Большую помощь может оказать язык Python с либой Pandas, которые доступны почти из коробки.  

Само приложение Base, если его рассматривать как замену Access, с диалогами, формами, отчетами итд  - подзаброшено, непопулярно, иногда странно крашится, сложно кодится и мы не видим ни одного массового тиражного продукта, в отличие от таковых на Access в пору его рассвета (2005-2010 гг).

Хотя реализована большая библиотека Access2Base, но вышла она поздно - связь поколений прервалась и специалисты по Абсцессу кончились (или ушли в другие RBDMS). Сейчас в бизнесе идет переосмысление вектора дальнейшей автоматизации офисных АРМ, в которой у LibreOffice есть большое поле применений. Другие офисные пакеты слабоваты или стали "вражескими". И сила комьюнити - это уже та вещь, которая стоит многих миллионов. У всяких P7 итп всего этого нет, и вряд ли оно сравнится с OpenOffice|LibreOffice-шными сообществами.

Руб. за сто, что Питоньяк
Любит водку и коньяк!
Потому что мне, без оных, -
Не понять его никак...

kompilainenn

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

at0mix

Цитата: at0mix от 16 июля 2022, 17:341. если создавать форму по тупому в мастере - то в процессе определяется какие поля базы будут в форме и задается текст - название поля.
если делать вручную через редактор - поле создается, но где и как прописать название этого поля - я не нашел - хотя протыкал все кнопки что увидел %(
Скачал доку по базе, проштудировал главу 4 - но так и не понял как присвоить заголовок созданному вручную полю.
Как я уже писал - если создавать форму через мастера - то можно создать поля для работы с ячейками таблицы. при этом окошку ввода-вывода автоматом присваивается имя - которое привязано к полю формы.
если я делаю это вручную без использования мастера - то можно отдельно создать поле ввода-вывода, и отдельно текст рядом - но объединить их как один объект я не смог. или это так и работает - по отдельности?

at0mix

Цитата: economist от 16 июля 2022, 20:242. Рассмотрите не вывод неск таблиц в Форме, а создание одного View из неск таблиц и отражение на форме именно View, в удобном контроле, который называется Таблица (XGRID). С ним все будет проще.
Сделал view, вместо таблицы взял вью - появилась возможность выбрать поле из другой таблицы. только вот другая проблема - невозможно записать изменения в таблицу.
это как то решается?

economist

В простейшем случае - макросом, который выполняет SQL-запрос вида UPDATE... или INSERT...   
Руб. за сто, что Питоньяк
Любит водку и коньяк!
Потому что мне, без оных, -
Не понять его никак...

at0mix

Цитата: at0mix от 21 июля 2022, 09:34Как я уже писал - если создавать форму через мастера - то можно создать поля для работы с ячейками таблицы. при этом окошку ввода-вывода автоматом присваивается имя - которое привязано к полю формы.
если я делаю это вручную без использования мастера - то можно отдельно создать поле ввода-вывода, и отдельно текст рядом - но объединить их как один объект я не смог. или это так и работает - по отдельности?
Сорри, разобрался.
поле "метка" содержит текст для поля, потом просто сгруппировать метку с полем.
но пока догнал %(

at0mix

Цитата: economist от 21 июля 2022, 11:51В простейшем случае - макросом, который выполняет SQL-запрос вида UPDATE... или INSERT...
Спасибо, но я пытаюсь обойтись минимумом программирования - чтобы дать инструмент для пользователей далеких от программирования.
в принципе все решилось применением субформ - поля в разных субформах вяжутся к разным таблицам или запросам.