5.4.2 ペーストの対象
XMAP3でのペーストの対象について説明します。また,ペーストの動作についてもあわせて説明します。
XMAP3でのペーストの対象と動作は,表示・印刷セットアップの「キー操作2」タブの「コピー&ペーストモード」で「単一フィールド」を選択している場合と,「複数フィールド」を選択している場合で異なります。
(1) 「単一フィールド」を選択している場合
「単一フィールド」を選択している場合,コピーしたデータを入出力テキストボックスおよびフィールドボックスの入力できる状態のフィールドにペーストします。ペーストはカレントカーソル位置を基準に実行されます。
なお,ペーストの動作は,ペーストするフィールドの属性と,表示・印刷セットアップの「キー操作2」タブの「コピー&ペーストモード」での設定によって異なります。
-
ペーストするフィールドの属性とペーストの動作
ペーストするフィールドの属性が自動スキップモードの場合,ペーストデータがペースト先のフィールドより長いとき,次にフォーカス遷移するフィールドに順次残りのデータがペーストされます。次にフォーカス遷移するフィールドの属性が文字入力不可の場合,残りのデータは切り捨てられます。
自動スキップモードのフィールドへのペーストの例を次の図に示します。
図5‒2 自動スキップモードのフィールドへのペーストの例 -
表示・印刷セットアップの設定とペーストの動作
表示・印刷セットアップの「キー操作2」タブの「コピー&ペーストモード」で「単一フィールド」を選択して,「タブ/改行コードをペーストする」を選択していない場合,コピーしたデータに含まれるタブ(09)16および改行コード((0D0A)16または(0A)16)が削除されて,前後の文字と連結した状態でペーストされます。
- 参考
-
表示・印刷セットアップの「キー操作2」タブの「コピー&ペーストモード」で「複数フィールド」を選択している場合,タブ(09)16および改行コード((0D0A)16または(0A)16)はペーストされません。
「タブ/改行コードをペーストする」を選択していない場合のペーストの例を次の図に示します。
図5‒3 「タブ/改行コードをペーストする」を選択していない場合のペーストの例 なお,「タブ/改行コードをペーストする」を選択していない場合,日付や時刻を表すデータを表示するフィールドに,タブ(09)16または改行コード((0D0A)16または(0A)16)で区切られたデータをペーストすることもできます。時刻フィールドへのペーストの例を次の図に示します。
図5‒4 時刻フィールドへのペーストの例
(2) 「複数フィールド」を選択している場合
「複数フィールド」を選択している場合,コピーしたデータをフィールドボックスの入力できる状態のフィールドにペーストします。コピーした領域の行列数またはフィールドの長さよりも大き目の領域をペーストの対象領域にすると,コピーした内容を確実にペーストできます。
「複数フィールド」を選択している場合,複数行にわたるフィールドをコピー&ペーストの対象にするには,表示・印刷環境ファイルで「*.DCPAST」に「RECTANGLE」を指定する必要があります。設定方法については,「8.4.2(24) 複数フィールドのペーストモード(表示サービス名.DCPAST=)」を参照してください。
次に,特殊なペーストについて説明します。
-
保護されているフィールドの場合
保護されている可変フィールドや,固定フィールドがある場合,そのフィールドをスキップして次のフィールドにデータをペーストします。
-
コピーデータに区切りコードがある場合
コピーデータ中にフィールド区切りコードがある場合,区切りコード以降のデータは次のフィールドにペーストされます。
-
コピーデータに改行コードがある場合
コピーデータ中に改行コードがある場合,改行コード以降のデータは改行され,次の行のフィールドにペーストされます。ペーストと同時にカーソル位置も移動されます。なお,改行コードとしてCRLF(0D0A)16を使用した場合と,LF(0A)16を使用した場合のどちらでも同様に動作します。
-
自動送信動作によって中断される場合
ペースト中に自動送信動作が実行された場合は,ペーストは中断され,残りのデータは破棄されます。自動送信動作は,フィールドが自動入力フィールドである場合,コピーデータをペーストする前に,次のフィールドに移るとき実行されます。
-
入力論理チェックによって中断される場合
ペースト中に入力論理チェックが実行された場合は,ペーストは中断され,残りのデータは破棄されます。入力論理チェックには,「桁あふれチェック」「全桁チェック」「モジュラスチェック」「右寄せチェック」「フィールドの有効文字指定と入力データとの整合性チェック」などがあります。
-
フィールドにデータが収まらない場合
データがフィールドに収まらない場合は,収まらない分を次のフィールドにペーストします。
-
データ長がフィールド長より短い場合
データ長がフィールド長より短い場合は,ペーストは中断されます。この場合,ヌル(00)16を埋めてもエラーになります。
-
ペースト中に後続のフィールドがなくなった場合
画面の最後の対象フィールドにペースト中,フィールドが終了した場合,残りのデータは画面の最初の対象フィールドにペーストされます。ただし,そのフィールドにすでにデータがペーストされている場合は,ペーストが中断されます。
- 注
-
矩形領域をペーストする場合,ペースト前のXMAP3画面のカーソルがフィールドの途中に位置づいていても,フィールドの先頭からペーストされます。この際,ペースト前のフィールドに文字が入力されていると,フィールドの文字がクリアされたあとで,フィールドの先頭からペーストされます。ペースト前のフィールドに入力されている文字列を残す場合は,表示・印刷環境ファイルで「*.DCPAST」に「FIELD」または「RECTANGLE」を設定する必要があります。設定方法については,「8.4.2(24) 複数フィールドのペーストモード(表示サービス名.DCPAST=)」を参照してください。