ページの先頭行へ戻る
Interstage List Creator V10.4.0 PDF変換機能編
FUJITSU Software

B.2 CFXカスタムタグインタフェース(ColdFusion MX)版のサンプル

HTMLサンプルプログラム

<HTML>
<H2>Listcreator PDF手元非表示印刷プログラムサンプル(CFX)</H2>

<!-- フォームデータを送信して、WebサーバサイドのColdFusionアプリファイルを起動します。 -->
<FORM METHOD="POST" ACTION="sample.cfm">
<INPUT TYPE="RADIO" NAME="printWay" VALUE="silent" CHECKED>サイレント印刷<BR>
<INPUT TYPE="RADIO" NAME="printWay" VALUE="dialog">プリンタ選択ダイアログ表示印刷<BR>
<INPUT TYPE="RADIO" NAME="printWay" VALUE="showpdf">PDFを画面表示<BR>
<BR>
<INPUT TYPE="SUBMIT" VALUE="印刷">
</FORM>

</HTML>

ColdFusionサンプルプログラム

<!--- 
*   PDF手元非表示印刷サンプル (CFX版)
*
*   Copyright (c) 2001-2008 PFU LIMITED, Fujitsu LIMITED. All rights reserved
*
*

**
** 本サンプルは、Listcreator EE版に添付されたサンプル「売上伝票」を
** 使って、PDFファイルを動的に生成し、ブラウザに復帰します。
** ブラウザにPDFファイルを復帰するとき、パラメタで指定された印刷方法に
** 従って、PDFファイル名の拡張子を以下のように変更します。
**   サイレント印刷                  .pd1
**   プリンタ選択ダイアログ表示印刷  .pd2
**   PDFファイルを画面表示           .pdf
** PDF手元非表示印刷を実行するには、WebサーバとWebブラウザの環境設定を
** あらかじめ行ってください。設定内容については、本サンプルが掲載された
** マニュアルを参照ください。
**

**
** 本サンプルを動作させるには、あらかじめ以下の設定が必要です。
** ※ディレクトリ名や、ファイルの配置ディレクトリについては、
**   ご使用の環境に合わせて変更ください。
**   ・ディレクトリの作成
**      以下の構成でディレクトリの作成とファイルの配置を行います
**        D:\pub\sample\                          サンプル用ディレクトリ
**              +----cfx\                         HTMLとColdFusion
**                                                ソースを格納する
**              +----pdfout\                      PDFファイルの出力先
**   ・「D:\pub\sample」ディレクトリを、「/sample」仮想ディレクトリに
**      割り当てる。
**   ・「D:\pub\sample\cfx」ディレクトリに実行可能権を与える
**   ・「D:\pub\sample\pdfout」ディレクトリに、全てのユーザに書込権を与える。
**   ・Listcreator EEを、D:\Listcreatorディレクトリにインストールする
**       EE:Enterprise Edition
--->

<!--- 帳票出力を行うための環境を設定する --->
<cfset method = "PDF">
<cfset assetsdir = "D:\Listcreator\Samples">
<cfset tmpdir = "D:\Pub\sample\pdfout\">
<cfset tmpdir_url = "/sample/pdfout/">


<!---PDFファイルの出力クエリを作成する --->
<CFX_OAST_CONNECT
    ACTION="CREATE"
    NAME="PDF出力クエリ"
    ASSETSDIRECTORY="#assetsdir#"
    FORMNAME="売上伝票"
>


<!--- 帳票(売上伝票)にレコードを設定する --->
<CFX_OAST_CONNECT
    ACTION="SETDATA"
    QUERY="PDF出力クエリ"
    DATA="2118588|神奈川県川崎市中原区|上小田中X-X-X|△△△△電気|20031221|03101|005|0020|カラーテレビ|3|120000|1234567890"
>

<CFX_OAST_CONNECT
    ACTION="SETDATA"
    QUERY="PDF出力クエリ"
    DATA="2118588|神奈川県川崎市中原区|上小田中X-X-X|△△△△電気|20031221|03101|005|0022|カラオケセット|1|82000|1234567890"
>
<CFX_OAST_CONNECT
    ACTION="SETDATA"
    QUERY="PDF出力クエリ"
    DATA="2118588|神奈川県川崎市中原区|上小田中X-X-X|△△△△電気|20031221|03101|005|0100|電気掃除機|2|23000|1234567890"
>
<CFX_OAST_CONNECT
    ACTION="SETDATA"
    QUERY="PDF出力クエリ"
    DATA="2118588|神奈川県川崎市中原区|上小田中X-X-X|△△△△電気|20031221|03101|005|0001|電気スタンド|7|10000|1234567890"
>

<!--- 印刷方法に応じて、ブラウザに復帰するPDFファイルの拡張子を変更する --->
<cfif #printWay# EQ "silent">
  <cfset ext = ".pd1">             <!--- サイレント印刷 --->
<cfelseif #printWay# EQ "dialog">
  <cfset ext = ".pd2">             <!--- プリンタ選択ダイアログ表示印刷 --->
<cfelse>
  <cfset ext = ".pdf">             <!--- PDFファイルを画面表示 --->
</cfif>

<!--- PDFファイル名とURLを生成する --->
<cfset randval = #RandRange(100000,999999)#>
<cfset pdffile = #tmpdir# & "tmp" & #randval# & #ext#>
<cfset pdffile_url = "#tmpdir_url##GetFileFromPath(pdffile)#">

<!--- Listcreatorで帳票を出力する --->
<CFX_OAST_CONNECT 
    ACTION="OUTPUT" 
    QUERY="PDF出力クエリ"
    METHOD="#method#" 
    PDF_KEEPFILE="#pdffile#"
>

<!--- 作成したクエリを破棄する --->
<CFX_OAST_CONNECT
    ACTION="DELETE"
    QUERY="PDF出力クエリ"
>

<!--- PDFファイルをブラウザに復帰する --->
<cfif #printWay# EQ "showpdf">
  <cfoutput>
  <HTML><META HTTP-EQUIV=Refresh CONTENT=0;URL="#pdffile_url#"></HTML>
  </cfoutput>
<cfelse>
  <cflocation URL="#pdffile_url#"> <!--- Locationヘッダを復帰する --->
</cfif>