標籤:des style blog http io color ar os 使用
原文:Visual Studio 2012使用水晶報表Crystal Report
SAP在 2013年1月14日 released SAP Crystal Reports,developer version for Microsoft Visual Studio - 2012 。
你可以從下面連結下載:
http://downloads.businessobjects.com/akdlm/cr4vs2010/CRforVS_13_0_5.exe
下載並安裝入你的電腦。安裝 完畢,可以看到那些曾經熟悉的工具。
練習練習,算是重溫一下使用Crystal report 建立報表的網頁。在SQL Server 2012中建立一個表:
CREATE TABLE [dbo].[CustomerOrders]( [CO] INT IDENTITY(1,1) NOT NULL PRIMARY KEY, [Item] NVARCHAR(40) NOT NULL, [Description] NVARCHAR(100) NULL, [Unit] NVARCHAR(10), [Quantity] INT NOT NULL, [Price] DECIMAL(18,4) NOT NULL )GO
CustomerOrders
表建立好之後,添加一些記錄。
INSERT INTO [dbo].[CustomerOrders]([Item],[Description],[Unit],[Quantity],[Price]) VALUES (‘W023-695-225‘,N‘火星‘,N‘個‘,‘3‘,‘10320.56‘),(‘W055-641-001‘,N‘土星‘,N‘個‘,‘2‘,‘90000.43‘),(‘T406-439-226‘,N‘地球‘,N‘個‘,‘6‘,‘23000.81‘),(‘G071-852-444‘,N‘水星‘,N‘個‘,‘1‘,‘15930.32‘),(‘U222-476-371‘,N‘木星‘,N‘個‘,‘8‘,‘55179.55‘)Go
View Code
建立一個預存程序,這個預存程序是擷取所有記錄,將為水晶報表或是asp.net可用。
CREATE PROCEDURE [dbo].[usp_CustomerOrders_GetAll]ASSELECT [CO],[Item],[Unit],[Description],[Quantity],[Price],([Quantity] * [Price]) AS [Amount] FROM [dbo].[CustomerOrders]GO
usp_CustomerOrders_GetAll
在Visual Studio 2012建立一個網站,建立一個網頁,拉CrystalReportViewer控制項入網頁。
拉入CrystalReportviewer控制項之後,網頁自然產生網頁yellow高亮代碼。再看看Web.config中添加了哪些代碼?
Ok,現在我們要串連資料庫了,因此還要配置Web.config,注意一下providerName="System.Data.SqlClient"此句,是為了在CryStal report中串連資料庫時,能快速找到資料庫。
<connectionStrings> <add name="InsusConnectionString" connectionString="Server=127.0.0.1;Initial Catalog=Demo;User ID=Arrot;Password=5236$88;Packet Size=8192;Max Pool Size=1000;" providerName="System.Data.SqlClient"/> </connectionStrings>
View Code
接下來,我們在網站下,建立一個CustomerOrders.rpt水晶報表,建立過程,可以參考下列動畫:
建立好CryStalReport之後,再來看看web.config添加產生了哪些代碼:
去Insus.NET的部落格,下載一個DLL,這是一個處理asp.net與SQL Server資料溝通組件。
http://www.cnblogs.com/insus/archive/2010/01/23/1654653.html
解壓之後,把DLL移至網站的BIN目錄中。
然後在App_Code目錄,建立一個對象。
現在,我們可以把CustonerOrders.rpt載入到CryStalReportViewer控制項去了:
運行看看:
下面是匯出銨鈕pop-up視窗:
匯出格式豐富多樣:
Visual Studio 2012使用水晶報表Crystal Report