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