0

データベースにリンクするプログラムを C# で作成しています。私が抱えている問題は、特定の顧客の販売に関するクリスタルレポートを設定したいということです(常に1人がアイテムを購入したとき)。データバインドされたコンボボックスからその人を選びたいです。ボタンをクリックすると、1 人が購入したことだけがレポートに表示されます。残念ながら、すべてのクライアントを示すクリスタルレポートを作成しました。

その Crystal レポートに特定のクライアントを送信するにはどうすればよいですか?

4

2 に答える 2

0

アナンドが言ったように、データベースでフィルタリングするとレポートのパフォーマンスが向上しますが、パラメーターをクリスタルレポートに送信する場合は、コードで設定するだけです

myDataReport.SetParameterValue("parameterName", parameterValue);
于 2013-10-18T11:32:29.220 に答える
0

コンボ ボックスを使用する場合は、パラメーターを使用した SQL クエリが最適です。これを行う方法の小さな例を次に示します。

string customer = ComboBox.Text;
string connectionString =
ConsoleApplication1.Properties.Settings.Default.ConnectionString;
using (SqlConnection connection = new SqlConnection(connectionString))
{
connection.Open();
using (SqlCommand command = new SqlCommand(
"SELECT * FROM table WHERE table.customer LIKE @Name", connection))
{
//
// Add new SqlParameter to the command.
//
command.Parameters.Add(new SqlParameter("Name", customer));

...等々。レポート自体にパラメータを追加することもできます。レポートを実行するたびに、その値を求めるプロンプトが表示されます。それは少し簡単かもしれませんが、他のオプションよりも本当に遅いかどうかはわかりません。

それが役立つことを願って、

クリス

于 2013-10-18T15:38:17.703 に答える