2010-02-18 44 views
8

Tôi muốn tạo báo cáo, sử dụng báo cáo Crystal hoặc RDLC, không thực sự quan trọng. Tôi có thể lấy tất cả các nguồn dữ liệu với nhau như một chuỗi các hộp văn bản được tạo động, v.v ... nhưng làm thế nào để tôi thêm nó vào một báo cáo?C# tạo báo cáo theo lập trình

Ví dụ: tôi muốn tên khách hàng và tất cả các mặt hàng đã đặt hàng của họ trong báo cáo. Bây giờ tôi có thể nhận được tất cả các thông tin trong một mảng ... làm thế nào sau đó tôi sẽ đặt nó vào một báo cáo Crystal?

Bất kỳ lời giới thiệu hay nào bao gồm các thuật sĩ không phù hợp cho Báo cáo tinh thể sẽ thật tuyệt vời.

+0

Tại sao bạn cần RDLC trong ví dụ của mình? – Rookian

+0

Tôi không đặc biệt - chỉ cần tự hỏi làm thế nào để làm điều đó. Về cơ bản tôi chỉ cần tạo một báo cáo tùy chỉnh, giống như những gì bạn thấy trong Access. –

Trả lời

3

Mọi nguồn dữ liệu của báo cáo của bạn đều có tên (báo cáo trình đơn-> datasources, Có thể không chính xác vì tôi không có bằng tiếng Anh).

Giả sử rằng một trong các tên nguồn dữ liệu của bạn là prj_folder_classSample và classSample là một lớp của dự án của bạn. Sau đó, bạn cần thêm Danh sách vào báo cáo.

Hãy làm điều đó.

List<classSanple> lst = new List<classSample> 
lst.Add(...) //Add various instances of classSample 
BindingSource thisIsABindingSource = new BindingSource(); 
thisIsABindingSource.DataSource = lst; 
reportDataSource rds = new ReportDataSource("prj_folder_classSample", thisIsABindingSource); 

ReportViewer1.ProcessingMode = ProcessingMode.Local; 
ReportViewer1.LocalReport.EnableExternalImages = true; 
ReportViewer1.LocalReport.ReportEmbeddedResource = "YourProject.Folder.reportName.rdlc"; 
ReportViewer1.LocalReport.DataSources.Add(rds) 

Tôi làm theo cách này. Hy vọng Nó giúp bạn.

+0

Điều này có vẻ tốt và tất cả, nhưng làm thế nào sau đó tôi sẽ thay đổi hiển thị báo cáo - nơi mọi thứ được hiển thị vv. –

+0

Đi tới hộp văn bản trong trình thiết kế báo cáo, tìm kiếm thuộc tính có giá trị. Tùy chọn đầu tiên là Biểu thức. Nó sẽ mở ra một nhà thiết kế expresion. Có một phần có tên là Danh mục, và bên trong có một danh mục (tập dữ liệu, nguồn dữ liệu hoặc một cái gì đó như thế này) với tất cả các nguồn dữ liệu mà bạn đã thêm vào báo cáo của mình. Chọn nguồn dữ liệu và một trường của nguồn dữ liệu này, và sau đó trường sẽ hiển thị giá trị đã chọn trong thời gian chạy. – Jonathan

+0

Vì vậy, không có cách nào để chỉ định giá trị, như Report.Textbox1 = Form.Textbox1? –

-1

Nhìn vào liên kết này http://msdn.microsoft.com/en-us/library/cc281022.aspx#RDCE nếu bạn muốn tự động thay đổi báo cáo của mình. Tiện ích mở rộng này được gọi ngay trước khi báo cáo được hiển thị. Microsoft đã tạo ra một Mô hình đối tượng RDL. Với cái này bạn có thể tùy chỉnh toàn bộ báo cáo của bạn. Nhưng có thể bạn không cần phần mở rộng này. Chỉ cần thử trước nội dung của bạn trong Trình thiết kế báo cáo.

Các vấn đề liên quan