歡迎來到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁 裝配圖網(wǎng) > 資源分類 > DOC文檔下載  

數(shù)據(jù)庫課程設(shè)計(jì)報(bào)告銷售管理系統(tǒng)

  • 資源ID:253595779       資源大小:510.50KB        全文頁數(shù):34頁
  • 資源格式: DOC        下載積分:10積分
快捷下載 游客一鍵下載
會(huì)員登錄下載
微信登錄下載
三方登錄下載: 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要10積分
郵箱/手機(jī):
溫馨提示:
用戶名和密碼都是您填寫的郵箱或者手機(jī)號(hào),方便查詢和重復(fù)下載(系統(tǒng)自動(dòng)生成)
支付方式: 微信支付   
驗(yàn)證碼:   換一換

 
賬號(hào):
密碼:
驗(yàn)證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會(huì)被瀏覽器默認(rèn)打開,此種情況可以點(diǎn)擊瀏覽器菜單,保存網(wǎng)頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請(qǐng)使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預(yù)覽文檔經(jīng)過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標(biāo)題沒有明確說明有答案則都視為沒有答案,請(qǐng)知曉。

數(shù)據(jù)庫課程設(shè)計(jì)報(bào)告銷售管理系統(tǒng)

數(shù)據(jù)庫系統(tǒng)課程設(shè)計(jì) 目錄 第 1 章 前言 ....................................................... 1 1.1 課題背景................................................. 1 1.2 開發(fā)工具................................................. 1 1.2.1 SQL Server 2005................................ 2 1.2.2 MFC............................................... 2 1.2.3 ADO............................................... 2 第2章 需求分析..................................................... 3 2.1 任務(wù)概述.................................................. 3 2.1.1任務(wù)目標(biāo)............................................. 3 2.1.2用戶特點(diǎn)............................................. 3 2.2 系統(tǒng)的功能需求 ............................................ 3 2.2.1 系統(tǒng)角色功能需求 ................................... 3 2.2.2 功能模塊 ........................................... 3 2.3 系統(tǒng)的性能需求 ............................................ 3 2.4 系統(tǒng)的數(shù)據(jù)需求 ............................................ 4 第 3 章 系統(tǒng)總體設(shè)計(jì) ................................................ 5 3.1 系統(tǒng)功能設(shè)計(jì) .............................................. 5 3.1.1 各功能模塊介紹 ...................................... 5 3.1.2 系統(tǒng)總體模塊圖 ...................................... 5 第 4 章 數(shù)據(jù)庫設(shè)計(jì) ................................................... 6 4.1 數(shù)據(jù)庫概念設(shè)計(jì) ............................................ 6 4.2 數(shù)據(jù)庫邏輯設(shè)計(jì) ............................................ 7 4.2.1 表匯總 ............................................. 7 4.2.2 表邏輯結(jié)構(gòu)設(shè)計(jì) ..................................... 7 第 5 章 詳細(xì)設(shè)計(jì) .................................................... 9 5.1 程序結(jié)構(gòu)的設(shè)計(jì) ............................................. 9 5.2 頁面設(shè)計(jì) ................................................... 10 5.2.1 登錄界面 ............................................ 10 5.2.2 管理界面 .............................................10 5.2.3 用戶管理 .............................................11 5.2.4 客戶信息管理 ........................................ 11 5.2.5 商品信息管理 .........................................12 5.2.6 營(yíng)銷信息管理 .........................................12 5.3 編碼設(shè)計(jì) ................................................... 13 5.3.1ADO連接 ................................................. 13 5.3.2 更改密碼 .............................................. 17 5.3.3 登錄…………........................................... 17 5.3.4 客戶管理.............................................. 18 5.3.5 商品管理.......................................... …….21 5.3.6 銷售管理.......................................... ……..23 第 6 章 結(jié)論與展望 .................................................. 31 6.1 結(jié)論 ........................................................ 31 6.2 系統(tǒng)不足 .................................................... 31 6.3 感謝........................................... …………………31 參考文獻(xiàn) ........................................................... 31 第1章 前言 1.1 課題背景 隨著中國電子商務(wù)、互聯(lián)網(wǎng)業(yè)務(wù)的迅猛發(fā)展,國內(nèi)許多企業(yè)已跨入電腦網(wǎng)絡(luò)管理時(shí)代,并因此提高了管理效率和市場(chǎng)競(jìng)爭(zhēng)力。但目前仍有部分企業(yè)還停留在原始計(jì)賬管理階段。而隨著全球經(jīng)濟(jì)信息化的進(jìn)程和WTO的成功實(shí)現(xiàn),企業(yè)面臨著前所未有的機(jī)遇和挑戰(zhàn),在如此激變的社會(huì)形勢(shì)和激烈的市場(chǎng)競(jìng)爭(zhēng)下,愈來愈多的企業(yè)管理者意識(shí)到效率管理和科學(xué)管理的重要性,以及增強(qiáng)市場(chǎng)競(jìng)爭(zhēng)力的迫切性,因此建立科學(xué)、規(guī)范、高效的管理制度和秉承富有競(jìng)爭(zhēng)力的經(jīng)營(yíng)理念是每一個(gè)企業(yè)管理者的渴望,企業(yè)采用電腦管理進(jìn)貨、庫存、銷售等諸多環(huán)節(jié)也已成為趨勢(shì)及必然。 許多從事商業(yè)活動(dòng)的企業(yè)都需要采購商品、銷售商品以及將商品暫時(shí)存儲(chǔ)在倉庫中,對(duì)這一工作流程進(jìn)行有效地管理和控制,對(duì)這些企業(yè)來說是非常重要。在進(jìn)貨、庫存、銷售環(huán)節(jié)中,由于商品種類繁多、業(yè)務(wù)量大、庫存管理復(fù)雜,使用手工操作的工作量很大,在操作過程中也很容易出現(xiàn)各種錯(cuò)誤。而采用計(jì)算機(jī)管理則可以大大提高日常工作的效率,不僅將原來由手工操作的進(jìn)貨、出貨及銷售這一整套流程用計(jì)算機(jī)進(jìn)行全程管理,而且消除了手工操作中可能存在的不確定因素,達(dá)到進(jìn)銷存管理流程清晰,從而能夠比較徹底地貫徹經(jīng)營(yíng)者的管理模式。 由于科學(xué)技術(shù)的不斷發(fā)展,計(jì)算機(jī)科學(xué)日漸成熟,其強(qiáng)大的功能已為人們所深刻認(rèn)識(shí),它己進(jìn)入人類社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著越來越重要的作用。采用計(jì)算機(jī)進(jìn)行信息化管理已成為衡量企業(yè)管理科學(xué)化和現(xiàn)代化的重要標(biāo)志,而銷售管理的全面自動(dòng)化、信息化則是其中重要的組成部分。銷售管理的好壞對(duì)于企業(yè)的決策者和管理者來說都至關(guān)重要,在很大程度上影響著企業(yè)的經(jīng)濟(jì)效益和社會(huì)效益。因此,本文所研究的銷售管理系統(tǒng)具有一定的使用價(jià)值和現(xiàn)實(shí)意義。 一直以來人們使用傳統(tǒng)人工的方式進(jìn)行銷售管理,這種管理方式存在著諸多缺點(diǎn),如:工作量大、效率低、保密性差,另外時(shí)間一長(zhǎng),將產(chǎn)生大量的文件和數(shù)據(jù),這對(duì)于查找、更新和維護(hù)都帶來了不少的困難。鑒于此,本文研究了一種基于關(guān)系型數(shù)據(jù)庫的銷售管理方案。利用SQL Server2005數(shù)據(jù)庫管理系統(tǒng)靈活性和開發(fā)效率高的特點(diǎn),采用面向?qū)ο蟮腣C的方法,開發(fā)出銷售管理系統(tǒng)。該系統(tǒng)具有手工管理所無法比擬的優(yōu)點(diǎn),如:檢索迅速、查找方便、可靠性高、存儲(chǔ)量大、保密性好、信息利用率高、成本低等。該系統(tǒng)能夠極大地提高銷售管理的效率,優(yōu)化企業(yè)的人力、物力,降低企業(yè)的管理成本,為企業(yè)銷售管理的信息化、正規(guī)化奠定了堅(jiān)實(shí)的基礎(chǔ)。 1.2 開發(fā)工具 本文所采用的開發(fā)工具主要是基于數(shù)據(jù)庫系統(tǒng)的SQL Server 2005 和基于面向?qū)ο蟪绦蛟O(shè)計(jì)的VC,主要利用其MFC技術(shù)。利用SQL Server 2005創(chuàng)建商場(chǎng)客戶表、商品表、商品供應(yīng)商表、進(jìn)貨表、銷售表以及用VC連接數(shù)據(jù)庫用的用戶信息表。利用ADO連接的方法訪問數(shù)據(jù)庫。利用VC和數(shù)據(jù)庫建立連接之后,利用VC中的控件按鈕以及一些程序代碼實(shí)現(xiàn)一些特定的功能,例如營(yíng)銷信息查詢、刪除、修改等,極大地提高了銷售管理的效率。 1.2.1 SQL Server 2005 SQL Server 2005 是微軟公司動(dòng)用上千人的研發(fā)力量,耗費(fèi)五年時(shí)間打造出來 的產(chǎn)品,在企業(yè)及數(shù)據(jù)庫產(chǎn)品中具有里程碑的意義。SQL Server 2005 是一個(gè)關(guān)系 數(shù)據(jù)庫管理系統(tǒng),是一個(gè)全面的數(shù)據(jù)庫平臺(tái),其數(shù)據(jù)庫引擎為關(guān)系型數(shù)據(jù)和結(jié)構(gòu) 化數(shù)據(jù)提供了更安全可靠的存儲(chǔ)功能。SQL Server 2005 結(jié)合了分析、報(bào)表、集 成和通知功能,引進(jìn)了一套集成的管理工具和管理應(yīng)用編程接口,以提供易用性、 可管理性及對(duì)大型 SQL Server 配置的支持。其新的查詢類型和在交易過程中使用 錯(cuò)誤處理的功能,為開發(fā)人員在 SQL Server 查詢開發(fā)方面提供了更高的靈活性和 控制力。 SQL Server 可以適合大容量數(shù)據(jù)的應(yīng)用,在功能上和管理上都比 Microsoft Access 要強(qiáng)的多。在處理海量數(shù)據(jù)的效率,后臺(tái)開發(fā)的靈活性,可擴(kuò)展等方面強(qiáng) 大。在 SQL Server 2005 中還可以使用存儲(chǔ)過程,在服務(wù)器執(zhí)行操作時(shí),減少網(wǎng)絡(luò) 通訊,提高了執(zhí)行效率,而且保證了數(shù)據(jù)庫的安全。 1.2.2 MFC MFC,微軟基礎(chǔ)類(Microsoft Foundation Classes),同VCL類似,是一種Application Framework,隨微軟Visual C++ 開發(fā)工具發(fā)布。目前最新版本為9.0(截止2008年11月)。該類庫提供一組通用的可重用的類庫供開發(fā)人員使用。大部分類均從CObject 直接或間接派生,只有少部分類例外。   MFC 應(yīng)用程序的總體結(jié)構(gòu)通常由開發(fā)人員從MFC類派生的幾個(gè)類和一個(gè)CWinApp類對(duì)象(應(yīng)用程序?qū)ο螅┙M成。MFC 提供了MFC AppWizard 自動(dòng)生成框架。   Windows 應(yīng)用程序中,MFC 的主包含文件為"Afxwin.h"。   此外MFC的部分類為MFC/ATL 通用,可以在Win32 應(yīng)用程序中單獨(dú)包含并使用這些類。 由于它的易用性,初學(xué)者常誤認(rèn)為VC++開發(fā)必須使用MFC。這種想法是錯(cuò)誤的。作為Application Framework,MFC的使用只能提高某些情況下的開發(fā)效率,只起到輔助作用,而不能替代整個(gè)Win32 程序設(shè)計(jì)。 1.2.3 ADO 微軟公司的ADO (ActiveX Data Objects) 是一個(gè)用于存取數(shù)據(jù)源的COM組件。它提供了編程語言和統(tǒng)一數(shù)據(jù)訪問方式OLEDB的一個(gè)中間層。允許開發(fā)人員編寫訪問數(shù)據(jù)的代碼而不用關(guān)心數(shù)據(jù)庫是如何實(shí)現(xiàn)的,而只用關(guān)心到數(shù)據(jù)庫的連接。訪問數(shù)據(jù)庫的時(shí)候,關(guān)于SQL的知識(shí)不是必要的,但是特定數(shù)據(jù)庫支持的SQL命令仍可以通過ADO中的命令對(duì)象來執(zhí)行。ADO被設(shè)計(jì)來繼承微軟早期的數(shù)據(jù)訪問對(duì)象層,包括RDO (Remote Data Objects) 和DAO(Data Access Objects)。 第 2 章 需求分析 2.1 任務(wù)概述 2.1.1 系統(tǒng)目標(biāo) 銷售管理系統(tǒng)是為了提高銷售管理效率而開發(fā)的。它包括客戶信息管理、商品信息管理、營(yíng)銷信息管理等模塊,并提供了查詢、修改、添加、刪除等功能。銷售管理系統(tǒng)能簡(jiǎn)化貿(mào)易公司在銷售管理方面的復(fù)雜性,和減少在管理上的龐大開銷。隨著計(jì)算機(jī)行業(yè)的飛速發(fā)展,人類已經(jīng)進(jìn)入了信息時(shí)代,社會(huì)中的各個(gè)單位、部門也陸續(xù)開始使用軟件化的管理模式,由于它具有方便、準(zhǔn)確、快速、靈活的特點(diǎn),使得在管理上實(shí)現(xiàn)了自動(dòng)化、一體化、多元化的目標(biāo)。 本課程設(shè)計(jì)開發(fā)了一個(gè)銷售管理系統(tǒng),該系統(tǒng)完成了對(duì)商品進(jìn)貨、商品銷售、供應(yīng)商信息、客戶信息等的添加、修改、刪除、查詢等功能,迅速準(zhǔn)確地完成各種工作,大大提高了企業(yè)的管理效率。 2.1.2用戶特點(diǎn) 許多從事商業(yè)活動(dòng)的企業(yè)都需要采購商品、銷售商品以及將商品暫時(shí)存儲(chǔ)在倉庫中,對(duì)這一工作流程進(jìn)行有效地管理和控制,對(duì)這些企業(yè)來說是非常重要。在進(jìn)貨、庫存、銷售環(huán)節(jié)中,由于商品種類繁多、業(yè)務(wù)量大、庫存管理復(fù)雜,使用手工操作的工作量很大,在操作過程中也很容易出現(xiàn)各種錯(cuò)誤。本系統(tǒng)采用計(jì)算機(jī)管理則可以大大提高日常工作的效率,不僅將原來由手工操作的進(jìn)貨、出貨及銷售這一整套流程用計(jì)算機(jī)進(jìn)行全程管理,而且消除了手工操作中可能存在的不確定因素,達(dá)到進(jìn)銷存管理流程清晰,從而能夠比較徹底地貫徹經(jīng)營(yíng)者的管理模式。 2.2系統(tǒng)的功能需求 2.2.1 角色功能需求 本系統(tǒng)共包含供應(yīng)商、商品、客戶三中角色: (1)供應(yīng)商:包括商品供應(yīng)商和商品的品牌商兩種,我們可以通過添加、修改和刪除等操作對(duì)這兩種供應(yīng)商進(jìn)行更新; (2)商品:進(jìn)貨和銷售功能均以商品為主體,同時(shí)可以添加商品的數(shù)量; (3)客戶:客戶可以采購商品,也可以添加客戶的數(shù)量及信息 2.2.2功能模塊 系統(tǒng)包括管理員信息模塊、客戶信息模塊、商品信息模塊、營(yíng)銷信息模塊(進(jìn)貨和銷售管理)、供應(yīng)商信息模塊。 (1)管理員信息模塊功能需求:可以添加新的用戶及密碼,也可以更改當(dāng)前用戶的密碼; (2)客戶信息模塊功能需求:可以添加新客戶的各種信息,也可以進(jìn)行刪除、修改和查詢; (3)商品信息模塊功能需求:能夠添加新的商品,也可以對(duì)以前的商品信息進(jìn)行刪除、修改和查詢; (4)營(yíng)銷信息模塊功能需求:包括進(jìn)貨和銷售信息,可以對(duì)其進(jìn)行添加、刪除、修改和查詢; (5)供應(yīng)商信息模塊功能需求:可以添加、刪除、修改和查詢供應(yīng)商的信息。 2.3 系統(tǒng)的性能分析 為了保證系統(tǒng)能夠長(zhǎng)期、安全、穩(wěn)定、可靠、高效的運(yùn)行,系統(tǒng)應(yīng)該滿足以下的性能需求: (1)系統(tǒng)處理的準(zhǔn)確性和及時(shí)性 系統(tǒng)處理的準(zhǔn)確性和及時(shí)性是系統(tǒng)的必要性能。在系統(tǒng)設(shè)計(jì)和開發(fā)過程中,要充分考慮系統(tǒng)當(dāng)前和將來可能承受的工作量,使系統(tǒng)的處理能力和響應(yīng)時(shí)間能夠滿足用戶對(duì)信息的處理。由于系統(tǒng)的查詢功能對(duì)于整個(gè)系統(tǒng)的功能和性能完成很重要。從系統(tǒng)的多個(gè)數(shù)據(jù)來源來看,學(xué)生信息查詢、教師信息查詢、實(shí)驗(yàn)信息 查詢、排課結(jié)果查詢、實(shí)驗(yàn)成績(jī)查詢,其準(zhǔn)確性很大程度上決定了系統(tǒng)的成敗。 因此,在系統(tǒng)開發(fā)過程中,系統(tǒng)采用優(yōu)化的 SQL 語句及安全擴(kuò)展存儲(chǔ)過程來保證 系統(tǒng)的準(zhǔn)確性和及時(shí)性。 (2)系統(tǒng)的開放性和系統(tǒng)的可擴(kuò)充性 系統(tǒng)在開發(fā)過程中,應(yīng)該充分考慮以后的可擴(kuò)充性。例如實(shí)驗(yàn)信息屬性添加、修改,用戶查詢的需求及管理工作的分級(jí)管理等模塊也會(huì)不斷的更新和完善。所 有這些,都要求系統(tǒng)提供足夠的手段進(jìn)行功能的調(diào)整和擴(kuò)充。而要實(shí)現(xiàn)這一點(diǎn), 應(yīng)通過系統(tǒng)的開放性來完成,既系統(tǒng)應(yīng)是一個(gè)開放系統(tǒng),只要符合一定的規(guī)范, 可以簡(jiǎn)單的加入和減少系統(tǒng)的模塊,配置系統(tǒng)的硬件。通過軟件的修補(bǔ)、替換完 成系統(tǒng)的升級(jí)和更新?lián)Q代。 (3)系統(tǒng)的易用性和易維護(hù)性 系統(tǒng)是直接面對(duì)使用人員的,而有些使用人員往往對(duì)計(jì)算機(jī)并不是非常熟悉。這就要求系統(tǒng)能夠提供良好的用戶接口,易用的人機(jī)交互界面。要實(shí)現(xiàn)這一點(diǎn), 就要求系統(tǒng)應(yīng)該盡量使用用戶熟悉的術(shù)語和中文信息的界面;針對(duì)用戶可能出現(xiàn) 的使用問題,要提供足夠的在線幫助,縮短用戶對(duì)系統(tǒng)熟悉的過程。 系統(tǒng)中涉及到的數(shù)據(jù)是高校實(shí)驗(yàn)室相當(dāng)重要的信息,因此系統(tǒng)為不同角色的 用戶提供了方便的管理后臺(tái)進(jìn)行數(shù)據(jù)管理,特別為系統(tǒng)管理員提供了數(shù)據(jù)備份, 日常安全管理,防止系統(tǒng)意外崩潰等功能。 2.4系統(tǒng)的數(shù)據(jù)需求 該系統(tǒng)的開發(fā)主要任務(wù)是實(shí)現(xiàn)對(duì)銷售系統(tǒng)自動(dòng)化的處理,所以我們初步規(guī)劃出系統(tǒng)所需要的數(shù)據(jù)有: 客戶的基本信息:公司名稱、聯(lián)系人姓名、地址、城市、地區(qū)、郵編、聯(lián)系電話、傳真、主頁、備注; 供應(yīng)商基本信息:公司名稱、聯(lián)系人姓名、地址、城市、地區(qū)、郵編、聯(lián)系電話、傳真、主頁、備注; 商品的基本信息:商品名稱、商品規(guī)格、規(guī)格單位、商品備注信息; 進(jìn)貨的基本信息:供應(yīng)商名稱、商品名稱、商品規(guī)格、商品規(guī)格單位、數(shù)量、單價(jià)、進(jìn)貨日期、備注; 銷售的基本信息:客戶名稱、商品名稱、產(chǎn)品規(guī)格、規(guī)格單位、數(shù)量、單價(jià)、銷售日期、折扣、備注。 第 3 章 系統(tǒng)總體設(shè)計(jì) 3.1 系統(tǒng)功能設(shè)計(jì) 3.1.1各功能模塊介紹 經(jīng)過分析后確定系統(tǒng)應(yīng)具備以下功能: (1) 系統(tǒng)管理功能 ① 修改密碼:修改正在運(yùn)行的用戶密碼; ② 添加用戶:添加新的用戶,并設(shè)置密碼。 (2)客戶信息管理功能 ① 供應(yīng)商信息管理:添加、刪除、修改或查詢供應(yīng)商信息。 ② 客戶信息管理:添加、刪除、修改或查詢客戶信息。 (3) 商品信息管理功能 添加、刪除或修改商品信息。 (4) 營(yíng)銷信息管理功能 ① 進(jìn)貨信息管理:添加、修改、查詢或刪除進(jìn)貨信息。 ② 銷售信息管理:添加、刪除、修改或查詢進(jìn)貨信息。 3.1.2 系統(tǒng)總體模塊圖 第 4 章 數(shù)據(jù)庫設(shè)計(jì) 4.1 數(shù)據(jù)庫概念設(shè)計(jì) 本系統(tǒng)包括的實(shí)體有:客戶、供應(yīng)商、商品、管理員,下面是各實(shí)體的實(shí)體屬性介紹: (1) 管理員 描述:銷售管理中存儲(chǔ)的所有管理員信息(包括所有查詢的所需信息) 其中包含屬性 用戶名:用于標(biāo)識(shí)登陸系統(tǒng)的用戶賬號(hào),具有唯一性 用戶密碼:用于對(duì)應(yīng)登陸用戶名的密碼 (2) 供應(yīng)商信息supperliers 描述:銷售管理中存儲(chǔ)的所有供應(yīng)商信息 其中包含屬性 CompanyName:用于標(biāo)識(shí)供應(yīng)商,具有唯一性 ContactName:用于標(biāo)識(shí)聯(lián)系人姓名 Address:用于標(biāo)志供應(yīng)商公司地址 City:用于標(biāo)識(shí)供應(yīng)商所在城市 Region:用于標(biāo)識(shí)地區(qū)信息 PostalCode:用于標(biāo)識(shí)郵編 Phone:用于標(biāo)識(shí)聯(lián)系電話 Fax:用于標(biāo)識(shí)傳真信息 HomePage:用于標(biāo)識(shí)公司主頁 SupplierMemo:用于標(biāo)識(shí)備注信息 (3) 客戶信息 customers 描述:銷售管理中存儲(chǔ)的所有客戶信息 其中包含屬性 CompanyName:用于標(biāo)識(shí)客戶公司,具有唯一性 ContactName:用于標(biāo)識(shí)聯(lián)系人姓名 Address:用于標(biāo)志客戶公司地址 City:用于標(biāo)識(shí)客戶所在城市 Region:用于標(biāo)識(shí)地區(qū)信息 PostalCode:用于標(biāo)識(shí)郵編 Phone:用于標(biāo)識(shí)聯(lián)系電話 Fax:用于標(biāo)識(shí)傳真信息 HomePage:用于標(biāo)識(shí)公司主頁 SupplierMemo:用于標(biāo)識(shí)備注信息 (4) 商品信息 products 描述:銷售管理中存儲(chǔ)的所有商品信息 其中包含屬性 ProducName:用于標(biāo)識(shí)商品,具有唯一性 Spec:用于標(biāo)識(shí)商品規(guī)格 Unit:用于標(biāo)識(shí)商品規(guī)格單位 Productmemo:用于標(biāo)識(shí)備注信息 系統(tǒng)總體E-R圖: 4.2數(shù)據(jù)庫邏輯設(shè)計(jì) 4.2.1表匯總 各數(shù)據(jù)庫表的簡(jiǎn)要說明: 表名 簡(jiǎn)要說明 Customers 銷售管理中存儲(chǔ)的所有客戶信息 Orders 銷售管理中存儲(chǔ)的所有商品銷售信息 Supplies 銷售管理中存儲(chǔ)的所有供應(yīng)商信息 Sstock 銷售管理中存儲(chǔ)的所有商品進(jìn)貨信息 Products 銷售管理中存儲(chǔ)的所有商品信息 User_Info 銷售管理中存儲(chǔ)的所有管理員信息 4.2.2 表邏輯結(jié)構(gòu)設(shè)計(jì) 表1 customers表 字段名 數(shù)據(jù)類型 長(zhǎng)度 描述 是否主鍵 CompanyName varchar 40 客戶公司名稱 是 ContactName varchar 30 聯(lián)系人姓名 否 Address varchar 60 聯(lián)系地址 否 City varchar 15 城市姓名 否 Region varchar 10 地區(qū)姓名 否 PostalCode varchar 10 郵政編碼 否 Phone varchar 24 聯(lián)系電話 否 Fax varchar 24 傳真 否 Homepage varchar 50 公司主頁 否 CustomerMemo text 16 備注信息 否 表2 orders表(銷售表) 字段名 數(shù)據(jù)類型 長(zhǎng)度 描述 是否主鍵 CustomerName varchar 40 客戶名稱 是 ProducName varchar 40 商品名稱 是 Spec varchar 20 商品規(guī)格 否 Unit varchar 20 商品規(guī)格單位 否 Quantity varchar 20 商品數(shù)量 否 UnitPrice float 8 商品單價(jià) 否 OrderDate datetime 8 銷售日期 否 Discount float 8 折扣 否 Ordermemo text 16 備注 否 表3 products表(商品表) 字段名 數(shù)據(jù)類型 長(zhǎng)度 描述 是否主鍵 ProductName varchar 40 商品名稱 是 Spec varchar 20 商品規(guī)格 否 Unit varchar 20 商品規(guī)格單位 否 Productmemo text 16 備注 否 表4 sstock表(進(jìn)貨表) 字段名 數(shù)據(jù)類型 長(zhǎng)度 描述 是否主鍵 ProviderName varchar 40 商品公司名稱 是 ProductName varchar 40 商品名稱 是 Spec varchar 20 商品規(guī)格 否 Unit varchar 20 商品規(guī)格單位 否 Quantity varchar 20 商品數(shù)量 否 UnitPrice float 8 商品單價(jià) 否 StockDate datetime 8 進(jìn)貨日期 否 Stockmemo text 16 備注 否 表5 suppliers表(供應(yīng)商表) 字段名 數(shù)據(jù)類型 長(zhǎng)度 描述 是否主鍵 CompanyName varchar 40 供應(yīng)商公司名稱 是 ContactName varchar 30 聯(lián)系人姓名 否 Address varchar 60 聯(lián)系地址 否 City varchar 15 城市姓名 否 Region varchar 10 地區(qū)姓名 否 PostalCode varchar 10 郵政編碼 否 Phone varchar 24 聯(lián)系電話 否 Fax varchar 24 傳真 否 Homepage varchar 50 公司主頁 否 SuppplierMemo text 16 備注信息 否 第 5 章 詳細(xì)設(shè)計(jì) 5.1 程序結(jié)構(gòu)的設(shè)計(jì) 數(shù)據(jù)流圖(DFD) 本系統(tǒng)的數(shù)據(jù)流圖如下圖所示: 圖1 頂級(jí)數(shù)據(jù)流圖 圖2 添加或刪除相關(guān)信息數(shù)據(jù)流圖 圖3 查詢信息數(shù)據(jù)流圖 5.2 頁面設(shè)計(jì) 5.2.1 登錄界面 通過用戶輸入的用戶名及密碼,獲取數(shù)據(jù)庫中此用戶名的詳細(xì)信息,如果不存在,提示用戶不存在錯(cuò)誤;若密碼不匹配,提示輸入密碼不正確;數(shù)據(jù)庫鏈接不正常,記錄日志;系統(tǒng)獲取用戶信息后,若用戶名密碼匹配,根據(jù)角色進(jìn)入不同頁面 下面是登錄窗口: 5.2.2管理界面 管理員登錄后,進(jìn)入管理界面,可以通過左上面的菜單連接到不同的功能界面,實(shí)現(xiàn)不同的功能,此菜單是跟管理模塊圖對(duì)應(yīng)的。 5.2.3用戶管理 用戶可以對(duì)當(dāng)前密碼進(jìn)行修改,超級(jí)用戶可以添加新的用戶 5.2.4客戶信息管理 銷售的客戶包括供貨商和銷售客戶,所以客戶信息管理對(duì)應(yīng)了二者的添加、刪除、修改和查詢 5.2.5商品信息管理 商品信息的管理包括對(duì)商品的各種標(biāo)準(zhǔn)管理,可以添加新的商品或修改和刪除就的商品 5.2.6營(yíng)銷信息管理 營(yíng)銷信息包括進(jìn)貨和銷售,二者的添加修改和刪除操作很多比較類似 因?yàn)檫M(jìn)貨的商品種類是固定的,所以只有數(shù)量和單價(jià)及備注是可以填寫的,其他均是默認(rèn)值 5.3編寫代碼 5.3.1 ADO連接 BOOL CTrade_MISApp::InitInstance() { AfxEnableControlContainer(); // Init Login Count m_iLoginCount = 0; // Create ADO Connection if( FAILED(::CoInitialize(NULL)) ) //初始化COM環(huán)境 { AfxMessageBox("ADO Init failed"); return false; } try { ADOConn.CreateInstance(__uuidof(Connection));//創(chuàng)建連接對(duì)象實(shí)例 ADOConn->Open("DSN=Trade_MIS;Provider=MSDASQL","sa","", adConnectUnspecified);//ADOConn作為連接對(duì)象指針 }//打開數(shù)據(jù)庫 // Catch Exceptions catch(_com_error &e) { CString err; err.Format("%s", (char*)(e.Description()) ); AfxMessageBox(err); } catch(...) { AfxMessageBox("Unknown Error..."); } // Init ADO RecordSet m_pADOSet.CreateInstance(__uuidof(Recordset));//創(chuàng)建記錄集對(duì)象實(shí)例 SetRegistryKey(_T("Local AppWizard-Generated Applications")); LoadStdProfileSettings(); // Load standard INI file options (including MRU) // Register the application's document templates. Document templates // serve as the connection between documents, frame windows and views. // Popup Login Dialog CLoginDLG dlg; if ( IDOK!=dlg.DoModal() ) return false; CSingleDocTemplate* pDocTemplate; pDocTemplate = new CSingleDocTemplate( IDR_MAINFRAME, RUNTIME_CLASS(CTrade_MISDoc), RUNTIME_CLASS(CMainFrame), // main SDI frame window RUNTIME_CLASS(CTrade_MISView)); AddDocTemplate(pDocTemplate); m_nCmdShow = SW_SHOWMAXIMIZED;//Max window when show // Parse command line for standard shell commands, DDE, file open CCommandLineInfo cmdInfo; ParseCommandLine(cmdInfo); // Dispatch commands specified on the command line if (!ProcessShellCommand(cmdInfo)) return FALSE; // The one and only window has been initialized, so show and update it. m_pMainWnd->ShowWindow(SW_SHOW); m_pMainWnd->SetWindowText(_T("銷售管理系統(tǒng)")); m_pMainWnd->UpdateWindow(); return TRUE; } // CAboutDlg dialog used for App About class CAboutDlg : public CDialog { public: CAboutDlg(); // Dialog Data //{{AFX_DATA(CAboutDlg) enum { IDD = IDD_ABOUTBOX }; //}}AFX_DATA // ClassWizard generated virtual function overrides //{{AFX_VIRTUAL(CAboutDlg) protected: virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support //}}AFX_VIRTUAL // Implementation protected: //{{AFX_MSG(CAboutDlg) // No message handlers //}}AFX_MSG DECLARE_MESSAGE_MAP() }; CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD) { //{{AFX_DATA_INIT(CAboutDlg) //}}AFX_DATA_INIT } void CAboutDlg::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CAboutDlg) //}}AFX_DATA_MAP } // App command to run the dialog void CTrade_MISApp::OnAppAbout() { CAboutDlg aboutDlg; aboutDlg.DoModal(); } //執(zhí)行SQL語句的函數(shù)如下: bool CTrade_MISApp::ADOExecute(_RecordsetPtr &ADOSet, _variant_t &strSQL)//ADOSet作為引用,起到指針作用,是記錄集對(duì)象指針 { if ( ADOSet->State == adStateOpen) ADOSet->Close(); try { ADOSet->Open(strSQL, ADOConn.GetInterfacePtr(), adOpenStatic, adLockOptimistic, adCmdUnknown);//打開記錄集 return true;//執(zhí)行成功返回真值 } catch(_com_error &e) { CString err; err.Format("ADO Error: %s",(char*)e.Description()); AfxMessageBox(err); return false;//捕捉到錯(cuò)誤返回假值 } } int CTrade_MISApp::ExitInstance() //斷開數(shù)據(jù)庫連接的函數(shù) { // TODO: Add your specialized code here and/or call the base class // Release ADO RecordSet//釋放指針 if(adStateOpen==m_pADOSet->State) m_pADOSet->Close();//關(guān)閉記錄集 m_pADOSet.Release(); // Release ADO Connection//斷開連接 if( adStateOpen == ADOConn->State ) ADOConn->Close();//斷開數(shù)據(jù)庫連接 ADOConn.Release(); return CWinApp::ExitInstance(); } 5.3.2 更改密碼 void CChangePwdDLG::OnOK() { UpdateData(true); // 確保密碼輸入非空 if ( ""==m_sPWD1 ) { AfxMessageBox(_T("密碼不能未空"), MB_ICONEXCLAMATION); return; } //判斷兩次輸入的密碼一致 if ( 0!=m_sPWD1.Compare(m_sPWD2) ) { AfxMessageBox(_T("兩次輸入密碼不一樣,請(qǐng)確認(rèn)"), MB_ICONEXCLAMATION); return; } CDialog::OnOK(); } BOOL CChangePwdDLG::OnInitDialog() { CDialog::OnInitDialog(); ((CEdit*)GetDlgItem(IDD_CHANGEPWD_PWD1))->SetLimitText(10); ((CEdit*)GetDlgItem(IDD_CHANGEPWD_PWD2))->SetLimitText(10); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE } 5.3.3 登錄 void CLoginDLG::OnOK() { // TODO: Add extra validation here // Check UserName Vadilaty UpdateData(true); m_sUSER.TrimRight(" "); //刪除空格 if ( ""==m_sUSER ) {//用戶名輸入為空 AfxMessageBox(_T("請(qǐng)?zhí)顚懹脩裘?quot;), MB_ICONEXCLAMATION); return; } _variant_t Holder, strQuery; strQuery = "select user_ID, user_PWD from user_Info where user_ID='"+m_sUSER+"'";//查詢用戶名和密碼 theApp.ADOExecute(theApp.m_pADOSet, strQuery);//執(zhí)行查詢語句,獲得記錄集 int iCount = theApp.m_pADOSet->GetRecordCount();//獲取記錄條數(shù) if (iCount==0) {//若數(shù)據(jù)庫中記錄數(shù)為0 theApp.m_iLoginCount++;//登錄計(jì)數(shù) if ( theApp.m_iLoginCount>2 ) {//輸入次數(shù)為三次 AfxMessageBox("沒有這個(gè)用戶\n三次輸入均不正確,請(qǐng)核對(duì)后再來", MB_ICONEXCLAMATION); CDialog::OnCancel(); return; } AfxMessageBox("沒有這個(gè)用戶,請(qǐng)重新輸入用戶名", MB_ICONEXCLAMATION); return; } CString sPWD; theApp.m_pADOSet->MoveFirst();//指向第一條記錄 Holder = theApp.m_pADOSet->GetCollect("user_PWD");//獲取記錄中user_PWD值 sPWD = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder; if ( 0!=sPWD.Compare(m_sPWD) ) {//若sPWD和m_sPWD不相等 theApp.m_iLoginCount++;//登錄次數(shù)加1 if ( theApp.m_iLoginCount>2 ) {//登錄3次 AfxMessageBox("輸入密碼不正確\n三次輸入均不正確,請(qǐng)核對(duì)后再來", MB_ICONEXCLAMATION); CDialog::OnCancel(); return; } AfxMessageBox("輸入密碼不正確,請(qǐng)重新輸入", MB_ICONEXCLAMATION); return; } // Get Login User theApp.m_sCurrentUser = m_sUSER; CDialog::OnOK(); } 5.3.4 客戶管理 BOOL CCustomerDLG::OnInitDialog() { CDialog::OnInitDialog(); // TODO: Add extra initialization here // Set Windows Text if (m_bAppend) SetWindowText(_T("添加客戶信息")); else SetWindowText(_T("修改客戶信息")); m_sOldCompany = m_sCompany; return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE } void CCustomerDLG::OnOK() { // TODO: Add extra validation here UpdateData(true); m_sCompany.TrimRight(" "); m_sPerson.TrimRight(" "); m_sAddress.TrimRight(" "); m_sCity.TrimRight(" "); m_sArea.TrimRight(" "); m_sPostCode.TrimRight(" "); m_sPhone.TrimRight(" "); m_sFax.TrimRight(" "); m_sHomePage.TrimRight(" "); // Make sure all needed info is available CString sWarning=""; if ( ""==m_sCompany ) sWarning=_T("公司名稱"); else if ( ""==m_sPerson ) sWarning=_T("聯(lián)系人姓名"); else if ( ""==m_sAddress ) sWarning=_T("聯(lián)系地址"); else if ( ""==m_sCity ) sWarning=_T("城市名稱"); else if ( ""==m_sArea ) sWarning=_T("地區(qū)名稱"); else if ( ""==m_sPostCode ) sWarning=_T("郵政編碼"); else if ( ""==m_sPhone ) sWarning=_T("聯(lián)系電話"); else if ( ""==m_sFax ) sWarning=_T("傳真號(hào)碼"); else if ( ""==m_sHomePage ) sWarning=_T("公司主頁"); if ( ""!=sWarning ) { sWarning += _T("不能為空"); AfxMessageBox(sWarning, MB_ICONEXCLAMATION); return; } _variant_t strQuery; if ( m_bAppend || m_sCompany!=m_sOldCompany ) { // Judge Customer is unique strQuery = "select * from customers where CompanyName='"+m_sCompany+"'"; theApp.ADOExecute(theApp.m_pADOSet, strQuery); int iCount = theApp.m_pADOSet->GetRecordCount(); if ( 0!=iCount ) { AfxMessageBox(_T("已經(jīng)存在此公司記錄!"), MB_ICONEXCLAMATION); return; } } if ( !m_bAppend ) // Not Append, delete old record first { strQuery = "delete from customers where CompanyName='"+m_sOldCompany+"'"; theApp.ADOExecute(theApp.m_pADOSet, strQuery); } // Insert Record strQuery = "insert customers (CompanyName, ContactName, Address, City, Region, PostalCode, Phone,Fax, HomePage, CustomerMemo) \ values ('"+m_sCompany+"', '"+m_sPerson+"', '"+m_sAddress+"', '"+m_sCity+"', '"+m_sArea+"', '"+m_sPostCode+"', '"+m_sPhone+"', '"+m_sFax+"', '"+m_sHomePage+"', '"+m_sMemo+"')"; if ( theApp.ADOExecute(theApp.m_pADOSet, strQuery) ) { if (m_bAppend) { AfxMessageBox(_T("添加客戶信息成功!"), MB_ICONINFORMATION); // Clear all input m_sCompany=m_sPerson=m_sAddress=m_sCity=m_sArea=m_sPostCode=m_sPhone=m_sFax=m_sHomePage=m_sMemo=""; UpdateData(false); } else AfxMessageBox(_T("修改客戶信息成功!"), MB_ICONINFORMATION); } else { if (m_bAppend) AfxMessageBox(_T("添加客戶信息失??!"), MB_ICONEXCLAMATION); else AfxMessageBox(_T("修改客戶信息失??!"), MB_ICONEXCLAMATION); } strQuery = "select * from customers"; CTrade_MISView* p = (CTrade_MISView*)(((CMainFrame*)AfxGetMainWnd())->GetActiveView()); p->RefreshCustomer(strQuery); if (!m_bAppend) CDialog::OnOK(); } 5.3.5 商品管理 BOOL CProductDLG::OnInitDialog() { CDialog::OnInitDialog(); //設(shè)置對(duì)話框標(biāo)題,m_bAppend設(shè)為true表示添加,false表示修改 if (m_bAppend) SetWindowText

注意事項(xiàng)

本文(數(shù)據(jù)庫課程設(shè)計(jì)報(bào)告銷售管理系統(tǒng))為本站會(huì)員(仙***)主動(dòng)上傳,裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng)(點(diǎn)擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因?yàn)榫W(wǎng)速或其他原因下載失敗請(qǐng)重新下載,重復(fù)下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  sobing.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!