




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、摘 要根據(jù)目前一些小企業(yè)的特點,本系統(tǒng)旨在建立一個完成訪客資料的記錄和查詢的客戶管理系統(tǒng),它可以理解為是目前流行的客戶關(guān)系管理系統(tǒng)的一個子系統(tǒng)。論文在介紹了課題的來源和系統(tǒng)設(shè)計背景的基礎(chǔ)上展開了系統(tǒng)設(shè)計過程的說明。首先講述了系統(tǒng)的總體設(shè)計,主要論述面向?qū)ο蟮娜龑覥/S架構(gòu)的設(shè)計、系統(tǒng)功能模塊的劃分、系統(tǒng)結(jié)構(gòu)設(shè)計。接著介紹了系統(tǒng)數(shù)據(jù)庫的設(shè)計,包括數(shù)據(jù)庫需求分析、數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計等,然后詳細介紹了客戶管理系統(tǒng)詳細設(shè)計,包括系統(tǒng)組件設(shè)計,主界面設(shè)置,客戶信息管理對話框代碼設(shè)計、添加客戶信息、修改客戶信息、刪除客戶信息、查看客戶信息、查找客戶等設(shè)計內(nèi)容。最后簡要介紹了軟件測試,包括測試的目的與任務(wù)以
2、及調(diào)試中需要注意事項的。關(guān)鍵詞:客戶管理,VB,ACCESS,系統(tǒng)設(shè)計AbstractSome are in the light of at present peanuts characteristic, this system aims at building that customer management system , it are understandable for being at present popular Customer Relationship Management system one build of precis writer and inquiry acco
3、mplishing the visitor data system.The system having spread out on thesis basis designing background in source and system having introduced a problem's designs the process explanation. The population having given an account of system's first designs , design , system function discussing be ge
4、ared to the needs of marriage partner three layers of C/S frame's mainly have no the module partition , system physical design. And then proceed to have introduced system data base design, include data base need analysis , data base concept physical design etc., have introduced that the customer
5、 manages system detailed design , the module designs , the host interface interposes , the customer information administration conversation frame code designs , adding customer information , revising customer information , deleting customer information , checking customer information , seeking a cus
6、tomer and so on designs content including system detailedly. Brief final the testing having introduced a software , the purpose including a testing need matters needing attention's with the mission and debugging middle.Keywords: The customer manages , VB , ACCESS , system design that目 錄摘 要IAbstr
7、actII目 錄III第1章 概 述11.1 課題來源11.2 開發(fā)環(huán)境簡介21.2.1 VB 概述21.2.2 ACCESS 2003 數(shù)據(jù)庫簡介31.3 本文所做的工作4第2章 系統(tǒng)總體設(shè)計62.1 系統(tǒng)功能分析62.2 系統(tǒng)設(shè)計要求62.3 系統(tǒng)設(shè)計72.3.1 面向?qū)ο蟮娜龑覥S架構(gòu)的設(shè)計72.3.2 系統(tǒng)功能模塊劃分82.3.3 系統(tǒng)結(jié)構(gòu)設(shè)計8第3章 系統(tǒng)數(shù)據(jù)庫設(shè)計103.1 數(shù)據(jù)庫需求分析103.2 數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計113.3 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計123.4 數(shù)據(jù)庫的生成與配置14第4章 系統(tǒng)詳細設(shè)計154.1 組件設(shè)計154.1.1 客戶管理事務(wù)處理事件的創(chuàng)建154.1.2 在工
8、程中加入自定義枚舉154.1.3 創(chuàng)建組件的公共模塊174.2 客戶管理主界面設(shè)置184.2.1 設(shè)計主窗體控件布局184.2.2 圖片列表的關(guān)鍵字設(shè)置194.2.3 給工具條添加按鈕194.2.4添加菜單204.3 主界面編輯狀態(tài)預(yù)覽214.4 客戶信息管理模塊214.4.1 客戶信息管理對話框界面設(shè)計214.4.2 客戶信息管理對話框代碼設(shè)計254.4.3 添加客戶信息294.4.4 修改客戶信息294.4.5 刪除客戶信息304.4.6 查看客戶信息314.4.7 查找客戶32第5章 軟件測試335.1 測試的目的與任務(wù)335.2 測試的方法335.3 系統(tǒng)的調(diào)試與注意事項345.4 系
9、統(tǒng)的編譯與發(fā)行35總 結(jié)36參考文獻37致 謝38第1章 概 述1.1 課題來源客戶關(guān)系管理(Customer Relationship Management CRM)起源于80年代初提出的“接觸管理”(Contact Management),即專門收集整理客戶與公司聯(lián)系的所有信息以達到了解客戶的目的。而我們所做的客戶管理系統(tǒng)是客戶關(guān)系管理系統(tǒng)中的一部分。到90年代初期則演變成為包括電話服務(wù)中心與支援資料分析的客戶服務(wù)。經(jīng)歷了二十多年的不斷發(fā)展,客戶關(guān)系管理不斷演變發(fā)展并趨向于成熟,最終形成了一套完整的管理理論體系。目前隨著Internet帶來的巨大商機,電子商務(wù)變得越來越成熟,基于網(wǎng)絡(luò)辦公己
10、經(jīng)取得了更寬更廣的應(yīng)用。所以,基于B/S模式的CRM研究與應(yīng)用更具有特別的意義。傳統(tǒng)CRM系統(tǒng)的研究和應(yīng)用都是基于C/S模式,即客戶機/服務(wù)器的結(jié)構(gòu)模式,再加上郵件處理系統(tǒng),在企業(yè)網(wǎng)的內(nèi)部進行實施和應(yīng)用。這樣的系統(tǒng)需要在客戶端安裝相應(yīng)的客戶端應(yīng)用程序,服務(wù)器端也要安裝服務(wù)器應(yīng)用程序。隨著Internet的廣泛應(yīng)用,C/S模式逐漸暴露出很多不足的地方,比如,部署程序復(fù)雜,系統(tǒng)升級困難,可擴展性差。相反,B/S模式的系統(tǒng)有許多優(yōu)點:1)應(yīng)用范圍廣泛??梢院碗娮由虅?wù)聯(lián)系起來,在全球范圍內(nèi)進行相關(guān)的業(yè)務(wù)處理。2)辦公方式簡捷,方便。只要能上網(wǎng),就能進行業(yè)務(wù)處理。3)安裝,使用方便,可擴展性強。只須安裝
11、服務(wù)器端應(yīng)用程序,不需要安裝客戶端程序。所以,進行基于B/S模式的CRM系統(tǒng)研究與應(yīng)用,可以使公司客戶快速、方便、及時地查詢公司最新的各種信息,處理與公司的業(yè)務(wù)。這對公司管理客戶關(guān)系,促進業(yè)務(wù)處理,提高經(jīng)濟效益,都有重大意義。目前商用的CRM產(chǎn)品很多,企業(yè)著手進行CRM實施的過程中,多數(shù)以失敗或者不理想而告終,主要原因在于系統(tǒng)不適合企業(yè)自身的需要,并且對于中小企業(yè)來說一個完全意義上CRM系統(tǒng)似沒有必要的,他們使用CRM系統(tǒng)也主要就是使用其中的客戶管理和聯(lián)系等基本功能,因此我們認為自己動手開發(fā)一個適合企業(yè)特點的客戶管理系統(tǒng)具有重要的現(xiàn)實意義。1.2 開發(fā)環(huán)境簡介根據(jù)我們當(dāng)前的知識水平,我們選用了
12、Microsoft Visual Basic 6.0作為前臺的開發(fā)工具,用ACCESS 2003作為后臺支持數(shù)據(jù)庫,通過VB6.0的數(shù)據(jù)庫控件來連接ACCESS 2003中并對其編程來實現(xiàn)各種功能。,因為ACCESS與Visual Basic用的同為Microsoft Jet數(shù)據(jù)庫引擎,有著最好的兼容性。1.2.1 VB 概述Visual Basic (以下簡稱VB)的前身是QBASIC,語言基礎(chǔ)是BASIC。自從微軟推出VB后,便成為了程序開發(fā)人員的首選工具。據(jù)統(tǒng)計,僅在數(shù)據(jù)庫系統(tǒng)開發(fā)領(lǐng)域,VB就占了90的份額。VB是基于對象的可視化程序開發(fā)工具,它的優(yōu)點在于能夠快捷、簡易地建立Window
13、s應(yīng)用程序。1998年8月,微軟推出了VB 6.0的版本,進一步加強了部件開發(fā)的功能。以適用人員來分,可有以下三個版本:1. 標(biāo)準版 針對一般程序設(shè)計人員,適合普通應(yīng)用系統(tǒng)的開發(fā)。 2. 專業(yè)版 針對專業(yè)程序開發(fā)人員,它在標(biāo)準版的基礎(chǔ)上提供了對數(shù)據(jù)庫和Internet的支持。 3. 企業(yè)版 適用于專為企業(yè)設(shè)計應(yīng)用軟件的程序開發(fā)人員。使用VB不需要追求完美的算法和精密的邏輯,而只要充分發(fā)揮你的想象力和創(chuàng)造力,就能利用VB開發(fā)出各種實用的軟件了,不論是小游戲還是大型的客戶端/服務(wù)器端應(yīng)用程序,都變得非常簡單。可視化編程的一個突出特點就是其開發(fā)環(huán)境就像一個百寶箱,很多功能都集成在其之中,這就是IDE
14、(Integrated Development Environment),即集成開發(fā)環(huán)境。IDE是指在相應(yīng)的開發(fā)平臺中集成了編輯器、編譯連接工具、控件器箱輔助工具。例如在VB的集成開發(fā)環(huán)境中就包括了以下一些主要元素:工具欄、工具箱、工程管理器窗口、屬性窗口、窗體設(shè)計器、代碼編輯器窗口等;和VB類似,Delphi的IDE中具有主控制窗體、對象查看窗口和窗體設(shè)計器。同時IDE的設(shè)置是很靈活的,開發(fā)人員可以按照自己的編程習(xí)慣來配置IDE。從簡單的文本文件到各種復(fù)雜的關(guān)系型數(shù)據(jù)庫,數(shù)據(jù)庫應(yīng)用程序需要面對各種各樣的數(shù)據(jù)源。Visual basic 6.0提供ADO(Active Data Objects
15、)作為應(yīng)用程序和OLE-DB連接的橋梁ADO,即Active數(shù)據(jù)對象(Active Data Objects):實際是一種提供訪問各種數(shù)據(jù)類型的連接機制。ADO設(shè)計為一種極簡單的格式,通過ODBC的方法同數(shù)據(jù)庫接口相連。用戶可以使用任何一種ODBC數(shù)據(jù)源,即不僅適合于SQL Server、Oracle、Access等數(shù)據(jù)庫應(yīng)用程序,也適合于Excel表格、文本文件、圖形文件和無格式的數(shù)據(jù)文件。ADO是基于OLE-DB之上的技術(shù),因此ADO通過其內(nèi)部的屬性和方法提供統(tǒng)一的數(shù)據(jù)訪問接口方法。Microsoft在Visual Basic 6.0以后的版本都集成了ADO。它與以前Visual Basi
16、c的DAO、RDO相比有了很大的提高。DAO(Data Access Objects)即數(shù)據(jù)訪問對象,是一種面向?qū)ο蟮慕缑娼涌凇Mㄟ^DAO/Jet功能可以訪問ISAM數(shù)據(jù)庫,使用DAO/ODBC Direct功能可以實現(xiàn)遠程RDO功能。RDO(Remote Data Objects)即遠程數(shù)據(jù)對象,為使用代碼來創(chuàng)建和操作一個遠程ODBC數(shù)據(jù)庫系統(tǒng)的各個部件提供了一個框架。RDO是ODBC API的一個淺層界面接口,是專為訪問遠程ODBC關(guān)系數(shù)據(jù)源而設(shè)計的。ADO集中了DAO和RDO的優(yōu)點,可以通過簡單的編程實現(xiàn)和各種數(shù)據(jù)結(jié)構(gòu)進行連接。使用ADO的目的是進入數(shù)據(jù)源,使得修改、更新數(shù)據(jù)成為可能。A
17、DO提供一系列的類和對象來完成各種操作。1.2.2 ACCESS 2003 數(shù)據(jù)庫簡介過去的一些數(shù)據(jù)庫軟件,在操作上、數(shù)據(jù)庫建立、維護等等,都相當(dāng)復(fù)雜且不易使用,但是在具備了窗口的GUI(圖形用戶界面)特性的ACCESS數(shù)據(jù)庫推出之后,數(shù)據(jù)庫的建立不再是困難的事情,我們可以在PC上簡單而快速的建立出一套符合自己的數(shù)據(jù)庫。 不但如此,在ACCESS 2003推出以后,我們發(fā)現(xiàn)數(shù)據(jù)庫的建立更加的快速,但是功能卻更加強大,用戶不用再去記憶那一大堆的文件名稱,或是為數(shù)據(jù)庫的文件管理大費周章,通過ACCESS的人性化管理接口把數(shù)據(jù)庫的管理整理,便于維護;此外,在報表的制作上也是相當(dāng)容易的,完全的視覺開發(fā)
18、向?qū)гO(shè)計,讓人使用起來很舒服。但是美中不足的是ACCESS對于主從式結(jié)構(gòu)的安全性管理不足,由于ACCESS可以快速的通過ODBC連接到數(shù)據(jù)庫服務(wù)器上(Database Server),并瀏覽所有表格或是相關(guān)對象轉(zhuǎn)成HTML。基本上,ACCESS對建立一個數(shù)據(jù)庫所具備的每一個對象,其中包括了表、查詢、窗體、報表、宏、模塊。其功能分別敘述如下:Ø 表對象打開已經(jīng)存在的表格、對已存在的表格字段數(shù)據(jù)進行修改、新建表格。Ø 查詢對象可以用直接拖放的方式,建立表格之間的關(guān)聯(lián)與對應(yīng)關(guān)系,自動產(chǎn)生SQL語法查詢出我們想要的數(shù)據(jù)。Ø 窗體設(shè)計對象可以設(shè)計用戶接口,用來輸入并處理數(shù)據(jù)
19、。Ø 報表對象利用視圖向?qū)У拈_發(fā)方式,簡單、快速的建立出需求報表或標(biāo)簽。Ø 宏對象提供許多的宏功能,您可以把這樣的宏連接到窗體設(shè)計中的任一個對象,以達成一些復(fù)雜的功能。Ø 模塊對象撰寫VB的程序模塊,處理較復(fù)雜的問題與需求,該功能是采用事件驅(qū)動的模式,類似VB的處理方式。1.3 本文所做的工作 本文主要針對客戶管理系統(tǒng)的設(shè)計過程做一個詳細的說明,論文共分五章:第一章,概述,主要介紹了課題的來源,并簡單介紹了系統(tǒng)開發(fā)環(huán)境VB與ACCESS 2003數(shù)據(jù)庫的特點。第二章,系統(tǒng)總體設(shè)計,論及了系統(tǒng)功能分析、系統(tǒng)設(shè)計要求、系統(tǒng)設(shè)計。其中最主要的是講述系統(tǒng)設(shè)計,它主要論述面
20、向?qū)ο蟮娜龑覥/S架構(gòu)的設(shè)計、系統(tǒng)功能沒模塊的劃分、系統(tǒng)結(jié)構(gòu)設(shè)計。第三章,系統(tǒng)數(shù)據(jù)庫設(shè)計,包括數(shù)據(jù)庫需求分析、數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計等。第四章,系統(tǒng)詳細設(shè)計,首先介紹了組件設(shè)計,客戶信息管理對話框界面設(shè)計、客戶信息管理對話框代碼設(shè)計、添加客戶信息、修改客戶信息、刪除客戶信息、查看客戶信息、查找客戶。第五章,軟件測試,主要介紹測試的目的與任務(wù)以及調(diào)試中需要注意事項的。最后對整個設(shè)計工作作了一個總結(jié)。第2章 系統(tǒng)總體設(shè)計2.1 系統(tǒng)功能分析以客戶為中心的理念在國外興起于20世紀50年代,當(dāng)時很多企業(yè)寄望于通過改進技術(shù)、壓縮生產(chǎn)周期、改善內(nèi)部資源管理來提高生產(chǎn)增長率和利潤,但事實上見效甚微。這樣企業(yè)開始
21、從強調(diào)降低經(jīng)營成本的供應(yīng)方發(fā)展策略轉(zhuǎn)向了需求方策略。所謂需求方策略,就是指與客戶聯(lián)系更緊密,從客戶關(guān)系方面挖掘新能源的策略,CRM應(yīng)運而生。所不同的是,現(xiàn)在計算機可以幫助人們實現(xiàn)這些看似并不復(fù)雜而實際操作起來非常繁瑣的工作。試想一下,當(dāng)我們需要查找一個客戶的電話號碼時,只需要敲幾下鍵盤,就可以看到客戶的詳細資料(包括姓名、公司名稱、電話、Email,甚至包括合作歷史記錄),還有,當(dāng)客戶的生日快到時,軟件可以提醒您是該客戶寄出賀卡的時候了 。所有的這些,正是一個完善的客戶管理系統(tǒng)的功能所在。本系統(tǒng)設(shè)計的是一個面向企業(yè)或面向個人的客戶管理系統(tǒng)。系統(tǒng)開發(fā)的總體任務(wù)是實現(xiàn)與客戶相關(guān)的各種信息的系統(tǒng)化、
22、規(guī)范化和自動化。系統(tǒng)主要完成的功能有: 客戶類型的建立與維護,包括客戶類型的新建、修改和刪除等。 客戶信息的輸入,客戶信息包括客戶的基本信息、一般的通訊方式及客戶其他信息,如愛好、禁忌、生日等。 客戶信息的修改與刪除,包括啟動與取消客戶的生日提醒等。 根據(jù)不同條件查詢客戶,可以查看客戶信息。 與客戶合作記錄的信息維護,包括合作記錄的添加、修改和刪除等。 客戶評價管理,包括客戶的重要度、友好度、滿意度的設(shè)定與查看。 客戶事件提醒,包括定時約會提醒和生日提醒兩種。 客戶提醒信息維護,包括添加、修改和刪除提醒信息。2.2 系統(tǒng)設(shè)計要求根據(jù)小型客戶管理系統(tǒng)的特點,該系統(tǒng)應(yīng)該具有如下設(shè)計需求:三層結(jié)構(gòu)設(shè)
23、計:本系統(tǒng)采用三層結(jié)構(gòu)設(shè)計,即程序邏輯結(jié)構(gòu)分為用戶界面層、業(yè)務(wù)邏輯處理層和數(shù)據(jù)存儲層。三層在實際的物理結(jié)構(gòu)上也是獨立的,業(yè)務(wù)邏輯處理層采用ActiveX DLL實現(xiàn),用戶界面與業(yè)務(wù)邏輯分離,系統(tǒng)的安全性、可維護性、重用性和擴展性都大大提高。面向?qū)ο笤O(shè)計:系統(tǒng)中將客戶類型、客戶等都封裝成相應(yīng)的類,同時每個類都有自己對應(yīng)的集合類,從而再次提高了對數(shù)據(jù)庫操作的安全性和程序的可擴展性。人性化設(shè)計:系統(tǒng)不僅僅是一個客戶信息的管理軟件,它更具有人性化的生日提醒,極具實用性的合作記錄,以及對客戶的重要度、友好度、滿意度評價等。盡可能使用現(xiàn)有資源:目的當(dāng)然是為了提高軟件開發(fā)的效率,在本系統(tǒng)中主要體現(xiàn)為使用VB
24、應(yīng)用程序向?qū)韯?chuàng)建應(yīng)用程序,向?qū)Э梢詾槲覀兩珊芏嘤杏玫拇a和一個總體框架,本系統(tǒng)在向?qū)е羞x擇的是“資源管理器樣式”,這就是為什么系統(tǒng)的主界面很像資源管理器的原因了。另外,讀者也許已經(jīng)注意到了,系統(tǒng)的今日提醒界面與某些程序的“每日一帖”或“日積月累”對話框十分相似,事實上它正是用VB窗體模板中的“日積月累”對話框?qū)崿F(xiàn)的。2.3 系統(tǒng)設(shè)計現(xiàn)在首先從系統(tǒng)設(shè)計思想角度來介紹客戶管理系統(tǒng)的總體設(shè)計,然后講述本客戶管理系統(tǒng)的功能模塊設(shè)計與結(jié)構(gòu)設(shè)計。2.3.1 面向?qū)ο蟮娜龑覥S架構(gòu)的設(shè)計本系統(tǒng)采用三層架構(gòu)設(shè)計,它的工作原理如圖2.1所示。 用戶界面層 業(yè)務(wù)處理層 數(shù)據(jù)存儲層 IUnkown 給出客戶ID
25、,要查看 組織SQL語句,查詢 客戶信息 數(shù)據(jù)庫 返回客戶對象, 返回查詢結(jié)果 內(nèi)部有客戶信息 數(shù)據(jù)庫 客戶管理 組件 客戶管理系統(tǒng)操作界面 圖2.1 三層架構(gòu)的工作原理圖圖2.1 CS架構(gòu)工作原理圖2.3.2 系統(tǒng)功能模塊劃分 根據(jù)上述的系統(tǒng)功能分析,可以得出圖中2.2所示的系統(tǒng)功能模塊圖。從圖中可以看出系統(tǒng)包括客戶類型管理模塊、客戶管理模塊和提醒管理模塊,在客戶管理模塊中,又包括客戶信息管理、客戶評價管理和客戶合作管理3部分??梢姡蛻羰窍到y(tǒng)的核心,其他模塊都是以客戶為中心并為其他服務(wù)的。 客戶管理系統(tǒng)客戶類型管理模塊客戶管理系統(tǒng)提醒管理模塊添加客戶類型修改客戶類型刪除客戶類型客戶信息管理
26、客戶評價管理客戶合作管理查看今日提醒提醒設(shè)置管理查看定時管理刪除定時管理修改定時管理添加定時管理刪除合作記錄修改合作記錄添加合作記錄查找客戶信息查看客戶信息刪除客戶信息修改客戶信息 圖2.2 系統(tǒng)功能模塊圖2.3.3 系統(tǒng)結(jié)構(gòu)設(shè)計根據(jù)面向?qū)ο蠛腿龑咏Y(jié)構(gòu)的設(shè)計思想,可得出如圖2.3所示的系統(tǒng)結(jié)構(gòu)設(shè)計圖。從圖中可以看出系統(tǒng)的物理結(jié)構(gòu)也分為三層,即用戶界面、組件和數(shù)據(jù)庫??蛻艄芾硐到y(tǒng)客戶管理界面客戶管理組件數(shù)據(jù)庫客戶類型相關(guān)界面客戶信息相關(guān)界面合作信息相關(guān)界面客戶類型管理客戶信息管理合作信息管理提醒信息管理公共模塊提醒信息集合類提醒信息類合作信息集合類客戶合作信息類客戶信息集合類客戶信息類客戶類型集
27、合類客戶類型類公共模塊提醒信息相關(guān)界面枚舉定義類 圖2.3 系統(tǒng)結(jié)構(gòu)設(shè)計圖第3章 系統(tǒng)數(shù)據(jù)庫設(shè)計數(shù)據(jù)庫在一個信息管理系統(tǒng)中占有非常重要的地位,數(shù)據(jù)庫結(jié)構(gòu)設(shè)計的好壞將直接影響應(yīng)用系統(tǒng)的效率及實現(xiàn)的效果。合理的數(shù)據(jù)庫結(jié)構(gòu)設(shè)計可以提高數(shù)據(jù)存儲的效率,保證數(shù)據(jù)的完整性和一致性。設(shè)計數(shù)據(jù)庫系統(tǒng)時應(yīng)該首先充分了解用戶各個方面的需求,包括現(xiàn)有的及將來可能增加的需求。數(shù)據(jù)庫設(shè)計一般包括數(shù)據(jù)庫需求分析,數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計,數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計。 3.1 數(shù)據(jù)庫需求分析用戶的需求具體體現(xiàn)在各種信息的提供、保存、更新和查詢,這就要求數(shù)據(jù)庫結(jié)構(gòu)能充分滿足各種信息的輸出和輸入。收集基本數(shù)據(jù)、數(shù)據(jù)結(jié)構(gòu)及數(shù)據(jù)處理的流程,組成
28、一份詳盡的數(shù)據(jù)字典,為后面的具體設(shè)計打下基礎(chǔ)。通過上述系統(tǒng)功能的分析,針對一般客戶管理信息系統(tǒng)的需求,以下便是的需求信息:l 客戶類型存在上下級關(guān)系。l 客戶必須屬于一個客戶類型。l 如果一個客戶類型存在客戶,或存在下級客戶類型,則該類型不可刪除。l 客戶評價與客戶一一對應(yīng)。l 客戶合作信息必須與某一個客戶相關(guān)。l 提醒可以針對某一個客戶,也可以針對全部客戶。l 客戶信息、合作信息、提醒信息要可以添加、修改、刪除、瀏覽、查看。l 客戶可以按幾種常用的信息查詢。經(jīng)過上述系統(tǒng)功能分析和需求總結(jié),考慮到將來功能上的擴展,設(shè)計的數(shù)據(jù)項和數(shù)據(jù)結(jié)構(gòu)如下:l 客戶類型信息,包括的數(shù)據(jù)項有:客戶類型編號、上級
29、客戶類型編號、客戶類型名稱等。l 包括的數(shù)據(jù)項有:客戶基本信息、客戶其他聯(lián)系方式、客戶其他信息幾方面。客戶基本信息包括客戶編號、客戶姓名、性別、手機、E-mail等;客戶其他聯(lián)系方式包括辦公室電話、家庭住址、郵編等;客戶其他信息包括客戶公司網(wǎng)站、客戶喜好、禁忌等。l 客戶評價信息,包括重要度、友好度、滿意度等。l 客戶合作信息,包括合作編號、合作客戶、合作時間、合作內(nèi)容等。l 提醒信息,包括提醒編號、提醒對象、提醒時間、提醒內(nèi)容等。在上面的需求分析、數(shù)據(jù)結(jié)構(gòu)設(shè)計、數(shù)據(jù)項分析的基礎(chǔ)上,下面可以開始數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計了。3.2 數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計 得到上面的數(shù)據(jù)項和數(shù)據(jù)結(jié)構(gòu)以后,就可以設(shè)計出能夠滿
30、足用戶需求的各種實體,以及它們之間的關(guān)系,為后面的邏輯結(jié)構(gòu)設(shè)計打下基礎(chǔ)。這些實體包含各種具體信息,通過相互之間的作用形成數(shù)據(jù)的流動。本實例根據(jù)上面的設(shè)計規(guī)劃出的實體有:客戶類型信息實體、客戶信息實體、提醒信息實體、評價信息實體、合作信息實體。每一個實體都是現(xiàn)實中實際存在的對象的抽象,每兩個或兩個以上的實體之間可能存在某種關(guān)系。下面分別給出各個實體的E-R(Entity-Relation)圖。各實體之間關(guān)系的E-R圖如圖3.1所示,客戶類型信息實體E-R圖如圖3.2所示,客戶類型信息實體E-R圖如圖3.3所示,合作信息實體E-R圖如圖3.4所示,提醒信息實體E-R圖如圖3.5所示,評價信息實體E
31、-R圖如圖3.6所示。客戶類型客戶提醒評價合作提醒信息評價信息合作信息 圖3.1 各實體之間關(guān)系的E-R圖客戶類型客戶類型名稱上級類型客戶名稱客戶性別客戶E-mail客戶電話 圖 3.2 客戶類型信息實體圖 . 圖3.3 客戶信息實體圖E-R圖提醒信息提醒編號提醒顯示時間提醒類型顯示時間合作信息合作編號合作時間滿意度合作內(nèi)容圖3.4 合作信息實體E-R圖 圖3.5提醒信息實體E-R圖評價信息友好度滿意度重要度 圖3.6 評價信息實體E-R圖3.3 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計數(shù)據(jù)庫的概念結(jié)構(gòu)設(shè)計完畢后,現(xiàn)在可以將上面的數(shù)據(jù)庫概念結(jié)構(gòu)轉(zhuǎn)化為某種數(shù)據(jù)庫系統(tǒng)所支持的實際數(shù)據(jù)模型,也就是數(shù)據(jù)庫的邏輯結(jié)構(gòu)。根據(jù)客
32、戶管理系統(tǒng)使用情況的不同,可以采用Acess數(shù)據(jù)庫或SQL Server 2000數(shù)據(jù)庫。從系統(tǒng)移植方便性角度考慮,我們采用了Access 數(shù)據(jù)庫??蛻艄芾硐到y(tǒng)數(shù)據(jù)庫中各個表的設(shè)計結(jié)果如表3.1表3.5所示。表3.1為客戶信息表,因為與客戶評價表主鍵相同,可以合并為一張表。表3.1 客戶信息表(ClientInfo)列表數(shù)據(jù)類型字段大小必填字段默認值說明ClientId自動編號長整型是“”遞增,主鍵Name文本20是0姓名Sex數(shù)字字節(jié)是0性別Age數(shù)字字節(jié)是1980-1-1#年齡Birthday日期/時間短日期是“ ”生日OfficePhone文本15是“ ”辦公室電話Mobile文本15是
33、“ ”手機Fax文本15是“ ”傳真HomePhone文本15是“ ”宅電Work文本50是“ ”職業(yè)Position文本30是“ “職位Email文本20是“ ”郵件HomeAddress文本50是“ ”住址MailAddress文本50是“ ”通訊地址ZipCode文本8是“ ”郵編SelfSite文本30是“ ”個人網(wǎng)站Company文本50是“ ”就職單位CompanySite文本30是“ ”公司網(wǎng)站Likes備注是“未知”喜好Hate備注是“未知”厭惡TypeId數(shù)字長整型是0客戶類型IDRemark備注是“ ”備注Birthday Warn是/否是False是否啟用生日提醒Impo
34、rtance數(shù)字整型是50重要度(0-255)Friendly數(shù)字整型是50友好度(0-255)Satisfaction數(shù)字整型是50滿意度(0-255)表3.2 客戶類型信息表(ClienType)列表數(shù)據(jù)類型字段大小必填字段默認值說明TypeId自動編號長整型是遞增,主鍵SuperId數(shù)字長整型是0上級類型IDTypeName文本20否“”客戶類型名 表3.3 合作信息表(Cooperate)列表數(shù)據(jù)類型字段大小必填字段默認值說明CooperateId自動編號長整型是主鍵,遞增ClientId數(shù)字長整型是客戶ID,外碼Date日期/時間短日期是#1900-1-1#合作日期Satefacti
35、on數(shù)字整型是50滿意度(0-255)Remark備注是“ ”備注表3.4 提醒信息表(Warning)列表數(shù)據(jù)類型字段大小必填字段默認值說明WarnId自動編號長整型是主鍵,遞增ClientId數(shù)字長整型是0客戶ID,為0時表時全體客戶ShowDate日期/時間短日期是#1900-1-1#提醒顯示日期TypeId數(shù)字整型是1提醒類型Id,外碼Msg備注是“ ”提醒消息表3.5 提醒類型信息表(WarnType)列表數(shù)據(jù)類型字段大小必填字段默認值說明WTypeId自動編號字節(jié)是提醒類型編號WtypeName文本30是“定時提醒”提醒類型名稱3.4 數(shù)據(jù)庫的生成與配置經(jīng)過前面的需求分析和概念結(jié)構(gòu)
36、設(shè)計以后,得到數(shù)據(jù)庫的邏輯結(jié)構(gòu)。下面在Acess數(shù)據(jù)庫創(chuàng)建數(shù)據(jù)表,本系統(tǒng)的數(shù)據(jù)庫文件名定為“ManageClient.mdb”,這里需要注意數(shù)據(jù)庫的權(quán)限問題,即:(1)去掉數(shù)據(jù)庫文件和所在文件夾的只讀屬性。(2)如果是NTFS分區(qū),則要給適當(dāng)?shù)挠脩籼砑訖?quán)限,一般,簡單的解決辦法是給它的Everyone用戶添加完全控制權(quán)限。 第4章 系統(tǒng)詳細設(shè)計后臺數(shù)據(jù)庫結(jié)構(gòu)的設(shè)計工作完成以后,可以進入系統(tǒng)的詳細設(shè)計環(huán)節(jié)??蛻艄芾硎聞?wù)處理組件用來處理客戶管理系統(tǒng)中的業(yè)務(wù)邏輯,既負責(zé)與界面進行數(shù)據(jù)傳遞,同時也要將界面端的請求應(yīng)用業(yè)務(wù)邏輯之后對數(shù)據(jù)庫進行操作。4.1 組件設(shè)計客戶管理事務(wù)處理組件包括以下功能:(1)
37、客戶類型信息管理;(2)客戶信息管理;(3)業(yè)務(wù)合作信息管理;(4)客戶提醒信息管理。4.1.1 客戶管理事務(wù)處理事件的創(chuàng)建為了給客戶管理事件創(chuàng)建組件,我們新建了ActiveX DLL工程,加入對ADO的引用,設(shè)置的工程的關(guān)鍵屬性如下:工程類型為ActiveX DLL,啟動對象為Sub Main,工程名稱為ClientManagerCom。4.1.2 在工程中加入自定義枚舉新建工程時自動生成的類型名稱設(shè)為CPublic,此類沒有別的具體意義,主要功能是保存一些自定義的枚舉類型,這些枚舉類型在以后其他各類中要經(jīng)常用到,同時這個類的實現(xiàn)沒有技術(shù)難度,根據(jù)需要我們定義了以下枚舉:Option Exp
38、licit'該類無實際意義,只為保存一些自定義枚舉'自定義枚舉,用于表示性別Public Enum gxcSex Male = 0 Female = 1End Enum'連接數(shù)據(jù)庫的類型Public Enum gxcDBType DBAccess = 0 DBSQLServer = 1End Enum'以下枚舉用于“客戶類型”對象的操作,用于表示客戶類型刪除結(jié)果的枚舉Public Enum gxcDelete DeleteOK = 0 DeleteFail = 1 '未知原因?qū)е虏荒軇h除 DeleteSubExists = 2 '由于存在子類型,
39、因此不能刪除 DeleteClientExists = 3 '該客戶類型存在客戶,不能刪除End Enum'用于表示客戶類型更新結(jié)果的枚舉Public Enum gxcUpdate UpdateOK = 0 UpdateFail = 1 DuplicateName_Update = 2 '名字不可重復(fù) RecordNotExist = 3 '當(dāng)前更新的記錄不存在End Enum'用于表示客戶類型新增結(jié)果的枚舉Public Enum gxcAddNew AddNewOK = 0 AddNewFail = 1 DuplicateName_AddNew = 2
40、 '名字不可重復(fù) SuperNotExist = 3 '指定的上級客戶類型的ID不存在End Enum'用于提醒類別設(shè)置Public Enum gxcWarnType BirthdayWarn = 1 '生日提醒 CommonWarn = 2 '定時提醒End Enum'用于對話框顯示類別設(shè)置Public Enum gxcViewType vtadd = 0 '添加信息 vtModify = 1 '修改信息 vtInfo = 2 '查看信息End Enum4.1.3 創(chuàng)建組件的公共模塊 在工程中添加一個模塊,命名為mdlp
41、ublic,此模塊有兩個功能:l 用來連接數(shù)據(jù)庫及相關(guān)的初始化操作。l 存放在對數(shù)據(jù)庫的操作過程中可能用到的一些公共函數(shù)。1) 添加全局變量我們加入兩個全局變量,它們的名稱和功能如下:Public g_Connection 用于全局的數(shù)據(jù)連接Public g_DBPath As String 如果是Access數(shù)據(jù)庫,記錄下數(shù)據(jù)庫的路徑2) Sub Main()過程啟動對象手動加入Sub Main()過程,這個就是剛才在工程屬性設(shè)置里指定的啟動對象。在這個過程中,完成ActiveX DLL的初始化工作。在Sub Main()中的ConnecToDatabase 函數(shù)時功能是用來連接到數(shù)據(jù)庫,下
42、面來看它的實現(xiàn)方法。3) ConnecToDatabase 函數(shù)與數(shù)據(jù)庫建立連接Ø 功能:根據(jù)傳入?yún)?shù)是DBAccess 還是DBSQLSever 來決定連接到 Access數(shù)據(jù)庫還是SQL Sever數(shù)據(jù)庫。Ø 參數(shù)設(shè)計:gxcDBType類型,參見CPublic類中的枚舉定義。Ø 返回值:Boolean 類型,True表示成功,F(xiàn)alse 表示失敗。Ø 設(shè)計思路:根據(jù)傳入?yún)?shù)組織不同的連接字符串,然后打開數(shù)據(jù)庫連接?,F(xiàn)在,在mblPublic模塊中連接數(shù)據(jù)庫的功能已經(jīng)實現(xiàn),下面添加在數(shù)據(jù)庫操作時比較常用的一些函數(shù)。4) RealString替換字符串
43、的單引號在用SQL語言存儲字符型數(shù)據(jù)時,單引號成為我們最大的天敵,如果在字符串中存在單引號,則可能會意外截斷字符,造成SQL語法錯誤。解決辦法是用兩個單引號來表示一個單引號。5) MaxID替換字符串的單引號MaxID函數(shù)用來獲取表中當(dāng)前主鍵的最大值,這個函數(shù)用于在數(shù)據(jù)庫中添新記錄后,立即獲取剛才添加記錄的主鍵值。6) ExistByID判斷記錄是否存在 ExistByID 函數(shù)用于給定一條記錄的ID號后,查看數(shù)據(jù)庫中是否存在此記錄。7) GetValueByID根據(jù)主鍵名獲取某以字段的值這個函數(shù)根據(jù)輸入的ID來查找對應(yīng)的記錄,如果找到一條記錄,則根據(jù)輸入的字段名返回對應(yīng)值。比如知道客戶ID后
44、,可以調(diào)用此函數(shù)來獲取客戶名。4.2 客戶管理主界面設(shè)置4.2.1 設(shè)計主窗體控件布局 為了對主界面的設(shè)計,首先我們對主窗體的控件的屬性,圖片列表的關(guān)鍵字,工具條的按鈕等做了些設(shè)置。按表4.1所示的設(shè)置為主窗體添加控件(已有控件只需設(shè)置屬性即可)。表4.1 主窗體及其控件屬性的設(shè)置控件名稱屬性屬性取值功能frmMain(Form)Caption客戶管理系統(tǒng)系統(tǒng)主窗體imlViewSIcon(LisView)ImageHeight16樹形控件和列表框小圖標(biāo)所使用的圖片ImageWidth16imlViewBIcon(ImageList)ImageHeight32列表框大圖標(biāo)和工具條所使用的圖片I
45、mageWidth32tbToolBar(ToolBar)AlignvbAlignBottom主窗體中的工具條StyletbrFlatTextAlignmenttbrTextAlignBottomImageListimlViewBIcontvTreeView(TreeView)LineStletvwRootLines顯示客戶類型樹Style7ImageListimlViewSIconlvListView(ListView)FullRowSlelctTrue顯示客戶列表GridLinesTrueViewlvwReportIconimlViewBIconSmall IconimlViewSIcon
46、4.2.2 圖片列表的關(guān)鍵字設(shè)置按上述給窗體添加完控件并設(shè)置屬性后,下面是對系統(tǒng)中要用到的圖片做的初始化設(shè)置。對兩個ImageList的圖片選擇不做限制,但要求:imlViewSIcon必須包“group”、“group2”、“boy”、“girl”、“sboy”、“sgirl”等關(guān)鍵字;imlViewSIcon必須包括“boy”、“girl”、“bboy”、“bgirl”、“group”、“add”、“modify”、“del”“info”、“search”、 “warn”、“setting”、“IstView”、“exit”等關(guān)鍵字。4.2.3 給工具條添加按鈕 為了使用的方便,我們在工具
47、條中設(shè)計了一下常用的按鈕。具體設(shè)計細節(jié)見表4.2-4.4所示: 表4.2 工具條按鈕的設(shè)置按鈕標(biāo)題關(guān)鍵字樣式圖像客戶類型tbnClientType5-tbrDropdowngroup3-tbrSeperator添加客戶tbnAddClient0-tbrDefualtadd修改客戶tbnModifyClient0-tbrDefualtmodify刪除客戶tbnDelClient0-tbrDefualtdel客戶信息TbnClientInfo0-tbrDefualtinfo查找客戶tbnSearchClient0-tbrDefualtsearch3-tbrSeperator今日提醒tbnWarn0
48、-tbrDefualtwarn提醒設(shè)置tbnWarnsetting0-tbrDefaultsettingtbnViewStyle3-tbrSeperator顯示方式tbnViewStyle5-tbrDropdownIstView3-tbrSeperator退出系統(tǒng)tbnExit0-tbrDefault表4.3 客戶類型按鈕的按鈕菜單設(shè)計文本關(guān)鍵字添加客戶類型tbnAddClientType修改客戶類型tbnModifyClientType刪除客戶類型tbnDelClientType表4.4 顯示方式按鈕的按鈕菜單設(shè)計文本關(guān)鍵字大圖標(biāo)大圖標(biāo)小圖標(biāo)小圖標(biāo)列表列表詳細資料詳細資料4.2.4 添加菜單
49、 下面是主界面編輯的最后一步,在主界面的界面設(shè)計模式下,打開“菜單編輯器”對話框,按照表4.5所示的設(shè)置為主界面添加菜單,其他屬性取值默認值。 表4.5 主界面菜單設(shè)置標(biāo)題名稱級別系統(tǒng)管理mnuAdmin1&X退出系統(tǒng)mnuExit2客戶類型管理mnuClientType1&A添加客戶類型mnuAddClientType2&M修改客戶類型mnuModifyClientType2&D刪除客戶類型mnuDelClientType2客戶管理mnuClient1&A添加客戶mnuAddClient2&M修改客戶mnuModifyClient2&D
50、刪除客戶mnuDelClient2mnuSplit12&S查找客戶mnuSearchClient2MnuSplit22&I查看客戶詳細資料mnuClientInfo2提醒管理mnuWarning1&T查看今日提醒mnuShowWarn2MnuSplitter32&S查看提醒設(shè)置mnuWarnSetting24.3 主界面編輯狀態(tài)預(yù)覽 按照以上的要求設(shè)置后,主界面frmMain的設(shè)計如圖4.1所示。 圖4.1 客戶管理系統(tǒng)主界面設(shè)計視圖4.4 客戶信息管理模塊此系統(tǒng)是由我們小組的三位同學(xué)共同組合成的,本人是負責(zé)客戶信息管理這個模塊,以下是本人對這個模塊具體的如何實現(xiàn)??蛻粜畔⒐芾砟K實現(xiàn)以下的功能:(1)添加客戶信息;(2)修改客戶信息;(3)刪除客戶信息(5)查找客戶信息;(6)查看客戶信息。在本系統(tǒng)中,客戶的關(guān)鍵信息是用列表控件顯示在主窗體的右側(cè)的,但客戶信息的添加、修改、查看都需要新的窗口來
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 銀行風(fēng)險防控體系評估與優(yōu)化研究
- 華為項目范圍管理辦法
- 村級經(jīng)濟規(guī)劃管理辦法
- 江蘇物業(yè)安全管理辦法
- 新工科實踐育人數(shù)字資源體系構(gòu)建
- 國際跨學(xué)科教育質(zhì)量評估體系比較研究
- 景區(qū)店鋪運營管理辦法
- 江西政務(wù)服務(wù)管理辦法
- 安全生產(chǎn)事故隱患泛指
- 擴建工程的安全設(shè)施必須與主體工程
- 車工考評員培訓(xùn)課件
- 站姿走姿坐姿禮儀培訓(xùn)
- 小規(guī)模稅務(wù)視頻教學(xué)課件
- 業(yè)務(wù)外包費用管理制度
- 月子中心各部管理制度
- 痛風(fēng)的康復(fù)護理課件
- 公司自供自產(chǎn)品管理制度
- 2025-2030年中國多西他賽注射液行業(yè)市場深度分析及發(fā)展趨勢與投資研究報告
- 五育并舉與心理健康教育的融合
- 介入室耗材管理課件
- 三級直播銷售員(高級)職業(yè)技能鑒定考試復(fù)習(xí)題及答案
評論
0/150
提交評論