変換エラー 値が範囲外ですが出る

このエラーは、CASAでは、主に図書原簿の登録日付に関して発生します。

原因

BDEの設定のMAXBUFSIZEという値が、3.03までのバージョンでは、2048でした。これは、コンピュータに搭載されているメモリの最大2MByteまでをBDEが利用してよいという設定です。

蔵書データなどが少ないうちは、このままで問題ありませんが、蔵書データが大きくなってくると、編集テーブルから図書原簿に登録する際に、メモリが足りなくなります。

これにより、登録データの破損が発生します。

対処

破損データの削除

  1. まず、データベースの直接編集から、エラーの発生するテーブルを開きます。ほとんどの場合は、図書原簿です。
  2. どのデータが破損しているかを特定する必要があります。ほとんどの場合は、一番最後のレコードですので、ここでは、一番最後のレコードが破損している物として説明します。
  3. 登録日付が表示されないように、一番左の登録番号の列を表示した状態で、最後のレコードに移動し、メニュー - 編集 - 編集を可能にするで、編集を可能にし、最終レコードを削除します。削除は、「-」ボタンで行います。
  4. 蔵書タブの「編集&閲覧」の図書原簿に戻り、エラーが出なくなったか確認します。ここで、まだエラーが出る場合には、破損データが削除したデータ以外にも存在するという事ですので、同じ事を繰り返します。

BDEの設定

  1. エラーが出なくなったら、コントロールパネルのBDE Administratorを開き、環境設定 - System - INIT - MAXBUFSIZEの値を変更します。1024が1Mbyteなので、1024の倍数にすると良いと思います。蔵書2万冊程度であれば、16384 (16Mbyte)くらいで充分に足ります。
  2. CASA Plusでは、MAXBUFSIZEが16Mよりも小さい場合には、自動的に16Mに設定しますので、このエラーは発生しづらくなっています。