Date: Tue, 23 May 2000 21:47:23 +0900
From: "木下 和則" <kishita@dev.cio.dnp.co.jp>
きしたです。
こんにちは。
アドバイスありがとうございました。
ご指摘の通り、AbsolutePosition プロパティは、
レコード番号の代わりとしては使えないことが、
ADOのリファレンスマニュアルにも明記されておりました。
At 11:47 00/05/22 +0900, you wrote:
> 堀川です、こんにちは
>
> >ここで困っていることは、編集するレコード番号が、ほかのコンポーネントから
> >指示される内容となっており、外部から与えられたレコード番号のレコードを
> >カレントレコードとしてポインティングするかハイライトさせたいと思って
> >おりますが、実現方法に行き詰まっております。
>
> ADOのリファレンスマニュアルにも書かれている通り、
>
> AbsolutePosition プロパティ
> 引用>AbsolutePosition プロパティは、レコード番号の代わりとしては
> 引用>使用できません。
> 引用>レコードの位置は、それより前にあるレコードを削除すると変わります。
> 引用>また、Recordset オブジェクトが再クエリーされた場合、または再度
> 引用>開かれた場合に、レコードの AbsolutePosition の値が同じになるとは
> 引用>限りません。
> 引用>特定の位置を保持してそこに戻るには、ブックマークを使います。
> 引用>ブックマークは、すべての型の Recordset オブジェクトで位置を
> 引用>確定する唯一の方法です。
>
> とあります。カレントレコード位置をブックマークとして扱う方法を考えてください
ブックマークをレコード番号として使うことを考えましたが、
ブックマークを配列で持たせるということは、できないようでした。
> しかしながら、マルチユーザで利用していることを考えると、ブックマークで
> 目印を付けたレコードが、他から削除される危険性もあるわけですね
確かにそのような危険性はあります。
> ですから、カレントレコードを確実に表示させる方法を考えるより、
> 表示できなかったときのエラー処理を考えた方が良いのでは?
カレントレコードを確実を表示できなかったときのエラー処理についてですが、
エラー処理を行うために必要なプロパティーの値も無い様に思います。
> どうしても確実に編集表示させたいのであれば、そのレコードをロックするなり、
> トランザクションを掛けるなりいろいろ手段はありますが、でもコントロールを
> 使っている以上、コントロールの仕様以上のことはできないと割り切るべきでしょう
どうやら、コントロールの仕様の限界とあきらめるほか無い様に思います。
外部から与えられたレコード番号のレコードをカレントレコードとして
ポインティングするかわりにレコード内容をラベルなどに表示させる方法で、
回避させる他無いものと考えています。
策をお持ちでしたら教えて下さい。
よろしくお願いします。
[MSDE/SQLServerに関して、今、どんなことにお困りですか?] |
よろしければお困りの内容を、電子メールで教えて下さい。 |
質問を電子メールで作成する
|
[ウィンドを閉じる][MSDE/SQLServer FAQ ][MSDE / MSDE2000 技術サポート情報一覧]
|