盡管不能將多個元素映射到相同的單元格位置,但是可以將多個架構映射到一個工作薄。通常您會使用一個架構導入數據,使用另一個架構導出數據。Excel 使您很容易就可以將 XML 數據導入或導出架構映射。如果在 Excel 中打開未引用架構的 XML 文件,Excel 可以根據 XML 數據和結構推斷出一種架構。如果將工作薄保存為 SpreadsheetML,Excel 將在文件格式中保存詳細的映射信息,還將保存各個架構的完整副本。
Excel 不會根據附著的架構進行實時驗證,因為根據電子表格的二維布局,很難確定用戶上次處理的是哪一部分數據。但是,您可以隨時請求驗證,以通知用戶在解決方案的特定階段出現的任何錯誤。
盡管 Excel 沒有為 Web 服務提供本地支持,但由于工作表中的 XML 映射的作用類似于顯示變換,所以很容易在 Microsoft Visual Studio .NET 中使用代碼接收 Web 服務中的數據,然后使用 Excel 對象模型通過某種方法將數據直接放到映射中。與以前的數據處理方法相比,這顯著提高了工作效率。
Microsoft Office InfoPath 2003。自定義 XML 架構是每個 InfoPath 窗體解決方案的核心。InfoPath 窗體上的控件與架構所定義的 XML 元素一一對應,而 InfoPath 也強制根據架構對捕獲的信息進行驗證。在 InfoPath 中捕獲的最終信息以自定義 XML 架構的格式保存在一個 XML 文件中,InfoPath 沒有任何特殊的文件格式。您只能將一個架構用作一個窗體的基礎。
根據自定義架構設計窗體時,InfoPath 會根據架構指定的數據類型提供建議的控件,例如建議對 XSD 字符串類型使用單行文本控件,對 XSD 日期類型使用日期控件。
當 InfoPath 窗體將捕獲的信息另存為 XML 時,會在文檔頂部包含一個 PI(XML 處理指令)以標識相應的模板解決方案,使文檔總是與該特定的窗體模板相關聯。同樣,您可以打開具有該 InfoPath 窗體模板和該命名空間的任何 XML。
有關詳細信息,請參閱 InfoPath 2003 。
Microsoft Office Access 2003。Access 主要使用自定義 XML 架構導入和導出數據,以便于與其他系統交換數據。您還可以在導入或導出過程中應用 XSL 變換,從而更靈活地決定可以使用的 XML 格式。
導入 XML 數據時,如果 XML 引用了附帶的架構,Access 將根據架構定義識別數據類型。但是,將 XML 數據導入 Access 時不需要架構。如果未引用架構,Access 將根據傳入數據推斷出一種結構。
在以 XML 格式導出數據方面,Access 2003 也比以前的 Access 版本提供了更大的靈活性。您可以根據當前“篩選器”和“排序”視圖將導出限制為只導出選中的數據。Access 還可以按照 XML 格式導出相關的表格。這樣,您可以在一個標準 XML 文件中包括分層數據,以便于在其他系統中使用。
圖 3:Access 2003 中的導入 XML 選項 UI
對導入和導出 XML 的所有支持可以通過 UI 對象實現,也可以通過編程方式實現。圖 3 顯示了可用于導入 XML 的對話框。為了實現此目的,已增強了 XML 對象模型,包括新增了 TransformXML 方法并為 ExportXML 方法增加了參數。
建議繼續采取的步驟
? |
了解有關 XML 架構標準的詳細信息: Understanding XML Schema |
Word
? |
遵循在 Word 中使用自定義 XML 的基本原則: Microsoft Office Word 2003 XML:Memo Styles Sample |
? |
閱讀有關 Word XML 新功能的技術文章: New XML Features of the Microsoft Office Word 2003 Object Model |
? |
下載 Word XML 工具箱以有助于 Word XML 開發: Developing Word XML Using the Microsoft Office Word 2003 XML Toolbox |
Excel
? |
遵循在 Excel 中使用自定義 XML 的基本原則: XML and Microsoft Office Excel 2003:Creating an Expense Report Template |
? |
了解如何在 Excel 中使用 XML 更輕松地導入數據: Importing XML Maps, XML Lists, and Dynamic Chart Sources in Excel 2003 |
? |
閱讀有關 Excel XML 新功能的技術文章: 使用 Excel 2003 對象模型添加 XML 數據集成 |
Access
? |
了解如何在 Access 2003 中使用架構導入和導出數據: Importing and Exporting XSD Data in Microsoft Office Access 2003 |
? |
了解將 XML 數據從 Access 2003 傳輸到 Excel 2003 的一種方法: Transfer XML Data to Microsoft Office Excel 2003 with Microsoft Visual Basic .NET |
InfoPath
了解如何在 InfoPath 2003 中使用 XML 標準: How XML Standards Are Used in Microsoft Office InfoPath 2003
智能文檔
智能文檔是基于文檔的解決方案,它可以根據用戶在文檔中的位置為用戶提供相應的幫助信息、輔助數據、可用操作和自定義工具。當用戶進入文檔中的相應區域時,系統將動態顯示這些項目。使用這種解決方案,處理文檔會更容易,因為解決方案可以引導用戶并提供支持信息。Word 2003 和 Excel 2003 都支持智能文檔解決方案。在這些產品中,智能文檔解決方案不依賴于自定義 XML 架構功能。圖 4 顯示了使用 Excel 的智能文檔解決方案,其中提供了特定于任務的指導信息和工具,可以幫助用戶通過右側的任務窗格執行預算分析。智能文檔解決方案可以包括各種任務,例如簡化 Excel 中的財務分析或數字匯總,或在 Word 中管理銷售建議或合法窗體。
圖 4:Excel 中的智能文檔解決方案
智能文檔的優點
使用智能文檔,用戶可以更有效地工作,因為當他們在文檔中瀏覽時,內容會顯示在任務窗格中,這減少了搜索數據、填寫數據或查找幫助所需的時間。同時,用戶仍可以使用熟悉的 Word 和 Excel 功能。
您可以通過可編程的任務窗格啟用此增強的 UI。任務窗格中可以包含各種數據、幫助和常用控件,例如按鈕、復選框、選項按鈕、列表框超鏈接、圖像、自由文本等。這使您可以創建具有功能更全面的 UI 的解決方案、為用戶在文檔的特定部分執行特定的任務提供相關的內容,并擴展文檔以便與其他進程和系統實現無縫集成。您還可以管理任務窗格事件,代表用戶執行操作。所有這一切使組織能夠在管理信息時獲得更高的完整性。
您可以使用新機制部署智能文檔解決方案,用戶只要打開通過電子郵件獲得的文檔或從 Web 服務器或文件服務器下載的文檔就可以進行安裝。這些解決方案實現了高度的安全性,符合 Office 的安全設置,在部署站點時需要使用受信任的服務器,并要求對所有解決方案代碼進行簽名。智能文檔還可以從受信任的服務器上自動進行更新,從而使解決方案的升級更加容易。您無需直接安裝或管理客戶端代碼。
智能文檔技術
您可以使用現有的文檔,也可以從頭開始構建智能文檔解決方案。為此,必須將文檔附著到一個基礎 XML 架構上。有關詳細信息,請參閱 Custom-defined XML Schema Support 。然后,解決方案將以此架構為基礎,用相應的 XML 元素標記出解決方案。您可以編寫代碼,以響應當用戶的插入點進入映射到 XML 元素的文檔區域時觸發的事件。自定義代碼應在任務窗格中為用戶提供專用的 UI。
創建智能文檔的方法有多種,包括使用 ISmartDocument 接口、Visual Studio Tools for Office 2005 (Beta 1) 和 Information Bridge Framework。每種方法都提供不同特色的技術,適用于不同類型的解決方案的需要。請注意,不能使用 Microsoft Visual Studio Tools for the Microsoft Office System 2003 創建智能文檔解決方案,因為該軟件不支持通過編程方式訪問任務窗格。下表提供了每種技術的主要決定因素,后面的段落介紹了基礎技術。
表 1:智能文檔開發技術選項 | |||
解決方案 | 解決方案的預計實現時間 | 技術 | 其他注意事項 |
"Visual Studio Tools for Office, version 2005 Beta 1" |
2005 |
基于 .NET |
最靈活 |
ISmartDocument 接口 |
2004 + |
基于 COM 基于 .NET,且帶有 PIA 或 Vertigo 托管智能文件包裝程序 |
|
Information Bridge Framework |
2004 + |
基于 .NET 且帶有聲明編程模型,需要進行基礎結構投資 |
有助于減少文檔交互,重點在于提供業務系統數據/功能,適于多種解決方案 |
ISmartDocument 接口。如前文所述,智能文檔解決方案需要文檔具有基礎 XML 結構。然后,您可以使用基于 COM 的 ISmartDocument 接口生成驅動解決方案的自動機制。您編寫的代碼可以直接處理文檔、在任務窗格中顯示信息并與服務器端進程進行交互,例如檢索數據、將文檔或文檔內容路由到業務系統中以完成解決方案。
您可以使用基于 COM 或 .NET 的技術創建 DLL 以實現 ISmartDocument 接口,從而可以自由選擇要使用的語言。對于使用 .NET Framework 的實現,Office 2003 Edition 提供了一個 PIA,以簡化基于 .NET 的代碼(與基于 COM 的 ISmartDocument 接口進行交互)的創建任務。
要將用戶訪問的 Word 或 Excel 文檔模板連接到智能文檔解決方案所關聯的所有支持文件(例如 DLL、XSD 或 XSL),必須創建一個稱為“清單”的 XML 文件。清單文件用于標識使解決方案能夠正常工作(例如在服務器、客戶機或特定的目錄中)所需的所有解決方案組件、它們的版本以及安裝方式。您需要將解決方案文件和清單文件放在一臺受信任的服務器上。當用戶打開此類智能文檔時,Office 2003 Edition 中的清單技術將檢查文檔的內部元數據(創建解決方案時,內部元數據被指定為自定義文檔屬性),以找到指定的清單。然后檢查清單,確保整個解決方案可用、可運行、處在安全的位置并且可以根據需要下載任何新文件。這大大簡化了您的部署和維護工作,因為文檔或模板與驅動解決方案的代碼之間是彼此獨立的,您可以分別對它們進行版本控制和更新。
用 .NET Framework 的代碼實現 ISmartDocument 接口可能面臨很多困難,因為要正確設置所有引用、代碼要求和安全問題并非易事。盡管 MSDN 上提供了許多示例,但最好還是使用“包裝程序”接口,例如 Vertigo Software 創建的 Managed Smart Documents Wrapper 接口。它是 ISmartDocument 接口的精簡版本,使您現在可以使用基于 .NET 的技術更容易地生成和部署智能文檔解決方案,當最終版本問世時,再將代碼移植到 Visual Studio Tools for Office 2005 (Beta 1)。
Visual Studio Tools for Office 2005 (Beta 1)。除了其他用途外,這些工具還為 XML 元素提供了基于 .NET 的事件、到 XML 結構的數據綁定以及通過允許在任務窗格中使用自定義的 Windows 窗體用戶控件而提供的更大靈活性,從而改進了實現智能文檔解決方案的方式。最終的解決方案將從 .NET Framework 安全模型中受益。Visual Studio Tools for Office 2005 (Beta 1) 計劃于 2005 年在 Visual Studio 2005 問世前后發布。
有關 Visual Studio Tools for Office 2005 (Beta 1) 的詳細信息,請參閱 Visual Studio Tools for the Microsoft Office System 。
Information Bridge Framework。您也可以使用 Information Bridge Framework 來生成智能文檔。然而,使用 Information Bridge Framework 生成的解決方案需要在企業 Web 服務和元數據設計方面進行大量的前期投資。鑒于此,如果組織 (1) 正在進行 Information Bridge Framework 基礎結構投資,以便將來自多個后端系統的信息集成在一起;(2) 考慮可以使用 Information Bridge Framework 基礎結構的多個解決方案;和/或 (3) 打算使用聲明編程模型,那么就可以使用 Information Bridge Framework 技術。
有關 Information Bridge Framework 的詳細信息,請參閱 Information Bridge Framework 。
建議繼續采取的步驟
參閱以下資源:
ISmartDocument
? |
下載并開始使用 Office 2003 智能文檔軟件開發工具包 (SDK): Office 2003 Smart Document Software Development Kit (SDK) |
? |
學習“Hello World”托管智能文檔教程: The Definitive "Hello World" Managed Smart Document Tutorial |
? |
使用 Vertigo 智能文檔包裝程序更輕松地管理智能文檔: Smart Documents Made Easier for .NET Developers |
Visual Studio Tools for Office 2005 (Beta 1)
? |
Information Bridge Framework
? |
有關詳細信息,請參閱 Information Bridge Framework 。 |
“ 搜索 ” 任務窗格
“搜索”任務窗格是 Office 2003 Edition 中引入的一個新任務窗格,它使 Office 應用程序用戶可以從多個信息源中的任何一個信息源中搜索單詞或短語,而不需要退出 Office 應用程序環境。圖 5 顯示了“搜索”任務窗格的兩個示例,一個搜索 Office 2003 Edition 提供的默認信息源,另一個搜索自定義搜索服務。
圖 5:默認的和自定義的“搜索”任務窗格
“ 搜索 ” 任務窗格的優點
大多數 Office 程序都具有此功能,因此用戶不需要在各個窗口中瀏覽以快速查找信息(例如,通過瀏覽器執行搜索)。用戶可以使用一個簡便的方法,在文檔上下文中查找信息。通過搜索結果,用戶還可以使用一組功能將信息并入到自己的文檔中。
開發人員和組織也受益匪淺,因為通過實現一個直觀的、符合行業標準的 Web 服務,通過該服務提供企業信息,可以在任務窗格中輕松地將企業信息提供給所有(或選定的)用戶。可以從服務器上或通過策略來配置和更新提供給用戶的服務。
“ 搜索 ” 任務窗格技術
Word、Excel、Microsoft Office Outlook 2003、Microsoft Office PowerPoint 2003、Microsoft Office Publisher 2003、Microsoft Office OneNote 2003、Microsoft Office Visio 2003 和 Internet Explorer(如果安裝了 Office 程序)中都可以使用“搜索”任務窗格。Office 2003 Edition 提供的搜索選項包括基本資源,例如多種語言的辭典和字典、語言翻譯、聯機百科全書和 Web 搜索。還有一個簡單的 Web 服務 URL,可以通過激活該 URL 來啟動 SharePoint 站點搜索。
要在“搜索”任務窗格中提供信息,需要使用“搜索”任務窗格所需的方法名稱和架構來實現符合行業標準的 Web 服務。架構用于描述所需的查詢和結果 XML 流。您可以設置搜索以訪問本地和遠程數據源,這些數據源既可以位于公司防火墻后,也可以位于 Internet 上。可以使用 Windows 身份驗證或 Internet 密碼來確保安全性。“搜索”任務窗格與 Internet Explorer 共享 Cookie 和緩存。管理員可以從企業級別控制“搜索”任務窗格,使用搜索服務的 Discovery Web 服務自動提供服務或通知服務的可用性。
對于基本功能(例如,顯示結果以及將項目復制到剪貼板上),除了需要安裝 Office 之外,搜索服務不需要任何客戶端代碼。但是,您可以自定義搜索服務,在其中包含智能標記操作以實現擴展的文檔交互。智能標記需要在本地計算機上安裝 DLL。安裝后,即可通過搜索服務結果中的菜單提供具有完整客戶端功能的智能標記操作。
建議繼續采取的步驟
? |
下載并開始使用 Office 2003 搜索服務 SDK: Office 2003 Research Service Software Development Kit (SDK) |
? |
下載并開始使用搜索服務開發工具: Office 2003 Toolkit:Research Service Development Extras |
? |
查看有關創建搜索服務的 Web 研討會: Research Library Service in Microsoft Office 2003 |
? |
學習“Hello World”教程以創建自定義搜索服務: 權威 "Hello World" 自定義搜索服務教程 |
? |
了解如何在搜索服務中使用智能標記: Using Smart Tags with Research Services for the Microsoft Office System |
? |
學習創建搜索服務以搜索 Google.com: 使用 Office 2003 和 Google Web 服務 API 建立自己的搜索庫 |
智能標記
編寫智能標記是為了標識文檔中用戶感興趣的信息和區域。當用戶單擊標記區域或將鼠標光標懸停在標記區域上時,智能標記將以虛下劃線的形式出現,旁邊還會顯示一個菜單圖標。智能標記的上下文相關菜單將為用戶提供與文檔中出現智能標記的文本、單元格或區域有關的操作。圖 6 顯示了一個基本的智能標記下劃線,智能標記圖標顯示在左側的圖片中,結果菜單顯示在右側的圖片中。
圖 6:選擇智能標記
A. 標有智能標記的單詞
B. 將鼠標光標懸停在上面時顯示的圖標
C. 單擊后顯示的自定義菜單
智能標記的優點
您可以生成智能標記以標識文檔和電子郵件中的關鍵數據信息,使用戶可以直接從文檔中高效地執行與特定數據元素相關聯的自定義操作。智能標記可以將用戶鏈接到相關的企業數據、簡化繁瑣的任務或執行與所標記的數據密切相關的任意多個操作。
智能標記技術
智能標記是從 Office XP 中開始引入的,根據用戶和開發人員的反饋,在 Office 2003 Edition 中做了改進。在 Office 2003 Edition 中,Word、Excel、Outlook(將 Word 2003 作為電子郵件編輯器時)、Access 和 PowerPoint 都提供了智能標記功能。您也可以將智能標記與人名(使用 Outlook 中的“聯系人”菜單)、Office 2003 Edition 中的所有任務窗格以及 Microsoft SharePoint 產品和技術一起使用。在 Microsoft Internet Explorer 中,您也可以為網頁中嵌入的智能標記使用智能標記操作。
實現智能標記涉及到兩個主要接口,一個是 ISmartTagRecognizer,用于識別和標記文本;另一個是 ISmartTagAction,用于執行操作。Office 2003 Edition 通過使用擴展接口 ISmartTagRecognizer2 和 ISmartTagAction2 來提供新功能。盡管可以借助 PIA 使用 Visual Studio .NET 來實現智能標記,但通常還是通過生成 COM DLL 來實現這些接口。Visual Studio Tools for Office 2005 (Beta 1) 也提供了創建托管智能標記的功能,盡管此功能特定于基于 Word 和 Excel 文檔的解決方案。另一種方法是使用 Microsoft Office 智能標記列表 (MOSTL),通過 XML 文件實現更簡單的智能標記。識別器和操作通過類型標識符連接在一起,您甚至可以結合使用這些技術來實現它們。
Office 2003 Edition 中的智能標記包括以下改進:
? |
提高了在運行時修改智能標記操作菜單的能力,包括消除單個菜單項。這有助于增強解決方案的靈活性。 |
? |
支持級聯操作菜單,使您可以按層次結構從邏輯上對操作進行分組。這可以幫助用戶查找相關的操作、有助于縮短菜單的總長度或簡化合并操作,使它們與其他操作處理程序分離開來。 |
? |
提高了在計算機級別上注冊智能標記的能力,而不僅僅用于個人用戶。 |
? |
使用正則表達式來簡化識別器的編寫工作,從而改進了標記化和模式匹配。 |
? |
具有新的智能標記特性,例如過期的智能標記以及不能保存在文檔中的智能標記。 |
作為一項生成智能標記操作的技術,Information Bridge Framework 提供了聲明模型,用于顯示業務系統中與智能標記所識別的短語相關的信息和操作。
建議繼續采取的步驟
? |
下載并開始使用 Office 2003 智能標記 SDK: Office 2003:Smart Tag Software Development Kit (SDK) |
? |
了解如何在智能標記列表中使用常規表達式: Regular Expression Support in Microsoft Office System Smart Tags |
? |
了解如何在 Access 2003 中使用智能標記: Developing Smart Tag Solutions with Microsoft Office Access 2003 |
? |
了解如何在搜索服務中使用智能標記: Using Smart Tags with Research Services for the Microsoft Office System |
? |
學習在 Excel 中使用智能標記深入分析數據的示例: Use Smart Tags to Enable Data Drill-Down in Excel |
Web 服務支持
Web 服務是實現數據交換和遠程應用程序邏輯調用的行業標準,通過使用 XML 消息傳送和 Internet 技術在防火墻和不同的系統之間傳輸數據。盡管遠程訪問數據和應用程序邏輯并不是一個新概念,但以松散耦合的 Internet 協議方式完成這些操作卻是史無前例的。客戶端和 Web 服務之間需要滿足的唯一條件是接收者能理解所收到的消息。這樣,不管程序是使用何種語言編寫的、不管使用哪種組件模型,也不管運行在哪種操作系統上,都可以訪問 Web 服務。
Web 服務支持的優點
Web 服務使您可以更容易地將傳統系統中的數據提供給公司內的授權用戶。這些目標用戶通常是以前需要這些數據,但在使用 Web 服務的解決方案出現之前很難實現這一愿望的用戶。
Web 服務支持技術
建議使用 Visual Studio .NET 將 Office 2003 Edition 中的程序與 Web 服務連接起來。使用 Visual Studio,您可以通過很少的代碼更輕松地利用最新的 Web 服務標準,還可以獲得大量功能全面的對象,用于處理 XML 有效負載。然后,您可以將 Web 服務中的 XML 集成到 Office 程序的自定義架構功能中,反之亦然。
Visual Studio Tools for Office 是將 Word 和 Excel 文檔解決方案與 Web 服務集成的最佳開發工具。此外,Information Bridge Framework 可以幫助您使用 Web 服務和關聯的元數據在多個業務系統之間建立關系,然后可以將其并入到 Office 解決方案中。
如果需要從 VBA(或 Visual Basic 6)中訪問 Web 服務,您可以下載免費的 Microsoft Office 2003 Edition Web 服務工具包,它可以幫助您創建與基本 Web 服務進行交互所需的代碼。請注意,此工具包按原樣提供,并且只能通過對等新聞組獲得支持。其他開發人員可以通過手動解釋 SOAP 消息,在任何環境中與 Web 服務進行互操作。
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
