oo4oでのRecordCountとMoveFirstについて

解決


kanegon  2003-09-01 16:42:02  No: 108398  IP: [192.*.*.*]

(内容)

oo4oを使い、Spreadにデータを表示したいと考えているのですが、

OraDynaset.RecordCount
で件数を数えた後で、
OraDynaset.MoveFirst
と記述しても、最初のレコードにカーソルが移動せず
最後のレコードしか見てくれません。
(MoveFirstの記述が無視される?)

たとえば、RecordCountで4件存在すると引っ張ったところ
データの読込で始めに4件目が出てしまい、そのあとでMoveNext
すると、Nullということでエラーになってしまいます。

別のホームページに以下のようなことが書いてあったのですが、
何か関係するのでしょうか?
わかる方がいれば回答をお願いいたします。

[OSのVER]:Win2000
[OracleのVER]:9.2i
oo4oのオンラインヘルプによれば、
oo4oのDynaset.RecordCountプロパティは、
パフォーマンスに影響を及ぼすので、別立てで
COUNT(*)を発行してデータ件数を取得してください。

とされています。

編集 削除
魔界の仮面弁士  2003-09-01 16:51:31  No: 108399  IP: [192.*.*.*]

OraDynasetの生成時に、どのようなオプション引数を指定していますか?
例えば、CreateDynasetメソッドのORADYN_NOCACHEオプションを使用中に、RecordCountプロパティを参照すると、暗黙のうちにMoveLastによって現レコードがダイナセットの最後のレコードに設定される事になっています。

編集 削除
kanegon  2003-09-02 11:19:18  No: 108400  IP: [192.*.*.*]

魔界の仮面弁士様

どうもありがとうございました。
ORADYN_NOCACHEを加えておりました。

編集 削除