共用方式為


附錄:資料庫登入程式碼增強功能

您已經順利將程式碼設定成可以在執行階段變更資料庫位置。在本範例中,使用的是相同的資料庫伺服器,而唯一不同之處在於您是以名稱來進行明確呼叫。

不過,現在您可以將此資料庫伺服器名稱字串,變更成任何其他包含 Northwind 資料庫的資料庫伺服器。如果您是搭配 Visual Studio 2005 或 2008 使用 Crystal Reports,即可存取增強的 API 以登入安全 SQL Server 資料庫。Crystal Reports API 有助於將登入資料庫所需的程式碼縮減至最少。

在之前的程序中,您學會了建立 SetDBLogonForReport() Helper 方法,以使用 foreach 迴圈來設定 Crystal 報表中各資料表的 ConnectionInfo 屬性。

本教學課程將要刪除 Helper 方法,並示範如何加入程式碼,以便使用 CrystalDecisions.Shared 命名空間中的 DataSourceConnections 類別,或使用 ReportDocument 類別的 SetDatabaseLogon() 方法。

DataSourceConnections 類別是 ArrayList 型別,內有 ConnectionInfo 執行個體以代表 Crystal 報表所使用的每個連線。您可以擷取位於特定索引的 ConnectionInfo 執行個體,然後呼叫 SetLogon() 或 SetConnection() 將登入資訊傳遞給報表。

SetLogon() 方法可用來設定使用者名稱和密碼。此方法使用您在報表中指定的預設伺服器和資料庫。SetConnection() 方法則可設定伺服器名稱、資料庫名稱、使用者名稱和密碼。

如需使用新的 API 程式碼,您必須完成「建立連接到安全 SQL Server 資料庫的報表」「繫結報表」的指示。

然後,您即可使用下列其中一個增強的 API 方法:

如果已完成「教學課程:使用 SQL 驗證登入安全 SQL Server 資料庫」中所有的程序,您必須先刪除在「修改專案以進行資料庫登入」中顯示的一些程式行,才能使用其中一個增強的 API 方法。

在本節中: