Takže je to vyřešené - použil jsem 2 makra.Moje řešení uvádím zde (snad se to bude někomu hodit)
Problém se rozpadá na dvě části:
1. načtení odkazu a jeho uložení do databáze. Na to používám ve formuláři dva prvky - prvek "Výběr souboru" s názvem "SetPath". Protože u tohoto prvku nelze nastavit propojení na databázi (nemá záložku Data), použil jsem druhý prvek "Textové pole" s názvem "TxtPath", které je propojené s příslušným polem databáze a zajišťuje uložení odkazu do databáze jako textový řetězec. Kopírování z "SetPath" do "TxtPath" zajišťuje následující makro, které je pověšené na prvku "SetPath" a jeho události "Text změněn" Také je možné obsah "TxtPath" ručně vymazat (tím vymažete obsah pole databáze) nebo editovat - tedy naplnit třeba přes CTRL+C a CTRL+V odkazem na internet, který získáte z IE.
Výše popisované makro je zde:
Sub Txt_From_SelFile_To_TxtField
dim oForm1, oForm2 as object
dim sPath as string
oForm1=ThisComponent.Drawpage.Forms.getByName("MainForm")
oForm2=oForm1.getByName("SubForm")
sPath=oForm1.getByName("SetPath").text 'Načte hodnotu odkazu z pole vyběru'
if sPath <> "" Then
oForm2.getByName("TxtPath").text = sPath 'uloží tuto hodnotu do textového pole s vazbou na příslušné pole databáze'
oForm2.getByName("TxtPath").commit 'uloží tuto hodnotu do databaze'
oForm1.getByName("SetPath").text = "" 'vymaže text z hledání'
End If
End Sub
2. spuštění odkazu z databáze a otevření příslušného souboru (třeba PDF). Na to používám opět dva prvky. Prvek "Textové pole" (mohl by být tentýž jako v případě 1, ale protože na prohlížení a filtrování používám jiný formulář, jedná se také o jiný prvek) s názvem "Path". Ten je opět propojen na příslušné pole databáze a zajišťuje, že při vybrání příslušného záznamu je zobrazen správný odkaz. Druhým prvkem je tlačítko s názvem "Button_odkaz" které má činnost nastavenou na "Otevřít dokument/web stránku" a na události "Stisknuto tlačítko myši" má pověšeno následující makro.
Sub PathRun
dim oForm1, oForm2 as object
dim sPath as string
dim sPathRun as string
oForm1=ThisComponent.Drawpage.Forms.getByName("FiltrForm")
oForm2=oForm1.getByName("SubForm")
sPathRun=oForm2.getByName("Path").text 'Načte hodnotu odkazu z pole databáze'
oForm2.getByName("Button_odkaz").targeturl = sPathRun 'uloží tuto hodnotu do tlačítka - odkaz pro otevření URL'
End Sub