- PR -

[ASP.NET]ActiveReportのソート

投稿者投稿内容
†raimu†
ベテラン
会議室デビュー日: 2005/08/23
投稿数: 61
投稿日時: 2005-09-30 16:20
ライムです。返信ありがとうございます。

じゃんぬ様
>どこかのテーブルにそのままデータを落とせば、その順番になるみたいです。
>どちらにしても、レポート側でソート設定した方が確実かもしれませんね。
レポート側で設定…調べて試してみます。
そう言えばどっかで、レポートのクエリ取ってきて、
それにORDER BYつけるとか言う方法があったような…

ぼのぼの様
>ActiveReportsのバージョンはいくつですか?
ActiveReports for .NET Professional SP3 評価版
です。製品版届いていないので(TT
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2005-09-30 16:31
引用:

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

レポート側で設定…調べて試してみます。
そう言えばどっかで、レポートのクエリ取ってきて、
それにORDER BYつけるとか言う方法があったような…


バウンド レポートならば DB へ接続してデータソースの定義を設定すれば書けます。
アンバウンド レポートならば、スキーマで DB の "設計" を設定すれば書けます。

レポートデータソース ダイアログからできます。


_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
ぼのぼの
ぬし
会議室デビュー日: 2004/09/16
投稿数: 544
投稿日時: 2005-09-30 18:33
ぼのぼのです。

こっちでは、ActiveReportsのバージョンが違ったので、そのせいかなと思い、GrapeCityから最新版のSP3のトライアル版をダウンロードして試してみたんですが…

引用:

†raimu†さんの書き込み (2005-09-29 20:45) より:
---------------------------------------------------------------------
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
---------------------------------------------------------------------


このコードでソートされてしまいました。何が違うんでしょうね?(^^;
ちなみにrpxの方には、DetailにTextBoxを3つ並べて、DataFieldプロパティに列名を書いた以外は何もしていません。

解決策にはなってませんが、少なくとも私の環境では動作します、ということで、ご参考までに。
†raimu†
ベテラン
会議室デビュー日: 2005/08/23
投稿数: 61
投稿日時: 2005-09-30 18:49
ライムです。

じゃんぬ様>
>バウンド レポートならば DB へ接続してデータソースの定義を設定すれば書けます。
レポートデータソースで設定し、DBからデータを持って来ているのですが、
それからどうしたら良いか…検索してもそれらしいものも見つけられず(TT

ぼのぼの様>
>このコードでソートされてしまいました。何が違うんでしょうね?(^^;
あれ。それでソートされてしまいましたか?
なんででしょ…もうわからないことだらけです(TT
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2005-09-30 19:06
こんにちは、じゃんぬ です。

引用:

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

レポートデータソースで設定し、DBからデータを持って来ているのですが、
それからどうしたら良いか…検索してもそれらしいものも見つけられず(TT


クエリを書くダイアログのことですか?
http://www.ipublisher.jp/netmag/se200310-01.xml

引用:

あれ。それでソートされてしまいましたか?
なんででしょ…もうわからないことだらけです(TT


DataSource に渡したとしても、レポート内がバウンド レポートだと無視されたような...
つまり、帳票設計で使用した DB を見に行ってそのまま取得してきてしまうのです。
憶測ですが、バウンド レポートになっていませんか?


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

じゃんぬ様>
>クエリを書くダイアログのことですか?
当初からそのダイアログを使ってクエリを書いてコントロール配置してます。
初めに伝えておくべきでしたね。すみません(TT
そのクエリを書いた後どうするのか?という意味の質問です;;
クエリをソート条件に合わせて動的に変更できるのかな、と…

>憶測ですが、バウンド レポートになっていませんか?
バウンドレポートになってます;

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

引用:

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

そのクエリを書いた後どうするのか?という意味の質問です;;
クエリをソート条件に合わせて動的に変更できるのかな、と…


できるんですかね? 試したことないです... orz
なんせ、アンバウンド レポートで Dataset 渡しちゃう派ですから...

引用:

バウンドレポートになってます;


動的に変えるのであれば、アンバウンド レポートの方法しか知りません...
クエリ式を変えられそうなプロパティがなければ、できないのではないでしょうか?
それらしいプロパティはありますか?


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

アンバウンドはコーディング多くなってしまうから、
あまり使いたくないんですよね…

>クエリ式を変えられそうなプロパティがなければ、できないのではないでしょうか?
>それらしいプロパティはありますか?
ActiveReportクラスのメンバにDataSourceと言うのがあるから、
それで設定できないものか調べてみます。
うまく取得してORDER BYくっつけて渡せると良いですが(TT

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