




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、摘 要根據目前一些小企業的特點,本系統旨在建立一個完成訪客資料的記錄和查詢的客戶管理系統,它可以理解為是目前流行的客戶關系管理系統的一個子系統。論文在介紹了課題的來源和系統設計背景的基礎上展開了系統設計過程的說明。首先講述了系統的總體設計,主要論述面向對象的三層C/S架構的設計、系統功能模塊的劃分、系統結構設計。接著介紹了系統數據庫的設計,包括數據庫需求分析、數據庫概念結構設計等,然后詳細介紹了客戶管理系統詳細設計,包括系統組件設計,主界面設置,客戶信息管理對話框代碼設計、添加客戶信息、修改客戶信息、刪除客戶信息、查看客戶信息、查找客戶等設計內容。最后簡要介紹了軟件測試,包括測試的目的與任務以
2、及調試中需要注意事項的。關鍵詞:客戶管理,VB,ACCESS,系統設計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 開發環境簡介21.2.1 VB 概述21.2.2 ACCESS 2003 數據庫簡介31.3 本文所做的工作4第2章 系統總體設計62.1 系統功能分析62.2 系統設計要求62.3 系統設計72.3.1 面向對象的三層CS架構的設計72.3.2 系統功能模塊劃分82.3.3 系統結構設計8第3章 系統數據庫設計103.1 數據庫需求分析103.2 數據庫概念結構設計113.3 數據庫邏輯結構設計123.4 數據庫的生成與配置14第4章 系統詳細設計154.1 組件設計154.1.1 客戶管理事務處理事件的創建154.1.2 在工
8、程中加入自定義枚舉154.1.3 創建組件的公共模塊174.2 客戶管理主界面設置184.2.1 設計主窗體控件布局184.2.2 圖片列表的關鍵字設置194.2.3 給工具條添加按鈕194.2.4添加菜單204.3 主界面編輯狀態預覽214.4 客戶信息管理模塊214.4.1 客戶信息管理對話框界面設計214.4.2 客戶信息管理對話框代碼設計254.4.3 添加客戶信息294.4.4 修改客戶信息294.4.5 刪除客戶信息304.4.6 查看客戶信息314.4.7 查找客戶32第5章 軟件測試335.1 測試的目的與任務335.2 測試的方法335.3 系統的調試與注意事項345.4 系
9、統的編譯與發行35總 結36參考文獻37致 謝38第1章 概 述1.1 課題來源客戶關系管理(Customer Relationship Management CRM)起源于80年代初提出的“接觸管理”(Contact Management),即專門收集整理客戶與公司聯系的所有信息以達到了解客戶的目的。而我們所做的客戶管理系統是客戶關系管理系統中的一部分。到90年代初期則演變成為包括電話服務中心與支援資料分析的客戶服務。經歷了二十多年的不斷發展,客戶關系管理不斷演變發展并趨向于成熟,最終形成了一套完整的管理理論體系。目前隨著Internet帶來的巨大商機,電子商務變得越來越成熟,基于網絡辦公己
10、經取得了更寬更廣的應用。所以,基于B/S模式的CRM研究與應用更具有特別的意義。傳統CRM系統的研究和應用都是基于C/S模式,即客戶機/服務器的結構模式,再加上郵件處理系統,在企業網的內部進行實施和應用。這樣的系統需要在客戶端安裝相應的客戶端應用程序,服務器端也要安裝服務器應用程序。隨著Internet的廣泛應用,C/S模式逐漸暴露出很多不足的地方,比如,部署程序復雜,系統升級困難,可擴展性差。相反,B/S模式的系統有許多優點:1)應用范圍廣泛。可以和電子商務聯系起來,在全球范圍內進行相關的業務處理。2)辦公方式簡捷,方便。只要能上網,就能進行業務處理。3)安裝,使用方便,可擴展性強。只須安裝
11、服務器端應用程序,不需要安裝客戶端程序。所以,進行基于B/S模式的CRM系統研究與應用,可以使公司客戶快速、方便、及時地查詢公司最新的各種信息,處理與公司的業務。這對公司管理客戶關系,促進業務處理,提高經濟效益,都有重大意義。目前商用的CRM產品很多,企業著手進行CRM實施的過程中,多數以失敗或者不理想而告終,主要原因在于系統不適合企業自身的需要,并且對于中小企業來說一個完全意義上CRM系統似沒有必要的,他們使用CRM系統也主要就是使用其中的客戶管理和聯系等基本功能,因此我們認為自己動手開發一個適合企業特點的客戶管理系統具有重要的現實意義。1.2 開發環境簡介根據我們當前的知識水平,我們選用了
12、Microsoft Visual Basic 6.0作為前臺的開發工具,用ACCESS 2003作為后臺支持數據庫,通過VB6.0的數據庫控件來連接ACCESS 2003中并對其編程來實現各種功能。,因為ACCESS與Visual Basic用的同為Microsoft Jet數據庫引擎,有著最好的兼容性。1.2.1 VB 概述Visual Basic (以下簡稱VB)的前身是QBASIC,語言基礎是BASIC。自從微軟推出VB后,便成為了程序開發人員的首選工具。據統計,僅在數據庫系統開發領域,VB就占了90的份額。VB是基于對象的可視化程序開發工具,它的優點在于能夠快捷、簡易地建立Window
13、s應用程序。1998年8月,微軟推出了VB 6.0的版本,進一步加強了部件開發的功能。以適用人員來分,可有以下三個版本:1. 標準版 針對一般程序設計人員,適合普通應用系統的開發。 2. 專業版 針對專業程序開發人員,它在標準版的基礎上提供了對數據庫和Internet的支持。 3. 企業版 適用于專為企業設計應用軟件的程序開發人員。使用VB不需要追求完美的算法和精密的邏輯,而只要充分發揮你的想象力和創造力,就能利用VB開發出各種實用的軟件了,不論是小游戲還是大型的客戶端/服務器端應用程序,都變得非常簡單。可視化編程的一個突出特點就是其開發環境就像一個百寶箱,很多功能都集成在其之中,這就是IDE
14、(Integrated Development Environment),即集成開發環境。IDE是指在相應的開發平臺中集成了編輯器、編譯連接工具、控件器箱輔助工具。例如在VB的集成開發環境中就包括了以下一些主要元素:工具欄、工具箱、工程管理器窗口、屬性窗口、窗體設計器、代碼編輯器窗口等;和VB類似,Delphi的IDE中具有主控制窗體、對象查看窗口和窗體設計器。同時IDE的設置是很靈活的,開發人員可以按照自己的編程習慣來配置IDE。從簡單的文本文件到各種復雜的關系型數據庫,數據庫應用程序需要面對各種各樣的數據源。Visual basic 6.0提供ADO(Active Data Objects
15、)作為應用程序和OLE-DB連接的橋梁ADO,即Active數據對象(Active Data Objects):實際是一種提供訪問各種數據類型的連接機制。ADO設計為一種極簡單的格式,通過ODBC的方法同數據庫接口相連。用戶可以使用任何一種ODBC數據源,即不僅適合于SQL Server、Oracle、Access等數據庫應用程序,也適合于Excel表格、文本文件、圖形文件和無格式的數據文件。ADO是基于OLE-DB之上的技術,因此ADO通過其內部的屬性和方法提供統一的數據訪問接口方法。Microsoft在Visual Basic 6.0以后的版本都集成了ADO。它與以前Visual Basi
16、c的DAO、RDO相比有了很大的提高。DAO(Data Access Objects)即數據訪問對象,是一種面向對象的界面接口。通過DAO/Jet功能可以訪問ISAM數據庫,使用DAO/ODBC Direct功能可以實現遠程RDO功能。RDO(Remote Data Objects)即遠程數據對象,為使用代碼來創建和操作一個遠程ODBC數據庫系統的各個部件提供了一個框架。RDO是ODBC API的一個淺層界面接口,是專為訪問遠程ODBC關系數據源而設計的。ADO集中了DAO和RDO的優點,可以通過簡單的編程實現和各種數據結構進行連接。使用ADO的目的是進入數據源,使得修改、更新數據成為可能。A
17、DO提供一系列的類和對象來完成各種操作。1.2.2 ACCESS 2003 數據庫簡介過去的一些數據庫軟件,在操作上、數據庫建立、維護等等,都相當復雜且不易使用,但是在具備了窗口的GUI(圖形用戶界面)特性的ACCESS數據庫推出之后,數據庫的建立不再是困難的事情,我們可以在PC上簡單而快速的建立出一套符合自己的數據庫。 不但如此,在ACCESS 2003推出以后,我們發現數據庫的建立更加的快速,但是功能卻更加強大,用戶不用再去記憶那一大堆的文件名稱,或是為數據庫的文件管理大費周章,通過ACCESS的人性化管理接口把數據庫的管理整理,便于維護;此外,在報表的制作上也是相當容易的,完全的視覺開發
18、向導設計,讓人使用起來很舒服。但是美中不足的是ACCESS對于主從式結構的安全性管理不足,由于ACCESS可以快速的通過ODBC連接到數據庫服務器上(Database Server),并瀏覽所有表格或是相關對象轉成HTML。基本上,ACCESS對建立一個數據庫所具備的每一個對象,其中包括了表、查詢、窗體、報表、宏、模塊。其功能分別敘述如下:Ø 表對象打開已經存在的表格、對已存在的表格字段數據進行修改、新建表格。Ø 查詢對象可以用直接拖放的方式,建立表格之間的關聯與對應關系,自動產生SQL語法查詢出我們想要的數據。Ø 窗體設計對象可以設計用戶接口,用來輸入并處理數據
19、。Ø 報表對象利用視圖向導的開發方式,簡單、快速的建立出需求報表或標簽。Ø 宏對象提供許多的宏功能,您可以把這樣的宏連接到窗體設計中的任一個對象,以達成一些復雜的功能。Ø 模塊對象撰寫VB的程序模塊,處理較復雜的問題與需求,該功能是采用事件驅動的模式,類似VB的處理方式。1.3 本文所做的工作 本文主要針對客戶管理系統的設計過程做一個詳細的說明,論文共分五章:第一章,概述,主要介紹了課題的來源,并簡單介紹了系統開發環境VB與ACCESS 2003數據庫的特點。第二章,系統總體設計,論及了系統功能分析、系統設計要求、系統設計。其中最主要的是講述系統設計,它主要論述面
20、向對象的三層C/S架構的設計、系統功能沒模塊的劃分、系統結構設計。第三章,系統數據庫設計,包括數據庫需求分析、數據庫概念結構設計等。第四章,系統詳細設計,首先介紹了組件設計,客戶信息管理對話框界面設計、客戶信息管理對話框代碼設計、添加客戶信息、修改客戶信息、刪除客戶信息、查看客戶信息、查找客戶。第五章,軟件測試,主要介紹測試的目的與任務以及調試中需要注意事項的。最后對整個設計工作作了一個總結。第2章 系統總體設計2.1 系統功能分析以客戶為中心的理念在國外興起于20世紀50年代,當時很多企業寄望于通過改進技術、壓縮生產周期、改善內部資源管理來提高生產增長率和利潤,但事實上見效甚微。這樣企業開始
21、從強調降低經營成本的供應方發展策略轉向了需求方策略。所謂需求方策略,就是指與客戶聯系更緊密,從客戶關系方面挖掘新能源的策略,CRM應運而生。所不同的是,現在計算機可以幫助人們實現這些看似并不復雜而實際操作起來非常繁瑣的工作。試想一下,當我們需要查找一個客戶的電話號碼時,只需要敲幾下鍵盤,就可以看到客戶的詳細資料(包括姓名、公司名稱、電話、Email,甚至包括合作歷史記錄),還有,當客戶的生日快到時,軟件可以提醒您是該客戶寄出賀卡的時候了 。所有的這些,正是一個完善的客戶管理系統的功能所在。本系統設計的是一個面向企業或面向個人的客戶管理系統。系統開發的總體任務是實現與客戶相關的各種信息的系統化、
22、規范化和自動化。系統主要完成的功能有: 客戶類型的建立與維護,包括客戶類型的新建、修改和刪除等。 客戶信息的輸入,客戶信息包括客戶的基本信息、一般的通訊方式及客戶其他信息,如愛好、禁忌、生日等。 客戶信息的修改與刪除,包括啟動與取消客戶的生日提醒等。 根據不同條件查詢客戶,可以查看客戶信息。 與客戶合作記錄的信息維護,包括合作記錄的添加、修改和刪除等。 客戶評價管理,包括客戶的重要度、友好度、滿意度的設定與查看。 客戶事件提醒,包括定時約會提醒和生日提醒兩種。 客戶提醒信息維護,包括添加、修改和刪除提醒信息。2.2 系統設計要求根據小型客戶管理系統的特點,該系統應該具有如下設計需求:三層結構設
23、計:本系統采用三層結構設計,即程序邏輯結構分為用戶界面層、業務邏輯處理層和數據存儲層。三層在實際的物理結構上也是獨立的,業務邏輯處理層采用ActiveX DLL實現,用戶界面與業務邏輯分離,系統的安全性、可維護性、重用性和擴展性都大大提高。面向對象設計:系統中將客戶類型、客戶等都封裝成相應的類,同時每個類都有自己對應的集合類,從而再次提高了對數據庫操作的安全性和程序的可擴展性。人性化設計:系統不僅僅是一個客戶信息的管理軟件,它更具有人性化的生日提醒,極具實用性的合作記錄,以及對客戶的重要度、友好度、滿意度評價等。盡可能使用現有資源:目的當然是為了提高軟件開發的效率,在本系統中主要體現為使用VB
24、應用程序向導來創建應用程序,向導可以為我們生成很多有用的代碼和一個總體框架,本系統在向導中選擇的是“資源管理器樣式”,這就是為什么系統的主界面很像資源管理器的原因了。另外,讀者也許已經注意到了,系統的今日提醒界面與某些程序的“每日一帖”或“日積月累”對話框十分相似,事實上它正是用VB窗體模板中的“日積月累”對話框實現的。2.3 系統設計現在首先從系統設計思想角度來介紹客戶管理系統的總體設計,然后講述本客戶管理系統的功能模塊設計與結構設計。2.3.1 面向對象的三層CS架構的設計本系統采用三層架構設計,它的工作原理如圖2.1所示。 用戶界面層 業務處理層 數據存儲層 IUnkown 給出客戶ID
25、,要查看 組織SQL語句,查詢 客戶信息 數據庫 返回客戶對象, 返回查詢結果 內部有客戶信息 數據庫 客戶管理 組件 客戶管理系統操作界面 圖2.1 三層架構的工作原理圖圖2.1 CS架構工作原理圖2.3.2 系統功能模塊劃分 根據上述的系統功能分析,可以得出圖中2.2所示的系統功能模塊圖。從圖中可以看出系統包括客戶類型管理模塊、客戶管理模塊和提醒管理模塊,在客戶管理模塊中,又包括客戶信息管理、客戶評價管理和客戶合作管理3部分。可見,客戶是系統的核心,其他模塊都是以客戶為中心并為其他服務的。 客戶管理系統客戶類型管理模塊客戶管理系統提醒管理模塊添加客戶類型修改客戶類型刪除客戶類型客戶信息管理
26、客戶評價管理客戶合作管理查看今日提醒提醒設置管理查看定時管理刪除定時管理修改定時管理添加定時管理刪除合作記錄修改合作記錄添加合作記錄查找客戶信息查看客戶信息刪除客戶信息修改客戶信息 圖2.2 系統功能模塊圖2.3.3 系統結構設計根據面向對象和三層結構的設計思想,可得出如圖2.3所示的系統結構設計圖。從圖中可以看出系統的物理結構也分為三層,即用戶界面、組件和數據庫。客戶管理系統客戶管理界面客戶管理組件數據庫客戶類型相關界面客戶信息相關界面合作信息相關界面客戶類型管理客戶信息管理合作信息管理提醒信息管理公共模塊提醒信息集合類提醒信息類合作信息集合類客戶合作信息類客戶信息集合類客戶信息類客戶類型集
27、合類客戶類型類公共模塊提醒信息相關界面枚舉定義類 圖2.3 系統結構設計圖第3章 系統數據庫設計數據庫在一個信息管理系統中占有非常重要的地位,數據庫結構設計的好壞將直接影響應用系統的效率及實現的效果。合理的數據庫結構設計可以提高數據存儲的效率,保證數據的完整性和一致性。設計數據庫系統時應該首先充分了解用戶各個方面的需求,包括現有的及將來可能增加的需求。數據庫設計一般包括數據庫需求分析,數據庫概念結構設計,數據庫邏輯結構設計。 3.1 數據庫需求分析用戶的需求具體體現在各種信息的提供、保存、更新和查詢,這就要求數據庫結構能充分滿足各種信息的輸出和輸入。收集基本數據、數據結構及數據處理的流程,組成
28、一份詳盡的數據字典,為后面的具體設計打下基礎。通過上述系統功能的分析,針對一般客戶管理信息系統的需求,以下便是的需求信息:l 客戶類型存在上下級關系。l 客戶必須屬于一個客戶類型。l 如果一個客戶類型存在客戶,或存在下級客戶類型,則該類型不可刪除。l 客戶評價與客戶一一對應。l 客戶合作信息必須與某一個客戶相關。l 提醒可以針對某一個客戶,也可以針對全部客戶。l 客戶信息、合作信息、提醒信息要可以添加、修改、刪除、瀏覽、查看。l 客戶可以按幾種常用的信息查詢。經過上述系統功能分析和需求總結,考慮到將來功能上的擴展,設計的數據項和數據結構如下:l 客戶類型信息,包括的數據項有:客戶類型編號、上級
29、客戶類型編號、客戶類型名稱等。l 包括的數據項有:客戶基本信息、客戶其他聯系方式、客戶其他信息幾方面。客戶基本信息包括客戶編號、客戶姓名、性別、手機、E-mail等;客戶其他聯系方式包括辦公室電話、家庭住址、郵編等;客戶其他信息包括客戶公司網站、客戶喜好、禁忌等。l 客戶評價信息,包括重要度、友好度、滿意度等。l 客戶合作信息,包括合作編號、合作客戶、合作時間、合作內容等。l 提醒信息,包括提醒編號、提醒對象、提醒時間、提醒內容等。在上面的需求分析、數據結構設計、數據項分析的基礎上,下面可以開始數據庫概念結構設計了。3.2 數據庫概念結構設計 得到上面的數據項和數據結構以后,就可以設計出能夠滿
30、足用戶需求的各種實體,以及它們之間的關系,為后面的邏輯結構設計打下基礎。這些實體包含各種具體信息,通過相互之間的作用形成數據的流動。本實例根據上面的設計規劃出的實體有:客戶類型信息實體、客戶信息實體、提醒信息實體、評價信息實體、合作信息實體。每一個實體都是現實中實際存在的對象的抽象,每兩個或兩個以上的實體之間可能存在某種關系。下面分別給出各個實體的E-R(Entity-Relation)圖。各實體之間關系的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 各實體之間關系的E-R圖客戶類型客戶類型名稱上級類型客戶名稱客戶性別客戶E-mail客戶電話 圖 3.2 客戶類型信息實體圖 . 圖3.3 客戶信息實體圖E-R圖提醒信息提醒編號提醒顯示時間提醒類型顯示時間合作信息合作編號合作時間滿意度合作內容圖3.4 合作信息實體E-R圖 圖3.5提醒信息實體E-R圖評價信息友好度滿意度重要度 圖3.6 評價信息實體E-R圖3.3 數據庫邏輯結構設計數據庫的概念結構設計完畢后,現在可以將上面的數據庫概念結構轉化為某種數據庫系統所支持的實際數據模型,也就是數據庫的邏輯結構。根據客
32、戶管理系統使用情況的不同,可以采用Acess數據庫或SQL Server 2000數據庫。從系統移植方便性角度考慮,我們采用了Access 數據庫。客戶管理系統數據庫中各個表的設計結果如表3.1表3.5所示。表3.1為客戶信息表,因為與客戶評價表主鍵相同,可以合并為一張表。表3.1 客戶信息表(ClientInfo)列表數據類型字段大小必填字段默認值說明ClientId自動編號長整型是“”遞增,主鍵Name文本20是0姓名Sex數字字節是0性別Age數字字節是1980-1-1#年齡Birthday日期/時間短日期是“ ”生日OfficePhone文本15是“ ”辦公室電話Mobile文本15是
33、“ ”手機Fax文本15是“ ”傳真HomePhone文本15是“ ”宅電Work文本50是“ ”職業Position文本30是“ “職位Email文本20是“ ”郵件HomeAddress文本50是“ ”住址MailAddress文本50是“ ”通訊地址ZipCode文本8是“ ”郵編SelfSite文本30是“ ”個人網站Company文本50是“ ”就職單位CompanySite文本30是“ ”公司網站Likes備注是“未知”喜好Hate備注是“未知”厭惡TypeId數字長整型是0客戶類型IDRemark備注是“ ”備注Birthday Warn是/否是False是否啟用生日提醒Impo
34、rtance數字整型是50重要度(0-255)Friendly數字整型是50友好度(0-255)Satisfaction數字整型是50滿意度(0-255)表3.2 客戶類型信息表(ClienType)列表數據類型字段大小必填字段默認值說明TypeId自動編號長整型是遞增,主鍵SuperId數字長整型是0上級類型IDTypeName文本20否“”客戶類型名 表3.3 合作信息表(Cooperate)列表數據類型字段大小必填字段默認值說明CooperateId自動編號長整型是主鍵,遞增ClientId數字長整型是客戶ID,外碼Date日期/時間短日期是#1900-1-1#合作日期Satefacti
35、on數字整型是50滿意度(0-255)Remark備注是“ ”備注表3.4 提醒信息表(Warning)列表數據類型字段大小必填字段默認值說明WarnId自動編號長整型是主鍵,遞增ClientId數字長整型是0客戶ID,為0時表時全體客戶ShowDate日期/時間短日期是#1900-1-1#提醒顯示日期TypeId數字整型是1提醒類型Id,外碼Msg備注是“ ”提醒消息表3.5 提醒類型信息表(WarnType)列表數據類型字段大小必填字段默認值說明WTypeId自動編號字節是提醒類型編號WtypeName文本30是“定時提醒”提醒類型名稱3.4 數據庫的生成與配置經過前面的需求分析和概念結構
36、設計以后,得到數據庫的邏輯結構。下面在Acess數據庫創建數據表,本系統的數據庫文件名定為“ManageClient.mdb”,這里需要注意數據庫的權限問題,即:(1)去掉數據庫文件和所在文件夾的只讀屬性。(2)如果是NTFS分區,則要給適當的用戶添加權限,一般,簡單的解決辦法是給它的Everyone用戶添加完全控制權限。 第4章 系統詳細設計后臺數據庫結構的設計工作完成以后,可以進入系統的詳細設計環節。客戶管理事務處理組件用來處理客戶管理系統中的業務邏輯,既負責與界面進行數據傳遞,同時也要將界面端的請求應用業務邏輯之后對數據庫進行操作。4.1 組件設計客戶管理事務處理組件包括以下功能:(1)
37、客戶類型信息管理;(2)客戶信息管理;(3)業務合作信息管理;(4)客戶提醒信息管理。4.1.1 客戶管理事務處理事件的創建為了給客戶管理事件創建組件,我們新建了ActiveX DLL工程,加入對ADO的引用,設置的工程的關鍵屬性如下:工程類型為ActiveX DLL,啟動對象為Sub Main,工程名稱為ClientManagerCom。4.1.2 在工程中加入自定義枚舉新建工程時自動生成的類型名稱設為CPublic,此類沒有別的具體意義,主要功能是保存一些自定義的枚舉類型,這些枚舉類型在以后其他各類中要經常用到,同時這個類的實現沒有技術難度,根據需要我們定義了以下枚舉:Option Exp
38、licit'該類無實際意義,只為保存一些自定義枚舉'自定義枚舉,用于表示性別Public Enum gxcSex Male = 0 Female = 1End Enum'連接數據庫的類型Public Enum gxcDBType DBAccess = 0 DBSQLServer = 1End Enum'以下枚舉用于“客戶類型”對象的操作,用于表示客戶類型刪除結果的枚舉Public Enum gxcDelete DeleteOK = 0 DeleteFail = 1 '未知原因導致不能刪除 DeleteSubExists = 2 '由于存在子類型,
39、因此不能刪除 DeleteClientExists = 3 '該客戶類型存在客戶,不能刪除End Enum'用于表示客戶類型更新結果的枚舉Public Enum gxcUpdate UpdateOK = 0 UpdateFail = 1 DuplicateName_Update = 2 '名字不可重復 RecordNotExist = 3 '當前更新的記錄不存在End Enum'用于表示客戶類型新增結果的枚舉Public Enum gxcAddNew AddNewOK = 0 AddNewFail = 1 DuplicateName_AddNew = 2
40、 '名字不可重復 SuperNotExist = 3 '指定的上級客戶類型的ID不存在End Enum'用于提醒類別設置Public Enum gxcWarnType BirthdayWarn = 1 '生日提醒 CommonWarn = 2 '定時提醒End Enum'用于對話框顯示類別設置Public Enum gxcViewType vtadd = 0 '添加信息 vtModify = 1 '修改信息 vtInfo = 2 '查看信息End Enum4.1.3 創建組件的公共模塊 在工程中添加一個模塊,命名為mdlp
41、ublic,此模塊有兩個功能:l 用來連接數據庫及相關的初始化操作。l 存放在對數據庫的操作過程中可能用到的一些公共函數。1) 添加全局變量我們加入兩個全局變量,它們的名稱和功能如下:Public g_Connection 用于全局的數據連接Public g_DBPath As String 如果是Access數據庫,記錄下數據庫的路徑2) Sub Main()過程啟動對象手動加入Sub Main()過程,這個就是剛才在工程屬性設置里指定的啟動對象。在這個過程中,完成ActiveX DLL的初始化工作。在Sub Main()中的ConnecToDatabase 函數時功能是用來連接到數據庫,下
42、面來看它的實現方法。3) ConnecToDatabase 函數與數據庫建立連接Ø 功能:根據傳入參數是DBAccess 還是DBSQLSever 來決定連接到 Access數據庫還是SQL Sever數據庫。Ø 參數設計:gxcDBType類型,參見CPublic類中的枚舉定義。Ø 返回值:Boolean 類型,True表示成功,False 表示失敗。Ø 設計思路:根據傳入參數組織不同的連接字符串,然后打開數據庫連接。現在,在mblPublic模塊中連接數據庫的功能已經實現,下面添加在數據庫操作時比較常用的一些函數。4) RealString替換字符串
43、的單引號在用SQL語言存儲字符型數據時,單引號成為我們最大的天敵,如果在字符串中存在單引號,則可能會意外截斷字符,造成SQL語法錯誤。解決辦法是用兩個單引號來表示一個單引號。5) MaxID替換字符串的單引號MaxID函數用來獲取表中當前主鍵的最大值,這個函數用于在數據庫中添新記錄后,立即獲取剛才添加記錄的主鍵值。6) ExistByID判斷記錄是否存在 ExistByID 函數用于給定一條記錄的ID號后,查看數據庫中是否存在此記錄。7) GetValueByID根據主鍵名獲取某以字段的值這個函數根據輸入的ID來查找對應的記錄,如果找到一條記錄,則根據輸入的字段名返回對應值。比如知道客戶ID后
44、,可以調用此函數來獲取客戶名。4.2 客戶管理主界面設置4.2.1 設計主窗體控件布局 為了對主界面的設計,首先我們對主窗體的控件的屬性,圖片列表的關鍵字,工具條的按鈕等做了些設置。按表4.1所示的設置為主窗體添加控件(已有控件只需設置屬性即可)。表4.1 主窗體及其控件屬性的設置控件名稱屬性屬性取值功能frmMain(Form)Caption客戶管理系統系統主窗體imlViewSIcon(LisView)ImageHeight16樹形控件和列表框小圖標所使用的圖片ImageWidth16imlViewBIcon(ImageList)ImageHeight32列表框大圖標和工具條所使用的圖片I
45、mageWidth32tbToolBar(ToolBar)AlignvbAlignBottom主窗體中的工具條StyletbrFlatTextAlignmenttbrTextAlignBottomImageListimlViewBIcontvTreeView(TreeView)LineStletvwRootLines顯示客戶類型樹Style7ImageListimlViewSIconlvListView(ListView)FullRowSlelctTrue顯示客戶列表GridLinesTrueViewlvwReportIconimlViewBIconSmall IconimlViewSIcon
46、4.2.2 圖片列表的關鍵字設置按上述給窗體添加完控件并設置屬性后,下面是對系統中要用到的圖片做的初始化設置。對兩個ImageList的圖片選擇不做限制,但要求:imlViewSIcon必須包“group”、“group2”、“boy”、“girl”、“sboy”、“sgirl”等關鍵字;imlViewSIcon必須包括“boy”、“girl”、“bboy”、“bgirl”、“group”、“add”、“modify”、“del”“info”、“search”、 “warn”、“setting”、“IstView”、“exit”等關鍵字。4.2.3 給工具條添加按鈕 為了使用的方便,我們在工具
47、條中設計了一下常用的按鈕。具體設計細節見表4.2-4.4所示: 表4.2 工具條按鈕的設置按鈕標題關鍵字樣式圖像客戶類型tbnClientType5-tbrDropdowngroup3-tbrSeperator添加客戶tbnAddClient0-tbrDefualtadd修改客戶tbnModifyClient0-tbrDefualtmodify刪除客戶tbnDelClient0-tbrDefualtdel客戶信息TbnClientInfo0-tbrDefualtinfo查找客戶tbnSearchClient0-tbrDefualtsearch3-tbrSeperator今日提醒tbnWarn0
48、-tbrDefualtwarn提醒設置tbnWarnsetting0-tbrDefaultsettingtbnViewStyle3-tbrSeperator顯示方式tbnViewStyle5-tbrDropdownIstView3-tbrSeperator退出系統tbnExit0-tbrDefault表4.3 客戶類型按鈕的按鈕菜單設計文本關鍵字添加客戶類型tbnAddClientType修改客戶類型tbnModifyClientType刪除客戶類型tbnDelClientType表4.4 顯示方式按鈕的按鈕菜單設計文本關鍵字大圖標大圖標小圖標小圖標列表列表詳細資料詳細資料4.2.4 添加菜單
49、 下面是主界面編輯的最后一步,在主界面的界面設計模式下,打開“菜單編輯器”對話框,按照表4.5所示的設置為主界面添加菜單,其他屬性取值默認值。 表4.5 主界面菜單設置標題名稱級別系統管理mnuAdmin1&X退出系統mnuExit2客戶類型管理mnuClientType1&A添加客戶類型mnuAddClientType2&M修改客戶類型mnuModifyClientType2&D刪除客戶類型mnuDelClientType2客戶管理mnuClient1&A添加客戶mnuAddClient2&M修改客戶mnuModifyClient2&D
50、刪除客戶mnuDelClient2mnuSplit12&S查找客戶mnuSearchClient2MnuSplit22&I查看客戶詳細資料mnuClientInfo2提醒管理mnuWarning1&T查看今日提醒mnuShowWarn2MnuSplitter32&S查看提醒設置mnuWarnSetting24.3 主界面編輯狀態預覽 按照以上的要求設置后,主界面frmMain的設計如圖4.1所示。 圖4.1 客戶管理系統主界面設計視圖4.4 客戶信息管理模塊此系統是由我們小組的三位同學共同組合成的,本人是負責客戶信息管理這個模塊,以下是本人對這個模塊具體的如何實現。客戶信息管理模塊實現以下的功能:(1)添加客戶信息;(2)修改客戶信息;(3)刪除客戶信息(5)查找客戶信息;(6)查看客戶信息。在本系統中,客戶的關鍵信息是用列表控件顯示在主窗體的右側的,但客戶信息的添加、修改、查看都需要新的窗口來
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 廣州美術學院《電子系統設計含實驗》2023-2024學年第二學期期末試卷
- 星海音樂學院《機械工程控制基礎》2023-2024學年第二學期期末試卷
- 西北工業大學《空間數據庫》2023-2024學年第二學期期末試卷
- 西安電子科技大學《電腦美術(AutoCAD)應用》2023-2024學年第二學期期末試卷
- 呼倫貝爾職業技術學院《債權法學》2023-2024學年第二學期期末試卷
- 上海行健職業學院《分鏡腳本創作》2023-2024學年第二學期期末試卷
- 云南錫業職業技術學院《室內空間軟裝飾》2023-2024學年第二學期期末試卷
- 浙江工商大學《電子學二》2023-2024學年第二學期期末試卷
- 湖南農業大學東方科技學院《心理與教育統計》2023-2024學年第二學期期末試卷
- 廣西物流職業技術學院《材料與工藝(金屬)》2023-2024學年第二學期期末試卷
- 2025-2030煤油產業規劃專項研究報告
- (二模)2025年4月濰坊市高三高考模擬考試地理試卷(含答案)
- 香港勞務服務合同協議
- GB/T 9065.2-2025液壓傳動連接軟管接頭第2部分:24°錐形
- 高二下學期感恩母親節主題班會課件
- 高一信息技術Python編程課程講解
- 醫院行政測試題及答案
- 雨水排放檢測管理制度
- 金融行業金融大數據風控模型優化方案
- 電氣施工安全規范
- 2025年危廢知識考試試題及答案
評論
0/150
提交評論