7.2.6 コーディング例
次に示すパラメタを指定して,帳票を配送印刷します。
- ■入力ファイル(印刷定義ファイル):EUR Server Service稼働マシンに配置
-
帳票ファイル名:Report1.fms
- ■入力ファイル(ユーザデータファイル):EUR Server - Adapter稼働マシンに配置
-
マッピングデータファイルのパス:C:\temp
- ■プロパティ(アプリケーションサーバ):EUR Server - Adapter稼働マシンで設定
-
印刷方式:2
宛先キー分類:testRAKC
宛先キー値:testRAKD
コーディング例を次に示します。
- 〈この項の構成〉
(1) コマンド起動部品(eurpmcコマンド)を使用する場合
EURPMC.exe /m print /pm spl /rf Report1.fms /map C:\temp\Report1.csv /rac testRAKC /rad testRAKD
(2) ActiveX起動部品を使用する場合
<HTML> <HEAD> <TITLE>Sample Script of ASP page for EUR Print Manager</TITLE> </HEAD> <BODY> <% Server.ScriptTimeOut = 100 'スクリプトのタイムアウト時間を100秒に設定 On Error Resume Next 'エラーハンドリングを行う dim jobid '変数宣言 Set EURPM = Server.CreateObject("EURPM.Exec") 'ActiveXオブジェクトのインスタンス作成 EURPM.ReportFileName = "Report1.fms" '帳票ファイルの指定 EURPM.DataFilePath = "C:\temp" 'マッピングデータパスの指定 EURPM.DataFileName = "Report1.csv" 'マッピングデータの指定 EURPM.ReportAddressKeyCategory = "testRAKC" '宛先キー分類の指定 EURPM.ReportAddressKeyData = "testRAKD" '宛先キー値の指定 EURPM.PrintMode = 2 '印刷方式を「蓄積」に設定 If Err.Number <> 0 Then Response.Write("蓄積実行前にエラーが発生しています"& Err.Number &"<BR>") Else EURPM.PrintPMReport() '蓄積指示 If Err.Number = 0 Then 'PrintPMReportメソッドは正常終了かどうかの判定 jobid = EURPM.GetJobID() '蓄積ファイルのジョブIDを取得 Else errid = Err.Number 'エラーコードをerridに取り出す If errid = -441 Then 'KEEY441-Wの場合のエラー処理 Elseif errid = -301 Then 'KEEY301-Eの場合のエラー処理 Elseif errid = -302 Then 'KEEY302-Eの場合のエラー処理 Elseif errid = -201 Then 'KEEY201-Eの場合のエラー処理 '…以下そのほかのエラー処理を書く End If End If End If %> </BODY> </HTML>
(3) Java起動部品を使用する場合
import JP.co.Hitachi.soft.EURPM.*; public class SAMPLE { public static void main(String[] args) { // 変数定義 int iCnt = 0; EURPMAdapterForJava obj = null; String strJobID = null; try { // オブジェクト生成 obj = new EURPMAdapterForJava(); // 帳票ファイルの指定 obj.setReportFileName("Report1.fms"); // マッピングデータファイルの指定 obj.setDataFilePath("C:\\temp\\"); obj.setDataFileName("Report1.csv"); //宛先キー分類の指定 obj.setReportAddressKeyCategory("testRAKC"); //宛先キー値の指定 obj.setReportAddressKeyData("testRAKD"); // その他パラメタの指定 obj.setPrintMode(2); //蓄積実行指示 obj.printReport(); // ジョブIDの取得 strJobID = obj.getJobID(); System.out.println(strJobID); } catch (EURPMException ce) { // エラー処理 int errid; errid = ce.getErrorCode(); if (errid==301) { } } } }
(4) COBOL起動部品を使用する場合
IDENTIFICATION DIVISION. PROGRAM-ID. EURPMADCTEST. ENVIRONMENT DIVISION. INPUT-OUTPUT SECTION. FILE-CONTROL. SELECT INP-FL ASSIGN DATAFILENAME ORGANIZATION LINE SEQUENTIAL. CONFIGURATION SECTION. SPECIAL-NAMES. CDECL IS CDECL. DATA DIVISION. FILE SECTION. FD INP-FL. 01 INP-REC PIC X(512). WORKING-STORAGE SECTION. 01 EURPMPARAM1. COPY 'EURPMPARAM1.cbl'. *変数定義 01 RTNCODE PIC S9(9) BINARY. 01 REPNAME PIC X(256) VALUE SPACE. 01 MAPNAME PIC X(256) VALUE SPACE. 01 MAPPATH PIC X(256) VALUE SPACE. 01 PRTMODE PIC S9(9) BINARY. 01 RAKC PIC X(80) VALUE SPACE. 01 RAKD PIC X(80) VALUE SPACE. PROCEDURE DIVISION. MAIN SECTION. MAIN-START. MOVE ZERO TO RTNCODE * 帳票ファイルの指定 MOVE 'Report1.fms' TO REPNAME * マッピングデータファイルの指定 MOVE 'Report1.csv' TO MAPNAME MOVE 'C:\temp\' TO MAPPATH * 宛先キー分類の指定 MOVE 'TESTRAKC' TO RAKC * 宛先キー値の指定 MOVE 'TESTRAKD' TO RAKD * その他パラメタの指定 MOVE 2 TO PRTMODE MOVE REPNAME TO REPORTNAME OF EURPMPARAM1 MOVE MAPNAME TO MAPPINGDATA OF EURPMPARAM1 MOVE MAPPATH TO MAPPINGDATAPATH OF EURPMPARAM1 MOVE PRTMODE TO PRINTMODE OF EURPMPARAM1 MOVE RAKC TO REPORTADDRKEYCATEGORY OF EURPMPARAM1 MOVE RAKD TO REPORTADDRKEYDATA OF EURPMPARAM1 * 蓄積実行指示 CALL 'PrintReport' USING BY REFERENCE EURPMPARAM1 RETURNING RTNCODE * ジョブIDの表示 DISPLAY '[JOBID=' JOBID OF EURPMPARAM1 ']' . MAIN-END. EXIT.