如何把DataSet設為CrystalReport的資料來源

原文連結

'建立一個你的報表物件
Dim crReport As YourReportType = New YourReportType()

'取得你的DataSet
Dim dsTemp As DataSet = GetDataSetFactory.ProduceYourDataSet()

'設定資料來源
MyPathReport.SetDataSource(dsTemp)

'設定報表參數(如果你有參數要傳進去的話)

'建立一個報表參數
CrystalDecisions.Shared.ParameterDiscreteValue MyPara =
New CrystalDecisions.Shared.ParameterDiscreteValue()

'宣報一個參數集物件
Dim MyValues As CrystalDecisions.Shared.ParameterValues

'設定參數值
MyPara.Value = "YourParamaterValue"

'取得你要設定的參數集物件
MyValues = crReport.DataDefinition.
ParameterFields("ParaName").CurrentValues()

'將參數加入
MyValues.Add(MyPara)

'將參數集設定回你要設定的參數
crReport.DataDefinition.
ParameterFields("ParaName").ApplyCurrentValues(MyValues)

'設定Viewer的 報表來源
CrystalReportViewer1.ReportSource = MyPathReport

Visual Studio 2005 Service Pack 1 已經開放下載(含安裝問題解法)

Visual Studio 2005 Service Pack 1 已經開發下載了,更新完畢之後,發現困擾我很久的 .NET Framework 2.0 造成自動將注音輸入法切換成全形的 bug 並沒有在這次的更新裡面一併解決,而得另外向微軟洽詢才能取得修正程式。這對使用者來說多少造成一些不便。在更新 VS2005 SP1 時,如果出現以下錯誤訊息:

找不到此產品的安裝來源。請確認安裝來源是否存在並您具有存取權。

可以試著依下列步驟解決:

1. 開啟控制台的「新增/移除程式」,勾選「顯示更新」核取方塊,並檢查看看 Microsoft Visual Studio 2005 項目底下是否有安裝以下更新:

  • KB898904
  • KB915364

有的話,將它們移除。

2. 看看是否有安裝 “Microsoft Visual Studio 2005 Web Application Projects”,有的話也先移除。

3. 執行 VS2005 SP1 更新程式。如果還是出現同樣的錯誤(你的 OS 可能是 Windows Server 2003),就繼續下個步驟。

4. 開啟控制台 > 「系統管理工具」>「本機安全性原則」,點選「軟體限制原則」。如果右邊面板顯示:「沒有定義軟體限制原則」,就在「軟體限制原則」項目上點右鍵,再選擇新增軟體限制原則。

5. 在右邊面板雙擊「強制」,接著會開啟一個對話窗,把「套用軟體限制原則到下列使用者」項目的選項改成「所有使用者,除了本基系統管理員」。接著「套用」,「確定」。

6. 再試試看安裝 VS2005 SP1 更新程式。

這樣應該就行了。

附帶一提,你可能會發現在安裝 VS2005 SP1 時,會重複安裝好幾次。這是因為在你的機器裡如果安裝了 N 套 Visual Studio 相關產品(例如:Visual C++, Visual Web Developer),就需要更新 N 次。

在.NET中獲取一台電腦名,IP地址及當前用戶名

1. 在ASP.NET中專用屬性︰
獲取服務器電腦名︰Page.Server.ManchineName
獲取用戶信息︰Page.User
獲取客戶端電腦名︰Page.Request.UserHostName
獲取客戶端電腦IP︰Page.Request.UserHostAddress

2. 在網絡編程中的通用方法︰
獲取當前電腦名︰static System.Net.Dns.GetHostName()
根據電腦名取出全部IP地址︰static System.Net.Dns.Resolve(電腦名).AddressList
也可根據IP地址取出電腦名︰static System.Net.Dns.Resolve(IP地址).HostName

3. 系統環境類的通用屬性︰
當前電腦名︰static System.Environment.MachineName
當前電腦所屬網域︰static System.Environment.UserDomainName
當前電腦用戶︰static System.Environment.UserName