59.44 GET_BLOB_FILE_SRCファンクション
ダウンロード・リンクを指定した組込み方式を使用するかわりに、APEX_UTIL.GET_BLOB_FILE_SRC
ファンクションを使用できます。この方法の利点の1つは、イメージの表示を(heightタグとwidthタグで)より具体的に書式設定できることです。このファンクションは、有効なOracle APEXセッションからコールする必要があり、BLOBを記述するパラメータがアプリケーション内の有効なアイテムの形式としてリストされている必要もあります。この項目は後でファンクションが参照します。
このファンクションによって戻されるURLがAPEX_UTIL.PREPARE_URL
に渡され、参照されるページ・アイテムがモーダル・ページにある場合は、p_plain_url
引数をTRUE
に設定して、モーダル・ダイアログ・コードが追加されないようにします。
構文
APEX_UTIL.GET_BLOB_FILE_SRC (
p_item_name IN VARCHAR2 DEFAULT NULL,
p_v1 IN VARCHAR2 DEFAULT NULL,
p_v2 IN VARCHAR2 DEFAULT NULL,
p_content_disposition IN VARCHAR2 DEFAULT NULL )
RETURN VARCHAR2;
パラメータ
パラメータ | 説明 |
---|---|
p_item_name |
タイプがFILE で、DB列のソース・タイプが含まれる有効なアプリケーション・ページ・アイテムの名前。
|
p_v1 |
主キー列1の値。 |
p_v2 |
主キー列2の値。 |
p_content_disposition |
INLINE またはATTACHMENT を指定します(その他の値はすべて無視されます)。
|
例
PL/SQLファンクションの本体として使用する場合:
RETURN '<img src="'||APEX_UTIL.GET_BLOB_FILE_SRC('P2_ATTACHMENT',:P2_EMPNO)||'" />';
SQLタイプのリージョン・ソースとして使用する場合:
SELECT ID, NAME,CASE WHEN NVL(dbms_lob.getlength(document),0) = 0
THEN NULL
ELSE CASE WHEN attach_mimetype like 'image%'
THEN '<img src="'||apex_util.get_blob_file_src('P4_DOCUMENT',id)||'" />'
ELSE
'<a href="'||apex_util.get_blob_file_src('P4_DOCUMENT',id)||'">Download</a>'
end
END new_img
FROM TEST_WITH_BLOB
前述の例は、BLOB
を表示できる場合はレポート内に表示し、表示できない場合はダウンロード・リンクを提示する方法を示しています。
親トピック: APEX_UTIL