商品銷售管理系統畢業論文_第1頁
商品銷售管理系統畢業論文_第2頁
商品銷售管理系統畢業論文_第3頁
商品銷售管理系統畢業論文_第4頁
商品銷售管理系統畢業論文_第5頁
已閱讀5頁,還剩33頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、吉林省高等教育自學考試畢業論文論文題目:商品銷售管理系統專 業:計算機應用軟件準考證號:010208101127學生姓名:曹偉偉指導教師:盧奕南2012年 3 月1日摘要在信息飛速發展的今天,無論是小型企業還是大中型企業,都逐漸采用計算機對商品的銷售進行了管理,不在使用過多的人力對商品信息、商品進出庫信息、商品銷售信息等進行記錄、核對、計算等等。企業對商品的銷售管理已經日益的重要,商品銷售管理系統已然成為了不可或缺的企業管理軟件。一個優秀的企業管理軟件,不僅需要含有大量的數據信息,還需要具有對這些息息相關的數據信息進行綜合分析、整理的功能。本文簡要介紹了商品銷售管理系統的項目背景和意義,著重闡

2、述了該系統開發過程,從系統的需求分析、方案論證、關鍵技術設計、數據庫設計、模塊設計到系統實現等各個環節都進行了詳盡的分析和描述。該系統運用SQL SERVER 2005數據庫系統和VC+技術開發實現的,包括了商品的入庫信息、商品的銷售信息和商品的庫存信息,可以通過簡單的增、刪、改、保存等操作對該商品信息進行管理。該系統的界面友善、靈活性好、且系統的安全性高、運行穩定等功能,是一個企業的商品銷售必備的管理軟件。關鍵詞:商品銷售管理系統,SQL Server 2005,數據庫,需求分析AbstractToday, the rapid development of information, whet

3、her small or large and medium-sized enterprises, the gradual introduction of computers to management on the sale of goods, not using too much manpower for commodity information, goods in and out of the library information, sales information, recording, verifying, calculating, and so on .Enterprise s

4、ales management has become increasingly important for commodities, merchandising management system has become an integral part of the enterprise management software. A good enterprise management software, requires not only contains large amounts of data, you also need to have a comprehensive analysi

5、s, consolidation of information is closely related to the function of.This article briefly describes the project background and significance of the merchandise management system, highlights the systems development process, from system requirements analysis, design, database design, plan, key technol

6、ogy module design to system implementation and other links for a detailed analysis and description.Using the SQL SERVER 2005 database system and the system VC+ technology development, including product storage information, merchandise sales and inventory information on goods, through simple operatio

7、ns increased, by deleting, modifying, saving on the product information management. The system interface is friendly, good flexibility, and security features such as high and stable operation of the system, is the sale of goods of an enterprise management software.Keyword: sales management system, S

8、QL Server 2005, the database, and needs analysis目錄TOC o 1-3 h z u第1章 緒論1.1 本課題的研究意義公司隨著業務的不斷發展,商品銷售的數量也不斷增加,商品銷售的流程也就更為復雜,傳統的商品銷售管理在商品的統計和管理上不但麻煩,而且還十分耗費人力和時間。而商品管理系統對商品的進貨、退貨、存貨和銷售情況等進行了綜合統計和管理,使管理人員通過對銷售所涉及到的商品、訂單、銷售商、供應商等資料的錄入,便可以輕松實現商品銷售流程的管理。方便管理人員更快更便捷的得到自己想要的信息。1.2 商品銷售管理系統的發展十年來國內軟件工程方面的進展有目

9、共睹,在軟件需求方面,我們看到在大多數組織中已經建立起了一級或兩級需求體系(業務需求和軟件需求),在某些組織中,需求分析員已經成為一種專門的職位;甚至在某個大型國有商業銀行已經成立一個專門的部門來負責需求分析工作。應該來說,這是一些非常可喜的進步1。商品銷售管理系統隨著軟件工程的不斷發展,也在逐漸發展,從一個只是用于小型企業小型數據錄入、簡單的銷售處理過程的一個實現功能,發展到可以錄入大量數據信息,并且可以快速智能的處理復雜的銷售、銷售退貨、入庫、入庫退貨以及與供應商之間的關系維護和與客戶之間的關系維護等等過程,在商品銷售管理系統的幫助下,大型企業的銷售流程已經日益信息化、簡單化。在這個金融時

10、代給企業帶來了較高的利益,使得企業飛速的發展。現在的商品銷售管理系統已經在各個領域各個方面都具有較高的可行性5,如:(1)經濟可行性:即是否能取得很好的經濟效益,要考慮開發成本是否能承受。信息管理系統的規模不是很大,人力資源,經費要求都很少,只要有技術人員參與開發即可,很容易實現。當系統投入運行后可以為節約大量的人力,物力,所帶來的效益遠遠大于系統軟件的開發成本。信息管理系統在經濟上完全可行。(2)時間可行性:即系統本身的適用范圍,本系統包括了商品交易管理系統所必需的各個環節,具有相對穩定性。因此,在世界上是可行的。(3)操作可行性:本信息管理系統在界面設計時充分考慮到管理人員的習慣,采用下拉

11、菜單窗體模塊,簡明易懂,一目了然,使得操作簡單:數據錄入迅速、規范、可靠:信息統計準確:制表靈活:適應力強:容易擴充。(4)社會可行性:面對當今注重速度、效益的時代,本軟件的社會可行性是顯而易見的。它提高了工作效率,縮短了經費過程所需的時間,增大了信息傳遞的準確性、及時性、快速性,節約了人力、物力,具有一定的社會價值。1.3 本課題的研究內容由于商品銷售管理系統是一個用來幫助使用者管理商品銷售流程的軟件。使用者通過對銷售過程中涉及到的商品,訂單,銷售商等資料的錄入,便可以輕松實現商品銷售流程的管理6。因此,從業務需求方面考慮,公司的商品銷售管理系統這個課題的研究內容應該包括以下幾點:大量數據信

12、息的錄入;項目開發環境的選擇;數據信息存放的軟件選擇;商品銷售管理的處理過程;系統安全性的管理。第2章系統設計2.1 系統目標設計商品銷售管理系統以幫助使用者輕松實現商品銷售的流程為設計目標,加以強大的數據庫管理功能,此管理系統大大的提高了商品銷售的效率。本系統在設計時應滿足一下幾點:采用人機對話的操作方式,信息查詢靈活、方便、快捷、準確、數據存儲安全可靠。實現信息管理的添加、修改和刪除功能。可以錄入商品信息、庫房信息、客戶和供應商等信息。對往來賬的管理。系統運行穩定、安全可靠。2.2系統功能結構設計通過上面的需求分析,可以總結出,在該商品銷售管理系統中,應具備如下功能結構圖2,如圖2.1所示

13、。2.1 功能結構圖(1)基礎信息管理模塊,在該系統中,基礎信息管理模塊主要實現了操作員信息、商品信息、供應商信息、客戶信息、商品庫存信息的現實,以及添加和保存。(2)入庫管理模塊,在該系統中,入庫管理模塊主要實現了商品入庫的管理和入庫退貨的管理的信息顯示、添加和保存等。(3)銷售管理模塊,在該系統中,銷售管理模塊主要實現了商品銷售的管理和銷售退貨管理的信息顯示、添加和保存等。(4)查詢管理模塊,在該系統中,查詢管理模塊主要實現了入庫查詢、入庫退貨查詢、銷售查詢和銷售退貨查詢的信息顯示、添加和保存等。(5)往來賬管理模塊,在該系統中,主要實現了供應商結款和客戶結款管理的功能。第3章 數據庫設計

14、3.1 數據庫分析商品銷售管理系統使用了Microsoft SQL Server 2005數據庫滿足系統的要求,數據庫的名稱為SellManage,在數據庫中創建了一八張表用于存儲各種不同的信息,如圖3.1所示。圖3.1 數據庫系統表3.2 數據庫結構設計表下面給出商品銷售管理系統的幾張主要表的表信息。1、tb_operator(操作員信息表)操作員列表數據表中,存放著對該軟件使用的操作員的姓名、密碼以及操作員的級別,操作員的級別在數據表中為0,表示普通管理員,若為1表示系統管理員。該表主要用于保存管理員的信息3,如圖3.2所示。圖3.2 操作員數據表2、tb_merchandiseinfo(

15、商品信息列表)商品信息列表數據表中,存放著商品的id、商品姓名、商品的規格、商品的助記碼、廠家等等信息。該表主要用于保存商品的信息3,如圖3.3所示。圖3.3商品信息列表3、tb_providerinfo(供應商信息列表)供應商信息列表中,包括供應商名稱、法人姓名、負責人、x、詳細地址等等。該表主要用于保存供應商信息3,如圖3.4所示。圖3.4 供應商信息列表4、tb_customerinfo(客戶信息列表)客戶信息列表中,包括客戶名稱、負責人、x等客戶的信息。該表主要用于保存客戶信息3,如圖3.5所示。圖3.5 客戶信息列表5、tb_merchandisestorage(庫存信息列表)庫存信

16、息列表中包括庫存編號、庫存名稱、庫存數量這三類信息,該表主要用于保存上述提到的這三類信息3,如圖3.6所示。圖3.6庫存信息列表7、tb_cancelsell_main(銷售退貨列表)銷售退貨列表中包括退貨單號、客戶、操作員、折扣等信息,該表主要用于記錄銷售退貨的信息3,如圖3.7所示。圖3.7銷售退貨列表3.3 應用技術在此銷售管理系統中,主要采用了ADO技術操作數據庫,在這個系統的設計過程中通過導入ADO Com接口實現對SQL Server 2005的操作,為了操作的方便,將數據庫的各種操作封裝在一個自定義的CDataBase類中。在實現數據庫的過程中,首先要創建一個新類CDataBas

17、e,然后再向新創建的該類中添加一個成員函數和成員變量。在程序連接和操作數據庫時,需要設置數據庫連接的相關信息,該系統是通過一個數據庫配置的INI文件,與數據庫進行連接的,當系統啟動時,首先從INI文件中獲取數據庫的配置信息,如若系統所在的服務器與數據庫發生變化,只需要修改INI文件中的配置信息即可,無需再改動代碼。在CDataBase類中,自定義了一個初始化數據庫連接的函數,主要用于獲取INI文件中的鏈接信息,如主機名、用戶名、密碼、默認庫。如果該初始化函數調用成功,即連接成功,則返回1,否則返回0,即表示連接數據庫失敗4。該初始化函數為InitData(),實現代碼如下:int CDatab

18、ase:InitData()char m_szConnect512;char m_szTmp1024= ;char m_szHost20, m_szUser20, m_szPwd20, m_szDef20 ;GetPrivateProfileString(數據庫, 主機名, NULL, m_szHost, sizeof(m_szHost), IniFile) ;GetPrivateProfileString(數據庫, 用戶名, NULL, m_szUser, sizeof(m_szUser), IniFile) ;GetPrivateProfileString(數據庫, 密碼, NULL, m

19、_szPwd, sizeof(m_szPwd), IniFile) ;GetPrivateProfileString(數據庫, 默認庫, NULL, m_szDef, sizeof(m_szDef), IniFile) ;try/連接XdDataHRESULT hr = m_Connection.CreateInstance(_uuidof(Connection);sprintf(m_szConnect,provider = sqloledb;server=%s;database=%s;, m_szHost, m_szDef);hr=m_Connection-Open(_bstr_t(m_sz

20、Connect),_bstr_t(m_szUser),_bstr_t(m_szPwd),-1);sprintf(m_szTmp, 數據庫連接成功!);/連接XdDatacatch(_com_error & e) sprintf(m_szTmp, 數據庫打開失敗,錯誤原因:%sn,LPCTSTR(e.Description();return 0 ;return 1 ;第4章 系統模塊設計與實現4.1 登錄模塊設計與實現用戶登錄模塊是所有管理系統所應具備的基礎模塊之一,該模塊主要用于實現系統的檢驗工作,只有具有相應權限的管理員用戶可以使用這個系統,增加了系統的安全性,該系統用戶登錄的界面如圖4.1

21、所示。圖4.1 系統登錄模塊用戶登錄系統是整個系統中最先顯示的一個窗體,在運行一個系統時,要首先通過這個窗體,以管理員的身份進入該系統,若輸入用戶名與密碼正確,則進入此系統,若輸入錯誤,則無法進入此系統。在登錄窗體創建的同時應該創建數據庫的連接,與數據庫連接這個過程,需要在應用程序類的初始化方法(CMerchandiseSellApp)中實現,連接數據庫的操作代碼如下:if(!m_hDatabase.InitData()MessageBox(NULL, 數據庫訪問失敗,程序異常關閉!, 出錯啦, MB_OK) ;exit(1) ;/login CDlgLogin m_hDlg ;/*定義登錄對

22、話框類的對象*/if(m_hDlg.DoModal() = IDOK)/*顯示登錄對話框*/else/exit(1) ;CMerchandiseSellDlg 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

23、to handle when the dialog is/ dismissed with Cancel用戶登錄模塊的實現主要經過如下幾步:(1)創建一個對話框,設置相應的對話框屬性,在對話框中添加靜態文本控件、編輯框控件和兩個按鈕控件。由于顯示密碼的編輯框中輸入的密碼是看見的,因此,在密碼相對應的這個編輯框需要設置特別的屬性,即在Styles這個屬性中,勾選Password這個屬性。如圖4.2所示。圖4.2 密碼編輯框的特殊屬性(2)在對話框窗體的初始化方法中設置對話框的按鈕背景圖,以及相對應的圖標,實現代碼如下:BOOL CDlgLogin:OnInitDialog() CDialog:On

24、InitDialog();/ TODO: Add extra initialization herem_hBtnOk.SetIcon(IDI_ICON_OK);/*設置確定按鈕的圖標*/m_hBtnOk.OffsetColor(CButtonST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnOk.SetColor(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);m_hBtnCancel.SetIcon(IDI_ICON_CANCEL);/*設置取消按鈕的圖標*/m_hBtnCancel.OffsetColor(CButton

25、ST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnCancel.SetColor(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);return TRUE; / return TRUE unless you set the focus to a control / EXCEPTION: OCX Property Pages should return FALSE(3)在“確定”按鈕的事件中實現用戶名和密碼的驗證。在“確定”按鈕的實現過程中,首先獲取該對話框的編輯控件中的文本信息,即輸入的姓名、密碼,然后,將獲取的姓名、密碼字符

26、串,復制給定義的數據庫中的操作員姓名和密碼的成員變量,如果與數據庫操作員信息表中的數據相匹配,則登錄成功,否則,登錄失敗,“確定”按鈕的實現代碼如下:void CDlgLogin:OnOK() char m_szName30, m_szPwd30 ;GetDlgItemText(IDC_EDIT_NAME, m_szName, sizeof(m_szName) ;/*獲取用戶名*/GetDlgItemText(IDC_EDIT_PWD, m_szPwd, sizeof(m_szPwd) ;/*獲取密碼*/switch(m_hDatabase.IsVerifyUser(m_szName, m_s

27、zPwd, m_szLevel)case 1:/成功strcpy(m_szOpName, m_szName) ;break ;case 0:/失敗MessageBox(登錄失敗,用戶名/密碼錯誤!) ;m_hEditName.SetFocus() ;return ;case -1:/數據庫操作異常MessageBox(數據庫操作異常,請與系統管理員聯絡!) ;exit(0) ;break ;CDialog:OnOK();4.2 入庫管理模塊設計與實現商品入庫管理模塊是銷售過程中的重要處理過程,在入庫的過程中,主要有兩部分,一部分是商品的入庫信息登記與顯示,還有一部分是入庫退貨信息的錄入與顯示功

28、能。4.2.1 商品入庫管理入庫的商品主要需要記錄商品的入庫單號、操作員、供應商、單價、入庫時間等等信息,在該模塊可以添加、修改、刪除這些入庫的信息。商品入庫管理信息的錄入功能,如圖4.3所示。圖4.3 商品入庫錄入商品入庫管理模塊的實現過程主要有如下幾點:(1)添加一個商品入庫管理模塊的對話框資源,設置該對話框的屬性,設置ID值,將標題改為“商品入庫管理”。(2)向對話框中添加按鈕控件,標簽控件,靜態文本框控件,文本編輯框控件以及時間選擇控件,每一個控件設置相應的屬性信息。(3)商品入庫管理中主要有兩方面內容,在對話框中通過標簽控件進行設置,一面是錄入入庫單號等基本信息,一面是顯示入庫信息列

29、表。因此,在商品入庫管理模塊中實現了對列表信息的初始化操作,相應代碼如下:void CDlgSprk:InitCtrlData()m_hTabSprk.InsertItem(0, 商口入庫基本信息) ;/插入信息m_hTabSprk.InsertItem(1, 商口入庫信息列表) ;m_hTabSprk.ShowWindow(TRUE) ;/設置窗口顯示方式m_hEditZk.ShowWindow(TRUE) ;m_hEditYfje.ShowWindow(TRUE) ;m_hEditSpbh.ShowWindow(TRUE) ;m_hEditSl.ShowWindow(TRUE) ;m_hE

30、ditSfje.ShowWindow(TRUE) ;m_hEditRkdh.ShowWindow(TRUE) ;m_hEditHj.ShowWindow(TRUE) ;m_hEditGys.ShowWindow(TRUE) ;m_hEditDj.ShowWindow(TRUE) ;m_hEditCzy.ShowWindow(TRUE) ;m_hEditCkmc.ShowWindow(TRUE) ;m_hListSprk.ShowWindow(FALSE) ;m_hListSprk.InsertColumn(0, 入庫單號, LVCFMT_CENTER, 80) ;/插入列信息m_hListSp

31、rk.InsertColumn(1, 供應商, LVCFMT_CENTER, 50) ;m_hListSprk.InsertColumn(2, 操作員, LVCFMT_CENTER, 80) ;m_hListSprk.InsertColumn(3, 折扣, LVCFMT_CENTER, 50) ;m_hListSprk.InsertColumn(4, 合計, LVCFMT_CENTER, 50) ;m_hListSprk.InsertColumn(5, 應付金額, LVCFMT_CENTER, 80) ;m_hListSprk.InsertColumn(6, 實付金額, LVCFMT_CENT

32、ER, 80) ;m_hListSprk.InsertColumn(7, 倉庫名稱, LVCFMT_CENTER, 80) ;m_hListSprk.InsertColumn(8, 商品編號, LVCFMT_CENTER, 80) ;m_hListSprk.InsertColumn(9, 單價, LVCFMT_CENTER, 50) ;m_hListSprk.InsertColumn(10, 數量, LVCFMT_CENTER, 50) ;m_hListSprk.InsertColumn(11, 金額, LVCFMT_CENTER, 50) ;m_hListSprk.InsertColumn(

33、12, 時間, LVCFMT_CENTER, 80) ;/設置列表的擴展風格m_hListSprk.SetExtendedStyle(m_hListSprk.GetStyle() | LVS_EX_FULLROWSELECT);m_hBtnOk.SetIcon(IDI_ICON_CLOSE);/設置關閉按鈕對應的圖標m_hBtnOk.OffsetColor(CButtonST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnOk.SetColor(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);m_hBtnSave.SetIco

34、n(IDI_ICON_OK);m_hBtnSave.OffsetColor(CButtonST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnSave.SetColor(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);m_hBtnSave.EnableWindow(FALSE) ;m_hBtnDel.SetIcon(IDI_ICON_DEL);m_hBtnDel.OffsetColor(CButtonST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnDel.SetColor(CButtonST:B

35、TNST_COLOR_FG_IN, RGB(0, 128, 0);m_hBtnAdd.SetIcon(IDI_ICON_ADD);m_hBtnAdd.OffsetColor(CButtonST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnAdd.SetColor(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);m_hBtnMod.SetIcon(IDI_ICON_MOD);m_hBtnMod.OffsetColor(CButtonST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnMod.SetC

36、olor(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);m_hBtnFind.SetIcon(IDI_ICON_FIND);m_hBtnFind.OffsetColor(CButtonST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnFind.SetColor(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);TabCtrlOfSelect(1) ;在上述代碼中,實現了對話框的一個界面信息的現實,為了增加界面的美觀性,還是用了帶有圖標的按鈕。(4)處理“增加”按鈕的單擊事件,將商品的入

37、庫信息錄入到數據表中,在錄入數據時,程序會檢查數據的合法性,如果輸入的信息不符合相應的條件,例如,沒有輸入或者重復等,則會出現提示信息。該按鈕的實現代碼如下:void CDlgSprk:OnBtnAdd() / TODO: Add your control notification handler code hereswitch(m_hTabSprk.GetCurSel()/獲取標簽控件的當前選中項case 0:break ;case 1:TabCtrlOfSelect(0) ;break ;m_hEditZk.SetWindowText() ;/設置編輯框的信息為空,初始化狀態為空m_hEd

38、itYfje.SetWindowText() ;m_hEditSpbh.SetWindowText() ;m_hEditSl.SetWindowText() ;m_hEditSfje.SetWindowText() ;m_hEditRkdh.SetWindowText() ;m_hEditHj.SetWindowText() ;m_hEditGys.SetWindowText() ;m_hEditDj.SetWindowText() ;m_hEditCzy.SetWindowText() ;m_hEditCkmc.SetWindowText() ;m_hEditRkdh.SetFocus()

39、;/對指定的窗口設置鍵盤焦點m_hBtnSave.EnableWindow() ;/保存按鈕的現實狀態(5)處理“保存”按鈕的單擊事件,將錄入的商品入庫信息保存。該事件的實現方法如下:void CDlgSprk:OnBtnSave() / TODO: Add your control notification handler code here/定義字符數組類型存放編輯框中的數據信息char ID30+1, provider30+1, ooperator50+1, rebate10+1, sumtotal10+1, paymoney10+1, factmoney10+1, intime20+1

40、=, merchandiseID30+1, unitPrice10+1, numbers10+1, stockname30+1 ;/獲取文本編輯框中的數據信息,m_hEditRkdh.GetWindowText(ID, sizeof(ID) ;m_hEditGys.GetWindowText(provider, sizeof(provider) ;m_hEditCzy.GetWindowText(ooperator, sizeof(ooperator) ;m_hEditZk.GetWindowText(rebate, sizeof(rebate) ;m_hEditHj.GetWindowTex

41、t(sumtotal, sizeof(sumtotal) ;m_hEditYfje.GetWindowText(paymoney, sizeof(paymoney) ;m_hEditSfje.GetWindowText(factmoney, sizeof(factmoney) ;m_hEditSpbh.GetWindowText(merchandiseID, sizeof(merchandiseID) ;m_hEditDj.GetWindowText(unitPrice, sizeof(unitPrice) ;m_hEditSl.GetWindowText(numbers, sizeof(nu

42、mbers) ;m_hEditCkmc.GetWindowText(stockname, sizeof(stockname) ;m_hDtCtrl1.GetWindowText(intime,sizeof(intime);/保存修改,更新數據庫m_hDatabase.UpdateSprkData(ID,provider,ooperator,rebate,sumtotal,paymoney,factmoney,intime,merchandiseID,unitPrice,numbers,stockname) ;m_hBtnSave.EnableWindow(FALSE) ;其他的按鈕單擊事件的處

43、理方法,請參照源碼,在此不作過多介紹。4.2.2 入庫退貨管理入庫管理模塊除了上面的商品入庫管理信息功能,還有入庫退貨的信息錄入與修改等功能,如圖4.4所示。圖4.4 入庫退貨功能商品入庫退貨管理的設計中,也對對話框的信息進行了初始化,大體設計方法如商品入庫管理中的初始化操作,除此之外,還對添加、保存、修改等按鈕進行了實現,按鈕的實現方案,在此不做過多介紹,詳細設計代碼請參照本項目。4.3 銷售管理模塊設計銷售管理模塊是銷售過程中的重要處理過程,在銷售的過程中,主要有兩部分,一部分是商品的銷售信息登記與顯示,還有一部分是銷售退貨信息的錄入與顯示功能。銷售的商品主要需要記錄商品的銷售單號、操作員

44、、供應商、單價、銷售時間等等信息,在該模塊可以添加、修改、刪除這些銷售的信息。商品銷售管理信息的錄入功能,如圖4.5所示。圖4.5 商品銷售管理圖4.6 商品銷售退貨管理商品銷售管理模塊的實現方法同入庫管理模塊類似,實現過程主要有如下幾點:(1)添加一個商品銷售管理模塊的對話框資源,設置該對話框的屬性,設置ID值,將標題改為“商品銷售管理”。(2)向對話框中添加按鈕控件,標簽控件,靜態文本框控件,文本編輯框控件以及時間選擇控件,每一個控件設置相應的屬性信息。(3)商品銷售管理中主要有兩方面內容,在對話框中通過標簽控件進行設置,一面是錄入入庫單號等基本信息,一面是顯示入庫信息列表。初始化這些數據

45、信息的實現方法如下:void CDlgSell:InitCtrlData()m_hTabCancelSell.InsertItem(0, 商品銷售基本信息) ;m_hTabCancelSell.InsertItem(1, 商品銷售信息列表) ;m_hTabCancelSell.ShowWindow(TRUE) ;/m_hListCancelSell.InsertColumn(0, 銷售單號, LVCFMT_CENTER, 80) ;m_hListCancelSell.InsertColumn(1, 客戶, LVCFMT_CENTER, 50) ;m_hListCancelSell.Insert

46、Column(2, 操作員, LVCFMT_CENTER, 80) ;m_hListCancelSell.InsertColumn(3, 折扣, LVCFMT_CENTER, 50) ;m_hListCancelSell.InsertColumn(4, 總計, LVCFMT_CENTER, 50) ;m_hListCancelSell.InsertColumn(5, 應付金額, LVCFMT_CENTER, 80) ;m_hListCancelSell.InsertColumn(6, 實付金額, LVCFMT_CENTER, 80) ;m_hListCancelSell.InsertColum

47、n(7, 倉庫名稱, LVCFMT_CENTER, 80) ;m_hListCancelSell.InsertColumn(8, 商品編號, LVCFMT_CENTER, 80) ;m_hListCancelSell.InsertColumn(9, 單價, LVCFMT_CENTER, 50) ;m_hListCancelSell.InsertColumn(10, 數量, LVCFMT_CENTER, 50) ;m_hListCancelSell.InsertColumn(11, 金額, LVCFMT_CENTER, 50) ;m_hListCancelSell.InsertColumn(12

48、, 時間, LVCFMT_CENTER, 80) ;m_hListCancelSell.SetExtendedStyle(m_hListCancelSell.GetStyle() | LVS_EX_FULLROWSELECT);/INIT BUTTON CTRLm_hBtnOk.SetIcon(IDI_ICON_CLOSE);m_hBtnOk.OffsetColor(CButtonST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnOk.SetColor(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);m_hBtnSave.S

49、etIcon(IDI_ICON_OK);m_hBtnSave.OffsetColor(CButtonST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnSave.SetColor(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);m_hBtnSave.EnableWindow(FALSE) ;m_hBtnDel.SetIcon(IDI_ICON_DEL);m_hBtnDel.OffsetColor(CButtonST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnDel.SetColor(CButto

50、nST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);m_hBtnAdd.SetIcon(IDI_ICON_ADD);m_hBtnAdd.OffsetColor(CButtonST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnAdd.SetColor(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);m_hBtnMod.SetIcon(IDI_ICON_MOD);m_hBtnMod.OffsetColor(CButtonST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnMod

51、.SetColor(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);m_hBtnFind.SetIcon(IDI_ICON_FIND);m_hBtnFind.OffsetColor(CButtonST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnFind.SetColor(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);/TabCtrlOfSelect(1) ;BOOL CDlgSell:OnInitDialog() CDialog:OnInitDialog();/ TODO: Add

52、 extra initialization hereInitCtrlData() ;return TRUE; / return TRUE unless you set the focus to a control / EXCEPTION: OCX Property Pages should return FALSE(4)處理商品銷售管理模塊的“增加”按鈕的單擊事件,將商品的銷售信息錄入到數據表中,在錄入數據時,程序會檢查數據的合法性,如果輸入的信息不符合相應的條件,例如,沒有輸入或者重復等,則會出現提示信息。該按鈕的實現代碼如下:void CDlgSell:OnBtnAdd() / TODO:

53、 Add your control notification handler code hereswitch(m_hTabCancelSell.GetCurSel()case 0:break ;case 1:TabCtrlOfSelect(0) ;break ;m_hEditUnitPrice.SetWindowText() ;m_hEditSumTotal.SetWindowText() ;m_hEditStockName.SetWindowText() ;m_hEditRebate.SetWindowText() ;m_hEditPayMoney.SetWindowText() ;m_hE

54、ditOperator.SetWindowText() ;m_hEditMerchandiseID.SetWindowText() ;m_hEditFactMoney.SetWindowText() ;m_hEditCustomer.SetWindowText() ;m_hEditCancelID.SetWindowText() ;m_hEditNumbers.SetWindowText() ;m_hEditCancelID.SetFocus() ;m_hBtnSave.EnableWindow() ;其他的按鈕單擊事件的處理方法都大體相似,詳細實現方法請參照源碼。4.4 項目發布在項目設計完成后,下面就開始編譯、運行以及調試該程序,首先按F5編譯應用程序,并運行生成的可執行文件,最終進入該系統的一個運行

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論