Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

25 Март 2019, 05:37 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Вы можете задать вопрос по LibreOffice или Apache OpenOffice  без регистрации, используя форму
 
   Начало   Помощь Поиск Войти Регистрация    задать вопрос  
Страниц: 1   Вниз
  Печать  
Автор Тема: Макрос для кнопки, открывающей запрос  (Прочитано 410 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Stud73
Новичок
*
Offline Offline

Сообщений: 4


« Стартовое сообщение: 11 Март 2019, 20:26 »

Здравствуйте, уважаемые форумчане. Помогите, пожалуйста, найти метод (команду), который открывает запрос (для просмотра результата) в Base аналогично команде
Код:
ThisDatabaseDocument.ReportDocuments.GetByName("Отчет").open
Спасибо.
Записан
rami
Гуру
*******
Offline Offline

Пол: Мужской
Сообщений: 2 659


MacBook Pro, LibreOffice и Apache OpenOffice


« Ответ #1: 12 Март 2019, 10:55 »

Открыть компонент LibreOffice Base для просмотра запроса можно так:
Код:
Sub Main
Dim args(5) As New com.sun.star.beans.PropertyValue
args(0).Name = "Command"
args(0).Value = "ИмяСуществующегоЗапроса"                   ' <— заполнить
args(1).Name = "CommandType"
args(1).Value = com.sun.star.sdb.CommandType.QUERY
args(2).Name = "DataSourceName"
args(2).Value = "ИмяВашейБазы"                              ' <— заполнить
args(3).Name = "ShowTreeView"
args(3).Value = false
args(4).Name = "ShowTreeViewButton"
args(4).Value = false
args(5).Name = "ShowMenu"
args(5).Value = true

StarDesktop.LoadComponentFromUrl(".component:DB/DataSourceBrowser", "_blank", 0, args())
End Sub
Записан

Stud73
Новичок
*
Offline Offline

Сообщений: 4


« Ответ #2: 12 Март 2019, 15:32 »

Спасибо... Очень сложно.. Может, я не так написала, что мне нужно.. Открыта база. В ней есть запрос...Есть форма, на которой есть кнопка.. Нужен макрос, который по нажатию на кнопку открывает запрос в режиме просмотра результата. Для формы и отчета такая команда есть - в первом сообщении привела образец.. Для запроса не могу найти аналогичную команду..
Записан
rami
Гуру
*******
Offline Offline

Пол: Мужской
Сообщений: 2 659


MacBook Pro, LibreOffice и Apache OpenOffice


« Ответ #3: 12 Март 2019, 16:53 »

Форма и отчёт это фактически текстовые документы внутри архива базы, а запрос это всего лишь код выполняемый на лету. Для запросов нет такой команды. Результат запроса можно отобразить либо в компоненте, либо в форме или отчёте. Сделайте форму с таблицей показывающей результат запроса.
« Последнее редактирование: 12 Март 2019, 16:55 от rami » Записан

Stud73
Новичок
*
Offline Offline

Сообщений: 4


« Ответ #4: 12 Март 2019, 20:43 »

Спасибо большое за ответ. Мысль о том, что для запросов нет такой команду меня посещала, но я рне была уверена. Смутило то, что в Акцессе такая команда есть. Еще вопрос. Вы написали "Результат запроса можно отобразить либо в компоненте". Я не совсем поняла - что это значит " в компоненте". Если есть возможность - поясните. Еще раз спасибо.
Записан
rami
Гуру
*******
Offline Offline

Пол: Мужской
Сообщений: 2 659


MacBook Pro, LibreOffice и Apache OpenOffice


« Ответ #5: 12 Март 2019, 22:23 »

Посмотрите на ранее представленный мною код, там в конце есть строка: StarDesktop.LoadComponentFromUrl(".component:DB/DataSourceBrowser", "_blank", 0, args()) — загружается компонент DataSourceBrowser и в нём отображается результат запроса.
Записан

Stud73
Новичок
*
Offline Offline

Сообщений: 4


« Ответ #6: 13 Март 2019, 06:49 »

Спасибо.
Записан
Страниц: 1   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!