VB6.0用掲示板の過去のログ(No.1)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [過去ログ] [管理用]

投稿日: 2003/04/07(Mon) 01:25
投稿者魔界の仮面弁士
Eメール
URL
タイトルRe: レコードセットをグリッドに表示

> SQL文の中にORDER句を入れて、「日付」フィールドを
> 新しい順などに並べかえるレコードセットを取得し、
> それを上記と同じ方法でグリッドのデータソースに
> セットすると、日付フィールドのソートが反映されずに
> SQLサーバーにINSERTした順序のまま表示されます。

『SQLサーバーにINSERTした順序』という意味がよくわかりませんが、
MSHFlexGridに表示される内容が、ORDER BYで指定した順序になっていない、という意味でしょうか。
(できれば、実際のコードと、その結果を提示してもらえると、回答しやすいです)

もし、ORDER BYで指定した通りに表示されないのだとしたら、問題の切り分けのために、
「Recordset取得時に、既に並び順が異なっている」のか、それとも
「グリッドにDataSouceとして渡すと、並び順が異なってしまう」のかを確認してください。


> ORDER句を入れたレコードセットをDO〜LOOP文を使用して
Clipプロパティに、RecordsetのGetStringメソッドの戻り値を渡すようにすれば、
複数のセルに、値を一括して代入できるかと思います。


> SET処理ができると楽だなと思って質問させて頂きます。
まず、サーバー側カーソルを利用している場合は、それをadUseClientに変更してみてください。
それで駄目なら、さらにSortプロパティを使って、ローカルソートをかけてみてください。


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- Web Forum -