version 6.0
BLOB TO DOCUMENT (document; blob{; *})
| 引数 | 型 | 説明 | |
| document | 文字列 | ドキュメント名 | |
| blob | BLOB | ドキュメントの新しいコンテンツ | |
| * | * | Macintoshのみ: | |
| *が渡されれば、リソースフォークに書かれる; | |||
| そうでなければデータフォークに書かれる |
説明
BLOB TO DOCUMENT は、blobに格納されているデータを使用してdocumentの内容全体を上書きします。documentにはドキュメント名を渡します。documentが存在しない場合、コマンドはドキュメントを作成します。既存のドキュメント名を渡す場合、それが開かれていないことを確認してください。ファイルが開かれているとエラーが生成されます。ドキュメントをユーザが選択できるようにするには、Open documentまたはCreate document、およびプロセス変数documentを使用します(例を参照)。
Macintoshでの注意点:
- Macintoshのドキュメントファイルは、データフォークおよびリソースフォークの2つから構成されていることがあります。デフォルトで、BLOB TO DOCUMENTコマンドはドキュメントファイルのデータフォークに書き込みます。リソースフォークに書き込むには、オプション引数 * を渡します。Windowsでは、オプション引数 * は無視されます。
- このコマンドが生成するドキュメントは"タイプ"を持ちません。ドキュメントにタイプを指定するには、SET DOCUMENT TYPE コマンドを使用します。
例題
以下の例は、ドキュメントファイルをすばやく格納、または取得できるような情報システムを記述する場合を想定します。データ入力フォームで、BLOBフィールドにロードされているデータが含まれているドキュメントファイルを保存できるようなボタンを作成します。このボタンのメソッドは、以下のように作成します:
$vhDocRef:=Create document("") ` ドキュメントを作成する
If (OK=1) ` ドキュメントが作成されたら
CLOSE DOCUMENT($vhDocRef) ` それを閉じる
BLOB TO DOCUMENT (Document;[YourTable]YourBLOBField) ` ドキュメントに書き込む
If (OK=0)
` エラーを処理する
End if
End if
参照
Create document, DOCUMENT TO BLOB, Open document.
システム変数
ドキュメントに正しく書き込まれるとOKに1が、そうでなければ0が設定されます。
エラー処理
・存在しないドキュメントや、既に他のプロセスやアプリケーションで開かれているドキュメントに書き込みしようとすると、対応するファイルマネージャエラーが生成されます。
・新しいドキュメントを書き込むためのディスク容量が不足する場合があります。
・ドキュメントを書き込む際に、I/Oエラーが発生する場合があります。
いずれの場合でも、ON ERR CALL割り込みメソッドを使用すれば、このエラーをとらえることができます。