客戶管理系統(tǒng)的開發(fā)畢業(yè)設(shè)計_第1頁
客戶管理系統(tǒng)的開發(fā)畢業(yè)設(shè)計_第2頁
客戶管理系統(tǒng)的開發(fā)畢業(yè)設(shè)計_第3頁
客戶管理系統(tǒng)的開發(fā)畢業(yè)設(shè)計_第4頁
客戶管理系統(tǒng)的開發(fā)畢業(yè)設(shè)計_第5頁
已閱讀5頁,還剩162頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、 陜西理工學(xué)院畢業(yè)論文(設(shè)計)第167頁共167頁引 言以客戶為中心,讓客戶成為朋友是本客戶管理系統(tǒng)所追求的最終目的,客戶管理系統(tǒng)通過對用戶信息資源的整合,從而為客戶提供更快速周到的優(yōu)質(zhì)服務(wù),吸引和保持更多的客戶,更有效地管理客戶信息,降低企業(yè)營銷管理成本。客戶管理系統(tǒng)是一套靈活的人機(jī)交互系統(tǒng),它能幫助企業(yè)更好地吸收潛在的客戶和留住最有價值的客戶,從而實現(xiàn)銷售、市場營銷、服務(wù)和支持的商業(yè)流程自動化。對于現(xiàn)在的企業(yè)來說,利用計算機(jī)支持企業(yè)高效率完成客戶管理的日常事務(wù),是適應(yīng)現(xiàn)代企業(yè)制度要求、推動企業(yè)客戶管理走向科學(xué)化、規(guī)范化的必要條件;而客戶管理是一項瑣碎、復(fù)雜而又十分細(xì)致的工作,因為這些信息直

2、接和業(yè)務(wù)相關(guān),因此不允許出錯,如果實行手工操作,每月都必須手工填制大量的表格,這就會耗費工作人員大量的時間和精力,而客戶管理系統(tǒng)應(yīng)用軟件應(yīng)緊緊圍繞以客戶為中心的思想,以客戶信息為主線,將企業(yè)的市場銷售、服務(wù)有機(jī)結(jié)合起來,形成跨部門、跨機(jī)構(gòu)的統(tǒng)一信息平臺。通過對客戶相關(guān)信息的集中管理,挖掘銷售機(jī)會,了解市場競爭,提高銷售成功率;通過對客戶相關(guān)信息的分析與挖掘,識別客戶消費規(guī)律和客戶價值,指導(dǎo)企業(yè)的部門運作和市場規(guī)劃,從而提供更加快捷和周到的優(yōu)質(zhì)服務(wù),幫助企業(yè)提升客戶滿意度和忠誠度,最終提高企業(yè)市場競爭力。這些優(yōu)點能夠極大地提高客戶管理的效率,也是企業(yè)的科學(xué)化、正規(guī)化管理,與世界接軌的重要條件。該

3、客戶管理系統(tǒng)實現(xiàn)了與客戶相關(guān)的各種信息的系統(tǒng)化、規(guī)范化和自動化。通過對客戶資料管理、系統(tǒng)數(shù)據(jù)設(shè)置、客戶資料分析三個模塊基本功能的實現(xiàn),對客戶的各種信息進(jìn)行增、刪、查、改等操作,完成對客戶相關(guān)信息的管理。這些功能基本可以滿足一般中小型企業(yè)對客戶管理的需求,使企業(yè)節(jié)省人力,減輕勞動強(qiáng)度;降低成本,節(jié)省開支;提高了管理水平,增強(qiáng)了企業(yè)在同行業(yè)中的競爭力;同時提高了客戶信息處理的及時性和準(zhǔn)確性。本系統(tǒng)采用Delphi7進(jìn)行開發(fā)、設(shè)計,后臺采用SQL Server 2000提供強(qiáng)有力的支持,系統(tǒng)界面友好,操作簡單,比較實用。系統(tǒng)的實施將為企業(yè)獲得更多的客戶,保留更好的客戶,創(chuàng)造更大的客戶價值,保持客戶永

4、久的忠誠,從而為企業(yè)帶來更豐厚的利潤和持續(xù)的競爭優(yōu)勢。1.開發(fā)工具的選擇及簡介現(xiàn)在,市場上可以選購的應(yīng)用開發(fā)產(chǎn)品很多,流行的也有數(shù)十種。目前在我國市場上最為流行、使用最多、最為先進(jìn)的可用作企業(yè)級開發(fā)工具的產(chǎn)品有:Microsoft公司的Visual Basic,Microsoft公司的Visual C,Borland公司的Delphi,Sybase公司的PowerBulider,還有Java等等。在目前市場上這些眾多的程序開發(fā)工具中,有些強(qiáng)調(diào)程序語言的彈性與執(zhí)行效率;有些則偏重于可視化程序開發(fā)工具所帶來的便利性與效率的提高,各有各的優(yōu)點和特色,也滿足了不同用戶的需求。然而,語言的彈性和工具的便

5、利性是密不可分的,只有便利的工具,卻沒有彈性的語言作支持,許多特殊化的處理動作必需要耗費數(shù)倍的工夫來處理,使得原來所標(biāo)榜的效率提高的優(yōu)點失去了作用;相反,如果只強(qiáng)調(diào)程序語言的彈性,卻沒有便利的工具作配合,一些即使非常簡單的界面處理動作,也會嚴(yán)重地浪費程序設(shè)計師的寶貴時間。我們先對我國市場上流行的幾種開發(fā)工具產(chǎn)品進(jìn)行一下簡單的比較。Visual Basic是一個被軟件界稱之為劃時代的革新產(chǎn)品,該軟件改變了人們開發(fā)Windows程序的方式,它采用交互式的可視化操作,使得人們開發(fā)Windows程序的每一過程都有直觀形象的反饋,從而加速整個開發(fā)進(jìn)程。但是,采用VB也有一定的缺點,原因有以下幾點:1)V

6、B來源于Basic語言,雖然經(jīng)過微軟的不斷增強(qiáng),但是仍然缺乏非常靈活的數(shù)據(jù)類型和編程策略,因而在開發(fā)一些需要復(fù)雜數(shù)據(jù)結(jié)構(gòu)的項目時常遇到麻煩,如鏈表、圖和二叉樹等等。由于在中大型項目開發(fā)后期,開發(fā)工作不再以界面為主,而是在算法設(shè)計和底層軟硬件工作,這就使VB開發(fā)項目的后期工作量大幅度增加。2)VB運行速度慢,采用P-Code代碼雖然執(zhí)行文件很小,但是在運行時需要解釋執(zhí)行,并且,它的運行必須有對應(yīng)的VBRUN.DLL和所使用的VBX或者OCX支持。對于浮點操作密集或者循環(huán)嵌套很多的應(yīng)用來說,VB沒有采取特別的優(yōu)化。3)VB不能靈活地使用系統(tǒng)資源。4)VB項目分發(fā)和管理困難,其原因同上,VB應(yīng)用的運

7、行不能脫離VB的運行庫和所使用的控件,因此,如果開發(fā)人員要將VB應(yīng)用分發(fā)給用戶那么一定要帶上VB的運行庫和所使用的控件,并且要保證正確安裝,這就導(dǎo)致即使一個非常簡單的應(yīng)用也需要附帶大量其它相關(guān)支撐庫程序,對于VB 4.0及更高版本,由于大量的使用了OLE控件(在VB中稱為OCX),其安裝更為復(fù)雜。我們不選VC而選擇DELPHI的主要原因有兩點,一是為了提高開發(fā)效率,從代碼量上后者有優(yōu)勢,而且可以獲得大量的第三方控件減少重復(fù)勞動時間。二是為了降低對人的要求,從入門和掌握兩個階段來看,后者都更容易一些,而我這次畢業(yè)設(shè)計的時間也不是很寬裕,對其也不是十分了解,因此放棄對VC的選擇。PowerBuli

8、der完全是特別針對于數(shù)據(jù)庫開發(fā)的,其數(shù)據(jù)訪問對象可綁定任何SQL語句和存儲過程,數(shù)據(jù)訪問具有無與比擬的靈活性,但是它做出的界面不夠美觀,沒有delphi那么靈活。作為數(shù)據(jù)庫系統(tǒng)的開發(fā),Delphi7是一個非常理想的選擇,它有一流的可視化技術(shù),強(qiáng)大的功能,嚴(yán)謹(jǐn)?shù)恼Z言,把通俗和高雅天衣無縫的結(jié)合在一起了,所以Delphi7因簡單易學(xué)、功能強(qiáng)大、編譯速度快而從眾多的軟件開發(fā)工具中脫穎而出。它提供了靈活的可視化設(shè)計工具,將可視化界面與面向?qū)ο蠹夹g(shù)完善、緊密地結(jié)合起來,并封裝了Windows編程的復(fù)雜性。程序的規(guī)模小到簡單的個人數(shù)據(jù)庫應(yīng)用,大到復(fù)雜的企業(yè)的多層次分布式系統(tǒng),都可以使用Delphi7進(jìn)行

9、開發(fā),其友好的集成開發(fā)環(huán)境,可視化的雙向開發(fā)模式,良好的數(shù)據(jù)庫應(yīng)用支持,高效的程序開發(fā)和程序運行,備受廣大程序開發(fā)人員的好評。尤其是Delphi7對數(shù)據(jù)庫應(yīng)用的強(qiáng)大支持,大大提高了數(shù)據(jù)庫應(yīng)用軟件開發(fā)的效率,縮短了開發(fā)周期,深受廣大數(shù)據(jù)庫應(yīng)用程序設(shè)計人員的喜愛。Delphi7為數(shù)據(jù)庫應(yīng)用開發(fā)人員提供了豐富的數(shù)據(jù)庫開發(fā)組件,使數(shù)據(jù)庫應(yīng)用開發(fā)功能更強(qiáng)大,控制更靈活,編譯后的程序運行速度更快。1.1關(guān)于Delphi功能和特點的介紹1.1.1Delphi簡介Delphi是著名的Borland公司開發(fā)的可視化軟件開發(fā)工具?!罢嬲某绦騿T用c,聰明的程序員用Delphi”,這句話是對Delphi最經(jīng)典、最實

10、在的描述。Delphi被稱為第四代編程語言,它具有簡單、高效、功能強(qiáng)大的特點。和VC相比,Delphi更簡單、更易于掌握,而在功能上卻絲毫不遜色;和VB相比,Delphi則功能更強(qiáng)大、更實用??梢哉fDelphi同時兼?zhèn)淞薞C功能強(qiáng)大和VB簡單易學(xué)的特點。它一直是程序員至愛的編程工具。Delphi實際上是Pascal語言的一種版本,但它與傳統(tǒng)的Pascal語言有天壤之別。一個Delphi程序首先是應(yīng)用程序框架,而這一框架正是應(yīng)用程序的“骨架”。在骨架上即使沒有附著任何東西,仍可以嚴(yán)格地按照設(shè)計運行。您的工作只是在“骨架”中加入您的程序。缺省的應(yīng)用程序是一個空白的窗體(Form),您可以運行它,結(jié)

11、果得到一個空白的窗口。這個窗口具有Windows窗口的全部性質(zhì):可以被放大縮小、移動、最大最小化等,但您卻沒有編寫一行程序。因此,可以說應(yīng)用程序框架通過提供所有應(yīng)用程序共有的東西,為用戶應(yīng)用程序的開發(fā)打下了良好的基礎(chǔ)。Delphi具有以下的特性:基于窗體和面向?qū)ο蟮姆椒?,高速的編譯器,強(qiáng)大的數(shù)據(jù)庫支持,與Windows編程緊密結(jié)合,強(qiáng)大而成熟的組件技術(shù)。但最重要的還是Object Pascal語言,它才是一切的根本。 Object Pascal語言是在Pascal語言的基礎(chǔ)上發(fā)展起來的,簡單易學(xué)。Delphi提供了各種開發(fā)工具,包括集成環(huán)境、圖像編輯(Image Editor),以及各種開發(fā)數(shù)

12、據(jù)庫的應(yīng)用程序,如DesktopDataBase等。除此之外,還允許用戶掛接其它的應(yīng)用程序開發(fā)工具,如Borland公司的資源編輯器(Resourse Workshop)。Delphi發(fā)展至今,從Delphi、Delphi到現(xiàn)在的Delphi2006,不斷添加和改進(jìn)各種特性,功能越來越強(qiáng)大。Delphi7添加了對IDE(集成開發(fā)環(huán)境)的很多改進(jìn)新特性,擴(kuò)展了數(shù)據(jù)庫支持(ADO和InterBase數(shù)據(jù)庫),帶有Internet支持的MIDAS改進(jìn)版,TeamSouse版本控制工具,轉(zhuǎn)換功能,框架概念以及很多的新組件與新特性。在Delphi眾多的優(yōu)勢當(dāng)中,它在數(shù)據(jù)庫方面的特長顯得尤為突出:適應(yīng)于多

13、種數(shù)據(jù)庫結(jié)構(gòu),從客戶機(jī)/服務(wù)器模式到多層數(shù)據(jù)結(jié)構(gòu)模式;高效率的數(shù)據(jù)庫管理系統(tǒng)和新一代更先進(jìn)的數(shù)據(jù)庫引擎;最新的數(shù)據(jù)分析手段和提供大量的企業(yè)組件。1.1.2 DELPHI訪問數(shù)據(jù)庫的方式DELPHI通過三種方式來訪問數(shù)據(jù)庫:通過內(nèi)置的數(shù)據(jù)庫驅(qū)動程序。Delphi可以直接訪問Paradox和DBase這兩個桌面型的數(shù)據(jù)庫系統(tǒng)。訪問這兩種類型的數(shù)據(jù)庫 時不需要特別的設(shè)置,只需要把文件路徑賦給Table控件的屬性DatabaseName就可以訪問該路徑下的數(shù)據(jù)庫了。通過ODBC訪問。訪問Paradox和DBase以外的數(shù)據(jù)庫,通常是通過ODBC來實現(xiàn)的。Delphi可以訪問支持ODBC的數(shù)據(jù)庫系統(tǒng),如

14、Access、SQL Server和Oracle等。當(dāng)然,通過ODBC訪問數(shù)據(jù)庫時,首先要使用Windows的控制面板或Delphi的數(shù)據(jù)庫引擎(BDE)建立ODBC數(shù)據(jù)源。通過連接控件訪問(BDE、ADO控件)。Delphi中可以不通過ODBC,而以連接控件訪問SQL Server、Oracle、DB2等數(shù)據(jù)庫系統(tǒng)。這需要使用數(shù)據(jù)庫別名來指定數(shù)據(jù)庫,數(shù)據(jù)庫別名可以事先建立,也可以在程序運行時動態(tài)創(chuàng)建。前者稱為靜態(tài)別名,后者稱為動態(tài)別名。使用數(shù)據(jù)庫別名來訪問數(shù)據(jù)庫的方法和使用ODBC數(shù)據(jù)源的情形相同,這里不再累述。通過連接控件訪問數(shù)據(jù)庫與通過ODBC訪問數(shù)據(jù)庫相比,前者的速度要快一些。而且,使

15、用連接控件的方式可以在程序中動態(tài)地設(shè)置連接數(shù)據(jù)庫所需的參數(shù),用戶不必設(shè)置ODBC數(shù)據(jù)源,這就降低了對用戶技術(shù)水平的要求,并且減少了用戶的工作量。從系統(tǒng)配置的難易和復(fù)雜程度來看,使用連接控件的方式開發(fā)出的數(shù)據(jù)庫應(yīng)用系統(tǒng)更便于普通用戶使用。因此,在開發(fā)較大型的應(yīng)用系統(tǒng)時,最好通過連接控件來訪問數(shù)據(jù)庫。BDE訪問數(shù)據(jù)庫的過程如圖1.1所示:用戶用戶TDBGid等數(shù)據(jù)控制控件TdataSource控件TdataSource控件(包括Ttable,TQuery和TStoredproc控制)本地數(shù)據(jù)庫Paradox等BDE數(shù)據(jù)引擎遠(yuǎn)程數(shù)據(jù)庫SQL server,ORACLE等數(shù)據(jù)驅(qū)動ODBC用戶界面應(yīng)用程

16、序數(shù)據(jù)庫圖1.1 BDE訪問數(shù)據(jù)庫的過程ADO訪問數(shù)據(jù)庫的過程如圖1.2所示:用戶用戶TDBGid等數(shù)據(jù)控制控件TdataSource控件ADO系列控件OLE DB Provider數(shù)據(jù)庫驅(qū)動數(shù)據(jù)庫用戶界面應(yīng)用程序系統(tǒng)數(shù)據(jù)庫圖1.2 ADO訪問數(shù)據(jù)庫的過程因此本系統(tǒng)開發(fā)選擇了Delphi7.0,通過對該開發(fā)環(huán)境的熟悉了解和深入學(xué)習(xí),我學(xué)會了用Delphi7.0制作系統(tǒng)的界面,并用Delphi7.0中的ADO控件與SQL Server2000數(shù)據(jù)庫進(jìn)行連接,并且通過編程實現(xiàn)系統(tǒng)中的主要功能。1.2.3Delphi中的ADO數(shù)據(jù)訪問組件由于ADO技術(shù)的迅速普及,從Delphi 5.0開始,加入了A

17、DO技術(shù)的模塊,并逐步成為Delphi數(shù)據(jù)庫設(shè)計的主流。但是和VB與ADODC相比,它還是有所不同的。在數(shù)據(jù)綁定上,它更多地吸收了BDE的特點,以做到和原來的程序兼容。同時它又可以接受標(biāo)準(zhǔn)ADO技術(shù)的各種屬性和方法,在接受這些屬性和方法時,它是和數(shù)據(jù)綁定控件脫離的。從某種意義上來說,這種方案提高了執(zhí)行效率,給設(shè)計人員以更多的選擇。Delphi7.0的ADO組件應(yīng)用Delphi組件的內(nèi)容和使用方法來實現(xiàn)ADO數(shù)據(jù)對象的功能。最為突出的是ADO對象包括Connection、Command、Recordset對象。這些對象分別體現(xiàn)在Delphi ADO組件中的TADOConnection、TADOC

18、omman以及TADODataset組件中。而其他一些ADO結(jié)構(gòu)對象,例如Field和Properties,在Delphi中沒有專門對應(yīng)的組件。Delphi7.0 ADO面板中一共有7個組件:1)ADOConnection:對應(yīng)著ADO數(shù)據(jù)對象中的Connection對象,主要用于建立數(shù)據(jù)庫的連接。2)ADODataSet:ADO提取和操作數(shù)據(jù)庫的主要數(shù)據(jù)集,可以直接連接到數(shù)據(jù)庫,也可以通過ADOConnection連接到數(shù)據(jù)庫。3)ADOTable:主要用以操作和提取單個基表的數(shù)據(jù),可以直接連接到數(shù)據(jù)庫,也可以通過ADOConnection連接到數(shù)據(jù)庫。4)ADOQuery:通過SQL語言提

19、取數(shù)據(jù),其連接數(shù)據(jù)庫的方式和前兩種一樣。5)ADOStoredProc:這個組件專門用于運行數(shù)據(jù)庫中的存儲過程。6)ADOCommand:該組件用于運行一些SQL命令,這個組件可以和支持?jǐn)?shù)據(jù)集的組件儀器使用,也可以直接從一個基表中提取一個數(shù)據(jù)集。7)RDSConnection:一個進(jìn)程或一臺計算機(jī)傳遞到另一個進(jìn)程或計算機(jī)的數(shù)據(jù)集合。為了連接數(shù)據(jù)綁定控件,上述組件往往要和DataAccess中的Datasource配合使用。1.2 SQL Server2000數(shù)據(jù)庫介紹目前市場上數(shù)據(jù)庫的主流廠商及產(chǎn)品有IBM DB2、Microsoft SQL Server 2000、ORACLE 9i、Syb

20、ase。IBM是通過DB2與WebSphere、Tivoli和Lotus四大品牌共同提供電子商務(wù)基礎(chǔ)架構(gòu),而自己并不開發(fā)應(yīng)用軟件,目前一些ERP廠商、CRM 廠商以及電子商務(wù)軟件廠商都與IBM建立了合作關(guān)系,將IBM公司的數(shù)據(jù)庫作為其應(yīng)用軟件的開發(fā)平臺。Oracle則截然不同,它在自己的數(shù)據(jù)庫平臺上為用戶開發(fā)了電子商務(wù)套件,其中包括ERP、CRM和SCM等企業(yè)應(yīng)用軟件。它認(rèn)為這樣可以使用戶直接獲得一整套解決方案,而不必考慮集成問題,而且,通過一家廠商就可以獲得全部的服務(wù)和支持,避免在集成上的昂貴開銷。Sybase公司作為客戶機(jī)/服務(wù)器的倡導(dǎo)者,其開發(fā)工具PowerBuilder擁有眾多的開發(fā)者

21、。還有一部分不可忽視的是免費的數(shù)據(jù)庫, 比如MYSQL等。SQL Server作為微軟在Windows 系列平臺上開發(fā)的數(shù)據(jù)庫,一經(jīng)推出就以其易用性得到了很多用戶的青睞,相信大多數(shù)將自己的業(yè)務(wù)建立在Windows平臺上的用戶都會對它有相當(dāng)?shù)挠H切感。區(qū)別于FoxPro、Access小型數(shù)據(jù)庫,SQL Server是一個功能完備的數(shù)據(jù)庫管理系統(tǒng)。它包括支持開發(fā)的引擎、標(biāo)準(zhǔn)的SQL語言、擴(kuò)展的特性(如復(fù)制、OLAP、分析)等功能。而像存儲過程、觸發(fā)器等特性,也是大型數(shù)據(jù)庫才擁有的。SQL SERVER 2000有以下幾個特點:(1) 學(xué)習(xí)、使用上手容易大多數(shù)的中小企業(yè)日常的數(shù)據(jù)應(yīng)用是建立在Windo

22、ws平臺上的。由于SQL Server與Windows界面風(fēng)格完全一致,且有許多“向?qū)?Wizard)”幫助,因此易于安裝和學(xué)習(xí),有關(guān)SQL Server的資料、培訓(xùn)隨處可得,并且目前國內(nèi)具有MCDBA認(rèn)證的工程師不在少數(shù)。從另一個角度來講,學(xué)習(xí)SQL Server是掌握其他平臺及大型數(shù)據(jù),如Oracle,Sybase,DB2的基礎(chǔ)。因為這些大型數(shù)據(jù)庫對于設(shè)備、平臺、人員知識的要求往往較高,而并不是每個人都具備這樣的條件,且有機(jī)會去接觸它們。但有了SQL Server的基礎(chǔ),再去學(xué)習(xí)和使用它們就容易多了。IT行業(yè)的實踐經(jīng)驗充分證明了這一點。(2) 兼容性良好由于今天Windows操作系統(tǒng)占領(lǐng)著

23、主導(dǎo)地的位,選擇SQL Server一定會在兼容性方面取得一些優(yōu)勢。另外,SQL Server 2000 除了具有擴(kuò)展性,可靠性以外,還具有可以迅速開發(fā)新的因特網(wǎng)系統(tǒng)的功能。尤其是它可以直接存貯 XML 數(shù)據(jù),可以將搜索結(jié)果以XML格式輸出等特點,有利于構(gòu)建了異構(gòu)系統(tǒng)的互操作性,奠定了面向互聯(lián)網(wǎng)的企業(yè)應(yīng)用和服務(wù)的基石。這些特點在.NET 戰(zhàn)略中發(fā)揮著重要的作用。(3) 相對于7.0的憂越性Microsoft SQL Server 2000是在SQL Server 7.0的基礎(chǔ)上對性能、可靠性、質(zhì)量以及易用性進(jìn)行了擴(kuò)展。SQL Server 2000中包含許多新特性,這些特性使其成為針對電子商務(wù)

24、、數(shù)據(jù)倉庫和在線商務(wù)解決方案的卓越的數(shù)據(jù)庫平臺。其增強(qiáng)的特性包括對豐富的擴(kuò)展標(biāo)記語言(XML)的支持、綜合分析服務(wù)以及便捷的數(shù)據(jù)庫管理。(4) 電子商務(wù) 在使用由Microsoft SQL Server 2000關(guān)系數(shù)據(jù)庫引擎的情況下,XML數(shù)據(jù)可在關(guān)系表中進(jìn)行存儲,而查詢則能以XML格式將有關(guān)結(jié)果返回。此外,XML支持還簡化了后端系統(tǒng)集成,并實現(xiàn)了跨防火墻的無縫數(shù)據(jù)傳輸。還可以使用Hypertext Transfer Protocol(超文本傳輸協(xié)議,HTTP)來訪問SQL Server 2000,以實現(xiàn)面向SQL Server 2000數(shù)據(jù)庫的安全Web連接和無須額外編程的聯(lián)機(jī)分析處理(O

25、LAP)多維數(shù)據(jù)集。 (5) 數(shù)據(jù)倉庫Microsoft SQL Server 2000非常明顯的改進(jìn)就是增加了OLAP(聯(lián)機(jī)分析處理)功能,這可以讓很多中小企業(yè)用戶也可以使用數(shù)據(jù)倉庫的一些特性進(jìn)行分析。OLAP可以通過多維存儲技術(shù)對大型、復(fù)雜數(shù)據(jù)集執(zhí)行快速、高級的分析工作。數(shù)據(jù)挖掘功能能夠揭示出隱藏在大量數(shù)據(jù)中的傾向及趨勢,它允許組織或機(jī)構(gòu)最大限度的從數(shù)據(jù)中獲取價值。通過對現(xiàn)有數(shù)據(jù)進(jìn)行有效分析,這一功能可以對未來的趨勢進(jìn)行預(yù)測。 (6) 增強(qiáng)的在線商務(wù) Microsoft SQL Server 2000簡化了管理、優(yōu)化工作,并且增強(qiáng)了迅速、成功的部署在線商務(wù)應(yīng)用程序所需的可靠性和伸縮性。其中

26、,用以提高可靠性的特性包括日志傳送、在線備份和故障切換群集。在伸縮性方面的改進(jìn)包括對多達(dá)32顆CPU和64 GB RAM的支持。通過自動優(yōu)化和改進(jìn)后的管理特性諸如數(shù)據(jù)文件尺寸的自動管理、基于向?qū)У臄?shù)據(jù)庫拷貝、自動內(nèi)存管理和簡化的故障切換群集安裝與管理,在線商務(wù)應(yīng)用程序能夠被迅速部署并有效管理?;赟QL Server2000有以上這些特點和優(yōu)勢,尤其是考慮到它對于開發(fā)大型數(shù)據(jù)庫甚至數(shù)據(jù)倉庫所表現(xiàn)出的優(yōu)越性,故此本系統(tǒng)使用SQL Server2000作為數(shù)據(jù)庫開發(fā)軟件。2. 需求分析2.1 總體需求調(diào)查2.1.1現(xiàn)行系統(tǒng)存在的問題我們通過對某公司的實際調(diào)查,該公司由于規(guī)模較小,其客戶管理工作大部

27、分還是進(jìn)行著手工管理,工作起來效率很低,并且不能及時了解各類客戶的實際情況,也無法快速地進(jìn)行客戶相關(guān)信息的查詢等操作,不便于動態(tài)及時地調(diào)整客戶資料,以便更好地適應(yīng)當(dāng)前經(jīng)濟(jì)形勢發(fā)展的需要和本企業(yè)的管理的先進(jìn)性。手工管理還存在著許多弊端,由于不可避免的人為因素,經(jīng)常造成數(shù)據(jù)的遺漏、誤報。計算機(jī)信息化管理有著儲存信息量大、速度快等許多優(yōu)點,提供給我們的處理信息及時快捷,同時也提高了我們工作人員的自身素質(zhì)。2.1.2 解決方案基于以上的對問題的分析,利用計算機(jī)給我們提供信息,及時地調(diào)整企業(yè)客戶管理系統(tǒng),并且對各類客戶的管理過程形成一整套動態(tài)的管理就十分必要了??蛻艄芾硐到y(tǒng)的建立,需要進(jìn)行用戶的需求調(diào)查

28、與分析,以確定系統(tǒng)目標(biāo),提出解決問題的詳細(xì)方案,這是系統(tǒng)建設(shè)的重要環(huán)節(jié)。企業(yè)客戶的各方面資料比較復(fù)雜,但要有著完善的客戶資料信息,對每一客戶的相關(guān)信息要有詳細(xì)的記錄說明,功能上對系統(tǒng)的需求是全面的。因此對用戶的需求可分為幾個方面:一是客戶管理人員可以通過計算機(jī)來管理各類客戶,調(diào)整客戶數(shù)據(jù),增加客戶數(shù)量,適應(yīng)客戶管理的需求;二是管理人員可以通過系統(tǒng)很方便地對客戶即將購買、已購買,購買何種商品進(jìn)行編輯,包括增加、刪除和修改,能夠很方便地對客戶的需求進(jìn)行有效管理;三是在聯(lián)系上多下功夫,包括對客戶方的聯(lián)系人,以及如何跟其聯(lián)系做出有效的管理;四是統(tǒng)計分析,這是衡量和了解企業(yè)各商品銷售情況的重要手段;五是

29、預(yù)測分析,這是一個創(chuàng)新的部分,它來完成對客戶下次購買的時間進(jìn)行預(yù)測,可以對公司產(chǎn)品的進(jìn)銷進(jìn)行有效的管理;最后是公司對內(nèi)部人員的管理。這四個方面形成了企業(yè)客戶管理的一個工作整體,采用計算機(jī)自動化信息處理,可方便快捷地共享信息、交流信息,高效地協(xié)同工作。在軟、硬件方面對系統(tǒng)的需求:軟件要求易學(xué),界面友好,容易掌握,可以很簡單方便的管理各種客戶信息。硬件的配置要求不能太高,這樣可以很好的適應(yīng)當(dāng)前的客戶管理。在開發(fā)方式上對系統(tǒng)的需求:由于客戶管理系統(tǒng)雖然是一種商業(yè)性的活動(但對于本人來說,卻是一個畢業(yè)設(shè)計的內(nèi)容),所以系統(tǒng)設(shè)計開發(fā)的周期要短,在短時間內(nèi)完成,減少開發(fā)成本,提高開發(fā)效率,方便、簡單、實用

30、作為系統(tǒng)開發(fā)的指導(dǎo)思想。2.2 可行性分析通過對該公司的各個方面進(jìn)行了具體的了解之后,現(xiàn)對其開發(fā)客戶管理系統(tǒng)的可行性進(jìn)行分析。技術(shù)上可行:該系統(tǒng)所需硬件設(shè)備,市場上銷售價格較低,甚至可以使用原有的設(shè)備;軟件上,操作系統(tǒng)采用Windows系列操作系統(tǒng),開發(fā)工具使用功能強(qiáng)大的Delphi 7.0,后臺采用SQL Server 2000提供強(qiáng)有力的支持,這些軟件在MIS開發(fā)中已被大量應(yīng)用,技術(shù)上都比較成熟。因此在技術(shù)上是可行的。經(jīng)濟(jì)上可行:由于公司急需采用計算機(jī)來進(jìn)行客戶的管理,因此對開發(fā)客戶管理系統(tǒng)大力支持,開發(fā)經(jīng)費沒有問題。管理上可行:該企業(yè)的客戶種類較多,因此公司要為每個客戶建立資料檔案,也便

31、加強(qiáng)公司對客戶資料的管理,因此在管理上可行。另外,客戶部和上級領(lǐng)導(dǎo)對開發(fā)該系統(tǒng)也是大力支持的,同時制定了培訓(xùn)計劃,并進(jìn)行了實施MIS的物質(zhì)準(zhǔn)備和工作準(zhǔn)備。綜上所述,開發(fā)客戶管理系統(tǒng)在技術(shù)上、經(jīng)濟(jì)上、管理上都是可行的。2.3 系統(tǒng)目標(biāo)客戶管理系統(tǒng)是一個以客戶為核心的管理系統(tǒng),本次畢業(yè)設(shè)計本著這個原則,重點實現(xiàn)了與客戶有關(guān)資料的管理功能,包括客戶資料、銷售詳情和產(chǎn)品等信息,并且實現(xiàn)銷售構(gòu)成和對客戶購買動向的分析。我們力爭使整個系統(tǒng)做到操作直觀、方便、實用、安全等的目的。2.4 系統(tǒng)功能分析作為一個客戶管理系統(tǒng)應(yīng)用軟件,應(yīng)該能夠綜合管理與客戶相關(guān)的企業(yè)資源,包括銷售、服務(wù)、市場等各方面的資源、信息,

32、使各種信息都能夠?qū)崿F(xiàn)一次錄入,隨處使用。銷售是每個企業(yè)都非常關(guān)注的環(huán)節(jié),銷售業(yè)績的好壞與企業(yè)的生存與發(fā)展息息相關(guān)。客戶管理系統(tǒng)的銷售管理應(yīng)該能夠?qū)崿F(xiàn):聯(lián)系人管理:可以記錄聯(lián)系人的名稱、電話號碼、地址、郵件地址等各項信息。聯(lián)系活動管理:詳細(xì)記錄銷售代表與聯(lián)系人之間的所有活動,包括每個活動的具體細(xì)節(jié)??蛻粜畔⒐芾恚耗軌蛴涗浥c客戶有關(guān)的所有信息。活動追蹤:既能夠按照活動的日期、次數(shù)、類型、描述、執(zhí)行人等來追蹤活動,也能夠按照聯(lián)系人、企業(yè)和商機(jī)來追蹤活動。還應(yīng)該包括機(jī)會管理、機(jī)會分析、銷售預(yù)測、銷售統(tǒng)計等各項功能。2.5 數(shù)據(jù)流圖數(shù)據(jù)流圖(DFD)是一種圖形化技術(shù),它描繪信息流和數(shù)據(jù)從輸入移動到輸出的

33、過程中所經(jīng)受的變換。在數(shù)據(jù)流圖中沒有任何具體的物理元素,它只是描繪信息在軟件中流動和被處理的情況。因為數(shù)據(jù)流圖是系統(tǒng)邏輯功能的圖形表示,即使不是專業(yè)的計算機(jī)人員也容易理解它,所以它是分析員和用戶之間極好的通信工具。如圖2.1所示,數(shù)據(jù)流圖的四種基本符號和具體描述如下:數(shù)據(jù)的源點數(shù)據(jù)的源點/終點變換數(shù)據(jù)的處理變換數(shù)據(jù)的處理數(shù)據(jù)存儲數(shù)據(jù)存儲數(shù)據(jù)流數(shù)據(jù)流圖2.1 數(shù)據(jù)流圖的基本符號在對該公司客戶管理的手工管理模式和業(yè)務(wù)流程進(jìn)行認(rèn)真分析和研究的基礎(chǔ)上,經(jīng)過與該客戶部的相關(guān)人員的反復(fù)協(xié)商、論證,最后確定了該客戶管理系統(tǒng)的邏輯模型。我們以數(shù)據(jù)流圖和數(shù)據(jù)字典的方式來描述新系統(tǒng)的邏輯功能。該系統(tǒng)的數(shù)據(jù)流圖如圖

34、2.2所示:客戶客戶客戶信息1存儲客戶數(shù)據(jù)客戶資料2存儲商品數(shù)據(jù)商品信息商品商品信息5.1提取基礎(chǔ)數(shù)據(jù)3修改客戶數(shù)據(jù)操作員4修改商品數(shù)據(jù)操作員5.2新增銷售數(shù)據(jù)銷售記錄6修改銷售數(shù)據(jù)操作員銷售數(shù)據(jù)7商品銷售構(gòu)成分析8客戶購買時間預(yù)測主管商品編號客戶編號銷售數(shù)據(jù)銷售數(shù)據(jù)商品信息客戶信息圖2.2 客戶管理系統(tǒng)數(shù)據(jù)流圖2.6 數(shù)據(jù)字典數(shù)據(jù)字典是所有與系統(tǒng)相關(guān)的數(shù)據(jù)元素的有組織的列表,并且包含了對這些數(shù)據(jù)元素的精確、嚴(yán)格的定義,從而使得用戶和系統(tǒng)分析員雙方對輸入、輸出、存儲的成分甚至中間計算結(jié)果有共同的理解。簡而言之,數(shù)據(jù)字典是描述數(shù)據(jù)的信息的集合,是對系統(tǒng)中使用的所有數(shù)據(jù)元素的定義的集合。下面的表是

35、對各數(shù)據(jù)元素的詳細(xì)說明:數(shù)據(jù)存儲名稱: 客戶資料簡述: 記錄和保存客戶的基本信息記錄組成: 客戶資料=客戶ID+客戶名稱+所屬人員+地址+電話+電子郵件+登記時間+法人代表+郵編+傳真+等級+來源+類型+行業(yè)組織方式: 按記錄建立次序順序排列,有客戶ID索引數(shù)據(jù)存儲名稱: 商品信息簡述: 記錄和保存商品的基本信息記錄組成: 商品信息=商品ID+商品名稱+規(guī)格+型號+計量單位+最低銷售價+標(biāo)準(zhǔn)銷售價組織方式:按記錄建立次序順序排列,有商品ID索引數(shù)據(jù)存儲名稱: 銷售記錄簡述: 記錄和保存客戶購買商品的詳細(xì)記錄記錄組成: 銷售記錄=銷售詳情ID+銷售記錄ID+客戶ID+商品ID+聯(lián)系時間+聯(lián)系方式

36、+單價+數(shù)量組織方式: 按記錄建立次序順序排列,有銷售記錄ID索引數(shù)據(jù)項名稱: 客戶信息 簡述: 客戶的各項詳細(xì)信息數(shù)據(jù)項組成: 客戶信息=客戶名稱+地址+電話+電子郵件+郵編+傳真+等級+來源+類型+行業(yè)數(shù)據(jù)項名稱: 客戶編碼 簡述: 給每個客戶的一個唯一的、做標(biāo)識的號碼值類型: 4個字符數(shù)據(jù)項名稱: 商品信息 簡述: 商品的各項詳細(xì)信息數(shù)據(jù)項組成: 商品信息=商品名稱+規(guī)格+型號+計量單位+最低銷售價+標(biāo)準(zhǔn)銷售價數(shù)據(jù)項名稱: 商品編碼 簡述: 給每件商品的一個唯一的、坐標(biāo)識的號碼 值類型: 4個字符數(shù)據(jù)項名稱: 銷售數(shù)據(jù) 簡述: 客戶購買商品的詳細(xì)記錄數(shù)據(jù)項組成: 銷售數(shù)據(jù)=客戶ID+商品

37、ID+聯(lián)系時間+聯(lián)系方式+單價+數(shù)量3.系統(tǒng)設(shè)計3.1 數(shù)據(jù)庫設(shè)計3.1.1 E-R圖根據(jù)以上需求分析進(jìn)行初步設(shè)計可以畫出本系統(tǒng)實體間關(guān)系的E-R圖,如圖3.1所示,系統(tǒng)中包括客戶、商品、我方人員和聯(lián)系人四個實體。每個客戶都有若干個聯(lián)系人,公司的職員與客戶進(jìn)行聯(lián)系時,首先應(yīng)該是聯(lián)絡(luò)屬于該客戶的某個聯(lián)系人。經(jīng)過聯(lián)絡(luò)或商談之后,與客戶簽訂銷售合同、出售相應(yīng)的產(chǎn)品。系統(tǒng)將與聯(lián)系人聯(lián)絡(luò)的資料及銷售產(chǎn)品的資料保存起來,當(dāng)作以后對市場、客戶進(jìn)行分析的依據(jù)。聯(lián)系人聯(lián)系人我方人員客戶聯(lián)絡(luò)銷售屬于家庭電話辦公電話部門生日姓名性別ID職務(wù)方式姓名時間費用ID權(quán)限職務(wù)地址行業(yè)等級時間ID電話名稱類型單據(jù)編號產(chǎn)品詳情

38、商品名稱ID規(guī)格售價型號 n n n 1nmnm p圖3.1 系統(tǒng)的E-R圖3.1.2 從E-R模型導(dǎo)出數(shù)據(jù)模式通過對實際客戶管理和設(shè)計出的E-R圖的分析,本系統(tǒng)設(shè)計的實體和屬性如下:1)客戶:(客戶ID,名稱,地址,電話,等級,類型,行業(yè))2)聯(lián)系人:(聯(lián)系人ID,姓名,性別,職務(wù),辦公電話,家庭電話,部門,郵編,生日)3)我方人員:(我方人員ID,姓名,職務(wù),權(quán)限)4)商品:(商品ID,名稱,規(guī)格,型號,售價)5)銷售:(銷售記錄ID,商品ID,客戶ID,單據(jù)編號,開單時間,制單人ID(我方人員)6)聯(lián)絡(luò):(聯(lián)系記錄ID,聯(lián)系時間,聯(lián)系人ID,我方人員ID,方式,費用)7)屬于:(客戶ID

39、,聯(lián)系人ID,姓名,職務(wù),部門)3.1.3 數(shù)據(jù)庫中表的設(shè)計根據(jù)系統(tǒng)的功能分析和E-R圖可以設(shè)計如下所示的數(shù)據(jù)庫中的表。數(shù)據(jù)庫采用SQL Server 2000,調(diào)試、運行程序前必須先在SQL Server 服務(wù)器上建立一個名為company的數(shù)據(jù)庫。下面集中給出了與該客戶管理系統(tǒng)相關(guān)的各個數(shù)據(jù)表的詳細(xì)結(jié)構(gòu)。1) 客戶信息表如表3.1所示,客戶信息表(CMRKh)描述了與公司相關(guān)的所有客戶的信息,這是客戶管理系統(tǒng)中的重要數(shù)據(jù)。表中字段所屬人員ID保存的是公司中負(fù)責(zé)該客戶的人員的ID,即該客戶的主經(jīng)手人的ID。表3.1 客戶信息表序 號字段名類 型長 度精 度小數(shù)位數(shù)默認(rèn)值允許空主 鍵說 明1k

40、h_iint4客戶ID2kh_mcvarchar50客戶名稱3kh_bmvarchar10客戶編碼4kh_ssryiint4所屬人員ID5kh_dzvarchar100地址6kh_dh1varchar20電話17kh_dh2varchar20電話28kh_dzyjvarchar50電子郵件9kh_djsjdatetime8等級時間10kh_frdbvarchar20法人代表11kh_ybchar6郵編12kh_czvarchar20傳真13kh_khdjiint4客戶等級ID14kh_khlyiint4客戶來源15kh_khlxiint4客戶類型16kh_sshyiint4所屬行業(yè)17kh_b

41、ztext16備注2) 聯(lián)系人信息表如表3.2所示,聯(lián)系人信息表(CRMLxr)保存了所有客戶的聯(lián)系人的資料。一個客戶的主聯(lián)系人一般只有一個,因此對于某個客戶來說最多只有一個聯(lián)系人是否主聯(lián)系人字段可以取值為真,這一點是通過程序來控制的。表3.2 聯(lián)系人信息表序 號字段名類 型長 度精 度小數(shù)位數(shù)默認(rèn)值允許空主 鍵說 明1lxr_iint4聯(lián)系人ID2lxr_khiint4客戶ID3lxr_bmvarchar10聯(lián)系人編碼4lxr_xmvarchar20姓名5lxr_ncvarchar20昵稱6lxr_zlxrbit1(0)是否主聯(lián)系人7lxr_xbiint4性別ID8lxr_zwvarchar

42、20職務(wù)9lxr_bmenvarchar20部門10lxr_bgdhvarchar20辦公電話11lxr_jtdhvarchar20家庭電話續(xù)表序 號續(xù)表字段名類 型長 度精 度小數(shù)位數(shù)默認(rèn)值允許空主 鍵說 明12lxr_dzyjvarchar50電子郵件13lxr_qqint4QQ號14lxr_dzvarchar100地址15lxr_ybchar6郵編16lxr_srdatetime8生日17lxr_bztext16備注3) 我方人員信息表如表3.3所示,我方人員信息表(PMPerson)保存了對我方管理人員的基本信息。表3.3 我方人員信息表序 號字段名類 型長 度精 度小數(shù)位數(shù)默認(rèn)值允許

43、空主 鍵說 明1Per_iint4人員ID2Per_pint4(0)人員編號3Per_namevarchar20人員姓名4Per_codevarchar20人員編碼5Per_sexvarchar10性別6Per_gwvarchar20崗位7Per_zwvarchar60職務(wù)8Per_dlmzvarchar20登錄名字9Per_dlmmvarchar20登錄密碼10Per_qxint4(0)權(quán)限4) 銷售記錄表如表3.4所示,銷售記錄表(CRMXsjl)保存了對客戶銷售的基本信息。表3.4 銷售記錄表序 號字段名類 型長 度精 度小數(shù)位數(shù)默認(rèn)值允許空主 鍵說 明1xsjl_iint4銷售記錄ID

44、2xsjl_khiint4客戶ID3xsjl_djbhvarchar20單據(jù)編號4xsjl_kdsjdatetime8開單時間5xsjl_zdriint4制單人ID6xsjl_ shriint4審核人ID7xsjl_shsjdatetime8審核時間8xsjl_bztext16備注9xsjl_cxyytext16撤消原因10 xsjl_zttinyint1(1)銷售記錄狀態(tài) 1待審核 2待完成 3審核未通過 4已完成 5已撤消5) 銷售詳情表如表3.5所示,銷售詳情表(CRMXsxq)保存了與銷售記錄表對應(yīng)的銷售產(chǎn)品的具體數(shù)據(jù)。表3.5 銷售詳情表序 號字段名類 型長 度精 度小數(shù)位數(shù)默認(rèn)值允

45、許空主 鍵說 明1xsxq_iint4銷售詳情ID2xsxq_xsjliint4銷售記錄ID3xsxq_spiint4商品ID4xsxq_spggchar20商品規(guī)格5xsxq_djdecimal9182單價6xsxq_sldecimal9184數(shù)量6) 聯(lián)系記錄表如表3.6所示,聯(lián)系記錄表(CRMLxjl)保存了公司職員已經(jīng)完成的與客戶的聯(lián)系人進(jìn)行聯(lián)絡(luò)的信息。表3.6 聯(lián)系記錄表序 號字段名類 型長 度精 度小數(shù)位數(shù)默認(rèn)值允許空主 鍵說 明1lxjl_iint4聯(lián)系記錄ID2lxjl_sjdatetime8聯(lián)系時間3lxjl_lxriint4聯(lián)系人ID4lxjl_wfryiint4我方人員5

46、lxjl_lxfsiint4聯(lián)系方式6lxjl_jltext16聯(lián)系記錄7lxjl_fydatetime9182聯(lián)系費用7) 行動安排表如表3.7所示,行動安排表(CRMXdap)記錄了公司職員預(yù)計將與客戶的聯(lián)系人進(jìn)行聯(lián)絡(luò)的信息。表3.7 行動安排表序 號字段名類 型長 度精 度小數(shù)位數(shù)默認(rèn)值允許空主 鍵說 明1xdap_iint4行動安排ID2xdap_wfryiint4我方人員ID3xdap_lxriint4聯(lián)系人ID4xdap_sjdatetime8時間5xdap_xqtext16行動安排詳情6xdap_wcbit1(0)完成7xdap_cxbit1(0)行動撤消8) 經(jīng)手人變更表在客戶

47、信息表的說明中曾經(jīng)說到每個客戶都會有一個主經(jīng)手人,如表3.8所示,經(jīng)手人變更表(CRMJsrbg)記錄了每個客戶由于各種原因?qū)е碌闹鹘?jīng)手人變更的信息。在經(jīng)手人變更時,首先應(yīng)該更改客戶信息表中的所屬人員ID字段的值,并且在經(jīng)手人變更表中增加一條記錄。表3.8 經(jīng)手人變更表序 號字段名類 型長 度精 度小數(shù)位數(shù)默認(rèn)值允許空主 鍵說 明1jsrbg_iint4經(jīng)手人變更ID2jsrbg_kssjdatetime8變更時間3jsrbg_lxriint4聯(lián)系人ID4jsrbg_ryiint4我方人員ID續(xù)表序 號續(xù)表字段名類 型長 度精 度小數(shù)位數(shù)默認(rèn)值允許空主 鍵說 明5jsrbg_yytext16變

48、更原因6jsrbg_jssjdatetime8結(jié)束時間9) 聯(lián)系人安排表每個聯(lián)系人在公司內(nèi)部除了有一個主經(jīng)手人之外,可能還需要多個其他職員與該聯(lián)系人保持聯(lián)系;另外,每個職員也會與多個聯(lián)系人進(jìn)行聯(lián)系,即聯(lián)系人和公司職員之間存在多對多的關(guān)系。如表3.9所示,聯(lián)系人安排表(CRMLxrap)記錄了每個聯(lián)系人與公司職員之間的聯(lián)絡(luò)關(guān)系。表3.9 聯(lián)系人安排表序 號字段名類 型長 度精 度小數(shù)位數(shù)默認(rèn)值允許空主 鍵說 明1lrap_iint4聯(lián)系人安排ID2lrap_lxriint4聯(lián)系人ID3lrap_wfryiint4我方人員ID10) 行業(yè)表如表3.10所示,行業(yè)表(CRMHy)保存了行業(yè)的分類信息

49、。表3.10 行業(yè)表序 號字段名類 型長 度精 度小數(shù)位數(shù)默認(rèn)值允許空主 鍵說 明1hy_iint4行業(yè)2hy_mcvarchar20行業(yè)名稱3hy_msvarchar50行業(yè)描述11) 客戶等級表如表3.11所示,客戶等級表(CRMKhdj)保存了客戶分等級的方法。表3.11 客戶等級表序 號字段名類 型長 度精 度小數(shù)位數(shù)默認(rèn)值允許空主 鍵說 明1khdi_iint4客戶等級ID2khdi_mcvarchar20客戶等級名稱3khdi_msvarchar50客戶等級描述12) 客戶類型表如表3.12所示,客戶類型表(CRMKhlx)保存了客戶類型的說明。表3.12 客戶類型表序 號字段名類

50、 型長 度精 度小數(shù)位數(shù)默認(rèn)值允許空主 鍵說 明1khlx_iint4客戶類型ID2khlx_mcvarchar20客戶類型名稱3khlx_msvarchar50客戶類型描述13) 客戶來源表如表3.13所示,客戶來源表(CRMKhly)保存了客戶可能的來源的說明。表3.13 客戶來源表序 號字段名類 型長 度精 度小數(shù)位數(shù)默認(rèn)值允許空主 鍵說 明1khly_iint4客戶來源ID2khly_mcvarchar20客戶來源名稱3khly_msvarchar50客戶來源描述14) 聯(lián)系方式表如表3.14所示,聯(lián)系方式表(CRMLxfs)保存了與聯(lián)系人進(jìn)行聯(lián)絡(luò)的方式。表3.14 聯(lián)系方式表序 號字

51、段名類 型長 度精 度小數(shù)位數(shù)默認(rèn)值允許空主 鍵說 明1lxfs_iint4聯(lián)系方式ID2lxfs_mcvarchar20聯(lián)系方式名稱3lxfs_msvarchar50聯(lián)系方式描述15) 商品表如表3.15所示,商品表(CRMSp)保存了所有產(chǎn)品相關(guān)的信息。表3.15 商品表序 號字段名類 型長 度精 度小數(shù)位數(shù)默認(rèn)值允許空主 鍵說 明1sp_iint4商品ID2sp_bmvarchar20商品編碼3sp_mcvarchar30商品名4sp_ggchar20商品規(guī)格5sp_xhchar20商品型號6sp_jldwvarchar10計量單位7sp_zdxsjdecimal9182最低銷售價8sp

52、_bzxsjdecimal9182標(biāo)準(zhǔn)銷售價9sp_mstext16商品描述16) 性別表如表3.16所示,性別表(CRMXb)保存了性別的分類信息。表3.16 性別表序 號字段名類 型長 度精 度小數(shù)位數(shù)默認(rèn)值允許空主 鍵說 明1xb_iint4性別2xb_mcvarchar20性別名稱3xb_msvarchar50性別描述3.1.4 數(shù)據(jù)庫中視圖的設(shè)計在本系統(tǒng)當(dāng)中,設(shè)計了一個對該公司所有客戶下次購買不同商品的時間進(jìn)行預(yù)測的模塊,為此我們設(shè)計了一個算法,而我們通過在SQL中設(shè)計一個存儲過程(pro_yc)來實現(xiàn)該算法。為了方便實現(xiàn)該過程,在數(shù)據(jù)庫中定義了兩個視圖,分別為VIEW_XQ和VIE

53、W_YC1。1)視圖VIEW_XQ的設(shè)計視圖VIEW_XQ的設(shè)計目的是為了將銷售記錄表(CRMXsjl)和銷售詳情表(CRMXsxq)兩個表聯(lián)系起來,因為在設(shè)計時,銷售記錄表是定義了與客戶有關(guān)的銷售信息,而銷售詳情表定義了與商品有關(guān)的銷售信息,它們是通過聯(lián)系記錄ID來關(guān)聯(lián)起來建立起此視圖的。視圖的圖表區(qū)顯示如右圖3.2所示。選擇兩個表的所有列來建立此視圖,在SQL語言區(qū)輸入下面代碼:SELECT A.*, B.*圖3.2 視圖VIEW_XQFROM dbo.CRMXsxq A INNER JOINdbo.CRMXsjl B ON A.xsxq_xsjli = B.xsjl_i2)視圖VIEW_

54、YC1的設(shè)計建立此視圖的目的是同樣是在工程pro_yc的實現(xiàn)中所用到,目的是為了統(tǒng)計某一時間段內(nèi)客戶購買某種商品的數(shù)量總和(具體算法將會在本文的系統(tǒng)實現(xiàn)章節(jié)中提到)。此視圖SQL語言區(qū)的具體代碼如下:SELECT xsjl_khi, xsxq_spi, xsjl_kdsj, SUM(xsxq_sl) AS SLHJFROM dbo.VIEW_XQGROUP BY xsjl_khi, xsxq_spi, xsjl_kdsj3.2 系統(tǒng)模塊設(shè)計3.2.1 模塊劃分客戶是客戶管理的核心,因此,本系統(tǒng)重點實現(xiàn)了客戶資料的管理功能,并且外加實現(xiàn)了一個銷售分析的功能模塊。本客戶管理系統(tǒng)可大致分為三個模塊。

55、具體描述如下:(1)客戶資料管理模塊:包括客戶信息管理、聯(lián)系人資料管理、銷售記錄管理、聯(lián)系記錄管理和行動安排。(2)客戶資料分析模塊:包括銷售構(gòu)成分析,它分別從客戶、時間和商品三個方面進(jìn)行分析。(3)系統(tǒng)數(shù)據(jù)設(shè)置模塊:包括設(shè)置產(chǎn)品數(shù)據(jù)、設(shè)置系統(tǒng)數(shù)據(jù)和管理員設(shè)置。3.2.2 系統(tǒng)功能模塊圖系統(tǒng)的具體功能模塊圖見圖3.3??蛻艄芾硐到y(tǒng)客戶管理系統(tǒng)客戶資料管理客戶資料分析系統(tǒng)數(shù)據(jù)設(shè)置聯(lián)系記錄管理設(shè)置系統(tǒng)數(shù)據(jù)設(shè)置產(chǎn)品數(shù)據(jù)銷售構(gòu)成分析行動安排銷售記錄管理聯(lián)系人資料管理客戶信息管理管理員設(shè)置客戶購買商品時間預(yù)測圖3.3 系統(tǒng)功能模塊圖4. 系統(tǒng)實現(xiàn)4.1 系統(tǒng)共用模塊在客戶管理中,有許多函數(shù)和過程是多個模

56、塊需要調(diào)用的,如查詢數(shù)據(jù)庫的函數(shù)和過程、顯示定制對話框等,還有一些變量也是多個模塊需要訪問的,如當(dāng)前登錄系統(tǒng)的用戶權(quán)限等,這些數(shù)據(jù)和過程都放在模塊PublicModel.pas中。4.1.1 用戶信息數(shù)據(jù)結(jié)構(gòu)及獲得用戶信息函數(shù)1)用戶信息數(shù)據(jù)結(jié)構(gòu)用戶信息數(shù)據(jù)結(jié)構(gòu)TUser定義了系統(tǒng)中需要調(diào)用的一些用戶信息的數(shù)據(jù)結(jié)構(gòu),如用戶ID、姓名、權(quán)限等,同時還定義了一個NowUser的全局變量,記錄當(dāng)前登錄用戶的信息,NowUser的值在用戶登錄系統(tǒng)時設(shè)定。用戶信息數(shù)據(jù)結(jié)構(gòu)的定義為:typeTUser = record UserID : integer; UserName : string; UserPo

57、wer : string; aFlag : integer;end;NowUser的定義為:VerNowUser:Ture; /系統(tǒng)當(dāng)前的用戶2)判斷用戶是否具有權(quán)限在本系統(tǒng)中采用了很簡單的兩級權(quán)限,即管理員和查看員,因此定義了一個名為aFlag的權(quán)限標(biāo)識,在用戶信息數(shù)據(jù)結(jié)構(gòu)定義的代碼中可以看出,具體實現(xiàn)的代碼如下:function hasPower:boolean;begin if NowUser.aFlag=1 then Result := True else Result := False ;end;4.1.2自定義對話框為了界面的統(tǒng)一和整齊、美觀,在需要使用對話框的地方,程序進(jìn)行了統(tǒng)一

58、定制。程序中常用的對話框分為兩種,一種是需要選擇進(jìn)行下一步操作還是放棄操作的兩個按鈕的對話框,一種是進(jìn)行一些信息提示的單按鈕對話框。因此,程序中分別定義了一個單按鈕的通用對話框,利用這兩個對話框又可以定義程序中常用的錯誤提示,普通信息提示和確認(rèn)對話框。1)單按鈕的通用對話框單按鈕對話框,通常是提示程序的某些操作結(jié)果或者錯誤信息,因此不需要返回結(jié)果,程序中將單按鈕對話框定義為一個過程,代碼如下:function CustorMessageDlg(const aMsg, aCaption: string; const PicFile:String = ): integer;var DialogFo

59、rm: TForm; AOkButton: TButton; aCancelButton: TButton; aLabel: TLabel; aImg : TImage ; aPic :TPicture ; i, formWidth: integer;begin Result := 2;下面代碼首先創(chuàng)建對話框中的各個控件:DialogForm := TForm.Create(Application); AOkButton := TButton.Create(Application); aCancelButton := TButton.Create(Application); aLabel :=

60、 TLabel.Create(Application);aImg := TImage.Create(Application);aPic := TPicture.Create ;formWidth := 300;try aPic.LoadFromFile(PicFile);exceptend;下面代碼設(shè)置提示內(nèi)容的label控件:with aLabel do begin Font.Size := 8; Caption := ;for i := 1 to length(aMsg) do begin if (I mod 56 = 0) then Caption := Caption + aMsgI

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論