C#で加工したデータをクリスタルレポートに引き渡す方法です。
バージョンが結構古いですが、やり方は変わらないのではと思います。
利用バージョン:Visual Studio 2003に付属のクリスタルレポート
全お客さんにお知らせを入れた納品書を発行する事を想定し、テキストボックスに文章を入力し、その値をクリスタルレポートに出力します。
新規でレポートを作成し、フィールドエクスプローラのパラメータフィールドを利用します。
(ここではレポート名は"Report1.rpt"とします)
パラメータフィールドを右クリックし、「新規」を選び適当に「Comment」という名前をつけ「OK」をクリックします。
パラメータフィールドに追加されたCommentをドラッグ&ドロップでレポートに乗っけます。
これで準備は完了です。
次にC#で次のようなコードを書きます。
CrystalDecisions.CrystalReports.Engine.ReportDocument report =
new Report1();
report.SetParameterValue("Comment"
, "備考:\r\n" + this.CommentText.Text);
this.ReportView.ReportSource = report;
上記の場合は、Windowsフォームで同フォーム内にNameプロパティがCommentTextのテキストボックスと
NameプロパティがReportViewのCrystalDecisions.Windows.Forms.CrystalReportViewerオブジェクトが配置されていることが前提です。
これで、複数ページにまたがって同的な値を使いまわす事が可能です。