ASP.NET Crystal Reports Preview in PDF


การแสดงรายงานด้วย Crstal report บน ASP.Net ถ้าคุณต้องการ Preview รายงาน บน PDF  โดยไม่ใช้ CrystalReportViewer แต่จะใช ReportDocument Export ไปเป็น PDF แล้วเปิดบนเบราว์เวอร์

จากบนทความ: ASP.NET Crystal Reports Export PDF เราไปเพิ่มปุ่ม View in PDF แล้วใส่โค้ดดังนี้:

image

 

แล้วใส่โค้ดดังนี้

protected void btViewPDF_Click(object sender, EventArgs e)
   {
       string strConn = WebConfigurationManager.ConnectionStrings[“NorthwindConnectionString”].ConnectionString;
       string sql = “”;

       if (txtCategory.Text != “” && txtProducts.Text != “”)
           sql = ” SELECT * FROM Categories Where CategoryName Like ‘%” + txtCategory.Text.Trim() + “%’; ” +
                 ” SELECT * FROM Products  Where ProductName like ‘%” + txtProducts.Text.Trim() + “%’;”;

       else if (txtCategory.Text != “”)
           sql = ” SELECT * FROM Categories Where CategoryName Like ‘%” + txtCategory.Text.Trim() + “%’; ” +
                 ” SELECT * FROM Products  Where CategoryID in (SELECT CategoryID FROM Categories Where CategoryName Like ‘%” + txtCategory.Text.Trim() + “%’);”;

       else if (txtProducts.Text != “”)
           sql = ” SELECT * FROM Categories Where CategoryID in (SELECT CategoryID FROM Products Where ProductName like ‘%” + txtProducts.Text.Trim() + “%’); ” +
                 ” SELECT * FROM Products  Where ProductName like ‘%” + txtProducts.Text.Trim() + “%'”;
       else
           sql = ” SELECT * FROM Categories; ” +
                 ” SELECT * FROM Products; “;

       System.Data.SqlClient.SqlConnection conn = new System.Data.SqlClient.SqlConnection(strConn);
       conn.Open();

       System.Data.SqlClient.SqlDataAdapter da = new System.Data.SqlClient.SqlDataAdapter(sql, conn);
       DataSet ds = new DataSet();
       da.Fill(ds);

       if (ds.Tables[0].Rows.Count > 0)
       {

           CrystalDecisions.CrystalReports.Engine.ReportDocument rpt = new CrystalDecisions.CrystalReports.Engine.ReportDocument();

           rpt.Load(Server.MapPath(“CrystalReport.rpt”));
           rpt.SetDatabaseLogon(“sa”, “enabler”, “.\\SQLEXPRESS”, “Northwind”);
           rpt.Subreports[0].Database.Tables[0].SetDataSource(ds.Tables[1].DefaultView);

           rpt.SetDataSource(ds.Tables[0].DefaultView);
           rpt.SetParameterValue(“pmMain”, “รายงานสินค้าตาม ประเภทเภทสินค้า”);
           rpt.SetParameterValue(“pmSub”, “รายงานสินค้า”, “product”);

           this.Session[“ReportSource”] = rpt;

          CrystalReportViewer1.Visible = false;

          ReportDocument repDoc = this.Session[“ReportSource”] as ReportDocument;
           Response.Buffer = false;
           Response.ClearContent();
           Response.ClearHeaders();

           repDoc.ExportToHttpResponse(ExportFormatType.PortableDocFormat, Response, false, “ProductDetail”);

       }

   }

 

ระบุเงื่อไขเรียบร้อย แล้วกดปุ่ม View in PDF คุณจะได้รายงานแสดงบน PDF

image

เกี่ยวกับ

Nuchit Atjanawat is a Microsoft MVP, GreatFriends Community Leader, WindowsITPro Columnist(Mr.Nano), Silverlight Business Application Instructor, Speaker in various Microsoft events, Author, passionate Blogger and a Software Engineer by profession. He has a very good skill over Silverlight, LightSwitch, C#, XAML & Blend. He shares his technical findings, tutorials in his technical blog. Follow his Blog and Facebook page to be updated on latest articles. - Technical Blog: https://janawat.wordpress.com - WindowsITPro Columnist(Mr.Nano): http://windowsitpro.net - The GreatFriends.Biz Community Discussion Board (nano): http://greatfriends.biz - witter: https://twitter.com/janawat - Facebook Page: https://www.facebook.com/nuchit - Instructor: http://bit.ly/GF250-01, http://bit.ly/GF150-02

เขียนใน Crystal Reports
2 comments on “ASP.NET Crystal Reports Preview in PDF
  1. หนึ่ง พูดว่า:

    ขอถามพี่นุชิต
    เรื่องของภาษาไทยเมื่อใช้ cR แปลงเป็น pdf แล้วภาษาไทยสระผิด สามารถแก้ไขได้รึไม่ครับ
    และก็เรื่องของตำแหน่งตอน preview กับตอน print ไม่ตรงกัน ขนาด font ไม่ถูกต้อง

    ทั้งหมดนี้สามารถแก้ไขได้รึเปล่าครับผม

    ขอบคุณครับ

  2. nuch พูดว่า:

    ตอนนี้ติดปัญหา preview กับ print มีขนาดไม่ตรงกันและขนาด font ไม่ถูกต้องเหมือนกัน ไม่ทราบว่าแก้ไขได้หรือไม่คะ ขอบคุณค่ะ

ใส่ความเห็น

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / เปลี่ยนแปลง )

Twitter picture

You are commenting using your Twitter account. Log Out / เปลี่ยนแปลง )

Facebook photo

You are commenting using your Facebook account. Log Out / เปลี่ยนแปลง )

Google+ photo

You are commenting using your Google+ account. Log Out / เปลี่ยนแปลง )

Connecting to %s

In Archive
%d bloggers like this: