目次 前 次 PDF


ファイル・コンバータ: はじめに

ファイル・コンバータ: はじめに
この章では、ソース・プラットフォーム(z/OS)からUNIX/Linux Micro Focus COBOLファイルまたはCOBOL-ITファイル、あるいはRDBMS表へのファイルの移行に使用するOracle Tuxedo Application Rehosting Workbench (Tuxedo ART Workbench)のファイル・コンバータの概要と、ファイル・コンバータの各動作についての共通の説明や使用方法を紹介します。
構成ファイル内のオプションの句によっては、ファイルとRDBMS表間の変換ターゲットを組み合せることができます。
ファイル・コンバータの説明は、4つの部分に分かれています。
ファイル・コンバータ: はじめに: ファイル・コンバータの概要を紹介し、共通の動作について説明します。
File-to-Fileコンバータ: File-to-File変換について説明します。
File-to-Oracleコンバータ: File-to-Oracle変換について説明します。
File-to-Db2/luw (udb)コンバータ: File-to-Db2/luw変換について説明します。
この章では、生成される移行ツールについて説明します。他の変換は、Tuxedo ART Workbenchツールによって変換または生成される他のコンポーネントと関連して行われます。
変換プロセスを開始する前に、いくつかの構成ファイルを設定する必要があります。「入力コンポーネントのリスト」を参照してください。
生成される様々なオブジェクトについては、ターゲット別の項で説明します。一部のオブジェクトは、VSAMファイルをOracleに移行するときにのみ生成されます。Oracle用のPCOプログラム、Db2/luw用のSQBプログラム、SQLファイル、リレーショナル・モジュール、論理モジュール、ユーティリティ、構成ファイル、アンロード用JCLおよびCOBOLプログラムの変換などがあります。
「ファイル・コンバータの概要」
目的
この項およびターゲット別のファイル・コンバータの項の目的は、次のようなTuxedo ART Workbenchファイル・コンバータ・ツールのすべての機能を正確に説明することです。
各ファイルに関する、ターゲット・プラットフォームにおける変換後のファイルとOracle表またはDb2/luw (udb)表の詳細な説明。
構造
関連項目
データの変換は、COBOLプログラムの変換と密接に関連しています。次の項目を参照してください。
生成された各出力コンポーネントの詳細は、次を参照してください。
処理するファイル編成
注意:
z/OSでのファイル編成
Tuxedo ART Workbenchのファイル・コンバータは、ターゲット・プラットフォームの様々なファイル編成をサポートします。
表5-1は、z/OSで扱われるファイル編成のリストです。
 
ファイルまたはRDBMS表へのファイル変換
z/OSソース・プラットフォームからターゲット・プラットフォームにファイルを移行するとき、VSAMが関係する場合は、ファイルを維持するかデータをRDBMS表に移行するかをまず確認します。たとえば、後でOracleまたはDb2/luwデータベースで使用される永続ファイルやレコード・レベルでのロックが必要なファイルです。
注意:
enable-buffer-converterまたはenable-reverse-converterがシステム記述ファイルに設定されている場合、ファイルの移行は前述の説明と異なります。詳細は、File-to-Fileに関する章を参照してください。
Oracle Tuxedo Application Rehosting Workbenchの構成名
構成名は、変換されるファイルのセットに関連します。それぞれのファイルのセットは自由に組み合せることができます。たとえば、各構成は個々のアプリケーションに関連させることも、テストに必要なファイルのセットに関連させることもできます。
ファイルの記述および同じ構造のファイルの管理
移行の候補となる各ファイルについて、その構造をCOBOL形式で記述する必要があります。この記述はTuxedo ART Workbench COBOLコンバータによってCOBOLコピーで使用され、「COBOL記述」に記載されている制限の対象になります。
移行ファイル・リストが一度作成されたら、同一構造のファイルをパージすることができます。これは、データのトランスコードと再ロードに必要なプログラム数を減らして、ファイルを移行する際の作業を減らすためです。
パージしたファイル・リストを使用し、最後のタスクとして次のファイルを作成します。
Datamap-<データマップ名>.re
mapper-<マッパー名>.re
注意:
これら2つのファイルのビルド・プロセスを簡素化するには、populate.shユーティリティ(REFINEDIR/scripts/file/populate.shにある)を使用して、それらを自動生成します。実行する手順は次のとおりです。
1.
#this is sample dataset.prov
SYSTEM=STFILEORA
DATASET=DATA.FPS,DSORG=PS,COPY=F9.cpy,RECORD=F9-REC,TARGET=FILE
DATASET=DATA.GDG,DSORG=GDG,COPY=F9.cpy,RECORD=F9-REC,TARGET=FILE
2.
populate.shユーティリティを実行して(-jオプションを指定)、JCLジョブ・テンプレートを生成します($ populate.sh -j)
TEMPLATE.jclは、dataset.provに基づいて、現在のディレクトリに生成されます。
3.
* JOB、アカウント、レベルなどの権限情報
* 出力データセット名
4.
5.
6.
populate.shユーティリティを再度実行して(-pオプションを指定)、最終的な構成ファイルを生成します($populate.sh -p)
datamap-<SYSTEM>.reおよびmapper-<SYSTEM>.reが現在のディレクトリに生成されます。
詳細は、REFINEDIR/scripts/file/README.txtを参照してください。
COBOL記述
COBOL記述は各ファイルと関連し、アプリケーション・プログラムで使用されるCOBOL記述を表すものとみなされます。この記述は、OCCURSおよびREDEFINESの概念を含む、すべてのCOBOLデータ型を使用する複雑なCOBOL構造にすることができます。
多くの場合、このCOBOL記述はCOBOLファイル記述(FD)よりも詳細なものになります。たとえば、FDフィールドはPIC X(364)と記述できますが、実際には定義された3倍の領域に相当し、COMP-3ベースの数値表や、いくつかの文字フィールドや数値フィールドなどの複雑な記述を含むことができます。
実際のアプリケーションを説明するのはこのような詳細なCOBOL記述です。このため、特定の物理ファイルを移行するための基盤として使用されます。
ファイル処理の実行の質は、このCOBOL記述の質に左右されます。この点から、COBOL記述をファイルと分離することはできず、関連するファイルを参照する際には、ファイルとそれを表現するCOBOL記述の両方を意味します。この記述はCOBOL形式で、次の名前のファイルとして提供する必要があります。
<COPY name>.cpy
注意:
COBOL記述の形式
COBOL記述形式は次のルールに従う必要があります。
COBOL記述と関連する識別ルール
1つのCOBOL記述内に、同じ領域を記述する方法がいくつかあります。つまり、異なる構造や記述のオブジェクトを同じ場所に格納できます。
同じゾーンが様々な記述のオブジェクトを含むことができるため、そのファイルを読み取るには、このデータ領域を正しく解釈するためにどの記述を使用すべきかを判別するメカニズムが必要です。
ある条件に従い、一般的にレコードの1つまたは複数のフィールドの内容により、再定義領域の読取りに使用する記述を決定(識別)できるルールが必要です。
Tuxedo ART Workbenchでは、このルールは識別ルールと呼ばれます。
COBOL記述内の再定義に識別ルールがない場合、ファイルのトランスコード時に重大なリスクが存在します。そのため、等価でない再定義済フィールドは識別ルールをリクエストします。また、等価の再定義(テクニカル再定義)は、COBOL記述内で消去の対象にする必要があります(後で示す「COBOL記述の形式」の例を参照)。
識別ルールはファイルごとに用意し、相違点と識別される領域を明確に指定する必要があります。ファイルに関しては、ファイル記述の外部のフィールドを参照することはできません。
識別ルールはマッパー・ファイルに指定します。構文については、このドキュメントの「マッパー・ファイル」で説明します。
「入力コンポーネントのリスト」
ファイル・コンバータでは、ソースおよびターゲット・プラットフォームで使用される移行コンポーネントを生成するために、入力コンポーネントが必要です。必要な入力コンポーネントは次のとおりです。
構成ファイル: db-param.cfg
テンプレートのリスト: file-template.txtまたはfile-template-db2luw.txt
生成されたコンポーネントの転送: file-move-assignation.pgmまたはfile-move-assignation-db2luw.pgm
構成ファイル: Datamap-<configuration name>.re
構成ファイル: mapper-<configuration name>.re
2つの構成ファイル(mapperおよびdatamap)については、この項で説明します。その他については、各ターゲットの出力で詳しく説明します。
データマップ・ファイル
これは、システムの物理ファイルに関する情報を追加または変更するためにTuxedo ART Workbenchファイル・コンバータによって使用される構成ファイルです。
移行する各ZOSファイルをこのファイルに指定する必要があります。このファイルには、移行するファイルのリストのみが含まれます。
データマップ・ファイルは、次の完全な名前を付けてディレクトリ$PARAM/fileに作成する必要があります。
Datamap-<configuration name>.re
<configuration name>は、使用される現在の構成の名前です。
データマップの構文およびパラメータ
リスト5-1 データマップ・ファイル
data map <configuration name>-map system cat::<project name>
file <physical file name>
organization <organization>
[sub-mode <mode>]
[record varying <min> to <max>]
[is-gdg limit <p> [scratch/noscratch] [empty/noempty]
[keys offset <n> bytes length <m> bytes primary]
[keys offset <n> bytes length <m> bytes alternate [unique]]
[relkey size <m> bytes]
[uncatalog]
[volume <volume>]
 
 
use-fileschema-as-dbschemasystem.descで構成されている場合は、生成された表およびその他の関連するデータベース・オブジェクトに対するデータベース・スキーマとしてこの値が使用されます。この動作は、このデータマップ・ファイルにリストされているすべてのファイルに適用されます。これは、File-to-Oracleコンバータに対してのみ有効です。
システム記述ファイルに記述されたプロジェクト名。
シーケンシャル・ファイルの場合、<mode>をrecordまたはlineに設定できます。この句はターゲット組織を記述するために使用されます(レコード・シーケンシャルまたはライン・シーケンシャル)。
可変レコード長ファイルの場合、<min>は最小レコード長、<max>は最大レコード長です。
is-gdg limit <p> [scratch/noscratch] [empty/noempty]
pパラメータ値は、GDGに含めることができる世代の合計数を指定するために使用されます。
scratch/noscratchパラメータは相互排他的です。scratchパラメータは、GDGのエントリが索引から削除されるときは常に、物理的に削除してカタログ化を解除する必要があることを指定します。noscratchパラメータは、GDGのエントリが索引から削除されるときは常に、カタログ化を解除する必要があるが、物理的には削除しないことを指定します。
empty/noemptyパラメータは相互排他的です。emptyは、GDGの世代数が最大制限に到達したとき、GDGの既存のすべての世代がカタログ化解除されることを指定します。noemptyは、制限に到達したときにGDGの一番古い世代のみがカタログ化解除されることを指定します。
索引付きファイルの場合、この句はキーを記述するために使用されます。<n>は開始位置、<m>はキーの長さです。primaryは主キー用です。alternateは代替キー用です。uniqueは、キーが一意の代替キーであることを示します。これが設定されていない場合、このキーは重複代替キーです。
リスト5-2 データマップの例
data map STFILEORA-map system cat::STFILEORA
%% Datamap File PJ01AAA.SS.QSAM.CUSTOMER
file PJ01AAA.SS.QSAM.CUSTOMER
organization Sequential
uncatalog
volume filevolume
%% Datamap File PJ01AAA.SS.VSAM.CUSTOMER
file PJ01AAA.SS.VSAM.CUSTOMER
organization Indexed
keys offset 1 bytes length 5 bytes primary
keys offset 7 bytes length 6 bytes alternate
keys offset 20 bytes length 8 bytes alternate unique
file PJ01AAA.SS.VSAM.CODPAY
organization Relative
relkey size 6 bytes
 
マッパー・ファイル
これは、移行する各ファイルを次の項目と関連付けるためにTuxedo ART Workbenchファイル・コンバータによって使用される構成ファイルです。
「データマップ・ファイル」にリストされている各z/OSファイルをマッパー・ファイルに記述する必要があります。
マッピングのためのfile句
ファイルのマッピングでは、処理する物理ファイルごとに、関連するCOBOL記述と識別ルールを選択します。
リスト5-3 マッパーのfile句の構造
file <Physical file name>
[converted] [transferred]
table name <Table Name>
include <"path/Copy name">
map record <record name> defined in <"path/Copy name">
source record <record name> defined in <"path/Copy name">
logical name <logical file name>
converter name <converter name>
[attributes <attribute clause>]
[mapping strategies clauses]
 
 
 
record name: コピー記述におけるレベル01のフィールド名に対応します。
path/COPY name: 移行するファイルの記述コピーのアクセス・パスと名前に対応します。
注意:
map recordパラメータとsource recordパラメータでは、同じrecord namedescriptive copyを使用する必要があります。これらは前方互換性の確保のために使用されます。
record name: 移行するファイルのコピー記述におけるレベル01のフィールド名に対応します。
path/COPY name: 移行するファイルの記述コピーのアクセス・パスと名前に対応します。
注意:
map recordパラメータとsource recordパラメータでは、同じrecord namedescriptive copyを使用する必要があります。これらは前方互換性の確保のために使用されます。
この場合は、ASG_<logical file name>アクセス機能のみが生成されます。このアクセス機能は、CICS Oracle Tuxedo Application Runtimeによって呼び出すことができます。
注意:
リスト5-4 マッパー・ファイルの例
ufas mapper STFILEORA
file PJ01AAA.SS.VSAM.CUSTOMER converted transferred
table name CUSTOMER
include "COPY/ODCSF0B.cpy"
map record VS-ODCSF0-RECORD defined in "COPY/ODCSF0B.cpy"
source record VS-ODCSF0-RECORD defined in "COPY/ODCSF0B.cpy"
logical name ODCSF0B
converter name ODCSF0B
attributes LOGICAL_MODULE_IN_ADDITION
 
この例では、マッパー・ファイルの名前はSTFILEORAです。このファイルで処理するのは、変換オプションを使用してRDBMS表に移行されるPJ01AAA.SS.VSAM.CUSTOMERという名前の1ファイルのみです。このファイルを記述するために使用されるODCSF0B.cpyコピー・ファイルは、ソース・コピー・ファイルの1つです。
OracleまたはDb2/luw (udb)の選択はdb-param.cfg構成ファイルで行います。
COBOL記述
Tuxedo ART Workbenchファイル・コンバータには、各表に関連付けられている記述が必要です。このため、最初の手順でCOBOLコピーの記述を生成します。
COBOL記述ファイルを準備したら、mapper-<configuration name>.reファイルに記述したコピー・ファイルを$PARAM/file/recs-sourceディレクトリに置く必要があります。
ソース・プラットフォームのCOBOLコピーブックを使用してファイルを記述する場合(「COBOL記述」を参照)、コピーブックの場所が直接使用されます。
POBファイル
これらのファイルはカタログ化の際に作成されます。詳細は、「ASTのPOBファイル」を参照してください。
Symtabファイル
symtab-<schema name>.pob
このファイルはカタログ化の際に作成され、ファイル・コンバータがDB2オブジェクトをOracleに移行できるように、最新の状態で存在している必要があります。「カタロガSymtabおよびその他のファイル」を参照してください。

Copyright ©1994, 2017,Oracle and/or its affiliates. All rights reserved