2017-04-19 2 views
0

(最近)Apex 5.1を使用しています。ブラウザまたはAcrobat ReaderでPDFファイルを開くだけです。 正しいリンクのフィールドがあり、クリックしてファイルを開きたいとします。 項目フィールドの高度な機能に関するプレテキストでこれを書き込もうとしました。 <a href="&LINKCOLUMN.">となりました。当然、ポストテキストスペースには</a>というタグを閉じます。 私はマウスポインタで上に戻るとブラウザの情報バーに正しいリンクが表示されるので、うまくいくようです。file:///N:/DOCS/filename.pdf リンクをコピーして別のタブに貼り付けようとすると、マウスでは動作しません。何か動作しているようだが、ページは何も変えない。 問題は、ファイルがネットワークフォルダに格納されていて、頂点にセキュリティ上の制限があると思いますが、このパスで開く必要がある場合は解決策がありますか?Apex 5.1でpdfファイルを開く

私の英語のためにお返事ありがとうございます。 ;)

答えて

1

これは頂点ではありません。ブラウザはセキュリティ上の理由から(IEは例外であるかもしれませんが)許可しません。もちろん、それは直接(ファイルディレクティブで始まるので)それを開くことで動作しますが、それへのナビゲーションは動作しません(例えばhttpからファイルへ)。

あなたは、apacheなどのhttpサーバを介してフォルダを公開することで '解決できます。それに関する多くのドキュメント、私はそのドメインの専門家ではない。私は過去に何をやったか

0

はこれです:

  1. ストアPDFブロブ
  2. としてファイルをダウンロードするには、アプリケーション・プロセスを作成します。

アプリケーションプロセスの場合。 プロセスポイント:ヘッダーの前にロードされます。 タイプ:PL/SQL

プロセスのテキスト:

Begin 
    Schema.download_my_file([some file number]); 
End; 

条件:リクエスト=式1

式1:DOWNLOAD_FILE

は、Oracleのマニュアルを参照しdownload_my_file手順を見てください:

oracle doc

あなたのニーズを満たすためにOracleの手順を調整することができます。例:コンテンツの処理をインライン対添付に変更したい場合があります。

この方法を使用すると、ブラウザ内でPDFをインラインで正常に表示できました。アプリケーションプロセスの条件に合わせてボタンの要求を設定することを忘れないでください。

+0

これは可能性のある回避策ですが、データベース内のブロブにファイルを移動することはできません(たとえば、ギガバイト相当のファイルを転送する場合など)。もう1つの方法は、リモート・ディレクトリに置かれたデータベース上にoracleディレクトリを作成し、ファイルをフェッチしてデータベースを介してダウンロードとして提供する方法です。もう一度、回避策として、データベース(cpu、ram)に余分な負荷をかけます。ドライブが単にhttpで有効になっている場合は、Webサーバーが最適なソリューションとなります。 – Tom

+0

実際には、問題は、私は多くのギガバイトのPDFファイルを保存しなければならないということです...私は今、Apacheを使用しようとしています。 – wolfighter