【正文】
i m_nNumOfPages。 m_IDD[m_nNumOfPages1] = ID。 int m_nCurrentPage。 (2) 定義 5 個成員變量,代碼如下: protected: LPCTSTR m_Title[MAXPAGE]。 在本次畢業(yè)設(shè)計中,我 要非常感謝指導(dǎo)老師在我不知所措的時候給了我指點(diǎn)方向 ,在我感覺到自己知識有所貧乏的時候給了我細(xì)心 的 指導(dǎo)和技術(shù)上的支持。在系統(tǒng)開發(fā)過程中,獨(dú)立完成從需求分析、設(shè)計、編碼、測試到集成部署、運(yùn)行 維護(hù)等一系列開發(fā)步驟,通過開發(fā)本系統(tǒng),不僅掌握了具體的編程技術(shù),而且了解了軟件開發(fā)全過程,加深了對軟件開發(fā)的認(rèn)識,為今后的項目開發(fā)工作積累了寶貴的經(jīng)驗。由于畢業(yè)設(shè)計時間較短、本人的水平有限,本系統(tǒng)設(shè)計得不夠精確、完整,界面也不是很美觀,系統(tǒng)出錯處理也不是很好,整個系統(tǒng)中的代碼相對簡單,這些都有待進(jìn)一步的改善。方法是, CCustomGrid 類中包含了兩個成員變量 col 和 row,根據(jù) col 便可以確定當(dāng)前表格列。在入庫管理窗口的 PreTranslateMessage 方法中首先截獲WM_KEYUP 消息,判斷其消息句柄是否為編輯框 CKeyEdit,如果是則進(jìn)行處理。 22 在實(shí)現(xiàn)聯(lián)想錄入時,首先需要截獲表格編輯時的消息,在編輯表格時進(jìn)行查詢操作時,采用的表格控件是 CCustomGrid,而真正實(shí)現(xiàn)數(shù)據(jù)錄入的并不是CCustomGrid,而是編輯框 CKeyEdit。 根據(jù)上面的功能描述,需要解決如下問題: ? 截獲表格編輯時的消息。 3 用戶單擊表格時,確定單元格的坐標(biāo) 為了在用戶單擊表格時確定編輯框出現(xiàn)的位置,首先需要確定用戶單擊時的單元格坐標(biāo)。處理編輯框的 WM_KILLFOCUS 消息,使其在失去焦點(diǎn)時將數(shù)據(jù)顯示在列表的當(dāng)前單元格中。 ? 用戶單擊單元格時,確定單元格坐標(biāo)(行和列索引)。但 MFC 提供的列表視圖控件 CListCtrl 只 21 能顯示數(shù)據(jù),而不能編輯,為了使列表視圖控件能夠編輯,筆者改寫了 CListCtrl類,從該類派生一個子類 CCustomGrid。 ( 3)向窗口添加 3 個靜態(tài)文本資源、一個編輯框資源、一個組合框資源 、 2 個列表資源、 2 個時間控件資源、 2 個復(fù)選框資源。 ( 4)設(shè)置各主要資源屬性 ,如表 所示。庫存盤點(diǎn)窗口如圖 所示。 ( 3)在窗口中放置 7 個靜態(tài)文本資源、 6 個編輯框資源、 1 個時間控制資源、2 個列表框資源、 2 個列表視圖資源。商品入庫管理活動圖,如 圖 所示。 ( 4)在窗口類 CDlgInputStorageM 的初始化事件中調(diào)用標(biāo)簽控件( m_tab)的AddPage 方法添加頁面,并顯示頁面和相應(yīng)窗口。 ( 2)定義一個 CTabSheet 對象,名稱為“ m_tab”,用于窗口管理。 ( 4)創(chuàng)建 標(biāo)簽頁面,顯示所有窗口。 ? 顯示指定標(biāo)簽頁中的窗口。 ? 記錄標(biāo)簽控件的頁數(shù)。至此,完成主窗口的設(shè)計。 ( 4)處理樹視圖控件的雙擊事件,根據(jù)節(jié)點(diǎn)標(biāo)題顯示相應(yīng)的窗口。在設(shè)計文檔 /視圖結(jié)構(gòu)程序是,狀態(tài)欄會由應(yīng)用程序向?qū)ё詣觿?chuàng)建,因此不用進(jìn)行設(shè)計。 ( 5)設(shè)置工具欄按鈕大小,加載工具欄按鈕圖像。 ( 1)在主窗口框架中定義一個 CReBar 類對象 m_wndReBar,一個 CToolBar類對象 m_wndToolBar,一個 CImageList 類對象 img,其中 img 用于存儲工具欄上顯示的圖像。 ( 13)在主窗口的源文件消息映射部分添加映射宏。 ( 9)改寫菜單項的“ DrawItem”方法,繪制菜單。 ( 7)添加“ ChangeMenuStyle”方法,從菜單資源中確定菜單項的屬性,參數(shù)bTop 標(biāo)識菜單項是否為頂層菜單。 ( 3)新建一個類,類名為“ CMyCoolMenu” ,基類為 CMenu。 圖 入庫狀態(tài)圖 商品入庫查詢處理過程分析 在查詢商品入庫信息時,首先需要設(shè)置查詢條件,用戶可以根據(jù)需要將時間段查詢與具體條件 查詢組合,進(jìn)行復(fù)雜的數(shù)據(jù)查詢,商品入庫查詢狀態(tài)如圖 所示。 圖 入庫單信息實(shí)體 ER 圖 出庫單信息實(shí)體 ER 圖如圖 所示。 數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計 得到上面的數(shù)據(jù)項和數(shù)據(jù)結(jié)構(gòu)以后,就可以設(shè)計出能夠滿足用戶需求的各種實(shí)體結(jié)構(gòu),以及他們之間的關(guān)系,為以后的邏輯結(jié)構(gòu)設(shè)計打 下基礎(chǔ)。 ? 庫存狀況信息,包括的數(shù)據(jù)項有編號、貨物編號、庫存數(shù)量、倉庫編 號等。收集基本數(shù)據(jù)、數(shù)據(jù)結(jié)構(gòu)以及數(shù)據(jù)處理的流程,組成一份詳盡的數(shù)據(jù)字 典,為后面的具體設(shè)計打下基礎(chǔ)。 : 在入庫管理中需要實(shí)現(xiàn)商品的入庫,入庫退貨管理,記錄入庫,入庫退貨信息 。支持多種類型的入庫、出庫、補(bǔ)貨方式,同時支持多種查詢方式和全面的日志管理,可應(yīng)用于各種行業(yè)的單體倉庫精細(xì)化管理或者應(yīng)用于制造企業(yè)、物流企業(yè)、流通業(yè)及其它特殊行業(yè)的倉庫管理。由于 OLE DB可提供關(guān)系型數(shù)據(jù)源也可以提供非關(guān)系型數(shù) 源 ,所以在非關(guān)系型數(shù)據(jù)源上使 用傳統(tǒng) 6 的 SQL 命令查詢數(shù)據(jù)有可能無效 ,甚至 Command 命令對象也不能使用。 在 ADO 模型中 ,主體對象只有 3 個 :Connection、 Command 和 Recordset,其他 4個集合對象 Errors、 Properties、 Parameters 和 Fields分別對應(yīng) Error、 Property、 Parameter和 Field 對象 ,整個 ADO 對象模型由這些對象組成。 ADO 對象模型定義了一組可編程的自動化對象 ,可用于 Visual Basic、 Visual C++、 Java 以及其他各種支持自動化特性的腳本語言。 ADO 簡介 微軟公司的 ADO (ActiveX Data Objects) 是一個用于存取數(shù)據(jù)源的 COM 組件。 Microsoft SQL Server 2021 非常明顯的改進(jìn)就是增加了 OLAP(聯(lián)機(jī)分析處理 )功能 ,這可以讓很多中小企業(yè)用戶也可以使用數(shù)據(jù)倉庫的一些特性進(jìn)行分析。這些特點(diǎn)在 .NET 戰(zhàn)略中發(fā)揮著重要的作用。 IT 行業(yè)的實(shí)踐經(jīng)驗充分證明了這一點(diǎn)。由于 SQL Server 與 Windows 界面風(fēng)格完全一致,且有許多 向?qū)?(Wizard)幫助,因此易于安裝和學(xué)習(xí),有關(guān) SQL Server 的資料、培訓(xùn)隨處可得,并且目前國內(nèi)具有 MCDBA 認(rèn)證的工程師不在少數(shù)。它包括支持開發(fā)的引擎、標(biāo)準(zhǔn)的 SQL 語言、擴(kuò)展的特性 (如復(fù)制、 OLAP、分析 )等功能。 SQL Server 2021 數(shù)據(jù)庫簡介 數(shù)據(jù)庫是 MIS 中的重要支持技術(shù),在 MIS 開發(fā)過程中,如何選擇數(shù)據(jù)庫管理是一個重要的問題,目前,數(shù)據(jù)庫產(chǎn)品較多,每種產(chǎn)品都具有各自的特點(diǎn)和適用范圍,因此,在選擇數(shù)據(jù)庫時,應(yīng)考慮數(shù)據(jù)庫應(yīng)用的特點(diǎn)及適用范圍,本系統(tǒng)選用的數(shù)據(jù)庫語言是 SQL Server 2021。 3. Platform SDK。從理論 上來講, MFC 也不是專用于 Visual C++, Borland C++,C++Builder 和 Symantec C++同樣可以處理 MFC。其實(shí)不然,雖然 Developer Studio 提供了一個很好的編輯器和很多 Wizard,但實(shí)際上它沒有任何編譯和鏈接程序的功能,真正完成這些工作的幕后英雄后面會介紹。 Visual C++ 不僅是一個 C++編譯器,而且是一個基于 Windows 操作系統(tǒng)的可視化集成開發(fā)環(huán)境( integrated development environment,IDE)。 3 第 二 章 開發(fā)工具簡介 Visual C++ 編程環(huán)境簡介 Visual C++是一個功能強(qiáng)大的可視化軟件開發(fā)工具。本系統(tǒng)在開發(fā)時選用了穩(wěn)定性較強(qiáng)的 Windows XP中文專業(yè)版和 Visual C++作為開發(fā)語言,同時選用了 SQL Server 2021數(shù)據(jù)庫 。 開發(fā)環(huán)境 系統(tǒng)開發(fā)環(huán)境包括硬件平臺和軟件平臺兩種。存儲過程只在創(chuàng)造時進(jìn)行編譯,以后每次執(zhí)行存儲過程都不需再重新編 譯,而一般 SQL 語句每執(zhí)行一次就編譯一次 ,所以使用存儲過程可提高數(shù)據(jù)庫執(zhí)行速度。大型服務(wù)器可能有成千上萬的用戶同時連接到 SQL Server 2021 實(shí)例。而對于后者則要求應(yīng)用程序功能完備,易使用等特點(diǎn)。本課題主要的目的是是幫助企業(yè)的倉庫管理人員對企業(yè)生產(chǎn)所需要的物資設(shè)備進(jìn)行管理和控制,使生產(chǎn)設(shè)備得到充分利用 ,以達(dá)到降低成本。一個企業(yè)在市場中是否具有強(qiáng)有力的競爭力,除了要看企業(yè)的人才、資金、技術(shù)、產(chǎn)品之外,更重要的一項,就是要看企業(yè)是否有一個良好的管理體制。 關(guān)鍵 字 : 功能 數(shù)據(jù)庫 倉庫管理系統(tǒng) Abstract Function and realizing describing of this text separately to the warehouse managemen system, system this adopt SQL Server 2021 as backstage supporter developing instrument of database, employ VC++ develop languages as front desk. This system mainly including the fundamental information management,warehouse entry management, warehouse output management, inquiry management,etc. This system operation is simple and clear, the interface is esthetic, simplify the convoluted traditional management style of warehouse management, manage the systematic electron to warehouse management in simple and clear way apt to be grasped. This text explain basic theories that the management information system develop at first, introduction, systematic choice, database design method,etc. of platform to develop course. Secondly direct against the business demand of sales of goods, provide the realization scheme of an intact warehouse managemen system, including systematic demand analyze systematic system structural design, every module of functions design, the design of storehouse of the data and systematic one are integrated and disposed etc.. Have designed and described the warehouse managemen system in detail. Key words: Function。 本系統(tǒng)操作簡單明了,界面美觀,簡化了 倉庫管理 煩瑣的傳統(tǒng)管理方式,以簡單明了的方式對 倉庫庫存 進(jìn)行系統(tǒng)的電子管理。本系統(tǒng)主要包括 基礎(chǔ)信息管理 , 入庫管理 , 出庫管理,查 詢管理 等幾個主模塊 。對倉庫管理 管理系統(tǒng) 進(jìn)行了詳細(xì)設(shè)計及描述。在市場競爭中,建立科學(xué)、規(guī)范、高效管理制度成為了企業(yè)管理的當(dāng)務(wù)之急。使得管理人員可以告別沉重而且不易于查詢的記事本堆了。對于前者要求建立起數(shù)據(jù)一致性和完整性 2 強(qiáng)、數(shù)據(jù)安全性好的數(shù)據(jù)庫。 Microsoft SQL Server 2021 能提供超大型系統(tǒng)所需的數(shù)據(jù)庫服務(wù)。在存儲方面更出類拔萃。這也就需要程序員也要不斷的更新自己的技術(shù)。 軟件平臺是指系統(tǒng)開發(fā)與運(yùn)行的軟件環(huán)境。 數(shù)據(jù)庫采用 SQL Server 2021,由于我們的系統(tǒng)要求,采用它完全可以適合我們的工作需求,并且它所支持的數(shù)據(jù)類型十分豐富,維護(hù)簡便,費(fèi)用比較低,人員素質(zhì)要求不是很高,容易升級。所以實(shí)際中,更多的是以 Visual C++ 為平臺。 Visual C++它大概可以分成三個主要的部分: 1. Developer Studio,這是一個集成開發(fā)環(huán)境,我們?nèi)粘9ぷ鞯?99%都是在它上面完成的,再加上它的標(biāo)題赫然寫著 “Microsoft Visual C++”,所以很多 人理所當(dāng)然的認(rèn)為,那就是 Visual C++了。這一點(diǎn)請切記! 2. MFC。但是, Visual C++也不等于 MFC。上面說到 Developer Studio 沒有編譯程序的功能,那么這項工作是由誰來完成 4 的呢?是 CL,是 NMAKE,和其他許許多多命令行程序,這些我們看不到的程序才是構(gòu)成 Visual