過去の桐井戸端BBS (桐ver.8)
3929 絞り込み後は索引を使用した並べ替えができないでしょうか? 小川 伸二 1999/12/23-10:29
毎度お世話になります。

V8 SP3です。
イベント内で表をオープンして並べ替え後、絞り込みます
その後、別の索引を使用して並べ替えを行うと処理時間がかかります
(亀さんが走っています)
索引を使用しているのに何故かと思い、トレース出力で確認したところ
絞り込み後の並べ替え時に指定した索引が使用されていないようです。
絞り込み後は索引を使った並べ替えはできないのでしょうか?

以下、テスト結果です。

TEST.kev

手続き定義開始 フォーム::フォーム開始(長整数 &表番号)
表 "TEST",モード=参照
並べ替え 索引名="索引01"
絞り込み [A]{<>#U}
並べ替え 索引名="索引02"


トレース

DB( 1):"U:\TEST.tbl"をモード=参照で開きました
DB( 1):並べ替え条件"並替条件01"(索引名:"索引01")を実行しました
DB( 1):絞り込み(比較式)を実行しました
DB( 1):並べ替え条件"並替条件01"を実行しました


最後の行が?です

よろしくお願いします。

3934 Re: 佐田 守弘 1999/12/23-12:06
記事番号3929へのコメント
小川 伸二さん

絞り込みを行うと、桐は絞り込み状態の表を一時的に内部に作り出します。
この一時的な状態の表は、索引を持っておりませんから、素の表に索引があっても、索引を使った並べ
替えは行えません。ですから、ご質問の様な状況になります。

絞り込みを行った状態では、絞り込まれた状態のレコードと、索引が持っている整列対象のレコードと
は一致しなくなるので、最初の索引は使い様が無いのだろうと思います。

佐田守弘(KS-00119)

3945 Re: 小川 伸二 1999/12/23-15:03
記事番号3934へのコメント
佐田さん

有り難うございました。
そもそもこの様な処理が必要となるデータの持ち方が問題なのですね。
親会社から送られてくるテキストを元データで使用しているので
この様なことになってしまいました。

もう一度、考えて直してみます。
はやいうちに解って良かったです。

戻る