変換エラー 値が範囲外ですが出る
このエラーは、CASAでは、主に図書原簿の登録日付に関して発生します。
原因
BDEの設定のMAXBUFSIZEという値が、3.03までのバージョンでは、2048でした。これは、コンピュータに搭載されているメモリの最大2MByteまでをBDEが利用してよいという設定です。
蔵書データなどが少ないうちは、このままで問題ありませんが、蔵書データが大きくなってくると、編集テーブルから図書原簿に登録する際に、メモリが足りなくなります。
これにより、登録データの破損が発生します。
対処
破損データの削除
- まず、データベースの直接編集から、エラーの発生するテーブルを開きます。ほとんどの場合は、図書原簿です。
- どのデータが破損しているかを特定する必要があります。ほとんどの場合は、一番最後のレコードですので、ここでは、一番最後のレコードが破損している物として説明します。
- 登録日付が表示されないように、一番左の登録番号の列を表示した状態で、最後のレコードに移動し、メニュー - 編集 - 編集を可能にするで、編集を可能にし、最終レコードを削除します。削除は、「-」ボタンで行います。
- 蔵書タブの「編集&閲覧」の図書原簿に戻り、エラーが出なくなったか確認します。ここで、まだエラーが出る場合には、破損データが削除したデータ以外にも存在するという事ですので、同じ事を繰り返します。
BDE の設定
- エラーが出なくなったら、コントロールパネルのBDE Administratorを開き、環境設定 - System - INIT - MAXBUFSIZEの値を変更します。1024が1Mbyteなので、1024の倍数にすると良いと思います。蔵書2万冊程度であれば、16384 (16Mbyte)くらいで充分に足ります。
- CASA Plusでは、MAXBUFSIZEが16Mよりも小さい場合には、自動的に16Mに設定しますので、このエラーは発生しづらくなっています。