7.2.6 コーディング例

次に示すパラメタを指定して,帳票を配送印刷します。

入力ファイル(印刷定義ファイル):EUR Server Service稼働マシンに配置
帳票ファイル名:Report1.fms
入力ファイル(ユーザデータファイル):EUR Server - Adapter稼働マシンに配置
マッピングデータファイルのパス:C:¥temp
プロパティ(アプリケーションサーバ):EUR Server - Adapter稼働マシンで設定
印刷方式:2
宛先キー分類:testRAKC
宛先キー値:testRAKD

コーディング例を次に示します。

<この項の構成>
(1) コマンド起動部品(eurpmcコマンド)を使用する場合
(2) ActiveX起動部品を使用する場合
(3) Java起動部品を使用する場合
(4) COBOL起動部品を使用する場合

(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.