2008-09-09 27 views
0

我需要設計一個用於在.NET中生成Excel報表的小型項目,該項目將發送給用戶使用。數據透視表在Excel中的選項

excel報告將包含數據透視表。

我沒有與他們太多的經驗,但我能想到的三種實現方案:

  1. 設置查詢它,填充它,把它斷開。這樣用戶就可以對值進行分組並稍微播放,但他無法刷新數據。
  2. 生成一個小型訪問數據庫,並將其與excel文件一起發送,連接到該數據庫。
  3. 將數據複製到excel(可能在其他工作表中)並連接到那裏的數據。這將使我認爲excel文件非常龐大。

對性能和可用性的最佳選擇是什麼?我還不知道另一種選擇嗎?

回答

0

由於這是一個小項目,您可以依靠Excel來從應用程序中存儲數據。開發和測試會更容易,維護也更簡單。

0

你是否必須保持數據「離線」?

我通常在做這些情況,你有很多的數據,是使用網絡上已有的sql服務器。如果要在辦公室使用,用戶將通過在線方式。

只要記住創建一個專用的用戶在sql-server上對此報表進行限制訪問,並且不要將「sa」密碼存儲在excel文件中。

如果你通過「發送給用戶」的意思是在辦公室之外的用戶,這將不是一個好的解決方案。如果是這樣的話,我會嘗試將這些數據包含在Excel表格中,看看它會變得多大。如果文件不是太大,那將是用戶最友好的解決方案。

此外,我發現此在線:Different Ways of Using Web Queries in Microsoft Office Excel 2003。這樣可以將數據存儲在公共網站上(如果需要,可以使用祕密URL),然後讓Excel提取數據。這樣您就不必使用大文件填充用戶收件箱,而且以後也可以在不重新發送Excel文件的情況下更新數據。

0

@Espo

沒有,用戶將不能訪問原始數據源,這就是爲什麼我在考慮創建與報表所需的數據子集的小訪問數據庫

+0

好的。請參閱我的關於在網絡服務器上存儲數據的補充評論 – Espo 2008-09-09 14:43:33

0

選項3聽起來最簡單的,我會認爲Excel就像Access存儲數據一樣效率不高。兩個文件的麻煩在於它們之間的鏈接即使在不同的位置也能正常工作。

0

@paulmorriss

也許......但問題是,有限制,多少數據單張紙​​上可以包含...我想選項2,除非有人告訴我這是不是關於性能的一個好主意