專利名稱::智能客戶機內(nèi)插附件體系結(jié)構(gòu)的制作方法
技術領域:
:本發(fā)明涉及使用智能客戶機與另一應用程序接口。
背景技術:
:客戶關系管理(“CRM”)是一種標識、獲取和保留客戶的綜合方法。通過使組織能夠管理和協(xié)調(diào)跨多個渠道、部門、業(yè)務線和地理的客戶交互,CRM幫助組織最大化客戶交互的價值,并且推動出眾的公司業(yè)績。當今的組織必須管理跨多個信道—包括web、呼叫中心、區(qū)域銷售、經(jīng)銷商和合作伙伴網(wǎng)絡—的客戶交互。許多組織還具有擁有許多重疊客戶的多條業(yè)務線。難題是讓客戶能夠容易地以他們希望的任何方式與組織貿(mào)易—在任何時間、通過任何渠道、以任何語言或貨幣—并且讓客戶感到他們正在與在每一接觸點識別他們的單個、統(tǒng)一的組織進行交易。通過使過程流水線化并且為銷售、營銷和服務人員提供更好的、更完整的客戶信息,CRM使組織能夠建立更有利潤的客戶關系,并且減少操作成本。銷售組織能縮短銷售周期,并且提高關鍵的銷售業(yè)績度量,諸如每個銷售代表的收入、每個客戶的平均訂貨大小和收入。營銷組織能提高活動回報率和市場驅(qū)動的收入,而同時減少客戶開發(fā)和客戶獲取成本??蛻舴战M織能提高服務代理生產(chǎn)力和客戶保持力,而減少服務成本、響應時間和請求解決時間。產(chǎn)生令人滿意的忠誠客戶的公司很有可能具有重復的業(yè)務、較低的客戶獲取成本并且建立更強的品牌價值,所有這些將轉(zhuǎn)換成更好的業(yè)績。為實現(xiàn)CRM方法,組織使用了CRM軟件。例如,一個組織可能建立了關于其客戶的數(shù)據(jù)庫,該數(shù)據(jù)庫以不夠充分的細節(jié)來描述關系,因此管理、銷售人員、服務人員和合作伙伴能直接訪問信息、將客戶需求與產(chǎn)生計劃和供應進行匹配、提醒客戶的服務要求、了解客戶已經(jīng)購買過的其它產(chǎn)品、理解不同客戶的服務歷史以及協(xié)調(diào)銷售和營銷工作。因而,CRM軟件系統(tǒng)可包括(但不限于)數(shù)據(jù)結(jié)構(gòu),它存儲客戶的聯(lián)系信息、銷售歷史、服務歷史、銷售客戶信息、代表客戶執(zhí)行的各種活動、銷售時機和/或其它數(shù)據(jù)。盡管CRM軟件系統(tǒng)可以在組織的投資上提供實質(zhì)回報,但不是所有實現(xiàn)CRM系統(tǒng)的組織都已經(jīng)適當?shù)貜腃RM系統(tǒng)中獲利。例如,許多職員通常不登錄到CRM系統(tǒng)。當開發(fā)一個特定的銷售客戶或者計劃或執(zhí)行其它活動時,通常沒有便利的方式來尋求對CRM系統(tǒng)的訪問以記錄數(shù)據(jù)。在某些情況下,組織的職員沒有受到適當?shù)呐嘤杹硎褂肅RM軟件系統(tǒng)。有些職員可能根本不知道如何來訪問CRM系統(tǒng)。許多CRM系統(tǒng)是自定義的解決方案,它要求對個人進行大量的培訓。因而,許多CRM系統(tǒng)不足以用來最大化對投資的回報。另外,CRM數(shù)據(jù)和過程可駐留在多個沒有組合起來的數(shù)據(jù)存儲或系統(tǒng)中。這給CRM用戶產(chǎn)生組合所有這種事務、契約和概況概況信息以完整地理解客戶的完整關系的障礙。
發(fā)明內(nèi)容對上述有關CRM問題的一個建議的解決方案是使用眾所周知和常規(guī)使用的軟件應用程序,諸如CRM系統(tǒng)的智能客戶機(SmartClient)。由于應用程序是眾所周知的,因此組織將招致較少的培訓職員的負擔。如果應用程序是經(jīng)常使用的應用程序,諸如執(zhí)行時間安排和消息通信的正常運行的桌面應用程序,則職員能夠更方便地訪問CRM系統(tǒng)(例如,通過智能客戶機),并且因此,職員將更多地通過使用智能客戶機來使用系統(tǒng)。在一個例子中,來自微軟公司的Outlook和內(nèi)插式軟件一起,可以用作CRM系統(tǒng)的智能客戶機。然而,在此描述的技術也可以更一般地使用。即,除了CRM系統(tǒng)之外,在此描述的技術也可以用作各種類型企業(yè)應用程序的智能客戶機解決方案。類似地,在此描述的技術還應用于基于除Outlook之外的應用程序的智能客戶機。在一個實施例中,一種企業(yè)應用程序(例如,CRM系統(tǒng))的智能客戶機解決方案包括基本應用程序(例如,MicrosoftOutlook)和與基本應用程序接口的內(nèi)插式軟件。內(nèi)插式軟件允許使用基本應用程序來訪問企業(yè)應用程序的數(shù)據(jù)和功能。內(nèi)插式軟件包括用于訪問基本應用程序數(shù)據(jù)存儲中的項(對應于企業(yè)應用程序中的數(shù)據(jù))的接口管理器、與企業(yè)應用程序通信(通過web服務)的通信代理、以及與接口管理器和通信代理兩者通信、用于同步基本應用程序與企業(yè)應用程序的數(shù)據(jù)存儲之間數(shù)據(jù)的同步管理器。除了同步之外,智能客戶機數(shù)據(jù)也可以被轉(zhuǎn)換成基本應用程序的數(shù)據(jù),反之亦然。圖1描述了智能客戶機的圖形用戶界面的一個例子。圖2描述了智能客戶機的圖形用戶界面的一部分。圖3是描述使用智能客戶機來查看、編輯和/或創(chuàng)建帳號的過程的一個實施例的流程圖。圖4是描述使用智能客戶機來查看、編輯和/或創(chuàng)建各種數(shù)據(jù)項的過程的一個實施例的流程圖。圖5是描述用于從智能客戶機訪問應用程序的過程的一個實施例的流程圖。圖6是描述用于從智能客戶機訪問CRM應用程序的一個實施例的流程圖。圖7是描述將智能客戶機用于如CRM軟件系統(tǒng)等外部應用程序的體系結(jié)構(gòu)的一個實施例的框圖。圖8是描述智能客戶機的體系結(jié)構(gòu)的一個實施例的框圖。圖8A是描述應用程序接口的體系結(jié)構(gòu)的一個實施例的框圖。圖9是描述類分層結(jié)構(gòu)的一個例子的框圖。圖10是描述用于轉(zhuǎn)換數(shù)據(jù)項的過程的一個實施例的流程圖。圖11是描述用于轉(zhuǎn)換數(shù)據(jù)項的過程的一個實施例的流程圖。圖12是描述用于同步數(shù)據(jù)的過程的一個實施例的流程圖。圖13是描述在同步域數(shù)據(jù)時使用的過程的一個實施例的流程圖。圖14是描述在同步域數(shù)據(jù)時使用的過程的一個實施例的流程圖。圖15是描述在同步帳號數(shù)據(jù)時使用的過程的一個實施例的流程圖。圖16是描述用于刪除不再需要的帳號文件夾的過程的一個實施例的流程圖。圖17是描述用于從其它應用程序獲得數(shù)據(jù)的過程的一個實施例的流程圖。圖18是描述用于同步事務數(shù)據(jù)的過程的一個實施例的流程圖。圖19是描述用于同步事務數(shù)據(jù)的過程的一個實施例的流程圖。圖20是描述在服務器端執(zhí)行并且用于同步事務數(shù)據(jù)的過程的一個實施例的流程圖。圖21是描述在同步活動數(shù)據(jù)時使用的過程的一個實施例的流程圖。圖22是描述當正在訪問的帳號列表被改變時執(zhí)行的過程的一個實施例的流程圖。詳細說明I.用戶界面為使CRM系統(tǒng)能夠更被接受和使用,建議使用智能客戶機來與CRM系統(tǒng)交互??梢酝ㄟ^將用戶已經(jīng)感到適合和熟悉的現(xiàn)有應用程序與該應用程序的內(nèi)插附件相組合,來創(chuàng)建智能客戶機的一個例子。用戶感到適應和熟悉的應用程序的一個例子是合作、收發(fā)通信和/或時間安排應用程序。合作、消息通信和/或時間安排應用程序一個例子是來自微軟公司的Outlook。然而,在此描述的各個方面可以使用其它合作、消息通信和/或時間安排應用程序以及其它應用程序來實現(xiàn)。Outlook可以與智能客戶機內(nèi)插附件相組合,以創(chuàng)建能訪問CRM系統(tǒng)中數(shù)據(jù)的智能客戶機。智能客戶機內(nèi)插附件包括能通過各種方法與如Outlook等基本應用程序接口的軟件。例如,內(nèi)插附件可使用庫、應用程序接口、軟件開發(fā)工具包或其它接口。在一個實施例中,智能客戶機是幫助處理用戶工作流內(nèi)豐富的應用程序數(shù)據(jù)的一種應用程序(或應用程序集合),它在本地機器上,具有豐富的胖客戶機用戶界面經(jīng)驗,并且具有與基于web的計算相關聯(lián)的瘦客戶機的靈活性。在某些實施例中,智能客戶機可以“消費(consume)”基于可擴展標記語言(XML)的web服務或與其交互,XML是一種廣泛接受的計算機行業(yè)標準,它允許在全異的計算機系統(tǒng)、編程語言和軟件應用程序之間交換數(shù)據(jù)。智能客戶機能利用客戶機設備的本地處理能力,從而提供在純基于Web的計算(例如,諸如Web瀏覽器等瘦客戶機)中經(jīng)常缺少的額外的性能度量,它高度依賴于特定網(wǎng)絡帶寬的性能。許多智能客戶機(包括在此描述的智能客戶機)可以在線或離線使用,從而保證生產(chǎn)力即使在沒有連接時也不受到損害。智能客戶機還提供經(jīng)由因特網(wǎng)、本地客戶機或任何移動設備的寬廣的可訪問性和可用性。在此描述的技術可以用于許多不同的智能客戶機和許多不同的目標應用程序。為了示例的目的,下面的討論將使用一個包括結(jié)合內(nèi)插式軟件的Outlook的智能客戶機的實現(xiàn)。在這個例子中的目標應用程序是來自SiebelSystems公司的CRM系統(tǒng)。智能客戶機內(nèi)插附件將使用戶能夠使用Outlook來訪問SiebelCRM系統(tǒng)中的CRM數(shù)據(jù)。由智能客戶機內(nèi)插附件提供的大多數(shù)功能將被Siebel數(shù)據(jù)和功能環(huán)繞。并非CRM系統(tǒng)的每一個功能都將由智能客戶機內(nèi)插附件來實現(xiàn)。相反,智能客戶機試圖使那些專業(yè)人員天天要執(zhí)行的最普通的功能可用,然而更深層的CRM功能可通過瘦在線客戶機獲得。CRM數(shù)據(jù)也將在處于離線模式的Outlook中可用。圖1提供由Outlook內(nèi)的智能客戶機內(nèi)插附件提供的圖形用戶界面(GUI)的例子。該GUI包括頂層菜單10、工具欄12、導航窗格14、列表窗格16和細節(jié)窗格18。頂層菜單10包括標題,如File(文件)、Edit(編輯)、View(視圖)、Go(去往)、Tools(工具)、Actions(動作)、MyCRM(我的CRM)和Help(幫助)。菜單項File、Edit、View、Go、Tools、Actions和Help是Outlook菜單項。菜單MyCRM是由智能客戶機內(nèi)插附件添加到Outlook的新菜單。在其它實施例中,可使用不同于“MyCRM”的其它標簽用于頂層菜單(例如,“CustomerExplorer(客戶資源管理器)”)。點擊菜單項MyCRM展現(xiàn)下列選項CreateNewOpportunity(創(chuàng)建新機會)、CreateNewActivity(創(chuàng)建新活動)、CreateNewContact(創(chuàng)建新聯(lián)系人)、SyncManager(同步管理器)、About(關于)和Help(幫助)。工具欄12提供智能客戶機內(nèi)各種功能的快捷方式。導航窗格14示出通過智能客戶機可用的數(shù)據(jù)項的各種文件夾。某些文件夾,包括Calendar(日歷)、Contacts(聯(lián)系人)、DeletedItems(移刪除的項)、Drafts(草稿)、Inbox(收件箱)、Journal(期刊)、JunkE-mail(垃圾電子郵件)和Notes(筆記)是核心Outlook功能的一部分。其它文件夾,諸如MyCRM(我的CRM),是由智能客戶機內(nèi)插附件提供的智能客戶機功能的一部分。當用戶在一個文件夾上單擊時,列表窗格16將用與該文件夾相關聯(lián)的項列表填充。下面將提供更多的細節(jié)。如果用戶單擊列表窗格16中列出的一項,則在細節(jié)窗格18中提供關于該特定數(shù)據(jù)項的更多細節(jié)。如果用戶在列表窗格16中的一項上雙擊時,則一個包括關于該項的詳細信息的新窗口彈出。圖2提供一個響應于在列表窗格16中一項上雙擊時彈出的新窗口的例子。彈出窗口中的信息與細節(jié)窗格18中所示的信息相似。然而,圖2的彈出窗口使用戶能夠編輯信息。智能客戶機內(nèi)插附件具有它自己的文件夾分層結(jié)構(gòu),表示在導航窗格14的文件夾結(jié)構(gòu)中的CRM數(shù)據(jù)。當用戶在CRM數(shù)據(jù)分層結(jié)構(gòu)的頂部處的文件夾(標簽為MyCRM的文件夾)上雙擊時,或者當用戶點擊緊鄰于該文件夾的“+”符號時,將顯示該文件夾的子文件夾。在一個實施例中,子文件夾包括包括Links(鏈接)、MyAccounts(我的帳號)、MyActivities(我的活動)、MyOpportunities(我的機會)、MyContacts(我的聯(lián)系人)、Siebel和System(系統(tǒng))。文件夾MyAccounts(我的帳號)包括用于每個帳號的一個子文件夾,對于每個帳號,CRM數(shù)據(jù)可用于該特定用戶。每個帳號文件夾(例如,BechtelCorporation,BechtelNevadaCorp.,BechtelPlantMachinery,LeviStrauss&Co.)具有Activities(活動)、Contacts(聯(lián)系人)和Opportunities(機會)的子文件夾。CRM應用程序包括許多不同類型的數(shù)據(jù)項。在CRM應用程序中三個可用的數(shù)據(jù)項包括活動、聯(lián)系人和機會。活動是數(shù)據(jù)記錄,它存儲關于正在執(zhí)行的與客戶有關的某個正在進行的活動的信息。這可以是銷售活動、營銷活動、服務活動等。聯(lián)系人項包括聯(lián)系人數(shù)據(jù),諸如名字、地址等。機會項包括關于與客戶有關的各種機會的數(shù)據(jù)。這可以包括營銷機會、銷售機會等。對于在此描述的技術,不要求這些數(shù)據(jù)項的特定格式。各種機會數(shù)據(jù)項,活動數(shù)據(jù)項和聯(lián)系人數(shù)據(jù)項存在于CRM應用程序中。另外,其它類型的數(shù)據(jù)項也存在于CRM應用程序中。如上所述,在一個實施例中,智能客戶機沒有被設計成訪問每一類型的數(shù)據(jù)項。因而,在一個實施例中,選擇這三個數(shù)據(jù)項來訪問。在每個帳號下的Activity文件夾存儲與該帳號相關聯(lián)的活動數(shù)據(jù)項。每個帳號的Contacts文件夾存儲與該帳號相關聯(lián)的所有聯(lián)系人數(shù)據(jù)項。每個賬號的Opportunities文件夾存儲與該帳號相關聯(lián)的所有機會數(shù)據(jù)項。文件夾MyActivities存儲與用戶相關聯(lián)的所有活動數(shù)據(jù)項。文件夾MyOpportunities存儲與用戶相關聯(lián)的所有機會數(shù)據(jù)項。MyContacts文件夾(或者MySeibelContacts(我的Siebel聯(lián)系人))存儲與特定用戶相關聯(lián)的所有聯(lián)系人數(shù)據(jù)項。在許多情況下,一個特定的數(shù)據(jù)項既可以在一個帳號之下的文件夾中顯示,也可以在My[Activities/Contacts/Opportunities]文件夾中顯示。通過鼠標單擊選擇MyOpportunities文件夾引起在列表窗格中列出機會清單,其中用戶是該活動團隊的一部分。在任何機會項上雙擊彈出自定義的機會表單。這個表單包含選項卡,使用戶能夠在機會細節(jié)信息之間切換。選擇MyActivities文件夾在列表窗格中顯示一個活動列表。這些活動或者為用戶所擁有,或者用戶是這些活動的職員組的成員。用戶將能夠通過在列表窗格中的任何活動上雙擊來啟動客戶活動編輯表單。MySeibelContacts文件夾包含具有與CRM系統(tǒng)中相同可見性規(guī)則的聯(lián)系人。這些聯(lián)系人與其團隊是用戶所在或者用戶是該聯(lián)系人團隊的成員的帳號相關聯(lián)。在聯(lián)系人項上雙擊引起具有更多細節(jié)的彈出窗口。在圖1的Siebel4.0文件夾上點擊會在在Outlook上下文中打開SiebelCRM系統(tǒng)的一個實例,并導航到機會管理視圖。在Links文件夾上雙擊(或者在緊鄰于Links文件夾的“+”符號上單擊),展現(xiàn)預定義的可定制鏈接。在任何這些鏈接上點擊,在Outlook的上下文內(nèi)打開一瀏覽器實例,并且導航到由該鏈接定義的相關網(wǎng)站。為系統(tǒng)管理功能提供System文件夾。該文件夾包含標題為SyncErrors(同步錯誤)的子文件夾。SyncErrors子文件夾包含下列子文件夾OpportunitySyncErrors(機會同步錯誤)、ActivitySyncErrors(活動同步錯誤)和ContactSyncErrors(聯(lián)系人同步錯誤)。這些文件夾將包含已經(jīng)涉及同步過程中的沖突的記錄。用戶將能夠讀取這些文件夾的每一個內(nèi)的記錄。這些記錄是只讀的。然而,允許用戶刪除SyncErrors文件夾內(nèi)的這些記錄。在Outlook中的列表窗格可以為CRM文件夾定制。Outlook提供一種為列表窗格關聯(lián)基于XML的視圖定義的方法。該定義允許指定要顯示的列和列表中的行的格式化。下面是一個示例XML定義<?xmlversion=″1.0″?><viewtype=″table″><viewname>AccountListView</viewname><viewstyle>table-layoutfixed;width100%;font-familyTahoma;font-stylenormal;font-weightnormal;font-size8pt;colorBlack;font-charset0</viewstyle><viewtime>0</viewtime><linecolor>8421504</linecolor><linestyle>3</linestyle><usequickflags>0</usequickflags><rowstyle>background-color#FFFFFF</rowstyle><headerstyle>background-color#D3D3D3</headerstyle><previewstyle>colorBlue</previewstyle><arrangement><autogroup>1</autogroup><collapsethreads>1</collapsethreads><collapseclient></collapseclient></arrangement><column><heading>Subject</heading><prop>urnschemashttpmailsubject</prop><type>string</type><width>344</width><style>padding-left3px;;text-alignleft</style></column><multiline><width>0</width></multiline><groupbydefault>2</groupbydefault><previewpane><visible>1</visible><markasread>0</markasread></previewpane></view>II.工作流圖3是流程圖,描述使用智能客戶機來查看、編輯和創(chuàng)建帳號的一個實施例。在步驟102,用戶將雙擊導航窗格14的“MyAccounts”文件夾。這將引起所有單獨帳號的子文件夾在步驟104中被展現(xiàn)。例如,圖1的GUI示出四個獨立的帳號(BechtelCorporation,BechtelNevadaCorp.,BechtelPlantMachinery,andLeviStrauss&Co.)的各個文件夾。在另一個實施例中,用戶可以在緊鄰于文件夾的“+”上單擊。在步驟106,選擇這些子文件夾之一。即,用戶選擇一個特定的帳號。如果用戶在該文件夾上雙擊(或者在緊鄰于該文件夾的“+”上單擊),則該帳號文件夾的子文件夾在步驟108被展現(xiàn)。在一個實施例中,一組子文件夾可以包括該帳號的活動、聯(lián)系人和機會的文件夾。例如,圖1示出LeviStrauss&Co.的子文件夾。在其它實施例中,也可以使用其它子文件夾。在步驟110中,顯示特定帳號的列表窗格16。例如,圖1示出具有以下三個項的列表窗格帳號概況、PSS事件和MS銷售歷史。注意,如果在步驟106通過在一個文件夾上單擊來選擇它,則系統(tǒng)將顯示該列表窗格(步驟110),而不必展現(xiàn)子文件夾。顯示在列表窗格中的帳號概況項存儲帳號信息。列表窗格中的PSS事件項存儲與關聯(lián)于該帳號的客戶的服務事件相關的信息。銷售歷史項提供關于該特定帳號的銷售歷史的信息。在其它實施例中,在列表窗格中可以有其它的不同項。在步驟112,選擇列表窗格中的一項。如果用單擊選擇該項(步驟114),則與列表窗格中的該項相關聯(lián)的信息在細節(jié)窗格18中揭示。(例如,見圖1。)通常,在細節(jié)窗格18中顯示的信息是只讀的。盡管有可能編輯該信息,但在細節(jié)窗格18中該信息是不可編輯的。如果用戶想要編輯它,則用戶可在列表窗格中雙擊該項(步驟112),它將引起系統(tǒng)提供一個彈出表單116。圖2是彈出表單的一個例子。在彈出表單中可以編輯部分或全部信息。在步驟118,系統(tǒng)可以從用戶接收數(shù)據(jù),在彈出表單中編輯部分或全部信息。在步驟120存儲該信息。通常,用戶可通過點擊保存按鈕來存儲信息。注意,圖2的窗口包括一個關閉按鈕和一個“ViewinSiebel(在Siebel中查看)”按鈕。如果用戶點擊“close(關閉)”按鈕,則圖2的窗口將在不保存信息的情況下被關閉。如果用戶點擊“ViewinSiebel”按鈕,則將顯示一個彈出瀏覽器窗口,并且做出與SiebelCRM系統(tǒng)的連接(在該瀏覽器窗口內(nèi)),以便顯示直接來自SiebelCRM系統(tǒng)的信息。在與圖1的GUI交互的任何時候,用戶可以選擇“MyCRM”菜單。從該菜單,選擇之一是“createanaccount(創(chuàng)建一個帳號)”。如果用戶選擇“createanaccount”選項(步驟140),則將在步驟116向用戶提供彈出表單??梢詫?shù)據(jù)插入到該彈出表單中(步驟118)并且保存數(shù)據(jù)(步驟120)。如可以看到的,在圖2中顯示的彈出表單,它是響應于用戶雙擊列表窗格中的“accountprofile(帳號概況)”而顯示的,包括下列字段site(地點)、address1(地址1)、address2(地址2)、address3(地址3)、city(城市)、state(州)、ZIPcode(郵政編碼)、country(國家)、mainphonenumber(主要電話號碼)、mainfaxnumber(主要傳真號碼)、website(網(wǎng)站)、parentorganization(父組織)、marketsub-segment(市場子段)、parentinglevel(起源層)、industry(工業(yè))、subsidiary(子公司)、salesregion(銷售區(qū)域)、salesdistrict(銷售地區(qū))、subdistrict(子地區(qū))、ID、parentsite(父地點)、verticalposition(垂直位置)、category(類別)、accountowner(帳號所有者)、annualrevenue(年收入)和ITbudget(IT預算)。圖2的表單具有多個選項卡。上述字段全部都在帳號概況選項卡中。該選項卡可以提供所有其它選項卡的概要?!癮ddress(地址)”選項卡存儲特定的地址是否為主要地址的指示,并且存儲下列字段site、address1、address2、address3、city、state、ZIPcode和country?!皌eam(團隊)”選項卡列出該帳號的特定團隊中的所有人員。對于每個人,該選項卡列出firstname(名)、lastname(姓)和alias(別名)。當用戶點擊“hierarchy(分層結(jié)構(gòu))”選項卡時,他們將看見所選擇帳號的分層描述,以及與該帳號相關的其它帳號。那些屬于用戶的帳號可通過雙擊該帳號名字來訪問。當用戶在分層窗口中的可訪問帳號上執(zhí)行鼠標單擊時,導航窗格的“MyAccounts”文件夾中的活動焦點應轉(zhuǎn)移到該帳號,并且彈出屏幕將刷新以顯示該帳號(這是用戶用單擊選擇的)的數(shù)據(jù),默認到information(信息)選項卡。通過點擊“ITbudget(IT預算)”選項卡,系統(tǒng)將按會計年度顯示IT預算,包括預算總量、與CRM系統(tǒng)所有者相關聯(lián)的所花費的數(shù)量以及貨幣。在列表窗格中而不是帳號概況中選擇一項將使系統(tǒng)訪問外部系統(tǒng)來獲得與列表窗格中該特定項相關的數(shù)據(jù)。該外部系統(tǒng)有可能在遠程機器上。因而,可以有獨立的系統(tǒng)來存儲關于服務事件的信息。通過選擇列表窗格中的“PSSincidents(PSS事件)”,系統(tǒng)將訪問該外部系統(tǒng),并且在彈出菜單中或者在細節(jié)窗格18中提供數(shù)據(jù)。在某些實施例中,所提供的信息總是只讀的。在其它實施例中,彈出表單是可讀寫訪問的。同樣,外部系統(tǒng)可存儲銷售歷史信息,該信息可通過選擇列表窗格16中的銷售歷史項來訪問。圖4是流程圖,描述查看、編輯和創(chuàng)建機會、聯(lián)系人、活動和/或其它項的過程的一個實施例。在步驟160,選擇MyAccounts文件夾,使各個帳號的子文件夾在步驟162展現(xiàn)。在步驟164,通過點擊特定文件夾或者單擊緊鄰于該文件夾的“+”來選擇特定帳號之一。在步驟166,展現(xiàn)帳號的每個特征的子文件夾,包括機會、活動和聯(lián)系人的子文件夾。在其它實施例,可以有CRM系統(tǒng)的其它特征的子文件夾。在步驟168中,選擇特征的子文件夾之一。響應于選擇該子文件夾,在列表窗格16中顯示適當?shù)男畔?步驟170)。例如,如果選擇Opportunity子文件夾,則列表窗格將顯示機會項的列表。如果選擇Contacts子文件夾,則列表窗格將顯示聯(lián)系人項的列表。如果選擇Activities子文件夾,則列表窗格將顯示活動的列表。上面參考選擇一個帳號且隨后選擇該帳號的一個子文件夾的過程描述了步驟160至170??商鎿Q地,在步驟192用戶可以選擇MyActivities文件夾,MyOpportunities文件夾,MyCRM文件夾。響應于該選擇,系統(tǒng)將在列表窗格中顯示與當前正在使用系統(tǒng)的用戶的別名相關聯(lián)的所有適當?shù)幕顒?、?lián)系人或者機會。在步驟172,選擇列表窗格中的一項。如果通過單擊列表窗格中的該項來執(zhí)行選擇,則細節(jié)窗格18將在步驟174顯示該特定項的細節(jié)。如果在步驟172通過雙擊該項來選擇該項,則將在步驟176顯示一彈出表單。用戶將有機會在步驟178編輯部分或全部數(shù)據(jù)。在步驟180,在步驟178接收的數(shù)據(jù)將被存儲。另外,在操作圖1的GUI時,用戶可以選擇“MyCRM”菜單并且請求創(chuàng)建一個新的項(活動,聯(lián)系人,機會等)。響應于步驟190中的該選擇,系統(tǒng)將在步驟176提供彈出表單。用戶隨后將被允許提供數(shù)據(jù),該數(shù)據(jù)將在步驟178中被接收并且在步驟180中被存儲。當創(chuàng)建一個新的項時,系統(tǒng)將本地標識(LocalID))分配給這個新的項。該LocalID(本地ID)將由系統(tǒng)用于標識該項,直到將該項與CRM系統(tǒng)同步并且CRM系統(tǒng)提供一個CRM標識(ServerID)。在接收ServerID(服務器ID)之后,該項就由ServerID來標識。在一個實施例中,Opportunities的彈出表單將包括一個“Save”按鈕、一個“Close”按鈕、一個“ViewinSiebel”按鈕和各種選項卡。在一個實施例中,選項卡包括下列OpportunityInformation(機會信息)、Team(團隊)、Activities(活動)、Contacts(聯(lián)系人)、Notes(筆記)、Products(產(chǎn)品),Services(服務)和Partners(合作伙伴)。“OpportunityInformation”選項卡包括下列字段opportunityname(機會名字)、companyname(公司名稱)、createddate(創(chuàng)建日期)、salesstage(銷售階段)、duedate(到期日)、opportunitytype(機會類型)、opportunityowner(機會所有者)、status(狀態(tài))、currencycode(貨幣代碼)、licensingprogram(許可程序)、licensingsubtype(許多子類型)、表示是否有該客戶機的預告的標志、表示這是否是關鍵交易的標志、closingdate(截止日期)和description(描述)?!癟eam”選項卡將包括在與該機會相關聯(lián)的帳號的團隊中的人員。“Activities”選項卡將具有與該機會相關聯(lián)的所有活動的列表?!癈ontacts”選項卡將具有與該機會相關聯(lián)的所有聯(lián)系人的列表?!癗otes”可以包括由與該機會相關聯(lián)的任何用戶編寫的筆記?!癝ervices”表示與該機會相關聯(lián)的服務。以及“Partners”表示與涉及該特定機會的CRM的所有者相關聯(lián)的任何業(yè)務合作伙伴。當雙擊列表窗格中的“Acitivity”時(圖4的步驟172),所顯示的彈出表單將包括下列字段(除了“Save”按鈕,“Close”按鈕和“ViewinSiebel”按鈕之外)description(描述)、owner(所有者)、type(類型)、category(類別)、purpose(目的)、companyname(公司名稱)、contactname(聯(lián)系人名稱)、opportunity(機會)、duedate(到期日)、status(狀態(tài))和comments(注釋)。在某些實施例中,活動可以與聯(lián)系人和機會相關聯(lián)。在這種情況下,在Activities表單中可以有表示所關聯(lián)的Contacts或者Opportunities的ServerID的字段。當雙擊列表窗格中的“Contact”項時(步驟172),在步驟176中所顯示的彈出表單將包括五個選項卡General(常規(guī))、Details(細節(jié))、Activities(活動)、Certificates(證書)、AllFields(全部字段)。General選項卡將包括下列字段firstname(名)、lastname(姓)、jobtitle(職別)、company(公司)、fileas(文件為)、phonenumbers(電話號碼)、address(地址)、e-mailaddress(電子郵件地址)、displayas(顯示為)、webpageaddress(網(wǎng)頁地址)、instantmessagingaddress(即時消息通信地址)和description(描述)?!癉etails”選項卡將包括下列字段department(部門)、office(辦公室)、profession(職業(yè))、manager′sname(經(jīng)理名字)、assistant′sname(助理名字)、nickname(綽號)、title(頭銜)、suffix(后綴)、spouse′sname(配偶名字)、birthday(生日)、anniversary(周年紀念日)、directoryserver(目錄服務器)、e-mailalias(電子郵件別名)和address(地址)。“Activities”選項卡將包括與該聯(lián)系人相關聯(lián)的所有活動的列表?!癈ertificates”選項卡將包括與該聯(lián)系人相關聯(lián)的所有證書的列表?!癆llFields”選項卡包括用戶定義字段的列表。在一個實施例中,這可以包括與CRM系統(tǒng)中數(shù)據(jù)相關聯(lián)的用戶定義字段,包括department(部門)、用于訪問CRM系統(tǒng)中關于該特定人員的URL、以及表示各種屬性的各種標志。這些標志中的一些的例子包括該人員是否為關鍵聯(lián)系人、填了滿意調(diào)查表的人員、允許發(fā)送電子郵件給該人員、允許給該人員發(fā)送定期郵件、允許打電話、允許發(fā)傳真和其它適當數(shù)據(jù)的指示。圖1還示出名為“Links(鏈接)”的文件夾。該文件夾包括一組子文件夾。每個子文件夾與一個獨立的鏈接相關聯(lián)。在這些子文件夾(具有嵌入的URL)的任何一個上單擊鼠標將打開一個單獨的瀏覽器窗口并且導航到所嵌入的URL中指定的站點。在一個實施例中,這些鏈接可以在初始設置過程期間建立。一旦建立了這些鏈接,用戶就可以對所嵌入的URL作出改變。用戶也可以對URL列表作出添加。由用戶創(chuàng)建的附加鏈接在同步期間不被更新。在一個實施例中,只預先配置的鏈接將在同步過程期間被刷新。圖5是描述使用這些鏈接的過程的流程圖。在步驟200,用戶通過雙擊“Links”文件夾或者點擊緊鄰于該文件夾的“+”來選擇這個文件夾。在步驟202,響應于在步驟200中選擇“Links”文件夾,展現(xiàn)子文件夾。在步驟204,通過單擊這些子文件夾之一來選擇它。在步驟206,打開一個瀏覽器窗口。在步驟208,與所選擇的文件夾相關聯(lián)地存儲的URL被用于訪問該URL的目標。在步驟210,運行目標站點處的應用程序,或者與其交互。例如,目標站點可以包括關于用戶、活動、機會、聯(lián)系人、帳號、CRM系統(tǒng)(例如,Help(幫助))和有關客戶關系管理的其它數(shù)據(jù)的各種信息。圖6是描述使用智能客戶機內(nèi)的鏈接來直接訪問CRM系統(tǒng)的過程的一個實施例的流程圖。例如,圖1示出名為“Seibel4.0”的文件夾。在其它實施例中,可以使用其它名稱用于該文件夾。在圖6的步驟260,選擇該特定的CRM應用程序文件夾(例如,“Siebel4.0”)。在步驟262,打開一個瀏覽器窗口。在步驟264,與該特定文件夾相關聯(lián)的URL被用于直接訪問CRM系統(tǒng)。通常為用戶提供一個登錄頁面來登錄,并且用戶可以訪問CRM系統(tǒng)的任何可用功能。在某些實施例中,登錄信息可以存儲在智能客戶機中,因此,使用戶能夠繞過登錄頁面并且可以自動地登錄到CRM系統(tǒng)中。III.組件圖7是描述用于實現(xiàn)在此描述的系統(tǒng)的體系結(jié)構(gòu)的一個實施例的框圖。圖7示出智能客戶機300,它實現(xiàn)圖1和2的GUI和由圖3-6描述的過程。智能客戶機300可以用于創(chuàng)建、編輯和刪除CRM系統(tǒng)的活動對象、機會對象和聯(lián)系人對象。這些對象存儲在智能客戶機上并且與CRM系統(tǒng)同步。關于智能客戶機300的更多信息將在下面提供。智能客戶機300與網(wǎng)絡服務302通信。web服務是離散的代碼單元,其每一處理一組不同的任務。通常(但并不總是),web服務基于XML,并且可以跨平臺和操作系統(tǒng)調(diào)用,無論使用什么編程語言。web服務讓應用程序共享數(shù)據(jù),并且調(diào)用其它應用程序的能力,而不管那些應用程序是如何構(gòu)建的、它們在什么操作系統(tǒng)或平臺上運行、以及使用什么設備來訪問它們。盡管web服務可以保持彼此獨立,但它們可以將它們自己松散地鏈接到一個執(zhí)行特定任務的合作組中。web服務還使開發(fā)者有可能在構(gòu)建其應用程序的所有部分或者消費(使用)由其它人創(chuàng)建的web服務之間進行選擇。這意味著一個單獨的公司不必提供一個完整的解決方案的每一部分。展示(宣布和提供)web服務的能力為一個特定的實體創(chuàng)建新的收入流。在某些實施例中,在因特網(wǎng)上通過工業(yè)標準協(xié)議來調(diào)用web服務,這些協(xié)議包括SOAP;XML;以及通用描述、發(fā)現(xiàn)和集成(UDDI)。它們通??梢酝ㄟ^如環(huán)球網(wǎng)協(xié)會(W3C)等公共標準組織來定義。SOAP是基于XML的、由W3C標準化的消息通信技術,它指定了用于定位web服務、將它們集成到應用程序中以及在它們之間通信的必要規(guī)則。UDDI是免費提供的公共注冊中心,在這里可以發(fā)布和查詢web服務。在一個實施例中,web服務302是構(gòu)建和管理可升級的web服務的魔力公共平臺(AlchemyCommonPlatform)(ACP)。在智能客戶機300的環(huán)境內(nèi),ACP提供各種CRMweb服務,它們展示來自后端CRM系統(tǒng)的CRM數(shù)據(jù)操作。在一個實施例中,當CRM系統(tǒng)是Siebel系統(tǒng)時,Siebel數(shù)據(jù)和操作通過兩組服務來揭示。一組用于檢索Siebel對象,而另一組用于創(chuàng)建和修改Siebel對象。它們是讀服務310和寫服務312。由于性能原因,Siebelweb服務被設計為兩個獨立的服務。讀web服務310直接(通過因特網(wǎng))與SiebelOLTP數(shù)據(jù)庫320(或者其它數(shù)據(jù)存儲)通信,以保證檢索數(shù)據(jù)的最佳性能。寫服務312與Siebel應用程序服務器322通信,以便利用在創(chuàng)建和修改Siebel對象期間調(diào)用的所有商業(yè)規(guī)則。Siebel應用程序服務器322與數(shù)據(jù)存儲320通信。另外,取決于實施例,其它服務314可以用于與其它后端中間件324通信,以從各種數(shù)據(jù)庫(或者其它類型的數(shù)據(jù)存儲)326讀寫。例如,存在上述各種鏈接,可以用于訪問其它第三方系統(tǒng)。在一個實施例中,智能客戶機300通過因特網(wǎng)或者其它類型的網(wǎng)絡與web服務302通信。web服務302通過因特網(wǎng)或其它網(wǎng)絡解決方案與數(shù)據(jù)存儲、應用程序服務器322和中間件324通信。通信可以通過陸線、無線或者其它合適的技術。另外,通信可以使用TCP/IP或適合于特定應用程序的其它協(xié)議來實現(xiàn)。在一個實施例中,包括數(shù)據(jù)存儲320和應用程序服務器322的CRM系統(tǒng)是預先存在的軟件系統(tǒng)。在此描述的技術是用于實現(xiàn)與預先存在的web服務302和預先存在的CRM系統(tǒng)交互的智能客戶機300。智能客戶機300還包括通過與其它后端中間件324和數(shù)據(jù)庫326通信的其它服務314,將來自CRM系統(tǒng)和其它系統(tǒng)的數(shù)據(jù)集合起來的能力。CRM系統(tǒng)只是可以與智能客戶機一起使用的業(yè)務線應用程序的一個例子。在此描述的智能客戶機可以與CRM系統(tǒng)以外的應用程序一起使用。在一個實施例中,智能客戶機300正在本地機器上操作,而CRM系統(tǒng)(包括應用程序服務器322和數(shù)據(jù)存儲320)在遠離本地機器的一個或多個不同的機器上。web服務302可以在除智能客戶機和CRM系統(tǒng)之外的一個或多個不同機器上運行。在其它實施例中,部分或者全部web服務302可以在與智能客戶機或者CRM系統(tǒng)相同的機器上運行。某些實施例將不使用web服務;相反,代理372將直接聯(lián)系CRM系統(tǒng)(或者其它應用程序)。圖8是描述智能客戶機300的體系結(jié)構(gòu)的一個實施例的框圖。圖8描述了與應用程序接口362、web服務302和配置數(shù)據(jù)存儲384通信的智能客戶機內(nèi)插附件360。應用程序接口362與應用程序364(基本應用程序)通信,后者包括應用程序存儲366。智能客戶機可以用許多不同類型的基本應用程序來實現(xiàn)。在一個實施例中,圖8的智能客戶機是用合作、消息通信和/或時間應用程序來實現(xiàn)的。這一合作、消息通信和/或時間安排應用程序的一個例子是來自微軟公司的Outlook。在這個例子中,存儲366是Outlook對象存儲。智能客戶機也可以用其它合作、消息通信和時間安排系統(tǒng)或者其它類型的系統(tǒng)來實現(xiàn)。另外,執(zhí)行僅合作、僅消息通信、僅時間安排或者這三者的某種其它組合的應用程序也可以與智能客戶機一起使用。智能客戶機插件用作軟件的最后路程,使用戶能夠更有效地使用CRM系統(tǒng)。智能客戶機內(nèi)插附件允許Outlook能夠用作CRM系統(tǒng)的入口。應用程序接口362提供到應用程序364的接口。例如,應用程序接口可以是軟件開發(fā)工具包、庫、應用程序編程接口(API)或者其它接口。應用程序接口362應該提供對由應用程序364使用的對象和對應用程序364內(nèi)發(fā)生的事件的訪問。因而,響應于應用程序364內(nèi)的事件,應該將這個事件通知給使用應用程序接口362的實體,并且該實體應該能夠取得或者設置如數(shù)據(jù)對象和用戶界面對象等對象。在一個實施例中,應用程序接口362是軟件開發(fā)工具包,它是在Outlook對象模型之上的.NET包裝器。應用程序接口362向內(nèi)插附件360展示對象和事件。智能客戶機內(nèi)插附件360使用應用程序接口362與Outlook通信/接口。應用程序接口362提供創(chuàng)建表單和將表單與數(shù)據(jù)相關聯(lián)的能力。使用應用程序接口362的實體可以設置和檢索Outlook內(nèi)的標準和自定義屬性、創(chuàng)建/刪除/編輯對象、被通知(或俘獲)Outlook內(nèi)的事件、創(chuàng)建/改變/管理用戶界面(例如,大小、顏色、字體、標題、按鈕、字段等)、創(chuàng)建和改變菜單、創(chuàng)建和改變工具欄、創(chuàng)建和管理文件夾、以及執(zhí)行Outlook內(nèi)的其它活動。另外,為提供線程安全性,事件是從主UI線程調(diào)用的,并且集合類展示一個同步根(syncroot)。智能客戶機內(nèi)插附件360包括三個主要組件同步管理器370、服務代理372和用戶界面(UI)管理器374。服務代理372與web服務302一起工作,以與在服務器端的企業(yè)應用程序(例如,CRM系統(tǒng))通信來設置和取得數(shù)據(jù)。UI管理器374與應用程序接口362通信,它利用Windows編程模型的標準來定制必要的用戶界面對象。在內(nèi)插附件商業(yè)邏輯的上下文中,在適當?shù)臅r候,UI管理器372還用作導管來俘獲通過應用程序接口362展示的所有必要事件來與Outlook對象一起工作。同步管理器370提供如何將由Outlook存儲的CRM數(shù)據(jù)與在CRM系統(tǒng)處的數(shù)據(jù)同步的邏輯。同步管理器370可以被配置為用于優(yōu)先級(例如,后臺/前臺)和時序。同步管理器370與服務代理372、數(shù)據(jù)類380和配置類382通信。服務代理372和UI管理器374兩者也都與配置類382通信。同步管理器370使用服務代理372來訪問在CRM系統(tǒng)處(數(shù)據(jù)存儲320)的活動、機會和聯(lián)系人記錄。同步管理器370使用接口管理器374(通過數(shù)據(jù)類380)來訪問存儲在數(shù)據(jù)存儲366處并且對應于CRM系統(tǒng)處的數(shù)據(jù)(例如,活動、機會和聯(lián)系人記錄)的活動、機會和聯(lián)系人對象。配置類382是一組面向?qū)ο蟮能浖?,用于與配置數(shù)據(jù)存儲384通信以管理智能客戶機內(nèi)插附件360的配置數(shù)據(jù)。同步管理器370、服務代理372和UI管理器374將通過配置類382來讀取配置數(shù)據(jù)384,以便執(zhí)行在此描述的各種功能。數(shù)據(jù)類380與UI管理器374、同步管理器370和應用程序接口362通信。在一個實施例中,數(shù)據(jù)類380用于與在此描述的各種數(shù)據(jù)項一起工作。在一個實施例中,同步管理器370、服務代理372、數(shù)據(jù)類380和配置類382都是在一或多個計算設備上操作的軟件組件。圖8A是描述應用程序接口362的一個示例性實施例的體系結(jié)構(gòu)的框圖。圖8A示出應用程序364,它包括Outlook應用程序386、命令欄模塊387、名字模塊388、地址簿模塊389和表單模塊390。Outlook應用程序386是核心合作、消息通信和時間安排軟件應用程序。命令欄模塊387是實現(xiàn)工具欄和菜單的代碼。名字模塊388提供用于訪問Outlook應用程序386中的代碼的名字列表。全局地址簿389提供用于訪問全局地址簿的API。表單模塊390包括用于Outlook應用程序386的各種表單的定義。應用程序接口362包括COMAddInShim(COM內(nèi)插附件填補)模塊、加載器模塊393、核心模塊394和診斷模塊395。COMAddInShimf模塊392與Outlook應用程序386和加載器模塊393通信。在一個實施例中,通信是雙向的。在其它實施例中,COMAddInShim模塊392從Outlook應用程序386接收信息,并且為加載器模塊393提供Outlook應用程序的實例。COMAddInShim模塊392通過Outlook應用程序286的API將智能客戶機內(nèi)插附件360加載到存儲器中。加載器模塊393初始化智能客戶機內(nèi)插附件360、在智能客戶機內(nèi)插附件360的主入口點開始執(zhí)行、并且向智能客戶機內(nèi)插附件360提供Outlook應用程序的實例。加載器模塊393還與核心模塊394通信(到核心模塊394的通信或者是雙向的通信)。核心模塊提供與Outlook交互的功能。核心394提供具有方法重載、標準事件和診斷處理的Outlook對象的類;實現(xiàn)具有公共接口(郵件、聯(lián)系人、任務等)的對象繼承鏈;實現(xiàn)Outlook集合的可綁定數(shù)據(jù)集合;提供對全局地址簿的訪問;以及允許為任何項創(chuàng)建自定義.NET表單和Outlook表單的定制。核心模塊394與命令欄模塊387、名字模塊388、地址簿模塊389和表單模塊390通信(到它們的通信或者是雙向的通信)。應用程序接口對象將所有變化傳給本機對象,因而(在某些實施例中)消除了同步需求。自定義枚舉器允許通過如MAPIFolder(MAPI文件夾)項等本機集合的枚舉。系統(tǒng)被設計成當本機對象不再由應用程序接口對象使用時釋放本機對象。本機對象用作散列關鍵字來保持所有引用應用程序接口對象的引用計數(shù)。應用程序接口對象通知高速緩存,它們已經(jīng)被最終化(或者被處置),來減少計數(shù),并且一旦不再有引用,全局注冊表調(diào)用一個對象來釋放本機對象。本機對象的直接釋放,釋放了存儲器資源并且提高了性能。應用程序接口包裝器用可任選的參數(shù)實現(xiàn)Outlook對象方法的方法重載,并且用標準樣式事件來包裝Outlook引發(fā)的事件。診斷模塊395與核心模塊394通信,它提供診斷服務,包括出錯報告和異常處理。在一個實施例中,智能客戶機(包括智能客戶機內(nèi)插附件360、應用程序接口362和應用程序364)可以使用硬件、軟件或者軟硬件兩者的組合來實現(xiàn)。例如,智能客戶機可以在諸如臺式計算機、膝上型計算機、移動計算設備或者其它計算設備等計算設備中實現(xiàn)。智能客戶機技術不限于任何特定類型的計算設備。用于實現(xiàn)智能客戶機內(nèi)插附件360、應用程序接口362和應用程序364的數(shù)據(jù)和軟件存儲在一個或多個處理器可讀存儲設備上,包括硬盤驅(qū)動器、CD-ROM、DVD、光盤、軟盤、磁帶驅(qū)動器、RAM、ROM、閃存或者其它合適的存儲設備。在另一實施例中,部分或者全部軟件可以由專用硬件來代替,包括自定義集成電路、門陣列、FPGA、PLD和專用處理器。在一個實施例中,實現(xiàn)上述組件的軟件用于對一個或多個處理器編程,以實現(xiàn)在此描述的功能/過程。一個或多個處理器可以與一個或多個存儲設備(硬盤驅(qū)動器、CD-ROM、DVD、光盤、軟盤、磁帶驅(qū)動器、RAM、ROM、閃存或者其它合適的存儲設備)、外設(打印機、監(jiān)示器、鍵盤、定點設備)和/或通信接口(例如、網(wǎng)卡、無線發(fā)射器/接收器等)通信。智能客戶機將通過通信接口與CRM系統(tǒng)通信。圖9描述用于智能客戶機的各種數(shù)據(jù)類380的類分層結(jié)構(gòu)。BaseCRMObject(基本CRM對象)400是封裝跨所有事務對象的公共功能的基類。該公共功能是使用下列字段/屬性來實現(xiàn)的CurrentState(當前狀態(tài))、IsDirty(是否為臟)、IsShadowed(是否有陰影)、LocalID(本地ID)、ServerID(服務器ID)和ServerTimeStamp(服務器時間標記)。字段CurrentState(當前狀態(tài))存儲對象的當前狀態(tài)。該字段/屬性將由同步管理器370使用來確定是否需要將對象與服務器同步。該屬性可具有四個可能值New(新)、InSync(正在同步)、Updated(已更新)和InEdit(正在編輯)。如果CurrentState值為New,則剛才創(chuàng)建的記錄需要與服務器同步。對該記錄的后續(xù)編輯將不改變該記錄的狀態(tài)。一旦在客戶機上創(chuàng)建了記錄,它就保持在New狀態(tài)中,直到將它與服務器同步。當該記錄的CurrentState是InSync時,則當前正在將當前記錄與服務器同步。當處在這個狀態(tài)中時,該記錄應該是只讀的。如果當前的狀態(tài)是Updated,則記錄是最新的并且不需要執(zhí)行同步。如果當前狀態(tài)是“InEdit”,則該記錄當前正在被編輯,并且此時不應該同步它。字段/屬性IsDirty是布爾值,它確定自上次同步起客戶機上的記錄是否已經(jīng)被改變。同步管理器370將使用該字段/屬性來確定記錄是否需要與服務器同步。如果字段/屬性IsDirty被置位,則忽略CurrentState字段,并且在下一個同步周期內(nèi)同步該記錄。字段/屬性IsShadowed確定記錄是否具有陰影副本。智能客戶機中的許多項將在Outlook中具有重復的存儲。例如,活動可以既出現(xiàn)在一個帳號之下的Acitivity文件夾中,也能出現(xiàn)在“MyActivities”文件夾中,這取決于該活動的所有權(quán)。這些項將具有需要在同步和用戶編輯期間以特殊方式處理的多個副本。該標志向系統(tǒng)告警要更新該數(shù)據(jù)的全部副本?;蛘?,系統(tǒng)可以維護數(shù)據(jù)的一個副本,并且存儲指向該數(shù)據(jù)的多個指針。因而,正在被處理(例如,同步或編輯)的數(shù)據(jù)項的IsShadowed(是否有陰影)被置位,它將需要確認所有副本被更新。LocalID字段/屬性保存由客戶機為在客戶機上創(chuàng)建的新記錄生成的臨時本地標識。ServerID是保存由CRM系統(tǒng)使用的記錄的標識的串。ServerID是由CRM系統(tǒng)創(chuàng)建的,并且用于唯一地標識每個對象日期。ServerTimeStamp字段/屬性保存記錄的服務器時間標記。該ServerTimeStamp表示在服務器更新記錄的最后日期/時間。BaseCRMObject類400使用下列方法來封裝公共功能Edit(編輯)、Update(更新)、Save(保存)和Reset(復位)。Edit方法設置用于在客戶機上編輯的對象。如果記錄此時不能被編輯,則該方法返回假。這將是記錄的同步正由同步管理器370進行時的情況。Update方法適當?shù)馗掠涗洜顟B(tài),因此將記錄標記為用于同步(例如,IsDirty字段置位)。Save方法修改在客戶機上創(chuàng)建的新記錄的記錄狀態(tài)。Reset方法用于將記錄的狀態(tài)復位到前一日期。這是在用戶取消更新或者創(chuàng)建新記錄時使用的。BaseCRMPostItem(基本CRM發(fā)送項)類410、BaseCRMTaskItem(基本CRM任務項)類412和BaseCRMContactItem(基本CRM聯(lián)系人項)類414從BaseCRMObject類400繼承,并且通過適當?shù)刂貙懟悂韺崿F(xiàn)專用于對象的必要功能。這三個類的主要目的是為從它們導出的實際數(shù)據(jù)類提供必要的框架。例如,Activity(活動)類424被實現(xiàn)為Outlook任務項,它將從BaseCRMTaskItem類412繼承。Account(帳號)類420和Opportunities(機會)類422從BaseCRMPostItem類410繼承,因為機會和帳號都被映射到Outlook發(fā)送項。最后,Contact(聯(lián)系人)類426是從BaseCRMContactItem414導出的。在類分層結(jié)構(gòu)中引入這一層,允許在將來創(chuàng)建在適當位置具有必要的框架的其它事務類。這些類在內(nèi)部聚合對應的Outlook項,并且提供在運行時將Outlook項粘附和解除粘附到數(shù)據(jù)類對象的方法。BaseCRMObject400、BaseCRMPostItem410、BaseCRMTaskItem412、BaseCRMContactItem414、Account420、Opportunity422、Acitivity424和Contact類426都在智能客戶機內(nèi)插附件名字空間450中。Account類420和Opportunity類422聚合Post(發(fā)送)類430。Acitivity類424聚合Task(任務)類432。Contacts類426聚合Contact(聯(lián)系人)類434。Post類430、Task類和Contact類434都在Outlook名字空間452中。Post類430用于創(chuàng)建將帳號和機會記錄存儲在Outlook對象數(shù)據(jù)存儲366中的對象。Task類432用于創(chuàng)建將活動記錄存儲在Outlook數(shù)據(jù)存儲366中的對象。Contact類434用于創(chuàng)建將聯(lián)系人信息存儲在Outlook對象數(shù)據(jù)存儲中的對象。這些對象的主要數(shù)據(jù)字段是使用Outlook數(shù)據(jù)對象中的自定義屬性來實現(xiàn)的。即,對于CRM系統(tǒng)對象(例如,Account、Opportunity、Acitivity和Contact)中的每個字段,在Outlook對象中創(chuàng)建自定義屬性(例如,Post430,Task432和Contacts434)。與這些項相關聯(lián)的數(shù)據(jù)集也被存儲為自定義屬性;然而,在這種情況下,所有數(shù)據(jù)被序列化為XML串,并且隨后存儲在自定義屬性中。例如,IT預算信息被序列化為XML串。在一個實施例中,可用于Account對象的一組字段(例如,Post對象430中的自定義字段)包括地址1(address1)、地址2(address2)、地址3(address3)、城市(city)、州(state)、郵政編碼(ZIPcode)、國家(country)、站點(site)、名字(name)、子地區(qū)(subdistrict)、子段(sub-segment)、起源層(parentinglevel)、父組織(parentorganization)、父站點(parentsite)、子公司(subsidiary)、銷售區(qū)域(salesregion)、銷售地區(qū)(salesdistrict)、垂直工業(yè)(verticalindustry)、類別(category)、電話(phone)、傳真(fax)、網(wǎng)站(website)、帳號團隊(accountteam)、銷售ID(salesID)、年收入(annualrevenue)和IT預算(ITbudget)。也可包括其它字段,包括上面相對于用戶界面以及創(chuàng)建/編輯/查看帳號數(shù)據(jù)所討論的任何字段。在一個實施例中,Opportunity對象的字段(例如,Post對象430中的自定義字段)包括機會名字(opportunityname)、公司名字(companyname)、描述(description)、銷售階段(salesstage)、到期日(duedate)、狀態(tài)(status)、貨幣代碼(currencycode)、許可程序(licensingprogram)、許可子類型(licensingsubtype)、團隊領導(teamleader)、預報標志(forecastflag)、關鍵交易標志(criticaldealflag)、關閉日期(closingdate)以及創(chuàng)建日期(createdate)。也可以包括其它字段,包括上面相對于用戶界面以及創(chuàng)建/編輯/查看機會數(shù)據(jù)所討論的任何字段。在一個實施例中,Acitivity對象的字段(例如,Task對象432中的自定義字段)包括描述(description)、所有者(owner)、類型(type)、類別(category)、目的(purpose)、到期日(duedate)、聯(lián)系人名字(contactname)、公司名字(companyname)、帳號所有者(accountowner)、狀態(tài)(status)和注釋(comments)。也可以包括其它字段,包括上面相對于用戶界面以及創(chuàng)建/編輯/查看活動數(shù)據(jù)所討論的任何字段。Contact對象(例如,Contact對象434中的自定義對象)可以包括前綴(prefix)、名(firstname)、姓(lastname)、頭銜(title)、職位角色(jobrole)、部門(department)、電子郵件(e-mail)、電話號碼(telephonenumber)、移動電話號碼(mobilephonenumber)、傳真(fax)、關鍵聯(lián)系人(keycontact)、公司名字(companyname)、客戶滿意調(diào)查標志(customersatisfactionsurveyflag)、工作地址(workaddress)以及表示是否允許郵件、電子郵件、傳真和電話呼叫的指示。也可以包括其它字段,包括上面相對于用戶界面以及創(chuàng)建/編輯/查看聯(lián)系人數(shù)據(jù)所討論的任何字段。本發(fā)明不限于任何特定的字段集合。各種實施例可以使用不同的字段集合,只要適合于特定的實現(xiàn)。還有一個Domain(域)類442,它在智能客戶機內(nèi)插附件名字空間內(nèi)。該Domain類用于存儲域信息。在一個實施例中,域信息可以包括配置信息和用戶不能改變的系統(tǒng)信息。系統(tǒng)信息的例子可以包括關于鏈接的信息、關于不能改變的帳號的信息、關于用戶界面的信息和關于各種菜單的信息等等。Domain類442擴展了Object(對象)類444,后者在.NET框架內(nèi)的名字空間454中。IV.轉(zhuǎn)換數(shù)據(jù)提高生產(chǎn)力的一個特征是允許CRM(或者其它應用程序)平臺與智能客戶機平臺(例如,合作、消息通信和時間安排應用程序平臺—Outlook平臺)之間的轉(zhuǎn)換。例如,能夠?qū)RM數(shù)據(jù)項轉(zhuǎn)換成Outlook數(shù)據(jù)項和/或?qū)utlook數(shù)據(jù)項轉(zhuǎn)換成CRM數(shù)據(jù)項是有用的。圖10是描述將數(shù)據(jù)項從Outlook轉(zhuǎn)換成CRM系統(tǒng)(例如SiebelCRM系統(tǒng))的過程的一個實施例的流程圖。在步驟502,用戶請求將一個特定的數(shù)據(jù)項從Outlook數(shù)據(jù)項轉(zhuǎn)換成CRM數(shù)據(jù)項。在一個實施例中,用戶將從頂層菜單10的“MyCRM”下拉菜單中選擇“converttoCRM(轉(zhuǎn)換成CRM)”。這個請求將用于列表窗格中選中的當前數(shù)據(jù)對象?;蛘?,當用戶打開一個對象(例如,通過雙擊列表窗格16中的對象),可以有下拉菜單項、按鈕、語音識別工具或者其它用戶界面項,以選擇讓特定的Outlook對象轉(zhuǎn)換成特定的CRM應用程序?qū)ο?。用戶界面項將提供按照系統(tǒng)允許的可能性來選擇要創(chuàng)建的CRM對象類型的能力。在選擇了應該要轉(zhuǎn)換成CRM數(shù)據(jù)項的Outlook項之后,提供選取列表菜單來將該項與帳號相關聯(lián)。將提供可能帳號的列表。用戶可以選擇帳號來與新CRM數(shù)據(jù)項相關聯(lián)。在步驟504,創(chuàng)建Outlook名字空間452中的CRM對象。因而,如果CRM對象是聯(lián)系人,則創(chuàng)建Contact對象434。如果要創(chuàng)建的CRM對象是活動對象,則創(chuàng)建Task對象432。如果CRM對象是帳號對象或者機會對象,則創(chuàng)建Post對象430。在步驟506,從Outlook對象訪問Outlook對象中的相關數(shù)據(jù)。在某些實施例中,不是所有的數(shù)據(jù)將被轉(zhuǎn)換成CRM對象。一組規(guī)則將定義哪些數(shù)據(jù)應該或者不應該被轉(zhuǎn)換,如下面將討論的。在步驟508,將在步驟506中訪問的數(shù)據(jù)自動地填充到在步驟504中創(chuàng)建的新CRM對象中的各種字段中。在步驟510,附加的默認數(shù)據(jù)被自動添加到新CRM對象。注意,在某些實施例中,步驟510可以在步驟508和/或在步驟506之前執(zhí)行。默認數(shù)據(jù)可以基于用戶別名來選擇。即,當用戶通過提供憑證(用戶名/別名和密碼)登錄到計算機時,系統(tǒng)知道用戶是誰?;谟脩舻纳矸荩到y(tǒng)可以確定某個默認數(shù)據(jù)。在步驟512,將呈現(xiàn)具有來自新創(chuàng)建的CRM對象的數(shù)據(jù)的彈出表單(與上面針對行動、機會和聯(lián)系人所述的彈出表單相似)。在步驟514,用戶將有一個編輯該數(shù)據(jù)的機會。在步驟516,響應于用戶請求保存該數(shù)據(jù),在步驟516中將新對象保存在Outlook數(shù)據(jù)存儲中。在步驟518中,將Outlook數(shù)據(jù)存儲與CRM數(shù)據(jù)存儲同步,因此新創(chuàng)建的對象(基于從Outlook對象的轉(zhuǎn)換)被存儲在CRM系統(tǒng)中。注意,同步可立即發(fā)生,或者在以后的時間發(fā)生(例如,在一個已調(diào)度的同步時間)。圖11是描述將CRM對象轉(zhuǎn)換成Outlook對象的過程的一個實施例的流程圖。例如,用戶想將CRM系統(tǒng)中的聯(lián)系人添加到用戶的Outlook聯(lián)系人中。要這么做,將執(zhí)行圖11的過程。在圖11的步驟542,用戶請求將當前的CRM對象轉(zhuǎn)換成Outlook項。例如,用戶可選擇列表窗格16中的CRM對象。用戶可以從“MyCRM”頂層菜單510中的下拉菜單選擇轉(zhuǎn)換成Outlook的選項。另外,如果用戶正在訪問彈出表單,則該彈出表單可包括轉(zhuǎn)換成Outlook的下拉菜單、按鈕或其它用戶界面項。該用戶界面項將按照所允許的可能性,提供關于要轉(zhuǎn)換成哪種類型的Outlook項的選擇。在步驟544,響應于步驟542中的請求,將創(chuàng)建一個新的Outlook對象。所創(chuàng)建的Outlook對象將是用于Outlook軟件應用程序的標準Outlook對象,并且存儲在Outlook數(shù)據(jù)存儲366中。在步驟546,將訪問要轉(zhuǎn)換的相關數(shù)據(jù)。注意,并非所有來自CRM系統(tǒng)對象的數(shù)據(jù)將被轉(zhuǎn)換成Outlook。將預先定義要轉(zhuǎn)換哪些特定的字段,如下面所解釋的。在步驟546,訪問那些預先定義的字段。在步驟548,在步驟546中訪問的那些字段被自動地填充到Outlook對象的適當字段中。在步驟550,將默認的數(shù)據(jù)自動地添加到Outlook對象。在某些實施例中,部分或全部默認數(shù)據(jù)可以基于用戶別名、CRM中的對象所相關的帳號、或者其它準則。在步驟552,新創(chuàng)建的Outlook的日期在可編輯表單中顯示。在步驟554,向用戶提供編輯新創(chuàng)建的Outlook對象中的數(shù)據(jù)的能力。在步驟556,用戶可以保存新的Outlook項,它將使GUI更新。在一個實施例中,CRM機會可以被轉(zhuǎn)換成Outlook日歷約會。Outlook電子郵件和Outlook日歷約會都可以被轉(zhuǎn)換成CRM機會。CRM活動可以被轉(zhuǎn)換成Outlook日歷約會或Outlook任務。Outlook日歷約會和Outlook任務都可以被轉(zhuǎn)換成CRM活動。CRM聯(lián)系人可以被轉(zhuǎn)換成Outlook聯(lián)系人。Outlook聯(lián)系人、Outlook電子郵件消息和Outlook日歷約會可以被轉(zhuǎn)換成CRM聯(lián)系人。這些轉(zhuǎn)換的每一個將在下面更詳細地討論。注意,執(zhí)行比上面所列的轉(zhuǎn)換更少的轉(zhuǎn)換或者執(zhí)行附加/不同的轉(zhuǎn)換的系統(tǒng)也在本發(fā)明的范圍內(nèi)。當將Outlook日歷約會轉(zhuǎn)換成CRM機會時,下面的字段基于從Outlook對象讀取(步驟506)被自動地填充到新的CRM機會對象(步驟508)。首先,約會的主題行被存儲在機會對象的機會名字字段中。其次,Outlook約會的文本或者描述字段被存儲在機會對象的機會描述字段中。第三,將操作Outlook系統(tǒng)的用戶的用戶別名添加到CRM機會對象的機會所有者字段。另外,下面的字段接收默認的數(shù)據(jù)(步驟510)類型、狀態(tài)、銷售階段、貨幣代碼、機會團隊主記錄和機會團隊“活動”標志。用串“standard(標準)”來加載類型字段。狀態(tài)字段被加載為活動的。銷售階段被選擇為“期望(prospect)0%”。貨幣代碼被設置為美元。機會團隊主記錄包括用戶別名。機會團隊活動標記設置為True(真)。另外,在某些實施例中,向用戶提供一個對話框,其中將新創(chuàng)建的機會與該用戶的現(xiàn)有帳號相關聯(lián)。當Outlook中的電子郵件項被轉(zhuǎn)換成CRM系統(tǒng)中的機會對象時,電子郵件主題行變成機會名字,電子郵件文本變成機會描述,而Outlook別名變成機會所有者。另外,類型、銷售階段、貨幣代碼、機會團隊主記錄和機會團隊“活動”標志被設置為如上相對于日歷約會所述的默認數(shù)據(jù)。當CRM機會項被轉(zhuǎn)換成Outlook日歷約會時,機會名字被加載到約會的主題字段中,將機會描述加載到約會的描述或者文本字段中,并且將機會到期日加載到日歷約會的開始時間日期和結(jié)束時間日期。另外,將Outlook對象中的整天事件(all-day-event)標志置位,來表示一個整天事件。當將CRM活動轉(zhuǎn)換成Outlook日歷約會時,活動描述字段被映射到Outlook主題字段,活動到期日被映射到日歷約會日期,以及活動注釋被映射到日歷約會文本。當將CRM活動轉(zhuǎn)換成Outlook任務時,活動描述被映射到Outlook任務主題字段,活動到期日被映射到任務到期日,以及活動注釋字段被映射到任務文本。當將Outlook日歷約會轉(zhuǎn)換成新的CRM活動時,日歷約會的主題行被映射到活動描述,日歷約會日期被映射到活動到期日,日歷約會文本被映射到活動注釋字段,且操作Outlook的用戶的別名被映射到活動所有者字段。另外,活動類型字段默認為“會議(meeting)”。當Outlook電子郵件項被轉(zhuǎn)換成CRM活動時,電子郵件主題行被映射到活動描述字段,電子郵件文本被映射到活動注釋字段,且電子郵件用戶的Outlook別名被映射到活動所有者。當將Outlook任務轉(zhuǎn)換成CRM活動時,任務主題字段被映射到活動描述字段,任務到期日字段被映射到活動到期日字段,文本被映射到活動注釋,且Outlook別名被映射到活動所有者。當從Outlook日歷約會轉(zhuǎn)換到CRM聯(lián)系人時,日歷約會的標題被映射到CRM聯(lián)系人的前綴,Outlook約會的發(fā)自(姓)字段被映射到CRM聯(lián)系人的姓,Outlook約會的發(fā)自(名)字段被映射到CRM聯(lián)系人的名,發(fā)送者的電子郵件地址被映射到CRM聯(lián)系人的主要電子郵件,且Outlook別名被映射到CRM聯(lián)系人對象的聯(lián)系人團隊主字段。另外,CRM聯(lián)系人的關鍵聯(lián)系人字段默認為“是(Yes)”。當從Outlook電子郵件轉(zhuǎn)換到CRM聯(lián)系人時,電子郵件的標題被映射到聯(lián)系人的前綴,發(fā)自字段(姓)被映射到聯(lián)系人的姓,發(fā)自字段(名)被映射到聯(lián)系人的名,發(fā)送者的電子郵件地址被映射到聯(lián)系人的主要電子郵件地址,且Outlook別名被映射到聯(lián)系人團隊主名字。另外,關鍵聯(lián)系人字段被設置為“是(Yes)”值。當在Outlook聯(lián)系人與CRM聯(lián)系人之間轉(zhuǎn)換時,應用下列映射Outlook聯(lián)系人中的標題被映射到CRM聯(lián)系人的前綴,Outlook聯(lián)系人的姓被映射到CRM聯(lián)系人的姓,Outlook聯(lián)系人中的名被映射到CRM聯(lián)系人對象中的名,Outlook聯(lián)系人的電子郵件地址被映射到CRM聯(lián)系人的主要電子郵件地址,Outlook聯(lián)系人的業(yè)務電話被映射到CRM聯(lián)系人的電話號碼字段,Outlook用戶的用戶別名被映射到CRM聯(lián)系人的聯(lián)系人團隊主字段,Outlook聯(lián)系人的移動電話字段被映射到CRM聯(lián)系人的移動電話字段,且Outlook聯(lián)系人的傳真字段被映射到CRM聯(lián)系人的傳真字段。當創(chuàng)建CRM聯(lián)系人時,關鍵聯(lián)系人字段默認為“是(Yes)”。另外,如果子公司為空(基于用戶的帳號選擇),則該數(shù)據(jù)默認地可以被自動填充。注意,在一個實施例中,所有被轉(zhuǎn)換成CRM對象的Outlook對象是智能地加標簽的。即,當Outlook電子郵件、日歷約會、聯(lián)系人和任務已經(jīng)被轉(zhuǎn)換成帶有表示“該Outlook項按照下列別名被轉(zhuǎn)換成在下列日期的Siebel記錄”的消息的Siebel記錄之后,智能客戶機內(nèi)插附件將一個智能標簽(例如,描述字段中的自定義字段或文本)添加到它們之上。在一個實施例中,智能標簽將標識Siebel記錄的ServerID。類似地,智能標簽可被添加到從Siebel記錄創(chuàng)建的Outlook項。智能標簽可以包括Siebel記錄的ServerID。V.同步智能客戶機可以與多個系統(tǒng)同步,以便將來自各種系統(tǒng)的數(shù)據(jù)集合起來并更新它們。同步管理器370負責Outlook存儲366與CRM系統(tǒng)(以及其它系統(tǒng))之間使用代理372(通過web服務302通信)的該同步過程。同步管理器370將作為已定義時間表上一個獨立的工作者線程運行。時間表將在智能客戶機內(nèi)插附件360啟動時從配置文件(存儲在配置數(shù)據(jù)存儲384中)中檢索。對于不同類型的數(shù)據(jù)可以有不同的時間表。例如,事務CRM數(shù)據(jù)的時間表可以要求比域數(shù)據(jù)的時間表更頻繁的同步。同步管理器370也將支持按需同步,這意味著用戶通過用戶界面可以請求同步周期立即執(zhí)行。例如,用戶可以從下拉菜單10選擇“MyCRM”,以選擇立即執(zhí)行同步過程。用戶也可以使用下拉菜單來改變配置數(shù)據(jù)并且強迫新的配置數(shù)據(jù)與一個不同的同步時間表一起加載。在一個實施例中,同步配置信息包括至少三個數(shù)據(jù)項domainfrequency(域頻率)、transactionfrequency(事務頻率)、和syncofflinefrequency(同步離線頻率)。domainfrequency是以分鐘為單位的時間,在上次同步之后經(jīng)過這個時間需要同步域數(shù)據(jù)。transactionfrequency是以分鐘為單位的時間,在上次同步之后經(jīng)過這個時間需要同步事務數(shù)據(jù)。syncofflinefrequency是以分鐘為單位的時間,在經(jīng)過這個時間之后同步線程喚醒以確定Outlook的在線/離線狀態(tài)。在一個實施例中,智能客戶機內(nèi)插附件的配置將使用XML文件來注入。下面是一個示例配置文件<?xmlversion=″1.0″encoding=″utf-8″?><CEConfig><Agent><SWSServerName>ju24nm</SWSServerName><SecureHttp>0</SecureHttp><AccountReadUrl>/SiebelRead/Account.asmx</AccountReadUrl><AccountWriteUrl>/SiebelWrite/Account/AccountWrite.asmx</AccountWriteUrl><DomainReadUrl>/siebelread/Domain.asmx</DomainReadUrl></Agent><!--頻率值將以分鐘為單位,例如10分鐘、120分鐘、2小時--><SyncFrequency><DomainFrequency>120</DomainFrequency><TransactionFrequency>5</TransactionFrequency><SyncOfflineFrequency>1</SyncOfflineFrequency><LastServerSyncSchedule>2004-01-14T11:45:39.0000000-08:00</LastServerSyncSchedule></SyncFrequency><LocalData><DomainData><Products>Domain/Products.xml</Products><Services>Domain/Services.xml</Services>…</DomainData></LocalData></CEConfig>在上面的XML代碼中,<Agent>(代理)部分將包含代理組件所要求的配置項。這包括Siebelweb服務的服務器名字和到各種Siebelweb服務的相對URL端點。<SyncFrequency>(同步頻率)部分將包含與配置信息有關的同步時間表。<localdata>(本地數(shù)據(jù))部分將聯(lián)系與客戶機器中本地存儲有關的配置項,如通道(pass-through)域文件。在某些實施例中,帳號數(shù)據(jù)的同步是預設的(例如30天)。在其它實施例中,配置文件將包括用于設置帳號數(shù)據(jù)的同步周期的條目。同步管理器將檢查上述文件來確定執(zhí)行同步的各種時間。鑒于該配置信息,同步管理器370將執(zhí)行同步循環(huán)。在一個實施例中,同步循環(huán)被定義為執(zhí)行一個向上同步操作,隨后是向下同步操作。向上同步操作是將對智能客戶機上的CRM數(shù)據(jù)所做的改變和/或添加與服務器同步的過程。向下同步操作是從服務器檢索經(jīng)更新和新的記錄并且更新這些記錄的智能客戶機副本的過程。圖12是描述用于執(zhí)行同步循環(huán)的過程的一個實施例的流程圖。在步驟580,同步線程啟動/喚醒。在步驟582,同步線程確定Outlook是否在線。如果Outlook沒有在線,則同步線程在步驟584回到睡眠。如果Outlook在線,則同步線程確定web服務302是否可用。這是使用代理372來完成的。如果web服務不可用,則同步線程在步驟584回到睡眠。如果web服務可用,則在步驟588確定域數(shù)據(jù)是否需要同步。域數(shù)據(jù)是用戶一般不會改變的系統(tǒng)數(shù)據(jù)。在一個實施例中,域數(shù)據(jù)每30天同步一次。在其它實施例中,可以使用其它時間周期。如果域數(shù)據(jù)要同步,則在步驟590同步該域數(shù)據(jù)。在步驟592,同步帳號數(shù)據(jù)。帳號數(shù)據(jù)是關于各種帳號的每一個的信息,并且用戶一般不會改變帳號數(shù)據(jù)。如果在步驟588確定不需要同步域數(shù)據(jù),則過程在步驟592繼續(xù)同步需要同步的的帳號數(shù)據(jù)(如果這是同步帳號數(shù)據(jù)的時間)而不同步域數(shù)據(jù)。在同步帳號數(shù)據(jù)之后,在步驟594同步需要同步的事務數(shù)據(jù)(如果這是同步事務數(shù)據(jù)的時間)。事務數(shù)據(jù)是關于聯(lián)系人、機會和活動的可變數(shù)據(jù),它們一般可以由用戶改變。在步驟596,確定同步線程應該睡眠多少時間。這基于上述配置信息。在步驟598,系統(tǒng)存儲為事務數(shù)據(jù)、帳號數(shù)據(jù)和/或域數(shù)據(jù)進行最后一次同步的時間。隨后,在步驟584,同步線程進入睡眠。某些帳號數(shù)據(jù)可能是只讀的。圖13和14是描述同步域數(shù)據(jù)(圖12的步驟590)的更多細節(jié)的流程圖。圖13和14的過程是獨立的線程,它們可以串行地或者并發(fā)地運行。在圖13的步驟620,確定是否存在更多域數(shù)據(jù)要處理。當首次運行該步驟時,有可能有域數(shù)據(jù)。當處理了所有域數(shù)據(jù)時,圖13的方法完成。如果還有更多的域數(shù)據(jù)要處理,則在步驟622訪問下一個域數(shù)據(jù)文件。在一個實施例中,域數(shù)據(jù)存儲在域數(shù)據(jù)文件中。通常,系統(tǒng)將具有一個域數(shù)據(jù)文件列表以供查找。在步驟624,如果系統(tǒng)查找的特定文件存在,則確定域數(shù)據(jù)是否需要同步。如果域數(shù)據(jù)不要同步,則過程循環(huán)回到步驟620。如果域數(shù)據(jù)需要同步,則在步驟628將特定文件標記為用于同步,并且過程隨后循環(huán)回到步驟620。如果在步驟624確定文件不存在,則將文件標記為用于同步。通常,通過域數(shù)據(jù)同步,存儲在CRM服務器上的域數(shù)據(jù)被寫到智能客戶機。沒有從智能客戶機到服務器的向上同步。因而,如果文件不存在,則文件必須從服務器中檢索。如果文件太舊并且需要同步,則該文件由仍在服務器上的當前文件覆寫。圖14的過程包括從服務器檢索數(shù)據(jù)的步驟。系統(tǒng)循環(huán)通過需要同步的所有域數(shù)據(jù)文件。在步驟650中訪問一個數(shù)據(jù)文件。在步驟652從服務器檢索該數(shù)據(jù)文件的新域數(shù)據(jù)。在步驟654將檢索到的域數(shù)據(jù)存儲在所訪問的文件中。如果沒有更多文件要考慮,則圖14的過程完成。如果有更多的文件要考慮,則過程循環(huán)返回到650,使得其它數(shù)據(jù)可以被檢索。圖15,16和17提供同步帳號數(shù)據(jù)過程(圖12的步驟592)的更多細節(jié)。圖15提供同步帳號數(shù)據(jù)的整個過程。圖16描述刪除舊帳號文件夾的過程。圖17提供關于從其它應用程序訪問數(shù)據(jù)過程的細節(jié)。在一個實施例中,圖15,16和17的每個過程是并發(fā)或者順序地運行的獨立線程。在某些實施例中,這些線程可以彼此相互依賴。在圖15的步驟670,同步管理器370向代理372作出從CRM應用程序獲得帳號數(shù)據(jù)的請求。同步管理器370具有一個帳號列表。這稱為帳號列表。對于帳號列表上的每個帳號,對web服務302作出獲得該帳號的帳號數(shù)據(jù)的請求。在步驟672,從web服務302檢索帳號數(shù)據(jù)。另外,自從上次同步起在服務器上創(chuàng)建的任何新帳號被發(fā)送回同步管理器370。在步驟674,將呈現(xiàn)一個對話框(也稱為選取列表),它帶有其中有數(shù)據(jù)的所有帳號的列表。這將包括先前由用戶選取的帳號、新帳號以及過去用戶沒有選擇過的帳號。用戶隨后可以選擇從帳號列表中添加或者減去智能客戶機將對其跟蹤記錄的帳號。在用戶選擇要處理的帳號之后,相應地更新帳號列表。在后面的步驟中將更新這些帳號每一個的數(shù)據(jù),并且將更新圖1的GUI上的文件夾。在步驟676,確定是否還有更多的帳號需要處理。如果這是第一次執(zhí)行步驟676,則會有帳號要處理。如果沒有更多的帳號要處理,則圖15的方法完成。如果有更多的帳號要處理,則在步驟678訪問下一個帳號。在步驟680,系統(tǒng)確定在“MyAccounts”文件夾之下是否存在子文件夾。如果存在,則在步驟684將新帳號數(shù)據(jù)存儲在適當?shù)奈募A中。如果不存在,則在步驟682創(chuàng)建適當?shù)奈募A并且在步驟684存儲帳號數(shù)據(jù)。在一個實施例中,在步驟682中創(chuàng)建的適當文件夾包括帳號文件夾,以及活動、機會和聯(lián)系人的子文件夾。在步驟684中,過程循環(huán)返回到步驟676,以確定是否還有更多的帳號(即用戶在步驟674所選擇的帳號)還沒有被處理過。如果有,則過程繼續(xù)步驟678。否則,圖15的方法完成??紤]圖16的過程,在步驟690,線程確定是否有更多的帳號文件夾需要用該方法來處理。即,線程查看“MyAccounts”文件夾下的每個帳號文件夾。如果所有帳號文件夾都已被處理了,則圖16的方法完成。如果還有要處理的帳號文件夾,則在步驟692訪問下一個要處理的帳號文件夾。線程確定該帳號文件夾是否對應于在帳號列表中存在的帳號。記住,用戶能夠在步驟674調(diào)整帳號列表。如果帳號文件夾存在于帳號列表中,則系統(tǒng)循環(huán)回到步驟690。如果在帳號列表中沒有帳號,則帳號文件夾(例如,帳號文件夾和聯(lián)系人、機會和活動的子文件夾)在步驟696中被刪除。在步驟696之后,方法循環(huán)回到步驟690。圖17描述從除CRM軟件系統(tǒng)以外的應用程序獲得數(shù)據(jù)的過程的流程圖。例如,在一個實施例中,如果用戶選擇帳號列表窗格中除AccountProfile(帳號概況)之外的項,則系統(tǒng)將顯示來自除CRM系統(tǒng)以外的另一個外部系統(tǒng)的信息。圖17的過程描述如何同步該數(shù)據(jù)。在一個實施例中,通過從外部應用程序獲得最新的數(shù)據(jù)并且使用該數(shù)據(jù)來覆寫存儲在客戶機端的任何數(shù)據(jù)來同步該數(shù)據(jù)。在步驟706,對于每個帳號,同步管理器370將發(fā)送向web服務302發(fā)送從特定的應用程序獲得數(shù)據(jù)的請求。在步驟708,將從web服務302檢索回數(shù)據(jù)。在步驟710,將該數(shù)據(jù)存儲在智能客戶機上。其它應用程序的例子包括服務事件應用程序,它存儲和跟蹤公司以及跟蹤銷售歷史的應用程序的服務事件。在一個實施例中,作為使用web服務的替代,同步管理器(通過代理372)可以直接聯(lián)系外部應用程序。圖18-21提供同步事務數(shù)據(jù)的過程(圖12的步驟594)的更多細節(jié)。圖18描述向上同步過程。圖19描述向下同步過程。圖20描述在CRM應用程序的服務器上執(zhí)行的過程。圖21提供為活動執(zhí)行的特殊步驟的細節(jié)。在圖18的步驟750,系統(tǒng)確定是否有更多的數(shù)據(jù)項要處理。數(shù)據(jù)項可以是任何帳號的任何事務項。例如,數(shù)據(jù)項可以是活動、機會或聯(lián)系人。當沒有更多的項要處理(所有要同步的項已經(jīng)被同步)時,圖18的過程隨后完成。如果有更多的項要處理,則在步驟752,系統(tǒng)訪問下一個數(shù)據(jù)項。在步驟754,系統(tǒng)將查看所訪問對象的IsDirty字段來確定數(shù)據(jù)是否為臟。如果數(shù)據(jù)不為臟并且不是新的,則它不需要同步并且過程循環(huán)到750。如果數(shù)據(jù)為臟或者它是新的(CurrentState=New),則該數(shù)據(jù)項需要同步。在步驟756,鎖定數(shù)據(jù)項,不能編輯它。在步驟758,將數(shù)據(jù)項更新到服務器。即,將數(shù)據(jù)項通過代理372和web服務302發(fā)送到服務器。在步驟760,線程從代理(通過web服務302)接收回是否有沖突的指示。是否有沖突的判定是由服務器(CRM軟件系統(tǒng))執(zhí)行的,并且從服務器送回到web服務302。如果沒有沖突,則智能客戶機將向服務器請求該同步的時間標記。服務器將發(fā)送一個時間標記,并且它將由智能客戶機在步驟762接收。如果要同步的數(shù)據(jù)項是新的數(shù)據(jù)項,則在步驟704向服務器請求ServerID并且接收它。該ServerID將被存儲在對象中。在接收ServerID之前,智能客戶機將通過LocalID來引用對象。在接收ServerID之后,智能客戶機將用ServerID來引用對象。在步驟766,解鎖數(shù)據(jù)項并且過程循環(huán)回到步驟750,使得下一個數(shù)據(jù)項可以被處理。如果在步驟760確定有沖突,則在步驟770將數(shù)據(jù)項移動到錯誤文件夾?;仡^看圖1,在導航窗格中有一個標記為“System(系統(tǒng))”的文件夾。在該系統(tǒng)文件夾之下是一組錯誤文件夾。數(shù)據(jù)項的副本將被存儲在錯誤文件夾之一中以供用戶查看。在步驟772,線程將向服務器請求和從服務器接收該數(shù)據(jù)項。該數(shù)據(jù)項將與數(shù)據(jù)項中的ServerID和時間標記一起來到。在步驟774,從服務器接收的數(shù)據(jù)項通過替換客戶機上的數(shù)據(jù)項而被更新。在步驟776,解鎖數(shù)據(jù)項。在步驟778,通知用戶,數(shù)據(jù)已被改變并且存在沖突。在一個例子中,向用戶發(fā)送電子郵件。在步驟778之后,過程循環(huán)回到步驟750,使得下一個數(shù)據(jù)項可以被訪問。圖19提供向下同步過程的更多細節(jié)。在圖19的步驟800,同步管理器將請求和接收自從上次同步起在服務器上已經(jīng)更新過或者創(chuàng)建的事務項的列表。如果在列表中有更多的項要考慮,則在步驟804,將訪問下一個數(shù)據(jù)項。在步驟806,智能客戶機中的數(shù)據(jù)項將被鎖定。在步驟808,同步管理器將在服務器檢索該項的數(shù)據(jù)并且用該新數(shù)據(jù)更新智能客戶機上的項。如果這是新的數(shù)據(jù)項,則在步驟808,在智能客戶機上創(chuàng)建該項。在步驟810,解鎖數(shù)據(jù)項并且過程循環(huán)回到步驟802,以確定是否還有更多的數(shù)據(jù)項要處理。當所有數(shù)據(jù)項都被處理時,圖19的方法完成。在一個實施例中,先執(zhí)行向上同步過程,再執(zhí)行向下同步過程。在其它實施例中,這兩個過程可以重疊或者以其它時序來執(zhí)行。圖20是描述在服務器端執(zhí)行的過程的一個實施例的流程圖。在步驟830,要更新的記錄由CRM應用程序服務器接收。在步驟832,確定記錄是新記錄還是現(xiàn)有的記錄。如果是新記錄,則服務器將步驟834生成一個新ServerID,并且在步驟836生成一個時間標記。在步驟838存儲該新記錄以及時間標記和ServerID。在稍后的時間(如由虛線表示的),響應于步驟762和764,在步驟840,服務器將發(fā)送新的ServerID和時間標記。如果在步驟830接收的記錄是現(xiàn)有記錄,則在步驟852,比較所接收記錄與現(xiàn)有記錄的時間標記。如果時間標記相匹配(例如,它們相同),則在步驟854基于從智能客戶機接收的數(shù)據(jù)更新服務器上的記錄。在步驟856,在服務器上更新該記錄的時間標記。在稍后的時間(如由虛線表示的),響應于步驟762,服務器將在步驟858將更新的時間標記發(fā)送給智能客戶機。如果時間標記不相匹配(步驟852),則在步驟860拒絕更新,并且從智能客戶機接收的記錄將不用于更新服務器上相應記錄。稍后(如由虛線表示的),在步驟862,響應于來自客戶機的請求(例如,圖18的步驟772),服務器將它的記錄的副本發(fā)送到客戶機。如可以看到的,智能客戶機不改變時間標記。時間標記表示服務器更新其記錄的最后時間。因而,如果服務器上的時間標記比智能客戶機上的時間標記晚,則服務器具有比客戶機更新近的數(shù)據(jù)。如果服務器上的時間標記與客戶機上的時間標記相匹配,則客戶機上的數(shù)據(jù)與服務器上的相同,或者客戶機上數(shù)據(jù)比服務器上的更新。如果客戶機上的數(shù)據(jù)與服務器相同,則數(shù)據(jù)不是臟的,并且不用被發(fā)送以供同步。因而,從客戶機接收的具有與服務器相同的時間標記的任何數(shù)據(jù)被假定為是需要在服務器上更新的已更新數(shù)據(jù)。如果從客戶機發(fā)送的用于同步的記錄對應于服務器上也已經(jīng)被更新過的記錄,則存在沖突,并且不更新服務器上的記錄。相反,服務器上的記錄用于覆寫智能客戶機上的記錄。圖21包括描述對有關活動與聯(lián)系人之間的關聯(lián)和/或活動與機會之間的關聯(lián)的活動所執(zhí)行的附加步驟。在一個實施例中,圖21的過程可以作為圖18的步驟758的一部分來執(zhí)行。在某些(但非全部)情況下,在圖21的過程開始之前,創(chuàng)建(并存儲)一個新活動,并且創(chuàng)建(并存儲)一個新機會或者聯(lián)系人。通過將新機會或者聯(lián)系人的LocalID存儲在新活動的對象中,將新機會或聯(lián)系人與新活動相關聯(lián)。在圖21的步驟900,確定活動數(shù)據(jù)項是否為新的。如果否,則在步驟902如上所述地更新活動項。如果是新的,則在更新該活動之前可執(zhí)行各種步驟906-926。在步驟906,確定活動是否與一個機會相關聯(lián)。如果否,則確定活動是否與任何聯(lián)系人相關聯(lián)。如果不與活動或者聯(lián)系人相關聯(lián),則如上所述地更新該活動。如果活動與機會相關聯(lián)(步驟906),則在步驟908確定該機會是否是新的。如果該機會是新的,則在步驟910同步該機會。作為同步過程的一部分,將接收和存儲該機會的ServerID。在活動對象中,用在機會對象的同步期間接收的機會對象的ServerID來更新用于標識機會的ServerID字段(步驟912)。在步驟912之后,過程在步驟920繼續(xù),其中確定特定的活動是否與聯(lián)系人相關聯(lián)。如果它與聯(lián)系人相關聯(lián),則在步驟922確定聯(lián)系人是否為新的。如果聯(lián)系人不是新的,則在步驟902更新活動。如果聯(lián)系人是新的,則在步驟924同步該聯(lián)系人。作為同步過程的一部分,將接收和存儲該聯(lián)系人的ServerID。在活動對象中,用在聯(lián)系人對象的同步期間接收的聯(lián)系人對象的ServerID來更新的用于標識聯(lián)系人的ServerID(步驟926)。在步驟926之后,隨后在步驟902更新活動(使用機會和聯(lián)系人的ServerID)。圖22示出描述用于安裝智能客戶機內(nèi)插附件360的過程的流程圖。在步驟950,在客戶機器上安裝軟件。在步驟952,啟動Outlook應用程序。在步驟954,同步管理器370(通過代理372和web服務302)通過實時查詢從CRM軟件的MyAccounts視圖取來所有帳號,來獲得與特定別名相關聯(lián)的帳號列表。在步驟956,在帳號選擇表單(例如,選取列表)中顯示帳號列表。用戶隨后可以從該選擇表單中選擇或者取消選擇各種帳號。接收那些選擇并儲存為帳號列表(步驟958)。在步驟960,執(zhí)行同步過程。由于這是第一次執(zhí)行同步,因此有可能在智能客戶機上沒有事務數(shù)據(jù);因此,數(shù)據(jù)是從客戶機向下同步的。在安裝和初始同步之后,用戶隨后可以執(zhí)行上述任何功能。如果用戶從頂層菜單10選擇“MyCRM”并且用戶選擇改變帳號選擇表單(步驟970),則在步驟956將向用戶提供帳號選擇表單。在用戶作出選擇或者取消選擇各種帳號之后,在步驟958將更新新的帳號列表。系統(tǒng)隨后將在步驟916中在存儲新的帳號列表之后立即同步,或者可以按照基于配置數(shù)據(jù)的時間表稍后執(zhí)行同步。已經(jīng)為了說明和描述的目的提供了本發(fā)明的上述詳細描述。其目的不是要窮舉本發(fā)明或者將本發(fā)明限制在所揭示的精確形式中。鑒于上面的教導,許多修改和變體是可能的。選擇所描述的實施例以便最佳地解釋本發(fā)明的原理及其實踐應用程序,從而使本領域的其它技術人員能夠最好地使用各種實施例中的本發(fā)明,并且在適合于構(gòu)想的特定用途時可以使用本發(fā)明的各種修改方案。本發(fā)明的范圍是由所附的權(quán)利要求書定義的。權(quán)利要求1.一個或多個處理器可讀存儲設備,所述設備具有包含在所述一個或多個處理器可讀存儲設備上的處理器可讀代碼,所述處理器可讀代碼用于對一個或多個處理器編程,所述處理器可讀代碼包括一接口管理器,所述接口管理器訪問一數(shù)據(jù)存儲中的項;一與遠程應用程序通信的通信代理;以及一與所述接口管理器和所述通信代理通信的同步管理器,所述同步管理器通過與所述接口管理器通信來訪問所述數(shù)據(jù)存儲中的數(shù)據(jù),并與所述通信代理通信以訪問所述應用程序處的對應數(shù)據(jù),將所述數(shù)據(jù)存儲中的所述數(shù)據(jù)與所述應用程序處的所述對應數(shù)據(jù)同步。2.根據(jù)權(quán)利要求1所述的一個或多個處理器可讀存儲設備,其特征在于,所述處理器可讀代碼還包括與配置數(shù)據(jù)存儲、所述接口管理器、所述通信代理和所述同步管理器通信的配置代碼。3.根據(jù)權(quán)利要求1所述的一個或多個處理器可讀存儲設備,其特征在于,所述通信代理使用web服務與所述遠程應用程序通信。4.根據(jù)權(quán)利要求1所述的一個或多個處理器可讀存儲設備,其特征在于,所述接口管理器與一消息通信和時間安排系統(tǒng)通信;所述數(shù)據(jù)存儲中的所述數(shù)據(jù)包括對象;所述數(shù)據(jù)存儲是所述消息通信和時間安排系統(tǒng)的一部分;以及所述應用程序處的所述對應數(shù)據(jù)包括一CRM系統(tǒng)的對應對象。5.根據(jù)權(quán)利要求4所述的一個或多個處理器可讀存儲設備,其特征在于,包括所述數(shù)據(jù)存儲的所述消息通信和時間安排系統(tǒng)在主存所述接口管理器的本地機上。6.根據(jù)權(quán)利要求4所述的一個或多個處理器可讀存儲設備,其特征在于,包括所述數(shù)據(jù)存儲、系統(tǒng)的所述消息通信和時間安排系統(tǒng)在不同于主存所述接口管理器的本地機器的服務器上。7.根據(jù)權(quán)利要求1所述的一個或多個處理器可讀存儲設備,其特征在于所述接口管理器與一消息通信和時間安排系統(tǒng)通信;以及所述數(shù)據(jù)存儲與所述消息通信和時間安排系統(tǒng)相關聯(lián)。8.根據(jù)權(quán)利要求1所述的一個或多個處理器可讀存儲設備,其特征在于所述接口管理器與一消息通信和時間安排系統(tǒng)通信;所述數(shù)據(jù)存儲中的所述數(shù)據(jù)包括對象;所述數(shù)據(jù)存儲是所述消息通信和時間安排系統(tǒng)的一部分;存儲在所述數(shù)據(jù)存儲中的所述對象是從所述消息通信和時間安排系統(tǒng)的名字空間內(nèi)的類實例化的;以及所述消息通信和時間安排系統(tǒng)的所述名字空間內(nèi)的所述類從所述接口管理器的名字空間內(nèi)的類繼承。9.一種智能客戶機,包括一基本應用程序;一接口管理器,所述接口管理器訪問所述基本應用程序的項;一與遠程應用程序通信的通信代理;以及一與所述接口管理器和所述通信代理通信的同步管理器,所述同步管理器通過與所述接口管理器通信以訪問所述基本應用程序的數(shù)據(jù),并與所述通信代理通信以訪問所述遠程應用程序上的對應數(shù)據(jù),將所述基本應用程序的所述數(shù)據(jù)與所述遠程應用程序處的所述對應數(shù)據(jù)同步。10.根據(jù)權(quán)利要求9所述的智能客戶機,其特征在于所述通信代理使用web服務與所述遠程應用程序通信。11.根據(jù)權(quán)利要求9所述的智能客戶機,其特征在于所述基本應用程序是消息通信和時間安排系統(tǒng);以及所述遠程應用程序是CRM系統(tǒng)。12.根據(jù)權(quán)利要求11所述的智能客戶機,其特征在于所述基本應用程序的所述數(shù)據(jù)包括存儲在所述消息通信和時間安排系統(tǒng)的數(shù)據(jù)存儲中的對象;存儲在所述消息通信和時間安排系統(tǒng)的所述數(shù)據(jù)存儲中的所述對象是從所述消息通信和時間安排系統(tǒng)的名字空間內(nèi)的類實例化的;以及所述消息通信和時間安排系統(tǒng)的名字空間內(nèi)的所述類從所述接口管理器的名字空間內(nèi)的類繼承。13.根據(jù)權(quán)利要求11所述的智能客戶機,其特征在于所述遠程應用程序包括活動和聯(lián)系人項;所述消息通信和時間安排系統(tǒng)包括對應于所述活動和聯(lián)系入項的項;以及所述消息通信和時間安排系統(tǒng)包括具有用于對應于所述活動和聯(lián)系任項的項的文件夾的圖形用戶界面。14.根據(jù)權(quán)利要求9所述的智能客戶機,其特征在于所述通信代理使用web服務與所述遠程應用程序通信;所述基本應用程序、所述接口管理器、所述通信代理和所述同步管理器在本地機器上;所述遠程應用程序在遠程機器上;以及所述web服務的至少一部分在不同于所述本地機器和所述遠程機器的機器上。15.一種用于使用智能客戶機與應用程序交互的方法,包括使用代理與所述應用程序通信;使用接口管理器與智能客戶機數(shù)據(jù)存儲通信;以及使用同步管理器在所述智能客戶機數(shù)據(jù)存儲與所述應用程序之間同步數(shù)據(jù),所述同步管理器使用所述接口管理器訪問來自所述智能客戶機數(shù)據(jù)存儲的所述數(shù)據(jù),并且所述同步管理器使用所述代理訪問所述應用程序。16.根據(jù)權(quán)利要求15所述的方法,其特征在于使用代理與所述應用程序通信的所述步驟包括使用在所述代理外部的web服務以與所述代理通信。17.根據(jù)權(quán)利要求15所述的方法,其特征在于所述智能客戶機數(shù)據(jù)存儲是消息通信和時間安排系統(tǒng)的一部分;以及使用接口管理器與智能客戶機數(shù)據(jù)存儲通信的所述步驟包括與所述消息通信和時間安排系統(tǒng)通信。18.根據(jù)權(quán)利要求17所述的方法,其特征在于所述應用程序是CRM系統(tǒng)。19.根據(jù)權(quán)利要求18所述的方法,其特征在于所述CRM系統(tǒng)包括活動和聯(lián)系人項;所述消息通信和時間安排系統(tǒng)包括對應于所述活動和聯(lián)系人項的項;所述消息通信和時間安排系統(tǒng)包括具有用于對應于所述活動和聯(lián)系人項的項的文件夾的圖形用戶界面;使用所述接口管理器的所述步驟包括用所述接口管理器訪問用于對應于所述活動和聯(lián)系人項的項的所述文件夾。20.一個或多個處理器可讀存儲設備,所述設備具有包含在所述一個或多個處理器可讀存儲設備上的處理器可讀代碼,所述處理器可讀代碼用于對一個或多個處理器編程,所述處理器可讀代碼包括一接口管理器,所述接口管理器通過編輯一消息通信和時間安排應用程序的數(shù)據(jù)存儲中的數(shù)據(jù),來響應于所述消息通信和時間安排應用程序中的事件;一與遠程CRM應用程序通信的通信代理,所述CRM應用程序包括活動和聯(lián)系人記錄,所述接口管理器編輯所述消息通信和時間安排應用程序的所述數(shù)據(jù)存儲中對應的活動和聯(lián)系人項;以及一與所述接口管理器和所述通信代理通信的同步管理器,所述同步管理器使用所述接口管理器和所述通信代理將所述消息通信和時間安排應用程序的所述數(shù)據(jù)存儲中的所述對應的活動和聯(lián)系人項與所述CRM應用程序的所述活動和聯(lián)系人記錄同步。21.根據(jù)權(quán)利要求20所述的一個或多個處理器可讀存儲設備,其特征在于所述CRM應用程序的所述活動和聯(lián)系人記錄是對象;以及所述消息通信和時間安排應用程序的所述數(shù)據(jù)存儲中的所述對應的活動和聯(lián)系人項是對象。22.根據(jù)權(quán)利要求20所述的一個或多個處理器可讀存儲設備,其特征在于所述消息通信和時間安排應用程序的所述數(shù)據(jù)存儲中的所述對應的活動和聯(lián)系人項是從所述消息通信和時間安排系統(tǒng)的名字空間內(nèi)的類實例化的;以及所述消息通信和時間安排系統(tǒng)的名字空間內(nèi)的所述類從所述接口管理器的名字空間內(nèi)的類繼承。23.根據(jù)權(quán)利要求20所述的一個或多個處理器可讀存儲設備,其特征在于,所述結(jié)構(gòu)管理器響應于所述消息通信和時間安排應用程序內(nèi)的事件包括響應于用戶選擇一菜單項創(chuàng)建一新的活動對象。24.根據(jù)權(quán)利要求20所述的一個或多個處理器可讀存儲設備,其特征在于所述同步管理器使用所述通信代理來訪問所述CRM應用程序的所述活動和聯(lián)系人記錄;以及所述同步管理器使用所述接口管理器來訪問所述消息通信和時間安排應用程序的所述數(shù)據(jù)存儲中的所述對應的活動和聯(lián)系人項。全文摘要企業(yè)應用程序(例如客戶關系管理系統(tǒng))的智能客戶機解決方案包括一基本應用程序(例如,MicrosoftOutlook)和與該基本應用程序交互的內(nèi)插式軟件。內(nèi)插式軟件允許基本應用程序用于訪問企業(yè)應用程序的數(shù)據(jù)和功能。內(nèi)插式軟件包括用于訪問基本應用程序的數(shù)據(jù)存儲中項(對應于企業(yè)應用程序的數(shù)據(jù))的接口管理器、與企業(yè)應用程序通信(通過web服務)的通信代理、以及與接口管理器和通信代理通信的同步管理器,用于在基本應用程序與企業(yè)應用程序的數(shù)據(jù)存儲之間同步數(shù)據(jù)。除了同步之外,智能客戶機數(shù)據(jù)還可以與基本應用程序的數(shù)據(jù)相互轉(zhuǎn)換。文檔編號G06F9/44GK1744121SQ200510103668公開日2006年3月8日申請日期2005年9月5日優(yōu)先權(quán)日2004年9月3日發(fā)明者M·M·賽拉特,V·瓦德拉馬尼申請人:微軟公司