IMPORT TEXT
IMPORT TEXT ( {aTable ;} document )
引数 | 型 | 説明 | |
---|---|---|---|
aTable | Table | → | データを読み込むテーブル, または 省略した場合, デフォルトテーブル |
document | Text | → | データを読み込むテキストドキュメント |
このコマンドはスレッドセーフではないため、プリエンプティブなコードには使えません。
説明
IMPORT TEXT コマンドは、WindowsまたはMacintoshの標準的なテキスト形式のドキュメントdocumentから aTable にデータを読み込み、新しいレコードを作成します。
データの読み込み処理は、カレント入力フォームを介して実行します。このデータ読み込み処理は、入力フォーム上のフィールドや変数をそのレイヤに 従って行われます。このため、フォーム中のテキストオブジェクト (フィールドや変数) の重なり順を注意深く設定する必要があります。最初にデータが読み込まれるオブジェクトは、フォームの最背面に置きます。読み込むフィールド数とフォーム 上のフィールドや変数の数が一致しない場合、余分なものは無視されます。サブフォームオブジェクトは無視されます。
Note: データが正しいオブジェクトに読み込まれることを確実にする方法のひとつは、読み込む最初のフィールドを選択しそれを最前面にします。引き続き順番にフィールドや変数を最前面に設定していきます。
読み込まれるレコードごとに、On Validateイベントがフォームメソッドに送られます。このイベントを利用して、変数からフィールドにデータをコピーできます。
document にはボリューム名やフォルダ名等のパスを含めることができます。空の文字列を渡すと、標準のファイルを開くダイアログボックスが表示されます。ユーザがこのダイアログボックスをキャンセルすると、データ読み込み処理は中止され、システム変数OKには0がセットされます。
データの読み込み処理中には進捗インジケータが表示されます。インジケータの中止ボタンをクリックすると、処理を中断します。しかし既に読み込まれ たレコードは取り除かれません。読み込みが正常に完了すると、システム変数OKに1がセットされ、エラーが発生、または処理が中断された場合には0がセッ トされます。インジケータを表示したくない場合には、 MESSAGES OFF コマンドを使用してください。
Unicodeモード (標準モード) では、コマンドはデフォルトでUTF-8文字セットを使用します。 USE CHARACTER SET コマンドを使用してこの文字セットを変更できます。
IMPORT TEXT を使用する際、デフォルトのフィールド区切り文字はタブ文字 (コード 9) です。デフォルトのレコード区切り文字はキャリッジリターン (コード 13) です。これらの値は2つのシステム変数 FldDelimit と RecDelimit に新しい値を代入して変更できます。ユーザはこれらのデフォルト値をデザインモードの読み込みダイアログで変更できます。テキストフィールドにはタブやキャリッジリターンを含めることができるので、これらの値を区切り文字として使用する際は注意が必要です。
例題
以下の例は、データをテキストドキュメントファイルから読み込みます。まず、メソッドの最初で読み込みに使用する入力フォームを設定し、次に4Dの区切り文字変数を変更して、データ読み込みを実行します:
FORM SET INPUT([People];"Import")
FldDelimit:=27 // フィールド区切り文字をEscape 文字にする
RecDelimit:=10 // レコード区切り文字をLine Feed 文字にする
IMPORT TEXT([People];"NewPeople.txt") // “NewPeople.txt” から読み込みを実行
システム変数およびセット
コマンドが正しく実行されるとシステム変数OKに1が設定され、そうでなければ0が設定されます。