Ask Your Question
0

Link to external files from Base

asked 2016-12-19 15:47:20 +0100

John Jeffrey gravatar image

I am no database expert but Libre Office has made it straightforward for me to cobble together a simple 'names and addresses' style database which I use, among other things, for recording who has sent me Christmas Greetings. This is a straightforward 'Yes/No' field, of course. But people often send news about themselves and their families, which I would like to be able to refer to at some later date. I am happy to scan their letters to eg a .pdf file, in fact I will probably do that anyway, but it would be helpful if I could call up that file while looking at the relevant record in my database. And I would prefer to be able to access more than one file per record, because people might write to me more than once!

I think I am right in assuming that it is not a good idea to try to embed the files somehow - loading a lot of bitmaps seems very inefficient. But is there a way of linking from a record (eg 'Mike Smith') to 'Letter(s) from Mike Smith' which are stored on the same PC? If the answer to this query is easy, and explained in the literature, then I apologise!

edit retag flag offensive close merge delete

1 Answer

Sort by » oldest newest most voted
2

answered 2016-12-19 17:14:19 +0100

Ratslinger gravatar image

updated 2016-12-19 17:19:03 +0100

A sample is attached for your convenience. There is just one for with a table grid & button. You simply select the wanted record and push the button. Only the first record will work because it is an internet link. The second two are for local files but need to be set for your choosing and are included because it isn't know what OS you are on. Record ID #1 is for Linux file location and ID #2 is for Windows. These will open automatically to the default programs in your system.

The process isn't difficult but requires a macro attached to the After record change event of the form. The only extra setting in the push button is in the properties General tab under Action - set this to Open document/web page. Finally the macro needs to change if your table column name or button name changes.

How you set all this in your DB is up to you. Maybe having a correspondence table linked to the mailing list. It would allow you as many records as wanted.

Sample: GetExternal.odb

Edit: Here is the macro (also in sample) but with areas to possibly change:

Sub InsertLocation
Dim oForm as Object
Dim oButton as Object
oform = thiscomponent.drawpage.forms.getbyname("NAME-OF-YOUR-FORM-HERE")
oButton = oform.PUSH-BUTTON-NAME-HERE
oButton.TargetUrl = oform.Columns.getbyname("COLUMN-NAME-HERE").getstring
End Sub
edit flag offensive delete link more
Login/Signup to Answer

Question Tools

1 follower

Stats

Asked: 2016-12-19 15:47:20 +0100

Seen: 736 times

Last updated: Dec 19 '16