バッチアプリケーションのライブラリの作成は、以下のアプリケーション資産をコンパイル/リンクして作成します。
バッチアプリケーションのCOBOLプログラム
COBOL実行基盤インタフェース
バッチアプリケーションの入力パラメタを設定したCOBOL登録集
利用者が作成したCOBOL登録集
バッチ実行基盤が提供しているCOBOL登録集
これらの資材と、バッチアプリケーションのライブラリの関係を示します。
バッチアプリケーションのライブラリの作成は、NetCOBOLの機能であるUNIX分散開発支援機能を使用します。バッチ実行基盤で動作するバッチアプリケーションの開発手順は、UNIX分散開発支援機能を利用したNetCOBOLのアプリケーションを作成する場合と同じです。
以下に、UNIX分散開発支援機能を使用するときのCOBOLプログラムなどの関係を示します。
UNIX分散開発支援機能の詳細はNetCOBOLのマニュアルを参照してください。
UNIX分散開発支援機能では、アプリケーション資産をプロジェクトとして管理します。バッチアプリケーションのプロジェクトは、以下のアプリケーション資産をプロジェクトに取り込む必要があります。
COBOLプログラム
バッチアプリケーションのソースプログラム
COBOL実行基盤インタフェース
サブプログラム
サブプログラムの取り込みは、サブプログラムが存在する場合だけです。
COBOL登録集
入力パラメタを設定したCOBOL登録集
入力パラメタを設定したCOBOL登録集の取り込みは、バッチアプリケーションに入力パラメタが存在する場合だけです。
バッチ実行基盤が提供しているCOBOL登録集(INVALID_MARKER.cblなど)
バッチ実行基盤が提供しているCOBOL登録集の取り込みは、バッチアプリケーションでバッチ実行基盤が提供しているCOBOL登録集を使用している場合だけです。
利用者が作成したCOBOL登録集
バッチアプリケーションを作成するために、NetCOBOLのプロジェクト管理機能を使用し、プロジェクトを作成します。
バッチアプリケーションのライブラリのモードには、プロセスモードとスレッドモードがあります。動作モードの選択については、業務の設計指針(バッチワークユニットの設定)にしたがってください。
作成したプロジェクトに対し、以下の作業を行います。
翻訳オプションの設定
最終ターゲットファイル名(ライブラリ名)の追加
COBOLソースファイルフォルダの作成とCOBOLソースファイルの追加
登録集ファイルフォルダの作成とCOBOL登録集の追加
分散開発固有の設定
サーバ環境へのアプリケーション資産の登録
ビルド制御文の生成
ビルド制御文の修正
バッチアプリケーションのビルド
プロジェクトの作成方法の詳細は、NetCOBOLのマニュアルを参照してください。
COBOLアプリケーションの動作モードとバッチワークユニットの動作モードについては、“3.2 ジョブの外部仕様の設計”を参照してください。
翻訳オプションの設定
プロジェクトで管理するソースファイルを翻訳するときに有効になる翻訳オプションを設定します。スレッドモードのバッチアプリケーションを作成する場合は、翻訳オプションTHREAD(MULTI)が必要です。
バッチ実行基盤で動作するバッチアプリケーションでは、以下の翻訳オプションを設定しないでください。
NOALPHAL
BINARY(WORD,MLBOFF)
BINARY(BYTE)
ASCOMP5(ALL)
ASCOMP5(BINARY)
ASCOMP5(COMP)
最終ターゲットファイル名(ライブラリ名)の追加
最終ターゲットファイルに、ライブラリ名を登録します。ライブラリ名は、アプリケーション情報入力ファイルのlibraryタグに設定したライブラリ名から“lib”を除き、拡張子を“DLL”に変更した名前を登録してください。登録した名前は、後述するビルド制御文を生成するときに、先頭に“lib”が付加され拡張子が“so”に変換されます。
例えば、UNIX系システムで作成するライブラリ名が“libSAMPLE.so”の場合、Windows(R)上のプロジェクトに登録するライブラリ名は“SAMPLE.DLL”になります。
OS | ライブラリ名 |
---|---|
Windows(R) | SAMPLE.DLL |
UNIX系システム | libSAMPLE.so |
COBOLソースファイルフォルダの作成とCOBOLソースファイルの登録
最終ターゲットファイルであるライブラリに対して、COBOLソースファイルフォルダを作成します。作成したフォルダに以下を登録します。
COBOL実行基盤インタフェース
バッチアプリケーション
サブプログラム
COBOL実行基盤インタフェースとバッチアプリケーションは、合わせて1つのバッチアプリケーションであるため、それぞれを個別のライブラリとして作成しないでください。必ず、同じ最終ターゲットファイルのCOBOLソースフォルダに登録してください。
登録集ファイルフォルダの作成とCOBOL登録集の登録
プロジェクトのCOBOLソースファイルに対して登録集ファイルフォルダを作成します。作成したフォルダに以下のCOBOL登録集を登録します。
入力パラメタを設定したCOBOL登録集
バッチ実行基盤が提供しているCOBOL登録集
利用者が作成したCOBOL登録集
バッチ実行基盤では、以下のCOBOL登録集を提供しています。
INVALID_MARKER.cbl
入力パラメタが未設定かどうかを判定するCOBOL登録集です。
分散開発固有の設定
プロジェクトに分散開発固有の設定を行います。
設定方法は、NetCOBOLのマニュアルを参照してください。なお、ターゲットの種別には以下を指定します。
Solaris
Linux
サーバ環境へのアプリケーション資産の登録
プロジェクトに登録したCOBOLソースファイルとCOBOL登録集を、テスト環境に転送します。転送時は、テスト環境のバッチワークユニットに指定した文字コードに合わせて、COBOLソースファイルとCOBOL登録集の文字コード変換を行います。
テスト環境の文字コードと、バッチワークユニットに指定した文字コードが不一致の場合、バッチアプリケーションが誤動作することがあります。
文字コードの設計については、“Interstage Job Workload Server セットアップガイド”の“文字コードの設計”を参照してください。
ビルド制御文の生成
プロジェクトに登録された資産から、バッチアプリケーションをビルドするための、ビルド制御文(Makefile)を生成します。
詳細はNetCOBOLのマニュアルを参照してください。
ビルド制御文の修正
生成されたMakefileをテキストエディタで開き、バッチアプリケーションが使用する、以下の資源のパスとライブラリを追加します。
COBOL登録集のパス:/opt/FJSVibs/copy
ライブラリのパス:-L/opt/FJSVibs/lib
ライブラリ名:-l(ライブラリ名)
リンクするライブラリは、プロセスモードとスレッドモードで以下のように異なります。
| プロセスモード | スレッドモード |
---|---|---|
リンクするライブラリ | libapfwcdrcobol_nt.so | libapfwcdrcobol.so |
資源(ライブラリ)の追加手順の詳細は、NetCOBOLのマニュアルを参照してください。
パスとライブラリの追加はプロジェクトでも行えます。
バッチアプリケーションのビルド
修正したビルド制御文(Makefile)をテスト環境へ転送後、ターゲットビルド機能を使用してバッチアプリケーションをビルドします。
ターゲットビルドの詳細は、NetCOBOLのマニュアルを参照してください。