- PR -

[ASP.NET]ActiveReportのソート

投稿者投稿内容
†raimu†
ベテラン
会議室デビュー日: 2005/08/23
投稿数: 61
投稿日時: 2005-09-29 20:45
お世話になります。ライムです。

ActiveReportのソートについて質問なのですが…
値をキックする画面からソート条件を選択し、
Clickイベントでソート条件を元にSQLでORDER BYして
ActiveReportの出力結果をソートしたいのです。
で、サイトで調べたのを元にClickイベントへ下記のように記述したのですが、
ソートしてくれなく…
-------------------------------------------------------------------------
Dim ObjRpt As report
ObjRpt = New report

Dim myDS As New DataDynamics.ActiveReports.DataSources.SqlDBDataSource
myDS.ConnectionString = "接続文字列"

'昇順
If DropDownList1.SelectedValue = 1 Then
myDS.SQL = "Select * from テーブル名 ORDER BY 項目名 ASC"
End If

'降順
If DropDownList1.SelectedValue = 2 Then
myDS.SQL = "Select * from テーブル名 ORDER BY 項目名 DESC"
End If

ObjRpt.DataSource = myDS
ObjRpt.Restart()

WebViewer1.ClearCachedReport()
WebViewer1.Report = ObjRpt
-------------------------------------------------------------------------
データベースのソートしただけじゃレポートの方で昇順されてしまうのかな…
良ければ知恵をお貸しください(TT

[ メッセージ編集済み 編集者: †raimu† 編集日時 2005-09-29 20:46 ]
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2005-09-29 20:52
こんにちは、じゃんぬ です。

引用:

†raimu†さんの書き込み (2005-09-29 20:45) より:

データベースのソートしただけじゃレポートの方で昇順されてしまうのかな…
良ければ知恵をお貸しください(TT


ちなみに、ActiveReports にグループ セクションとかそういう類のものはないのですか?

私はいつも、DataAdapter から Fill してやってるのですが、正常にソートされていましたよ。


_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
†raimu†
ベテラン
会議室デビュー日: 2005/08/23
投稿数: 61
投稿日時: 2005-09-29 21:28
返信ありがとうございます。

>ActiveReports にグループ セクションとかそういう類のものはないのですか?
グループヘッダーとフッターの事でしょうか。
それならあります。

>DataAdapter から Fill してやってるのですが、正常にソートされていましたよ。
DataAdapter…Fill…
ヘルプ読んでみても、なにやら難しく理解するのに時間が…
せっかく教えて下さったのに、すぐ試せなくてすみません(TT
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2005-09-29 21:33
こんにちは、じゃんぬ です。

引用:

†raimu†さんの書き込み (2005-09-29 21:28) より:

グループヘッダーとフッターの事でしょうか。
それならあります。


raimu さんが作成された帳票内に存在しますか?
という意味だったのですが、もしあるのであればソートは強制されますよ。


_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
†raimu†
ベテラン
会議室デビュー日: 2005/08/23
投稿数: 61
投稿日時: 2005-09-29 21:48
ライムです。

セクションの構成は以下の通りです。
---------------
PageHeader
Detail
PageFooter
---------------
Groupと名前のついたものは存在していません。
また意味違えていましたら、すみません(TT
†raimu†
ベテラン
会議室デビュー日: 2005/08/23
投稿数: 61
投稿日時: 2005-09-30 15:23
http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/cpguide/html/cpconpopulatingdatasetfromdataadapter.asp
上記のサイトを参考に下記のように書いて、というかコピペしてみました^^;
--------------------------------------------------------------------------
Dim setuzoku As SqlConnection = New SqlConnection("接続文字列")

Dim SQL As SqlCommand = New SqlCommand("SQL文", setuzoku)

Dim DataAdapterDA As SqlDataAdapter = New SqlDataAdapter
DataAdapterDA.SelectCommand = SQL

setuzoku.Open()

Dim DataAdapterDS As DataSet = New DataSet
DataAdapterDA.Fill(DataAdapterDS, "テーブル名")

setuzoku.Close()
--------------------------------------------------------------------------
これでもソートされませんでした。
というか、これだけじゃソートされないのかな…
知恵をおかしください(TT
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2005-09-30 15:33
こんにちは、じゃんぬ です。

引用:

†raimu†さんの書き込み (2005-09-30 15:23) より:

これでもソートされませんでした。
というか、これだけじゃソートされないのかな…
知恵をおかしください(TT


どうやら、ソートされないみたいですね。
どこかのテーブルにそのままデータを落とせば、その順番になるみたいです。

どちらにしても、レポート側でソート設定した方が確実かもしれませんね。
グループ セクション追加して... (別に中身は空でも構いませんし)


_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
ぼのぼの
ぬし
会議室デビュー日: 2004/09/16
投稿数: 544
投稿日時: 2005-09-30 15:40
こんにちは〜。ちなみに、ActiveReportsのバージョンはいくつですか?

スキルアップ/キャリアアップ(JOB@IT)