テーブル レイアウトにおけるフィールドのシフト
コンセプト情報
フィールドのシフトを使用すれば、固定のバイト数で表示されているフィールド定義を簡単に修正することができます。これが必要となるのは、テーブル レイアウトが不正に定義された場合、あるいはデータ ソースが変更されたが Analytics テーブルを再定義したくない場合です。
データ ソースの 1 つのフィールドの長さが 1 増えたなど、わずかな変更があり、そのフィールドがテーブル レイアウトで定義されていた場合は、後続フィールドの位置をずらすことで、そのテーブル レイアウトを使用し続けることができます。テーブル レイアウトで 1 つのフィールドの開始位置をシフトすると、そのフィールドの右側に定義されているすべてのフィールドの開始位置が自動的にシフトします。フィールドのシフトが作用するのは物理データ フィールドのみです。
レコード長の調整
テーブル レイアウトのフィールドをシフトする場合、以下の状況が当てはまるときは[テーブル レイアウト オプション]タブの[レコード長]の値も調整する必要があります。
- 変更されたフィールド長データ ソースにあるフィールドの長さが変更された場合は、フィールドをシフトする前に、まずテーブル レイアウトでそれに該当するフィールドの長さを手動で調整する必要があります。また、テーブル レイアウトでレコード長の調整が必要になる場合もあります。
- 追加されたフィールドデータ ソースに新しいフィールドが追加された場合は、まず、その新しいフィールドが収まるように、テーブル レイアウト ダイアログ ボックスでレコード長を増やす必要があります。シフトされるフィールドの 1 つが現在のレコード長を超える場合には、フィールドのシフトは実行できません。フィールドがシフトされたら、新しいフィールド定義を追加できます。
- 削除されたフィールドデータ ソースからフィールドが削除された場合は、テーブル レイアウト内の対応するフィールドを削除します。フィールドをシフトした後、レコード長を手動で減らす必要が生じるかもしれません。
シフトされたフィールド定義は、レコード長内にある必要があります。
1 つ以上のフィールド定義を左右にシフトするときには、フィールドがいずれの方向でもレコード長を超えることができません。
フィールドのシフトは、指定されたフィールド定義と、任意のフィールド定義の両方を、指定された定義の右に移動します。定義のシフトされたブロックがいずれかの方向でレコード長を超える場合、エラー メッセージが表示され、シフト処理は実行されません。
ヒント
レコードの最後を超過しているためにエラー メッセージが表示される場合は、最終フィールド定義を削除し、シフト対象のフィールド定義の場所を作ってください。
テーブル レイアウトでフィールドをシフトする
- [編集 > テーブル レイアウト]の順にクリックします。
- [フィールド/式の編集]タブをクリックします。
- 省略可能。テーブル レイアウトにデータ フィルターが定義されている場合は、特定のデータ フィルターのみを対象にフィールドをシフトすることができます。リストの上にあるドロップダウンリストから、該当するデータフィルターを選択します。選択したデータ フィルターに関連付けられるフィールドのみが表示され、シフトされます。
- 省略可能。特定のフィールドからフィールドのシフトを開始する場合は、フィールドのリストでフィールドを選択します。
選択するフィールドの開始バイト位置は、[フィールドのシフト]ダイアログボックスにあらかじめ入力されます。
- [フィールドのシフト]をクリックします。
- [位置からフィールドの位置を開始]テキストボックスで、あらかじめ入力された値を保持するか、シフトする最初のフィールド定義の開始バイト位置を指定します。
すべてのフィールド定義が、指定されたフィールド定義の右にシフトされます。
非開始バイト位置を指定する場合は、次の開始バイト位置が使用されます。
メモ
非 Unicode Analytics 1 バイト = 1 文字 Unicode Analytics、拡張 ASCII (ANSI) データ 1 バイト = 1 文字 Unicode Analytics、Unicode データ 2 バイト = 1 文字 Unicode データの場合、一般的に、奇数の開始バイト位置を指定します。偶数の開始位置を指定すると、文字が正しく表示されない可能性があります。
- [次のバイト数でフィールドをシフト]テキストボックスで、フィールド定義をシフトするバイト数を指定します。
フィールド定義を右にシフトする正の数値を入力します。フィールド定義を左にシフトする負の数値を入力します。
メモ
非 Unicode Analytics 1 バイト = 1 文字 Unicode Analytics、拡張 ASCII (ANSI) データ 1 バイト = 1 文字 Unicode Analytics、Unicode データ 2 バイト = 1 文字 Unicode データの場合、偶数バイトのみを指定します。奇数バイトを指定すると、文字が正しく表示されない可能性があります。
- [OK]をクリックしてから、確認ダイアログ ボックスで、[はい]をクリックします。