The Servoy Blobloader provides a convenient way to access files stored in a database column or a global variable and use it as if it were part of the Servoy Media library.
The Servoy Blobloader is a media URL, with arguments indicating where to retrieve the file from:
var tableName = 'filestoragetable'; var columnName = 'thefile'; var id = 1; var mimeType = 'application/pdf'; var fileName = 'myFileName'; var URL = 'media:///servoy_blobloader?servername=' + currentcontroller.getServerName() + '&tablename=' + tableName + '&dataprovider=' + columnName + '&rowid1=' + id +'&mimetype=' + mimeType +'&filename=' + fileName; return '<html><body><a target="_blank" href="'+URL+'">test</a></body></html>';
Combined primary key
In case of a PK buildup out of multiple columns, add &rowid2=value ... &rowidXX=value. The PK values should be ordered by their name ascending.
var globalName = 'myGlobal'; var mimeType = 'application/pdf'; var fileName = 'myFileName'; var URL = 'media:///servoy_blobloader?global=' + globalName + '&mimetype=' + mimeType + '&filename=' + fileName; return '<html><body><a target="_blank" href="'+URL+'">test</a></body></html>';
For more information about mime types, see w3schools.com on mimetypes