




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、軟件項目開發綜合實踐大作業題 目: 商品庫存管理系統 專 業: 09計算機應用技術 作 者: 指導教師: 黃 鋼 目 錄第1章:系統的可行性分析- 2 -1.1 商品庫存管理系統的主要任務- 2 -1.2 可行性分析- 2 -第2章:需求分析- 3 -2.1 系統的需求分析- 3 -2.2 系統功能- 3 -2.2.1 商品管理模塊- 3 -2.2.2 商家管理模塊- 4 -2.2.3 入庫管理模塊- 4 -2.2.4 出庫管理模塊- 4 -第3章:設計過程- 5 -3.1 商品庫存管理系統用例圖- 5 -3.2 數據庫操縱- 5 -3.3 登錄對話框- 12 -3.3.1 刪除無關控件- 1
2、2 -3.3.2 制作登錄封面- 12 -3.3.3 界面設計- 12 -3.3.4 編寫代碼- 13 -3.3.5 主界面的實現- 14 -第4章:系統總結- 18 -第1章:系統的可行性分析1.1 商品庫存管理系統的主要任務商品庫存管理系統是對商品庫存進行整理, 使得能方便快捷地對人事檔案進行查詢、統計、更新并且能按一定要求輸出報表。通過該系統、使企業的商品庫存管理工作系統化、規范化、自動化, 從而提高企業人事管理的效率。1.2 可行性分析(1) 技術可行性隨著國內軟件開發的日益發展壯大,各種中小企事業單位已具備獨立開發各種類型的軟件的能力,能夠滿足不同行業的特別的需求。而這個系統盡管其在
3、組織關系上存在著很大的復雜性,繁瑣性,但是就整個系統的技術構成上來看,它還是屬于一個數據庫應用類的系統。其基本操作還是對存在數據庫進行瀏覽、添加、刪除、修改等。所以就單純的數據庫應用來看,暫不存在太大的技術問題。(2) 經濟可行性對于整個系統而言,在系統未運行之前,初期投資比較大,花費相對而言比較多。各部門必須配置電腦、服務器、打印機、傳真機及相關的網絡設備, 但是在整個系統投入運行之后,因為現在計算機已經普及了,相關的人員培訓費可以減少很多。而同時又減少了數據的流通環節,不必要花費那么多的時間,也就是說最重要的是就是提高了效率,而又保證了各項數據的準確性,也避免了工作人員的流動造成的收據丟失
4、等問題,適應了當前的發展形式。(3) 管理可行性 隨著時代的發展,人員素質己逐步提高,不論是對于電腦系統的基本操作還是對于系統的維護都有了一定的基礎。同時還可以配置專業的電腦維護人員來維護電腦,不必擔心電腦故障問題。(4) 開發環境可行性Visual C+ + 為用戶提供了ODBC (Open Database Connec2 tivity , 開放式數據庫連接) 、DAO (Data Access Object , 數據訪問對象) 和OLEDB (OL E Data Base , OL E 數據庫) 三種數據庫訪問技術, 它們都具有簡單、靈活、訪問速度快、可擴展性強的特點, 這些正是Visu
5、al C 6 較其它開發工具所具有的優勢。ODBC 是一種使用SQL 的程序設計接口, 它使得編寫應用程序避免了與數據源相聯的復雜過程。第2章:需求分析2.1 系統的需求分析伴隨著計算機的發展及網絡技術的應用,我們正在快速地向信息化社會邁進,信息自動化的作用變得越來越大。在倉庫管理領域中,倉庫管理的規模正在不斷擴大,倉庫管理的復雜度正在急劇地增加,有關倉庫管理的各種信息量也成倍地增長。面對龐大的信息量,就需要有商品庫存管理系統來提高庫存管理工作的效率。通過這樣的系統,可以方便的查詢、添加和修改商品及供貨商的基本情況,掌握入庫出庫的各種情況,實現信息的規范管理、科學統計和快速查詢,從而減少管理方
6、面的工作量,同時避免由于人為因素造成數據遺漏和誤報等。商品庫存管理系統的功能要求如下:提供倉庫各類信息的瀏覽、添加、刪除、修改等操作。可以進行入庫出庫操作,并保證安全性??蛇M行日志管理,方便事后查看。系統其他的相關功能。2.2 系統功能本系統主要模塊有4個:商品信息管理、商家管理、入庫信息管理、出庫管理。其他模塊如預警模塊和日志管理都是為了增強系統的安全性和擴展功能而設計的。下面分別對這4個模塊進行介紹(系統的整體設計如圖1.1所示)。2.2.1 商品管理模塊倉庫管理模塊通過此模塊來管理商品信息,包括瀏覽、查詢、添加、修改和刪除功能。在進行商品信息的添加時,系統會自動檢測所添加的商品信息中的商
7、品號在商品表中是否已經存在,如果存在,會提示用戶該商品已經存在。在進行商品信息的刪除時,要首先彈出提示窗口讓用戶確認是否刪除,只有用戶確認后才能進行商品信息的刪除。在進行商品信息的修改時,不準用戶修改商品號,因為商品號作為數據庫中商品表的主鍵是不同商品的唯一標識,不準修改商品號可以防止不經意將商品號改錯;如果確實要修改商品號,可以通過數據庫管理員來實現,也可以先將錯誤商品號信息刪除再添加正確的商品信息,這樣在刪除時會彈出提示窗口,讓用戶確認是否刪除,給用戶以提示,防止意外錯誤。登陸界面庫存預警操作日志修改密碼商品管理商家管理入庫管理出庫管理主界面幫助圖1.1 系統整體設計2.2.2 商家管理模
8、塊倉庫管理員通過此模塊來管理商家信息,包括瀏覽、查詢、添加、修改和刪除功能。在進行商家信息的添加時,系統會自動檢測所添加的商家信息的商家號在商家表中是否已經存在,如果存在,會提示用戶該商家在商家表中已經存在。在進行商家信息的刪除時,要首先彈出提示窗口讓用戶確認是否刪除,只有用戶確認后才能進行商家信息的刪除。在進行商家信息的修改時,不準用戶修改商家號。2.2.3 入庫管理模塊倉庫管理員通過此模塊來管理入庫信息,包括瀏覽、查詢、添加、修改和刪除功能。在進行入庫信息的添加時,系統會自動檢測所添加的入庫信息中的商品號在商品表里是否存在,商家號在商家表中是否存在,只要有一個不存在,就會提示用戶輸入有誤;
9、同時檢驗所添加的商品號和商家號的組合在入庫表中同一時間是否已經存在,如果存在,會提示用戶該入庫信息在入庫表中已經存在。2.2.4 出庫管理模塊倉庫管理員通過此模塊來進行出庫操作。選擇相應的商品,系統自動顯示被選擇商品的數量。若出庫數量大于當前商品數量,則操作不能完成。第3章:設計過程3.1 商品庫存管理系統用例圖商品庫存管理系統用例圖如圖3.1所示。圖3.1商品庫存管理系統用例圖3.2 數據庫操縱E-R圖: 商品商品編號商品名稱當前庫存量最大庫存量最小庫存量圖3.2 商品信息供貨商商家編號商家名稱商家地址負責人電話Email圖3.3 供貨商信息入庫商品編號商家編號入庫數量購入價格入庫日期圖3.
10、4 入庫信息出庫商品編號出庫數目負責人出庫者出庫日期圖3.5 出庫信息日志操作員操作時間操作名圖3.6 日志信息管理員管理員號用戶名密碼圖3.7 管理員信息引入數據庫鏈接代碼如下:#import"C:programfilescommonfilesSystemadomsado15.dll" no_namespace rename("EOF","adoEOF") rename("LockTypeEnum","newLockTypeEnum")rename("DataTypeEnum&quo
11、t;,"newDataTypeEnum")rename("FieldAttributeEnum","newFieldAttributeEnum")rename("EditModeEnum","newEditModeEnum")rename("RecordStatusEnum","newRecordStatusEnum")rename("ParameterDirectionEnum","newParameterDirection
12、Enum")class CGMSApp : public CWinApppublic:CGMSApp();public:_RecordsetPtr m_pRs;bool ADOExecute(_RecordsetPtr &ADOSet, _variant_t &strSQL);CLogManager m_log;/ Overrides/ ClassWizard generated virtual function overrides/AFX_VIRTUAL(CGMSApp)public:virtual BOOL InitInstance();/AFX_VIRTUAL/
13、 Implementation/AFX_MSG(CGMSApp)/ NOTE - the ClassWizard will add and remove member functions here./ DO NOT EDIT what you see in these blocks of generated code !/AFX_MSGDECLARE_MESSAGE_MAP()private:/ Define ADO Database Connnection_ConnectionPtr m_pConn;BOOL CGMSApp:InitInstance()AfxEnableControlCon
14、tainer();/ Standard initialization/ If you are not using these features and wish to reduce the size/ of your final executable, you should remove from the following/ the specific initialization routines you do not need.#ifdef _AFXDLLEnable3dControls();/ Call this when using MFC in a shared DLL#elseEn
15、able3dControlsStatic();/ Call this when linking to MFC statically#endif/ Create ADO Connectionif( FAILED(:CoInitialize(NULL) ) AfxMessageBox("ADO Init failed");return false;trym_pConn.CreateInstance(_uuidof(Connection);m_pConn->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=GMS
16、.mdb","","",adConnectUnspecified);/ Catch Exceptionscatch(_com_error &e)CString err;err.Format("%s", (char*)(e.Description() );AfxMessageBox(err);catch(.)AfxMessageBox("Unknown Error.");/ Init ADO RecordSetm_pRs.CreateInstance(_uuidof(Recordset);CGMSD
17、lg dlg;m_pMainWnd = &dlg;int nResponse = dlg.DoModal();if (nResponse = IDOK)/ TODO: Place code here to handle when the dialog is/ dismissed with OKelse if (nResponse = IDCANCEL)/ TODO: Place code here to handle when the dialog is/ dismissed with Cancel/ Since the dialog has been closed, return F
18、ALSE so that we exit the/ application, rather than start the application's message pump.return FALSE;bool CGMSApp:ADOExecute(_RecordsetPtr &ADOSet, _variant_t &strSQL)if ( ADOSet->State = adStateOpen)ADOSet->Close();try ADOSet->Open(strSQL, m_pConn.GetInterfacePtr(), adOpenStati
19、c, adLockOptimistic, adCmdUnknown); return true;catch(_com_error &e) CString err; err.Format("ADO Error: %s",(char*)e.Description(); AfxMessageBox(err); return false;數據庫表如圖3.8,圖3.9, 圖3.10, 圖3.11, 圖3.12, 圖3.13,圖3.14所示。圖3.8 數據庫圖3.9 管理員信息圖3.10 商品信息圖3.11 入庫信息圖3.12 日志表圖3.13 出庫信息圖3.14 供貨商信息3
20、.3 登錄對話框3.3.1 刪除無關控件 在主對話框IDD_GMS_DIALOG中將提示文本“TODO:在這里設置對話控制”刪除。同時,把兩個命令按鈕“確定”和“取消”刪除。3.3.2 制作登錄封面登錄封面的主要作用有:說明系統名稱、版權;修飾應用程序。如圖3.15所示。圖3.15 系統封面位圖3.3.3 界面設計設計界面如圖3.16所示。圖3.16 登錄對話框設計界面3.3.4 編寫代碼 “確定”按鈕:void CGMSDlg:OnButtonOk() CString strSql;_variant_t strQuery;UpdateData(TRUE);if (m_strName.IsEm
21、pty() /*判斷用戶名信息是否為空*/AfxMessageBox("請輸入用戶名!");return;strQuery = "SELECT * FROM admin WHERE Admin_name='"+m_strName+ "' AND Admin_passwd='" + m_strPasswd+ "'"theApp.ADOExecute(theApp.m_pRs, strQuery); int iCount = theApp.m_pRs->GetRecordCount
22、();if ( 0=iCount ) AfxMessageBox("用戶名或密碼錯誤!");m_strName=""m_strPasswd=""UpdateData(false);elsestrAdminName=m_strName;:Sleep(300);OnOK();CMainDlg dlg;dlg.DoModal();“取消”按鈕void CGMSDlg:OnButtonCancle() OnCancle();/ TODO: Add your control notification handler code here3.3.5
23、 主界面的實現界面設計設計界面如圖3.17所示。圖3.17 主界面設計代碼編寫:void CMainDlg:OnButtonGoodsadd() CGoodsDlg dlg;this->ShowWindow(SW_HIDE);dlg.DoModal();this->ShowWindow(SW_SHOW);/ TODO: Add your control notification handler code herevoid CMainDlg:OnButtonProvideradd() CProviderDlg dlg;this->ShowWindow(SW_HIDE);dlg.
24、DoModal();this->ShowWindow(SW_SHOW);/ TODO: Add your control notification handler code herevoid CMainDlg:OnButtonGoodsin() CInDlg dlg;this->ShowWindow(SW_HIDE);dlg.DoModal();this->ShowWindow(SW_SHOW);/ TODO: Add your control notification handler code herevoid CMainDlg:OnButtonGoodsout() COu
25、tDlg dlg;this->ShowWindow(SW_HIDE);dlg.DoModal();this->ShowWindow(SW_SHOW);/ TODO: Add your control notification handler code herevoid CMainDlg:OnButtonGoods() CViewDlg dlg;this->ShowWindow(SW_HIDE);dlg.Init(1);dlg.DoModal();this->ShowWindow(SW_SHOW);/ TODO: Add your control notification
26、 handler code herevoid CMainDlg:OnButtonProvider() CViewDlg dlg;this->ShowWindow(SW_HIDE);dlg.Init(2);dlg.DoModal();this->ShowWindow(SW_SHOW);/ TODO: Add your control notification handler code herevoid CMainDlg:OnButtonIn() CViewDlg dlg;this->ShowWindow(SW_HIDE);dlg.Init(3);dlg.DoModal();th
27、is->ShowWindow(SW_SHOW);/ TODO: Add your control notification handler code herevoid CMainDlg:OnButtonOut() CViewDlg dlg;this->ShowWindow(SW_HIDE);dlg.Init(3);dlg.DoModal();this->ShowWindow(SW_SHOW);/ TODO: Add your control notification handler code herevoid CMainDlg:OnButtonAlert() CAlertDlg dlg;dlg.DoModal();/ TODO: Add your control notification handler code herevoid CMainDlg:OnButtonAdmin() CPasswdDlg dlg;dlg.DoModal();/ TODO: Add your co
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 江蘇省無錫市陰山中學2024-2025學年初三考前適應性訓練考試(三)物理試題試卷含解析
- 鄭州科技學院《鍋爐原理》2023-2024學年第二學期期末試卷
- 新疆輕工職業技術學院《新聞采編實務》2023-2024學年第二學期期末試卷
- 新疆維吾爾自治區輪臺縣第二中學2025年初三3月測試(線上)語文試題含解析
- 柳州城市職業學院《歌曲寫作與分析》2023-2024學年第二學期期末試卷
- 寧夏職業技術學院《統計建模與數據分析》2023-2024學年第一學期期末試卷
- 中學2025屆高三第二學期第一次四校聯考生物試題含解析
- 長治市潞城市2024-2025學年數學五年級第二學期期末統考試題含答案
- 湖南省長沙市XX中學2025年初三下學期第三次模擬考試(期中)英語試題含答案
- 護理員消毒隔離知識培訓
- (三診)綿陽市高中2022級高三第三次診斷性考試 歷史試卷A卷(含答案)
- 麻醉專業考試試題及答案
- 湖南省長沙市長郡教育集團2024-2025學年七年級下學期期中生物試題
- 山東省高中名校2025屆高三4月校際聯合檢測大聯考生物試題及答案
- 2025年03月如東縣事業單位工作人員120人筆試歷年典型考題(歷年真題考點)解題思路附帶答案詳解
- 2025年中鐵快運股份有限公司招聘(98人)筆試參考題庫附帶答案詳解
- 2025年武漢數學四調試題及答案
- 職業病防護設施與個體防護用品的使用和維護
- 綠化養護服務投標方案(技術標)
- 2024年鄭州信息科技職業學院單招職業適應性測試題庫學生專用
- 中國紡織文化智慧樹知到期末考試答案2024年
評論
0/150
提交評論