第 4 課:以程式設計方式更新報表定義
既然已經使用報表欄位從報表伺服器載入報表定義,並且您具有對它的參考,就必須更新報表定義。在此範例中,您將更新報表的 Description 屬性。
更新報表定義
以下列程式碼取代 Program.cs 檔案 (在 Visual Basic 中為 Module1.vb) 中 UpdateReportDefinition() 方法的程式碼:
private void UpdateReportDefinition() { System.Console.WriteLine("Updating Report Definition"); // Create a list of the Items Choices for the Report. The // ItemsChoiceType37 enum represents all the properties // available in the report and the ItemsElementName // represents the properties that exist in the current // instance of the report. List<ItemsChoiceType37> _reportItems = new List<ItemsChoiceType37>(_report.ItemsElementName); // Locate the index for the Description property int index = _reportItems.IndexOf( ItemsChoiceType37.Description); System.Console.WriteLine("- Old Description: " + _report.Items[index]); // Update the Description for the Report _report.Items[index] = "New Report Description"; System.Console.WriteLine("- New Description: " + _report.Items[index]); }
Private Sub UpdateReportDefinition() System.Console.WriteLine("Updating Report Definition") 'Create a list of the Items Choices for the Report. The 'ItemsChoiceType37 enum represents all the properties 'available in the report and the ItemsElementName 'represents the properties that exist in the current 'instance of the report. Dim reportItems As List(Of ItemsChoiceType37) = _ New List(Of ItemsChoiceType37)(m_report.ItemsElementName) 'Locate the index for the Description property Dim index As Integer = _ reportItems.IndexOf(ItemsChoiceType37.Description) System.Console.WriteLine("- Old Description: " & _ m_report.Items(index)) 'Update the Description for the Report m_report.Items(index) = "New Report Description" System.Console.WriteLine("- New Description: " & _ m_report.Items(index)) End Sub