- - PR -
CR.NETのPDFエクスポートについて
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2003-10-22 11:32
VS.NETのクリスタルレポートでPDFにエクスポートするときに
RecordSelectionFormulaに「レコード選択式」を指定して対 象データのみをエクスポートしようとしているのですが、全デ ータがPDFにエクスポートされてしまいます。 以下のようにコーディングしているのですが、何か不足してい るのでしょうか? また、クリスタルレポートのデザイナで「レコード選択式」を 定義しても全データがPDFにエクスポートされてしまいます。 ご教授の程、宜しくお願いいたします。 private void Page_Load(object sender, System.EventArgs e) { // ページを初期化するユーザー コードをここに挿入します。 ReportDocument CrystalReport = new ReportDocument(); CrystalReport.Load(Server.MapPath("./CrystalReport.rpt")); CrystalReport.RecordSelectionFormula = "{UserTbl.UserID} = \\"001\\""; // ↑ここで「レコード選択式」を指定しても反映しない。 CrystalReport.ExportOptions.ExportFormatType = ExportFormatType.PortableDocFormat; CrystalReport.ExportOptions.FormatOptions = new PdfRtfWordFormatOptions(); ExportRequestContext req = new ExportRequestContext(); req.ExportInfo = CrystalReport.ExportOptions; System.IO.Stream st = CrystalReport.FormatEngine.ExportToStream(req); byte[] b = new byte [st.Length]; st.Read(b, 0, (int)st.Length); Response.ContentType = "Application/pdf"; Response.BinaryWrite(b); Response.End(); } |
|
投稿日時: 2003-10-25 00:06
まず、文字列の引数はダブルクォートではなく、シングルクォートを使ってください。
これで解決しない場合は Refresh() を呼んでみてください。 |
|
投稿日時: 2003-10-27 09:21
bubunyaさんアドバイスありがとうございます。
いつも参考にさせて頂いております。 bubunyaさんのおっしゃるとおりに試してみたのですが、 やはりうまく動作しませんでした。 そこで、いろいろ試してみたのですが、以下のようにあらかじめSELECTした DataSetを作って、そのDataSetをクリティカルレポートにセットして実現させました。 しかし、RecordSelectionFormulaを使って実現できないのが未だに不明です...。 とりあえず、期待値を得ることができましたので、今回はこれでいこうと思います。 また、宜しくお願いいたします。 private void Page_Load(object sender, System.EventArgs e) { this.oleDbSelectCommand1.CommandText = "SELECT * FROM UserTbl WHERE UserID='001'"; this.oleDbDataAdapter1.Fill(this.dataSetSysDev1, "UserTbl"); ReportDocument CrystalReport = new ReportDocument(); CrystalReport.Load(Server.MapPath("./WorkRptCrystalReport.rpt")); CrystalReport.Database.Tables["UserTbl"].SetDataSource(this.dataSetSysDev1); // ここでDataSetをセット CrystalReport.ExportOptions.ExportFormatType = ExportFormatType.PortableDocFormat; CrystalReport.ExportOptions.FormatOptions = new PdfRtfWordFormatOptions(); ExportRequestContext req = new ExportRequestContext(); req.ExportInfo = CrystalReport.ExportOptions; System.IO.Stream st = CrystalReport.FormatEngine.ExportToStream(req); byte[] b = new byte [st.Length]; st.Read(b, 0, (int)st.Length); Response.ContentType = "Application/pdf"; Response.BinaryWrite(b); Response.End(); } |
1