Hitachi

EUR 帳票出力 機能解説 EUR Server編


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.