2009-08-05 152 views
0

基本設置是我有一個Web應用程序調用SQL Reporting Services來運行報告。報告可以選擇以PDF或Excel格式返回。後臺代碼運行報告,獲取結果並使用httpResponse.BinaryWrite()寫出結果。大多數報告工作正常。 IE識別excel文件,啓動excel並打開工作表。但是,一些報告不會導致excel開始。有些最終會出現在IE中運行的某種Excel小部件中。這並不令人滿意。SQL Reporting Services和Excel

運行報告並顯示它們的代碼是完全通用的,並且被所有報告使用。所以我認爲這與報告有關......但我不知道這可能是什麼。在這一點上,我真的在黑暗中抓住。

它只發生在使用Excel 2003. Excel 2007工作正常。我目前無法獲得運行Excel 2003的開發機器,所以它一直是嘗試和調試的熊。

任何想法?

回答

1

該死推!我應該知道,因爲這有點過去。如果能幫助其他人,這裏會回答。問題在於我的報告名稱中包含文件名稱不好的字符。我使用報告的名稱構建臨時文件名。在這種情況下,我的報告標題包含「種族/種族」,所以我回傳的文件名稱包含「/」。

Excel 2007足夠複雜,可以處理它。 Excel 2003似乎有問題。可能是IE和Excel 2003/2007之間的交互。但我的兩臺測試機都在使用IE7。

0

也許你可以嘗試啓動Excel使用.NET代碼,比該實例中打開生成excel文件

+0

是的,我確實走了一段路。然後我停下來,因爲它開始覺得我讓問題比實際情況更困難。 – tidge 2009-08-05 21:40:28