Помощ за LibreOfficeDev 25.8
Създава екземпляр на услуга на Uno с ProcessServiceManager.
CreateUnoService(serviceName As String) As Object
За списък на наличните услуги посетете справочната страница com::sun::star Module.
В следващия пример се създава функцията FileExists, която използва услугата com.sun.star.ucb.SimpleFileAccess, за да провери дали даден път води до съществуващ файл.
Function FileExists(sPath as String) As Boolean
Dim svcSFA As Object
Set svcSFA = CreateUnoService("com.sun.star.ucb.SimpleFileAccess")
Dim bExists As Boolean : bExists = svcSFA.exists(sPath)
Dim bIsFolder As Boolean : bIsFolder = svcSFA.IsFolder(sPath)
FileExists = bExists And Not bIsFolder
End Function ' FileExists
Услугите на UNO са подробно документирани онлайн в уебсайта api.libreoffice.org. Посетете справочната страница SimpleFileAccess Service, за да научите повече за методите, предоставяни от използваната в горния пример услуга.
The following code uses the service com.sun.star.ui.dialogs.FilePicker to show an open file dialog:
Sub Main
fName = FileOpenDialog ("Моля, изберете файл")
Print "Избран файл: " + fName
End Sub
Function FileOpenDialog(title As String) As String
res = com.sun.star.ui.dialogs.ExecutableDialogResults
filepicker = CreateUnoService("com.sun.star.ui.dialogs.FilePicker")
With filepicker
.Title = title
.MultiSelectionMode = True
.appendFilter("Calc docs","*.ods;*.csv;*.123")
.appendFilter("Writer or Base docs","*.odt;*.odb")
.appendFilter("All files","*.*")
If res.OK = .execute() Then
files = .getSelectedFiles()
FileOpenDialog=files(0)
EndIf
End With
End Function ' FileOpenDialog