インポート・ファイルからのコピー (CPYFRMIMPF)
| 実行可能場所: すべての環境 (*ALL) スレッド・セーフ: いいえ |
パラメーター 例 エラー・メッセージ |
インポート・ファイルからのコピー(CPYFRMIMPF)コマンドは,インポート・ファイルのすべてまたは一部をTOFILEにコピーします。 インポート・ファイル という用語は,異なるデータベース間でデータをコピーする目的で作成されるファイルを説明するために使用します。このコマンドでは,インポート・ファイル(FROMSTMFまたはFROMFILEパラメーター)は 取り出しファイル と呼ばれます。
このコマンドの重要な側面は,データを並行してコピーする機能です。並列処理は,少なくとも50,000のレコードをもつファイルに対して活動化されます。FROMSTMFを指定した場合には,レコードは並行にコピーされません。QUERY属性変更(CHGQRYA)コマンドを使用して,コピーを実行するために使用されるタスクの数は,CHGQRYAコマンドのDEGREEパラメーターによって判別されます。このコマンドを実装する際に最良のパフォーマンスを得るためには,タスクの数はCPU数+ 1に設定されていなければなりません。
例えば,システムに2つのCPUがある場合には,CHGQRYA DEGREE(*NBRTASKS 3)を指定します。
複数のタスクを使用するには,対称型マルチプロセッシング・プロダクト(SMP)機能がシステムにロードされていなければなりません。
磁気テープ・ファイル,ライブラリーQTEMPの任意のファイル,配布ファイル,または論理ファイルからのコピー時には,使用されるタスクは1つだけです。詳細については,CHGQRYAコマンドを参照してください。
CPYFRMIMPFコマンドによって実行できる特定機能の一部には,次が含まれています。
- 外部記述物理ファイルへの取り出しファイルのコピー。コピーを行う前に,取り出しファイルがシステム上に存在していなければなりません。
- 開始および終了相対レコード番号を基にしたコピー・レコード範囲の限定。
- 既存のファイル・メンバーへのレコードの追加または受け取りファイル・メンバー(MBROPTパラメーター)の内容の置き換え。
エラーの処理:コピー操作中に発生することがあるさまざまなエラー条件に対してエスケープ・メッセージCPF2817が送られます。エスケープ・メッセージの前に,常に特定のエラー条件を示す診断メッセージが少なくとも1つ出されます。エラー処理の詳細は,IBM i Information Center(http://www.ibm.com/systems/i/infocenter/)の「ファイルおよびファイル・システム」カテゴリーに記載されています。
一時変更:一時変更はすべてのファイルについて処理されます。
状況メッセージ:CPYFRMIMPFコマンドの実行中に,コピー操作が実行中であることを対話式ユーザーに通知するメッセージCPI2801が状況メッセージとして送られます。状況メッセージが表示されないようにする方法の詳細は,IBM i Information Center(http://www.ibm.com/systems/i/infocenter/)の「ファイルおよびファイル・システム」カテゴリーに記載されています。
パフォーマンス:
コピーのパフォーマンスを向上するには,次のようにします。
- 取り出しファイルの基礎になっている論理キー付きファイルをすべて削除します。
- 取り出しファイルの制約およびトリガーをすべて使用不可にします。
- すべてのレコードをコピーする前に,FROMRCDおよびレコード数オプションを使用して,レコードを何件かコピーしてみることで,取り出しファイルのレコードが正しくコピーされることを確認します。
- データを正しくコピーできることが分かった後で,ERRLVL(*NOMAX)パラメーターを使用します。
区切られたデータに関する注釈
- 区切り文字をブランク(' ')文字とすることはできません。
- 数字フィールドにブランク(' ')を入れることはできません。
- 受け入れファイル内の対応するフィールドより長い,取り出しファイル内のフィールドは(右端が)切り捨てられます。
- 取り出しファイルのデータが受け入れファイルのフィールドのすべてを表していない場合には,その受け入れファイルのフィールドはヌルに設定されます。これが起こった際に,受け入れファイルのフィールドにヌル値が使用できない場合は,エラーが起こってレコードは受け入れファイルにコピーされません。
- 取り出しファイルのヌル・フィールドは,2つの隣接したフィールド区切り文字,2つの隣接したストリング区切り文字,またはフィールド区切り文字とそれに続くレコード区切り文字で指定することができます。
- 受け入れファイルの固定長フィールドに保管される取り出しファイルのすべてブランク文字のフィールドは,ブランクの除去が指定されていても,ブランク文字が保存されます。
- 受け入れファイルの可変長フィールドに保管される取り出しファイルのすべてブランク文字のフィールドは,ブランクの除去が指定されていると,ただ1つの有効なブランク文字として表されます。
固定データでの注: 固定形式ファイルの各フィールドに関する情報は,次の順序になっていなければなりません。
フィールド 開始 終了 ヌル 名 位置 位置 文字位置 _________________________________________________________ FIELD1 1 10 11 FIELD2 12 15 16 *END
このフィールド定義ファイルの情報は次のようになります。
- フィールド名は,受け入れファイル内のフィールドの名前です。
- 開始位置は,フィールドのデータのコピーを開始する取り出しファイル内のバイト位置を示します。
- 終了位置は,フィールドのデータのコピーを終了する取り出しファイル内のバイト位置を示します。
- ヌル文字位置は,フィールドがヌルであるかどうかを示す取り出しファイル中のバイト位置です。「Y」値はフィールドがヌルであることを意味します。「N」の値はフィールドがヌルでないことを意味します。この値が0の場合には,ヌル文字は指定されません。
- *ENDは,フィールド定義ファイルの終わりのための標識です。
上の例のフィールド定義ファイルは次のようになります。
FIELD1 1 10 11 FIELD2 12 15 16 *END
- フィールド定義ファイルを作成する代替方法は,実際のカラム名ではなく,キーワード *COLを使用することです。*COLは,順にリストされたターゲット・ファイル内のすべてのカラムのストリーム・ファイル内のデータの位置を示します。
*COLを使用する場合の上記のフィールド定義ファイルに対応するファイルの例:
*COL 1 10 11 *COL 12 15 16 *END
LOBデータ・フィールドおよびXMLデータ・フィールドに関する注釈:
LOBデータ・フィールドおよびXMLデータ・フィールドの場合,LOBデータまたはXMLデータを含む2次ストリーム・ファイル,およびデータ・ファイル内のフィールドのオフセットを記述するフィールド定義ファイルを使用する必要があります。インポート・ファイル内のLOB,またはXMLを表す各レコードには,データではなく,2次ストリーム・ファイルの名前が含まれます。
注: 以下の例では,ディレクトリー「/LOBDATA」内部の3つの2次ストリーム・ファイル(LOB1.DAT, LOB2.DAT,およびLOB3.DAT)があり,インポートする実際のLOBデータを含んでいます。
次のFDFを使用します。
フィールド 開始 終了 ヌル 名 位置 位置 文字位置 _________________________________________________________ FIELD1 1 10 42 FIELD2 12 40 44 *END
インポート・ファイルは,レコード長が44文字(上記FDFに基づく)となり,次のデータを含んでいます。
0 1 2 3 4 /文字
12345678901234567890123456789012345678901234 /位置
AAAAAAAAAA /LOBDATA/LOB1.DAT N N
BBBBBB /LOBDATA/LOB2.DAT N N
/LOBDATA/LOB3.DAT Y N
CCCCCCCCCC N Y
制約事項:
- 取り出しファイルと受け入れファイルを同じファイルにすることはできません。
- コピーの前に,受け入れファイルが存在していなければなりません。
- 受け入れファイルは,取り出しファイルと同じ相対レコード番号をもちません。
- 取り出しファイルは,ソース・ファイル,または数値データ・タイプでないフィールドを1つもつ有効なファイルとしなければなりません。
- 取り出しファイルがSHARE(*YES)オプションで定義されているファイルの場合には,予測できない結果が起こることがあります。したがって,ファイルがSHARE(*YES)を指定して定義されている場合には,ユーザーは,コピーの前に,そのファイルがなにかのプロセスでオープンされていないことを確認する必要があります。
注: この項目が(画面自身またはヘルプ情報で)アスタリスクを付けて表示されている「特殊値」でないかぎり,項目の前にアスタリスクを付けないでください。
| 上 |
パラメーター
| キーワード | 記述 | 選択項目 | ノーツ |
|---|---|---|---|
| FROMSTMF | FROMストリーム・ファイル | パス名 | オプショナル, 定位置 2 |
| FROMFILE | FROMファイル | 要素リスト | オプショナル, 定位置 3 |
| 要素 1: ファイル | 修飾オブジェクト名 | ||
| 修飾子 1: ファイル | 名前 | ||
| 修飾子 2: ライブラリー | 名前, *LIBL, *CURLIB | ||
| 要素 2: メンバー | 名前, *FIRST, *ALL | ||
| TOFILE | TOデータベース・ファイル | 要素リスト | 必須, 定位置 1 |
| 要素 1: ファイル | 修飾オブジェクト名 | ||
| 修飾子 1: ファイル | 名前 | ||
| 修飾子 2: ライブラリー | 名前, *LIBL, *CURLIB | ||
| 要素 2: メンバー | 名前, *FIRST, *FROMMBR, *ALL | ||
| MBROPT | レコードの置き換えまたは追加 | *ADD, *REPLACE, *UPDADD | オプショナル |
| STMFLEN | ストリーム・ファイルREC長 | 整数, *TOFILE | オプショナル |
| FROMCCSID | FROM CCSID | 1-65533, *FILE | オプショナル |
| TOCCSID | 変換先CCSID | 1-65533, *FILE | オプショナル |
| RCDDLM | レコード区切り文字 | 文字値, *ALL, *CRLF, *LF, *CR, *LFCR, *EOR | オプショナル |
| DTAFMT | インポート・ファイルのレコード様式 | *DLM, *FIXED | オプショナル |
| STRDLM | ストリング区切り文字 | 文字値, *DBLQUOTE, *NONE | オプショナル |
| STRESCCHR | ストリング・エスケープ文字 | 文字値, *STRDLM, *NONE | オプショナル |
| RMVBLANK | ブランクの除去 | *NONE, *LEADING, *TRAILING, *BOTH | オプショナル |
| FLDDLM | フィールド区切り文字 | 文字値, ',', *TAB | オプショナル |
| FLDDFNFILE | フィールド定義ファイル | 要素リスト | オプショナル |
| 要素 1: ファイル | 修飾オブジェクト名 | ||
| 修飾子 1: ファイル | 名前 | ||
| 修飾子 2: ライブラリー | 名前, *LIBL, *CURLIB | ||
| 要素 2: メンバー | 名前, *FIRST, *ALL | ||
| DECPNT | 小数点 | *PERIOD, *COMMA | オプショナル |
| DECFLTRND | 10 進浮動小数点丸めモード | *HALFEVEN, *HALFDOWN, *HALFUP, *UP, *CEILING, *DOWN, *FLOOR | オプショナル |
| DATFMT | 日付の形式 | *ISO, *USA, *EUR, *JIS, *MDY, *DMY, *YMD, *JUL, *YYMD | オプショナル |
| DATSEP | 日付区切り記号 | '/', '-', '.', ',', *BLANK | オプショナル |
| TIMFMT | 時刻形式 | *ISO, *USA, *EUR, *JIS, *HMS | オプショナル |
| TIMSEP | 時刻区切り記号 | ':', '.', *BLANK | オプショナル |
| FROMRCD | コピー開始レコード番号 | 要素リスト | オプショナル |
| 要素 1: コピー開始レコード番号 | 符号なし整数, *FIRST | ||
| 要素 2: コピーするレコードの数 | 符号なし整数, *END | ||
| ERRLVL | 許容エラー | 符号なし整数, *NOMAX | オプショナル |
| ERRRCDFILE | エラー・レコード・ファイル | 単一値: *NONE その他の値: 要素リスト |
オプショナル |
| 要素 1: ファイル | 修飾オブジェクト名 | ||
| 修飾子 1: ファイル | 名前 | ||
| 修飾子 2: ライブラリー | 名前, *LIBL, *CURLIB | ||
| 要素 2: メンバー | 名前, *FIRST, *ALL | ||
| ERRRCDOPT | レコードの置き換えまたは追加 | *ADD, *REPLACE | オプショナル |
| RPLNULLVAL | ヌル値の置き換え | *NO, *FLDDFT | オプショナル |
| IDCOL | カラムの識別 | *GEN, *FROMFLD | オプショナル |
| RMVCOLNAM | カラム名の除去 | *NO, *YES | オプショナル |
| 上 |
FROMストリーム・ファイル (FROMSTMF)
データのコピー元のストリーム・ファイルのパス名を指定します。このパラメーターまたはFROMFILEパラメーターのいずれか一方が必要です。
- パス名
- 入力ストリーム・ファイルのパス名を指定してください。
注: このパラメーターではUNICODEが使用可能です。詳しくは,IBM i Information Center(http://www.ibm.com/systems/i/infocenter/)の「プログラミング」カテゴリーの「制御言語(CL)」トピック・コレクションで「CLでのUNICODEサポート」を参照してください。
| 上 |
FROMファイル (FROMFILE)
コピーされるレコードが含まれる取り出しファイルおよびファイル・メンバーを指定します。このパラメーターまたはFROMSTMFパラメーターのどちらかが必要です。
取り出しファイルは次のファイル・タイプのいずれかとすることができます。
- ソース物理ファイル
- DDMファイル
- 分散物理ファイル
- プログラム記述物理ファイル
- 単一形式の論理ファイル
- 1つの(非数値)フィールドがある物理ファイル
- テープ・ファイル。
要素1: ファイル
修飾子1: ファイル
- 名前
- コピーされるレコードが含まれるファイルの名前を指定してください。
修飾子2: ライブラリー
- *LIBL
- 最初に一致するものが見つかるまで,現行スレッドのライブラリー・リスト内のすべてのライブラリーが検索されます。
- *CURLIB
- スレッドの現行ライブラリーが検索されます。スレッドの現行ライブラリーとして指定されているライブラリーがない場合,QGPLライブラリーが検索されます。
- 名前
- 検索するライブラリーの名前を指定してください。
要素2: メンバー
- *FIRST
- 取り出しファイルの最初のメンバー(作成日順)が使用されます。取り出しファイルのOVRDBF(データベース・ファイル一時変更)コマンドにメンバー名が指定されていない限り,取り出しファイルにメンバーがない場合には,*FIRSTの指定は許されません。
- *ALL
- 指定された取り出しファイルのすべてのメンバーがコピーされます。テープ・ファイルの場合,*ALLは正しくありません。
- 名前
- 使用するファイル・メンバーの名前を指定してください。
| 上 |
TOデータベース・ファイル (TOFILE)
コピーされたレコードを受け取る出力データベース・ファイルおよびメンバーを指定します。また,出力ファイルは 受け入れファイル とも呼ばれます。
受け入れファイルは次のファイル・タイプのいずれかとすることができます。
- ソース物理ファイル
- DDMファイル
- 分散物理ファイル
- プログラム記述物理ファイル
- 外部記述物理ファイル。
これは必須パラメーターです。
要素1: ファイル
修飾子1: ファイル
- 名前
- コピーされたレコードを受け取るファイルの名前を指定してください。
修飾子2: ライブラリー
- *LIBL
- 最初に一致するものが見つかるまで,現行スレッドのライブラリー・リスト内のすべてのライブラリーが検索されます。
- *CURLIB
- スレッドの現行ライブラリーが検索されます。スレッドの現行ライブラリーとして指定されているライブラリーがない場合,QGPLライブラリーが検索されます。
- 名前
- 検索するライブラリーの名前を指定してください。
要素2: メンバー
- *FIRST
- 出力ファイルの最初のメンバー(作成日順)が使用されます。受け入れファイルのOVRDBF(データベース・ファイル一時変更)コマンドにメンバー名が指定されていない限り,受け入れファイルにメンバーがない場合には,*FIRSTの指定は許されません。
- *ALL
- データは区画に分割されたテーブルの適切な受け入れメンバーにコピーされます。*ALLが有効となるのは,区画に分割されたテーブルの場合だけです。
- *FROMMBR
- 対応する取り出しファイルおよび受け入れファイルのメンバー名が使用されます。
- 名前
- コピーされたレコードを受け取るファイル・メンバーの名前を指定してください。指定された名前のメンバーがまだファイル内に存在しない場合には,そのメンバーが作成されます。
| 上 |
レコードの置き換えまたは追加 (MBROPT)
指定された名前のメンバーが既に存在している場合に,コピー操作でデータベース・ファイル・メンバー内のレコードを置き換えるか,追加するか,あるいは更新するかを指定します。メンバーが存在していない場合には,そのメンバーが作成されてデータベース・ファイルに追加されます。
注: *ADDまたは*UPDADDが指定されて,受け入れファイルにレコードが入っていない場合には,コピー操作は正常に完了します。*REPLACEが指定されて,受け入れファイルにレコードが入っていない場合には,コピー操作は異常終了します。
- *ADD
- コピーされたレコードは既存のメンバー・レコードの終わりに追加されます。
- *REPLACE
- コピーされたレコードが既存のメンバー・レコードを置き換えます。
- *UPDADD
- システムは,キーが重複しているレコードを更新し,新しいレコードを既存のレコードの終わりに追加します。使用可能な詳細説明は,IBM i Information Center(http://www.ibm.com/systems/i/infocenter/)の「ファイルおよびファイル・システム」カテゴリーにあります。
| 上 |
ストリーム・ファイルREC長 (STMFLEN)
インポート・ファイルのレコード様式 (DTAFMT)パラメーターに*DLMが指定された場合のストリーム・ファイルのレコードの最大レコード長,あるいはDTAFMTパラメーターに*FIXEDが指定された場合のストリーム・ファイルのすべてのレコードの実際のレコード長。
- *TOFILE
- 受け入れファイル・レコードのレコード長が使用されます。
- レコード長
- ストリーム・ファイルの各レコードに使用される長さを指定します。
| 上 |
FROM CCSID (FROMCCSID)
取り出しファイルのコード化文字セットID (CCSID)を指定します。
- *FILE
- 取り出しファイルCCSIDが使用されます。取り出しファイルがテープ・ファイルの場合には,ジョブの省略時のCCSIDが使用されます。
- 1から65533
- 取り出しファイルのCCSIDが65535である時,あるいは取り出しファイルがテープ・ファイルの場合に使用されるCCSIDを指定します。取り出しファイルのCCSIDが65535でないか,あるいは取り出しファイルがテープ・ファイルでない場合には,エラー・メッセージが送信されます。
| 上 |
変換先CCSID (TOCCSID)
受け入れファイルのフィールドに使用するコード化文字セット ID (CCSID)を指定します。
- *FILE
- データは,受け入れファイルのフィールドのCCSIDに変換されます。受け入れファイルのフィールドのCCSIDが65535である場合には,フィールドは変換されず,2進データとして扱われます。
- 1から65533
- 受け入れファイルのフィールドのCCSIDが65535である場合に使用するCCSIDを指定してください。受け入れファイルのフィールドのCCSIDが65535でない場合には,このパラメーターは無視されます。
| 上 |
レコード区切り文字 (RCDDLM)
使用するレコード区切り文字を指定します。
FROMFILEパラメーターを指定する場合,有効な値は*EORまたは文字値です。FROMSTMFパラメーターを指定する場合,有効な値は*CR, *CRLF, *LF, *LFCR,または*ALLです。
- *EOR
- レコードの終わり。
- *ALL
- 改行および行送りの任意の単一文字または2つの文字の組合わせが最初に現れる位置。
- *CRLF
- 改行とそれに続く行送り。
- *LF
- 行送り。
- *CR
- 改行。
- *LFCR
- 行送りとそれに続く改行。
- 文字値
- 単一レコードの終わりを指示する単一文字を指定してください。
| 上 |
インポート・ファイルのレコード様式 (DTAFMT)
取り出しファイル内のデータの形式を指定します。
- *DLM
- データには区切り文字が入っています。ストリング,フィールド,およびレコード区切り文字については,STRDLM, FLDDLM,およびRCDDLMのパラメーターの説明を参照してください。
- *FIXED
- データ形式は固定です。各レコードのデータは固定カラムに入っています。データの形式の記述は,FLDDFNFILEパラメーターによって識別されるファイル・メンバーに入っています。レコード区切り文字については,RCDDLMのパラメーターの説明を参照してください。
| 上 |
ストリング区切り文字 (STRDLM)
コピー元のフィールドのデータについてのストリング区切り文字を指定します。この文字は,取り出しファイル内の文字,日付,時刻,およびタイム・スタンプ・ストリングの開始と終了を指示します。取り出しファイルの作成に使用されるユーティリティーによっては,一部のタイプのストリングがストリング区切り文字なしで取り出しファイル内に現れることがあります。
指定した区切り文字は,ジョブのコード化文字セット ID (CCSID)から取り出しファイルのCCSIDに変換されます。
- *DBLQUOTE
- 二重引用符文字がストリング区切り文字として使用されます。
- *NONE
- 区切り文字はストリング区切り文字として不要です。ブランク文字( )は*NONE値を表します。
- 文字値
- ストリング区切り文字の文字値を指定してください。
| 上 |
ストリング・エスケープ文字 (STRESCCHR)
取り出しファイルのストリング・フィールド内で検索される文字を指定します。取り出しファイルの文字フィールドには,CPYFRMIMPFに対して特殊な意味を持つ文字が含まれる場合があります。これらの文字には,ストリング区切り文字およびストリング・エスケープ文字自体があります。結果として,CPYFRMIMPFがデータを誤って解釈し,予期しない結果をもたらすことがあります。
ストリング・エスケープ文字は,データ内でこうした文字の前にあって,その特殊な意味を取り消します。これにより,CPYFRMIMPFは,文字がデータであるか,それともストリング区切り文字であるかを判断できます。エスケープ文字は,受け入れファイルにインポートされません。
このパラメーターは,エクスポート・ユーティリティーがストリング・エスケープ文字またはストリング区切り文字を含んでいた文字フィールドに使用した方式を説明します。
指定したストリング・エスケープ文字は,ジョブのコード化文字セットID (CCSID)から取り出しファイルのCCSIDに変換されます。取り出しファイルのCCSIDが1200, 1208,または13488である場合には,ストリング・エスケープ文字がジョブのCCSIDに変換されるか,あるいはジョブのCCSIDが65535であると,ジョブの省略時のCCSIDに変換されます。
- *STRDLM
- ストリング区切り文字は,エスケープ文字として使用されます。文字データ・フィールドに2つの隣接したストリング区切り文字が含まれる場合には,それらは1つのデータ文字として解釈されます。
- *NONE
- データにストリング・エスケープ文字はありません。データにストリング区切り文字があると,ストリング区切りとして扱われます。
- 文字値
- エスケープ文字として使用される文字を指定してください。
| 上 |
ブランクの除去 (RMVBLANK)
ブランクを除去するのか,あるいは保存するのかを指定します。
- *LEADING
- 先行ブランクは除去されます。
- *TRAILING
- 後書きブランクは除去されます。
- *BOTH
- 先行および後書きブランクは除去されます
- *NONE
- 先行および後書きブランクはすべて保存されます。
| 上 |
フィールド区切り文字 (FLDDLM)
コピー元レコードのフィールド区切り文字を指定します。この値は,あるフィールドの終わりと次のフィールドの始めを判別するために使用されます。
- ','
- コンマ文字はフィールド区切り文字の省略時の名前です。
- *TAB
- 水平タブ文字がフィールド区切り文字として使用されます。
- 文字値
- フィールド区切り文字の文字値を指定してください。
| 上 |
フィールド定義ファイル (FLDDFNFILE)
インポート・ファイルのレコード様式 (DTAFMT)パラメーターに*FIXEDを指定した時に,データの形式を定義するフィールド定義ファイルを指定します。DTAFMT(*FIXED)を指定した場合には,このパラメーターは必須です。
フィールド定義ファイルは次のファイル・タイプのどれかとすることができます。
- ソース物理ファイル
- DDMファイル
- 分散物理ファイル
- プログラム記述物理ファイル
- 1つのフィールドをもつ外部記述物理ファイル。
要素1: ファイル
修飾子1: ファイル
- 名前
- 固定長フィールド定義が入っているファイルの名前を指定してください。
修飾子2: ライブラリー
- *LIBL
- 最初に一致するものが見つかるまで,現行スレッドのライブラリー・リスト内のすべてのライブラリーが検索されます。
- *CURLIB
- スレッドの現行ライブラリーが検索されます。スレッドの現行ライブラリーとして指定されているライブラリーがない場合,QGPLライブラリーが検索されます。
- 名前
- 検索するライブラリーの名前を指定してください。
要素2: メンバー
- *FIRST
- フィールド定義ファイルの最初のメンバー(作成日順)が使用されます。
- 名前
- 使用するフィールド定義ファイル・メンバーの名前を指定してください。
| 上 |
小数点 (DECPNT)
取り出しファイルから数字データをコピーする時に使用される小数点文字を指定します。
- *PERIOD
- ピリオド(.)が小数点文字として使用されます。
- *COMMA
- コンマ(,)が小数点文字として使用されます。
| 上 |
10 進浮動小数点丸めモード (DECFLTRND)
10進浮動小数点データを丸める時に使用されるモードを指定します。
- *HALFEVEN
- 直近への丸め。端数が中間値の場合は,結果の最終桁が偶数になるように丸められます。端数が1つ上の桁の値1の中間値(0.5)より大きい場合,結果の係数は1増分(切り上げ)されます。端数が中間値より小さい場合,結果の係数は調整されません(つまり,端数は無視されます)。上記以外(端数がちょうど中間値)の場合,結果となる係数の右端桁が偶数の場合は変更されず,右端桁が奇数の場合は(偶数桁になるように)1増分(切り上げ)されます。これがこのパラメーターの省略時の値です。
- *HALFDOWN
- 直近への丸め。端数が中間値の場合は切り捨てられます。端数が1つ上の桁の値1の中間値(0.5)より大きい場合,結果の係数は1増分(切り上げ)されます。それ以外(端数が0.5以下)の場合,端数は無視されます。
- *HALFUP
- 直近への丸め。端数が中間値の場合は切り上げられます。端数が1つ上の桁の値1の中間値(0.5)以上の場合,結果の係数は1増分(切り上げ)されます。それ以外の場合,端数は無視されます。
- *UP
- 0からの切り捨て。端数の桁がすべてゼロの場合,端数が除去される以外に結果は変更されません。それ以外の場合は,結果の係数は1増分(切り上げ)されます。
- *CEILING
- 正の無限大への丸め。端数の桁がすべてゼロの場合,あるいは符号が負の場合,端数が除去される以外に結果は変更されません。それ以外の場合は,結果の係数は1増分(切り上げ)されます。
- *DOWN
- 0への丸め。端数は無視されます。これは,切り捨てと同じであり,概念的には「ゼロへの丸め」と同じです。
- *FLOOR
- 負の無限大への丸め。端数の桁がすべてゼロの場合,あるいは符号が正の場合,端数が除去される以外に結果は変更されません。上記以外(符号が負)の場合は,結果の係数は1増分されます。
| 上 |
日付の形式 (DATFMT)
取り出しファイルから日付フィールドをコピーする時に使用される日付形式を指定します。
- *ISO
- 国際標準化機構(ISO)日付形式YYYY-MM-DDが使用されます。
- *USA
- 米国日付形式MM/DD/YYYYが使用されます。
- *EUR
- 欧州日付形式DD.MM.YYYYが使用されます。
- *JIS
- 日本工業規格(JIS)日付形式YYYY-MM-DDが使用されます。
- *MDY
- 日付形式MM/DD/YYが使用されます。
- *DMY
- 日付形式DD/MM/YYが使用されます。
- *YMD
- 日付形式YY/MM/DDが使用されます。
- *JUL
- 年間通算日形式YY/DDDが使用されます。
- *YYMD
- 日付形式YYYYMMDDが使用されます。
| 上 |
日付区切り記号 (DATSEP)
日付形式の日付区切り記号を指定します。DATFMTが *ISO, *USA, *EUR,および*JISの場合は固定の日付区切り記号をもつので,区切り記号は無視されます。
- '/'
- 日付区切り文字としてスラッシュが使用されます。
- '-'
- 日付区切り文字としてハイフンが使用されます。
- '.'
- 日付区切り文字としてピリオドが使用されます。
- ','
- 日付区切り文字としてコンマが使用されます。
- *BLANK
- 日付区切り文字としてブランクが使用されます。
| 上 |
時刻形式 (TIMFMT)
取り出しファイルから時刻フィールドをコピーする時に使用される時刻形式を指定します。
- *ISO
- 国際標準化機構(ISO)時刻形式HH.MM.SSが使用されます。
- *USA
- 米国時刻形式HH:MM XXが使用されます。ここで,XXはAMまたはPMです。
- *EUR
- 欧州時刻形式HH.MM.SSが使用されます。
- *JIS
- 日本工業規格(JIS)時刻形式HH:MM:SSが使用されます。
- *HMS
- HH:MM:SS形式が使用されます。
| 上 |
時刻区切り記号 (TIMSEP)
時刻形式の時刻区切り記号を指定します。これらの時刻形式が必要な時刻区切り文字を定義するので,時刻形式 (TIMFMT)パラメーターに*ISO, *USA, *EUR,または*JISが指定された場合には,このパラメーターは無視されます。
- ':'
- 時刻区切り文字としてコロンが使用されます。
- '.'
- 時刻区切り文字としてピリオドが使用されます。
- *BLANK
- 時刻区切り文字としてブランクが使用されます。
| 上 |
コピー開始レコード番号 (FROMRCD)
取り出しファイルからどのレコードをコピーするかを指定します。
要素1: コピー開始レコード番号
- *FIRST
- コピー操作は,取り出しファイルの最初のレコードから始められます。
- 1から4294967288
- 取り出しファイルからコピーする最初のレコードのレコード番号を指定します。
要素2: コピーするレコードの数
- *END
- レコードは,ファイルの終わり条件が示されるまでコピーされます。
- 1から4294967288
- 取り出しファイルからコピーするレコード数を指定します。このレコード数をコピーする前にファイルの終わり条件に達した場合には,エラー・メッセージは出されないで,コピー操作は正常に終了します。
| 上 |
許容エラー (ERRLVL)
コピー操作の実行中に許容される,受け入れファイルでの回復可能な読み取りまたは書き込みエラーの最大数を指定します。
- *NOMAX
- エラーの最大数が指定されず,すべての回復可能エラーは容認されます。コピー操作は,見つかった回復可能なエラーの数とは無関係に続行されます。
- エラー数
- 許容される回復可能エラーの最大数を指定します。ここで指定された値より1つだけ多い回復可能エラーが起こった場合には,コピー操作は終了します。
| 上 |
エラー・レコード・ファイル (ERRRCDFILE)
エラーのレコードを書き込むデータベース・ファイルを指定します。
エラー・レコード・ファイルは,次のファイル・タイプのどれかとすることができます。
- ソース物理ファイル
- DDMファイル
- 分散物理ファイル
- プログラム記述物理ファイル
- 外部記述物理ファイル。
単一値
- *NONE
- エラー・レコード・ファイルを指定しません。
要素1: ファイル
修飾子1: ファイル
- 名前
- エラー・レコード・ファイルの名前を指定してください。
修飾子2: ライブラリー
- *LIBL
- 最初に一致するものが見つかるまで,現行スレッドのライブラリー・リスト内のすべてのライブラリーが検索されます。
- *CURLIB
- スレッドの現行ライブラリーが検索されます。スレッドの現行ライブラリーとして指定されているライブラリーがない場合,QGPLライブラリーが検索されます。
- 名前
- 検索するライブラリーの名前を指定してください。
要素2: メンバー
- *FIRST
- エラー・ファイルの最初のメンバー(作成日順)が使用されます。
- 名前
- エラーが含まれている取り出しファイル・レコードを含めるために使用するエラー・ファイル・メンバーを指定します。
| 上 |
レコードの置き換えまたは追加 (ERRRCDOPT)
エラー・レコードをエラー・レコード・ファイルに追加する方法を指定します。
- *ADD
- システムは,既存のレコードの終わりに新しいレコードを追加します。
- *REPLACE
- システムは,既存のメンバーをすべて削除し,新しいレコードを追加します。
| 上 |
ヌル値の置き換え (RPLNULLVAL)
インポート・ファイル・レコードのコピー時にヌル・フィールド値を置き換えるかどうかを指定します。
- *NO
- 受け入れファイルのフィールドがヌル値使用可能である場合には,ヌル値が使用されます。そうでない場合には,エラーが送られます。
- *FLDDFT
- インポート・ファイル・レコードの構文解析時にヌル値が検出されると,データベース・ファイル・レコード内の対応するフィールドに,フィールド・タイプに基づいた省略時の値またはDDSの省略時の値が割り当てられます。
| 上 |
カラムの識別 (IDCOL)
カラムの値がシステムによって生成されるか,あるいは省略時の値が使用されるかのいずれにしても,受け入れファイルがIDENTITY属性をもつカラム,またはROWIDデータ・タイプをもつカラムが含まれているSQLテーブルであるかどうかを指定します。
- *GEN
- システム生成の値が「識別」カラムまたは「ROWID」カラムに挿入されます。
- *FROMFLD
- 値がFROMFILEの「識別」カラムまたは「ROWID」カラムに存在している場合は,この値がTOFILEの「識別」カラムに挿入されます。
| 上 |
カラム名の除去 (RMVCOLNAM)
列名を取り出しファイルから除去するかどうかを指定します。
- *NO
- コピーは取り出しファイルの最初のレコードから開始されます。
- *YES
- 取り出しファイルの最初のレコードに列名が含まれるため,コピーは2番目のレコードから開始されます。
| 上 |
例
例1: 物理ファイルのインポート・ファイルのコピー
CHGQRYA DEGREE(*NBRTASKS 3)
:
CPYFRMIMPF FROMFILE(IMPFILE) TOFILE(DB2FILE)
FLDDLM(';') RCDDLM(X'07')
DATFMT(*JIS) TIMFMT(*JIS)
照会属性変更(CHGQRYA)は,3つのタスクの平行実行によってコピー処理の実行を可能にするためには,CPYFRMIMPFの前に実行されます。
ファイルIMPFILEのすべてのレコードは外部記述の物理ファイルDB2FILEにコピーされます。取り出しファイルのフィールドはセミコロン(;)文字で区切られます。取り出しファイルの各レコードは16進'07'文字によって区切られます。入力の日付フィールドはYYYY-MM-DD形式です。入力の時刻フィールドはHH:MM:SS形式です。
例2: 磁気テープ・ファイルのインポート・ファイルのコピー
OVRTAPF FILE(QTAPE) DEV(TAP02) SEQNBR(3) : CPYFRMIMPF FROMFILE(QTAPE) TOFILE(DB2WHS) ERRFILE(IMPERR)
磁気テープ・ファイルの指定変更(OVRTAPF)パラメーターは,磁気テープ装置TAP02をコピーの実行に使用する必要があることを指示するためには,CPYFRMIMPFの前に実行されます。取り出しファイルは,TAP02に取り付ける磁気テープの3番目のファイルでなければなりません。
取り出しファイル中のすべてのレコードが外部記述物理ファイルDB2WHSにコピーされます。取り出しファイルのフィールドはコンマ(,)文字で区切られます。入力の日付フィールドはYYYY-MM-DD (ISO)形式です。入力の時刻フィールドはHH.MM.SS (ISO)形式です。エラーを含むことが検出されて,ファイルDB2WHSに追加できない取り出しファイルのレコードはエラー・ファイルIMPERRに追加されます。
| 上 |
| 上 |