【正文】
MsgBox 開始新建群組! , 64, 恭喜! = False = False = False End If End Sub Private Sub Command4_Click() If = True And = True Then MsgBox 您的數(shù)據(jù)庫(kù)中沒(méi)有信息可以刪除! , 16, 出錯(cuò)! Else MsgBox 您確定要?jiǎng)h除這條信息? , 32, 提示! If = False Then Else MsgBox 您的數(shù)據(jù)庫(kù)中沒(méi)有信息可以刪除! , 16, 出錯(cuò)! End If End If End Sub Private Sub Form_Unload(Cancel As Integer) If = True Then Cancel = 0 Else MsgBox 請(qǐng)編輯完這條記錄再退出! , 64, 提示: Cancel = 1 End If End Sub 4. 6 用戶管理 一個(gè)完整的應(yīng)用系統(tǒng),必須要能夠具備適當(dāng)?shù)挠脩艄芾砉δ?,以防系統(tǒng)數(shù)據(jù)的安全。 = 1500 39。 = 修改記錄: Else If = Then MsgBox 姓名不能為空! , 16, 出錯(cuò): Else For X = 11 To 13 If Len(Trim()) 200 Then MsgBox 太長(zhǎng) , 16, 出錯(cuò): Exit Sub End If Next X 39。從而完成本系統(tǒng)的客戶信息管 理。當(dāng)然,用戶可以在系統(tǒng)登錄時(shí)為了防止系統(tǒng)密碼的泄露而可以進(jìn)行對(duì)密碼的及時(shí)修改和更新。該系統(tǒng)執(zhí)行時(shí),先錄入數(shù)據(jù),然后根據(jù)客戶的個(gè)人信息可以進(jìn)行查詢以及按照相同的屬于進(jìn)行排序,并可將結(jié)果進(jìn)行預(yù)覽。 3. 數(shù)據(jù)流圖 3. 1. 3 數(shù)據(jù)字典: 下面為借書業(yè)務(wù)流程圖中的每一部分編制數(shù)據(jù)字典。 Visual Basic、 Access以及其他微軟的軟件產(chǎn)品都是通過(guò)共用 JET數(shù)據(jù)庫(kù)引擎,從而給用戶提供了豐富的數(shù)據(jù)類型。這三種操作均可由 Visual Basic 創(chuàng)建的程序來(lái)完成,下面的章節(jié)將詳細(xì)描述實(shí)現(xiàn) 的具體方法。 數(shù)據(jù)庫(kù)的概念 數(shù)據(jù)庫(kù)是一種存儲(chǔ)數(shù)據(jù)并對(duì)數(shù)據(jù)進(jìn)行操作的工具。此外,通過(guò)動(dòng)態(tài)鏈接庫(kù),還可以調(diào)用 Windows應(yīng)用程序接口 (API)函數(shù),實(shí)現(xiàn) SDK所具有的功能。 動(dòng)態(tài)數(shù)據(jù)交換 (DDE) 利用動(dòng)態(tài)數(shù)據(jù)交換 (Dynamic Data Exchange)技術(shù),可以把一種應(yīng)用程序中的數(shù)據(jù)動(dòng)態(tài)地鏈接到另一種應(yīng)用程序中,使兩種完全不同的應(yīng)用程序建立起一條動(dòng)態(tài)數(shù)據(jù)鏈路。一個(gè)對(duì)象可能會(huì)產(chǎn)生多個(gè)事件,每個(gè)事件都可以通過(guò)一段程序來(lái)響應(yīng)。在一般的面向?qū)?象程序設(shè)計(jì)語(yǔ)言中,對(duì)象由程序代碼和數(shù)據(jù)組成,是抽象的概念;而 Visual Basic 則是應(yīng)用面向?qū)ο蟮某绦蛟O(shè)計(jì)方法 (OOP),把程序和數(shù)據(jù)封裝起來(lái)作為一個(gè)對(duì)象,并為每個(gè)對(duì)象賦予應(yīng)有的屬性,使對(duì)象成為實(shí)在的東西。在 Visual Basic 環(huán)境下,利用事件驅(qū)動(dòng)的編程機(jī)制、新穎易用的可視化設(shè)計(jì)工具,使用 Windows 內(nèi)部的應(yīng)用程序接口 (API)函數(shù),以及動(dòng) 態(tài)鏈接庫(kù) (DLL)、動(dòng)態(tài)數(shù)據(jù)交換 (DDE)、對(duì)象的鏈接與嵌入 (OLE)、開放式數(shù)據(jù)訪問(wèn) (ODBC)等技術(shù),可以高效、快速地開發(fā)出 Windows 環(huán)境下功能強(qiáng)大、圖形界面豐富的應(yīng)用軟件系統(tǒng)。另外,客戶部和上級(jí)領(lǐng)導(dǎo)對(duì)開發(fā)該系統(tǒng)也是大力支持的,同時(shí)制定了培訓(xùn)計(jì)劃,并進(jìn)行了實(shí)施MIS 的物質(zhì)準(zhǔn)備和工作準(zhǔn)備。 在軟、硬件方面對(duì)系統(tǒng)的需求,軟件要求易學(xué),界面友好,容易掌握,可以很簡(jiǎn)單方便的管理各種客戶信息。 得出該客戶業(yè)務(wù)流程圖如下所示: 1. 2 現(xiàn)行系統(tǒng)存在的問(wèn)題 以前該公司的客戶管理工作大部分還是進(jìn)行著手工管理,工作起來(lái)效率 很低,并且不能及時(shí)了解各類客戶的實(shí)際情況,也無(wú)法快速地進(jìn)行客戶信息的查詢等操作,不便于動(dòng)態(tài)及時(shí)地調(diào)整客戶資料,以便更好地適應(yīng)當(dāng)前經(jīng)濟(jì)形勢(shì)發(fā)展的需要和本企業(yè)的管理的先進(jìn)性?;谝?上三種方法的特點(diǎn)和各自的優(yōu)缺點(diǎn),本客戶管理系統(tǒng)利用軟件工程化思想和方法,總體上是采用結(jié)構(gòu)化生命法進(jìn)行系統(tǒng)分析和設(shè)計(jì)的,而系統(tǒng)實(shí)現(xiàn)等步驟則采用了原型法和面對(duì)對(duì)象的方法。文章介紹了客戶管理信息系統(tǒng)的系統(tǒng)分析部分,包括可行性分析、業(yè)務(wù)流程分析等;系統(tǒng)設(shè)計(jì)部分主要介紹了系統(tǒng)功能設(shè)計(jì) 和數(shù)據(jù)庫(kù)設(shè)計(jì)及代碼設(shè)計(jì);系統(tǒng)實(shí)現(xiàn)部分說(shuō)明了幾個(gè)主要模塊的算法,并附帶了一些主要的窗口和程序。 客戶關(guān)系信息 管理信息系統(tǒng)是根據(jù)某企業(yè)所屬客戶的實(shí)際管理情況進(jìn)行編寫的,主要目的是為了方便企業(yè)對(duì)客戶來(lái)往業(yè)務(wù)及客戶關(guān)系信息情況進(jìn)行集中的查詢與管理工作。本系統(tǒng)可以根據(jù)各應(yīng)用單位情況,適當(dāng)加以修改,以便更好應(yīng)用。通過(guò)分析公司客戶人工管理的不足,創(chuàng)建了一套行之有效的計(jì)算機(jī)管理客戶的方案。生命周期法( Life Cycle Method)是 20 世紀(jì) 60年代發(fā)展起來(lái)的一種應(yīng)用廣泛且比較成熟的管理系統(tǒng)開發(fā)方法,它的基本思想是將系統(tǒng)的開發(fā)工作從開始到結(jié)束劃分為若干個(gè)階段,每個(gè)階段都有明確的任務(wù),而系統(tǒng)開發(fā)出來(lái)后,并不意味著生命周期的結(jié)束,而意味著根據(jù)組織的需要對(duì)系統(tǒng)的修改和重建的開始;原型法 (Prototyping Method)是 20世紀(jì) 80 年代發(fā)展起 來(lái)的,旨在改變生命周期法的缺點(diǎn)的一種系統(tǒng)開發(fā)方法,該法的開發(fā)思路是首先根據(jù)用戶的要求,由用戶和開發(fā)者共同確定系統(tǒng)的基本要求和主要功能,利用系統(tǒng)快速生成工具,建立一個(gè)系統(tǒng)模型,再在此基礎(chǔ)上與用戶交流,將模型不斷補(bǔ)充、修改、完善,如此反復(fù),最終直至用戶和開發(fā)者都比較滿意為止,從而形成一個(gè)相對(duì)穩(wěn)定、較為理想的管理信息系統(tǒng);面向?qū)ο螅?Object Oriented)的開發(fā)方法于 20 世紀(jì) 80 年代開始興起的,是一種基于對(duì)象的自底向上的一種系統(tǒng)開發(fā)方法,這種方法的特點(diǎn)是以對(duì)象為基礎(chǔ),對(duì)象是分析問(wèn)題和解決問(wèn)題的核心。 ( 6)經(jīng)過(guò)一定時(shí)間之后,為了系統(tǒng)的數(shù)據(jù)安全,將客戶資料進(jìn)行備份,并在必要時(shí)將這些數(shù)據(jù)恢復(fù)到本系統(tǒng)中。 這四個(gè)方面形成了企業(yè)客戶管理的一個(gè)工作整體,采用計(jì)算機(jī)自動(dòng)化信息處理,可方便快捷地共享信息、交流信息,高效地協(xié)同工作。 管理上可行:該企業(yè)的客戶分布位置很廣闊,因此公司要為每個(gè)客戶建立資料檔案,也便加強(qiáng)公司對(duì)客戶資料的管理,因此在管理上可行。它簡(jiǎn)單易學(xué)、效率高,且功能強(qiáng)大,可以與 Windows 的專業(yè)開發(fā)工具 SDK 相媲美,而且程序開發(fā)人員不必具有 C/C++編程基礎(chǔ)。 面向?qū)ο蟮某绦蛟O(shè)計(jì) 版以后的 Visual Basic 支持面向?qū)ο蟮某绦蛟O(shè)計(jì),但它與一般的面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言 (C++)不完全相同。 事件驅(qū)動(dòng)編程機(jī)制 Visual Basic 通過(guò)事件來(lái)執(zhí)行對(duì)象的操作。在應(yīng)用程序中,可以使用結(jié)構(gòu)化查詢語(yǔ)言 SQL 數(shù)據(jù)標(biāo)準(zhǔn),直接訪問(wèn)服務(wù)器上的數(shù)據(jù)庫(kù),并提供了簡(jiǎn)單的面向?qū)ο蟮膸?kù)操作指令和多用戶數(shù)據(jù)庫(kù)訪問(wèn)的加鎖機(jī)制和網(wǎng)絡(luò)數(shù)據(jù)庫(kù)的 SQL 的編程技術(shù),為單機(jī)上運(yùn)行的數(shù)據(jù)庫(kù)提供了 SQL 網(wǎng)絡(luò)接口,以便在分布式環(huán)境中快速而有效地實(shí)現(xiàn)客戶 /服務(wù)器 (client/server)方案。但它可以通過(guò)動(dòng)態(tài)鏈接庫(kù)技術(shù)將 C/C++或匯編語(yǔ)言編寫的程序加入到 Visual Basic應(yīng)用程序中,可以像調(diào)用內(nèi)部函數(shù)一樣 調(diào)用其他語(yǔ)言編寫的函數(shù)。如上所述, Access 作為關(guān)系數(shù)據(jù)庫(kù)開發(fā)具備了許多優(yōu)點(diǎn),可以在一個(gè)數(shù)據(jù)包中同時(shí)擁有桌面數(shù)據(jù)庫(kù)的便利和關(guān)系數(shù)據(jù)庫(kù)的強(qiáng)大功能。 _ 修改已建的數(shù)據(jù)庫(kù) 數(shù)據(jù)庫(kù)的修改分為:添加、編輯和刪除記錄。 二者的結(jié)合( DBA) 微軟的 JET數(shù)據(jù)庫(kù)引擎提供了與數(shù)據(jù)庫(kù)打交道的途徑,我們是通過(guò)它以及 Visual Basic 來(lái)訪問(wèn)數(shù)據(jù)庫(kù)并對(duì)其進(jìn)行各種操作。 下面以數(shù)據(jù)流圖和數(shù)據(jù)字典的方式來(lái)描述新系統(tǒng)的邏輯功能??蛻艄芾硐到y(tǒng)包含客戶錄入、客戶查詢、系統(tǒng)維護(hù)等功能。需要通過(guò)系統(tǒng)管理驗(yàn)證,即輸入正確的密碼進(jìn)行系統(tǒng)登陸,本系統(tǒng)默認(rèn)的密碼為 0。關(guān)閉當(dāng)前窗體 End Sub Private Sub a2_Click() Unload Me End Sub Private Sub a3_Click() = 9345 = 12870 End Sub Private Sub b1_Click() = 8355 = 13710 End Sub Private Sub bz_Click() End Sub Private Sub c1_Click() = 9510 = 13875 End Sub Private Sub C2_Click() = 6795 = 10020 = True = 輸入群組名進(jìn)行查詢 End Sub Private Sub c3_Click() = 收入查詢 = 4200 = 4081 = 495 = 2055 = 輸入名稱 End Sub Private Sub cz_Click() 2 End Sub Private Sub dc_Click() 0 End Sub Private Sub glysx_Click() End Sub Private Sub gy_Click() End Sub Private Sub MDIForm_QueryUnload(Cancel As Integer, UnloadMode As Integer) Dim YesNo As Integer Dim M As Single YesNo = MsgBox(真的要退出系統(tǒng)嗎? , vbYesNo + vbQuestion, 提示 ) If YesNo = vbYes Then EndTxt = True Unload Me Else Cancel = 1 End If End Sub Private Sub pp_Click() 1 End Sub Private Sub stsz_Click() = 6930 = 8400 End Sub Private Sub tc_Click() Unload Me End Sub Private Sub Toolbar1_ButtonClick(ByVal Button As ) Select Case Case key1 = 8355 = 13710 Case key2 = 9510 = 13875 Case key3 = 6795 = 10020 = True = 輸入群組名進(jìn)行查詢 Case key4 Case key7 = 6930 = 8400 Case key6 Unload Me End Select End Sub 客戶信息管理: 本應(yīng)用模塊的主要功能是實(shí)現(xiàn)對(duì)客戶個(gè)人信息的錄入系統(tǒng)操作,如編號(hào),姓名,性別,性別等基本操作。 = True 39。 = 600 39。 = True = 5728 = 600 = 1500 = False = 數(shù)據(jù)輸入: End If End If End If End If End Sub Private Sub Command2_Click() If = Or = Then MsgBox 名稱和管理員不能為空! , 16, 出錯(cuò): Else MsgBox 成功保存! , 64, 恭喜 ! = True = True 39。 the e ffort to be even formally polite nearly strangled him. Even then the inspector was not brisk. He dis mounted in a leisurely fashion, and strolled into the house, chatting about the weather. Father, red in the face, handed him over to Mary who took him along to mother39。 bedroom where my mother still lay in bed. It was a matter of chance, and strategy, too. It was the latest place that I had found to stay hidden awhile after the midday meal until the coast was clear and I coul