PDF を blob オブジェクトに読み込んでからoracle database
、添付ファイルとして送信できるように INSERT を実行しようとしています。現在、電子メール部分が機能しており、添付ファイルが追加されていますが、添付ファイルは常に破損しており、開くことができません。以下は、ブロブ pdf を作成するコードです。これが適切な添付ファイルを作成しない理由を理解するのを手伝ってもらえますか?
ls_pdf_name = ls_pdf_path + "\" + "invnum_" + ls_invoice + ".pdf"
ls_pdf_filename = "invoice_" + ls_invoice + ".pdf"
ls_rc = wf_check_pdf_status(ll_invoice_number, ls_sub_type, ll_user_supp_id)
If ls_rc = "Y" Then
li_fnum = FileOpen(ls_pdf_name, StreamMode!)
li_bytes = FileRead(li_fnum, bPDF)
FileClose(li_fnum)
ll_rc = wf_update_pdf_tables(bPDF, ls_pdf_filename, ls_sub_type, ll_user_supp_id, ll_invoice_number, ls_month, ls_year)
編集
そこで、Calvin のアドバイスを受けて、挿入を次のように切り替えました。
INSERT
ブロブをテーブルに入れるステートメントは次のとおりです
INSERT INTO ATTACH_DOCUMENT
(id, filename, mime_type, date_time_created)
VALUES
(ATTACH_DOCUMENT_SEQ.NEXTVAL, :pdf_filename, 'application/pdf', CURRENT_TIMESTAMP);
UPDATEblob ATTACH_DOCUMENT
SET data = :pdf
WHERE id = ATTACH_DOCUMENT_SEQ.CURRENTVAL;
しかし、電子メールから PDF 電子メールの添付ファイルを開こうとすると、Adobe が次のエラーで開きます。正しくデコードされませんでした)
ありがとう