【正文】
415銷售成本實(shí)現(xiàn)原理為了避免出現(xiàn)與供應(yīng)商和代理商之間漏帳、差帳、缺帳等賬目問題,需要建立一個(gè)往來對(duì)賬功能的窗體,明細(xì)往來的所有賬目,從而與供應(yīng)商和代理商建立更好的合作聯(lián)盟。往來對(duì)賬功能的實(shí)現(xiàn)主要以往來單位為唯一標(biāo)識(shí),來統(tǒng)計(jì)進(jìn)貨數(shù)據(jù)、進(jìn)貨退貨表數(shù)據(jù)、銷售表數(shù)據(jù)、銷售退貨表數(shù)據(jù)。往來對(duì)賬分析模塊的運(yùn)行結(jié)果如圖416所示。它的實(shí)現(xiàn)重點(diǎn)在數(shù)據(jù)庫(kù)表tb_currentaccount的創(chuàng)建,在窗體設(shè)計(jì)方面,只是通過DataGridView控件對(duì)表格的顯示。圖416 往來對(duì)賬功能要求:(1)查看庫(kù)存的狀況,進(jìn)行商品報(bào)警的上下限設(shè)置;(2)實(shí)現(xiàn)庫(kù)存商品上限和下限的報(bào)警;(3)商品進(jìn)行庫(kù)存盤點(diǎn)和對(duì)壓傷、擠傷等不良庫(kù)存折損;庫(kù)存狀況窗體顯示庫(kù)存信息包括商品編號(hào)、商品名稱、庫(kù)存數(shù)量、成本均價(jià)、庫(kù)存總價(jià),如圖417(a)。由于本系統(tǒng)設(shè)計(jì)的是化妝品的進(jìn)銷存管理系統(tǒng),對(duì)于不同的季節(jié),化妝品的需求是不同的,單純的固定上下限報(bào)警以滿足不了實(shí)際的需求的變動(dòng),為了滿足這種實(shí)際的需求,本系統(tǒng)在設(shè)計(jì)時(shí)增加了庫(kù)存上下限的設(shè)置模塊如圖417(b)。圖417(a) 庫(kù)存狀況 圖417(b) 庫(kù)存狀況上下限設(shè)置的設(shè)計(jì)原理(實(shí)現(xiàn)框圖如圖418):(1)在庫(kù)存狀況窗體的工具欄設(shè)計(jì)“庫(kù)存上下限設(shè)置”按鈕;(2)按鈕的單擊事件:1)定義一個(gè)特殊的類模塊對(duì)象setStockLimit,用來存放組合框、文本框的信息和庫(kù)存上下限報(bào)警窗體;2)顯示原始上下限報(bào)警設(shè)置的信息:通過DataSet創(chuàng)建空的對(duì)象ds,獲取數(shù)據(jù)庫(kù)的庫(kù)存表中的上下限信息;通過ToString方法將ds里的數(shù)據(jù),顯示到setStockLimit的文本框中;3)通過ShowDialog方法,setStockLimit或ds對(duì)象的信息可以顯示在文本框里;4)至此,文本框中改動(dòng)上下限報(bào)警的修改值,可在文本框里顯示。(3)“確定”按鈕:1)通過IsNumber方法判斷是否為阿拉伯?dāng)?shù)字:否,則出現(xiàn)錯(cuò)誤提示的消息框,可重新進(jìn)入文本框的輸入;是,則進(jìn)入下一步;2)通過ToSingle方法,將文本轉(zhuǎn)換為數(shù)據(jù),傳入庫(kù)存表,完成上下限信息的更新。3)彈出消息框:“庫(kù)存上下限設(shè)置成功”,單擊“確定”,本窗體關(guān)閉(4)“取消”按鈕:本窗體關(guān)閉,修改值無效。圖418上下限設(shè)置實(shí)現(xiàn)原理、下限報(bào)警庫(kù)存的上限報(bào)警就是顯示庫(kù)存數(shù)量超出上限值的商品,它是的實(shí)現(xiàn)是通過創(chuàng)建DataSet對(duì)象獲取數(shù)據(jù)庫(kù)的商品編號(hào)、商品名稱、庫(kù)存數(shù)量、庫(kù)存上限、庫(kù)存上限的信息,通過if語句的判斷,顯示到DataGridView控件中。運(yùn)行的結(jié)果如圖419。庫(kù)存的上限報(bào)警的設(shè)計(jì)和原理與上限的類似。運(yùn)行的結(jié)果如圖420。 圖419 庫(kù)存上限報(bào)警 圖420 庫(kù)存下限報(bào)警庫(kù)存盤點(diǎn)是對(duì)庫(kù)存商品的統(tǒng)計(jì)。在公司實(shí)際的管理過程中不免會(huì)存在壓傷、擠傷等不良商品,特別像本系統(tǒng)設(shè)計(jì)的化妝品企業(yè),它是有使用期限的,它們沒有實(shí)際的使用價(jià)值卻占有庫(kù)存數(shù)量,所以在庫(kù)存模塊中設(shè)計(jì)庫(kù)存盤點(diǎn)窗體特別是折損的顯示是很有必要的。本系統(tǒng)設(shè)計(jì)的庫(kù)存盤點(diǎn)窗體顯示的信息包括:商品編號(hào)、商品名稱、商品型號(hào)、商品規(guī)格、商品單位、商品產(chǎn)地、庫(kù)存數(shù)量、折損數(shù)量。本窗體的功能:可以實(shí)現(xiàn)庫(kù)存的基本盤點(diǎn)(庫(kù)存數(shù)量和折損);可以通過類別的選擇(商品名稱和商品產(chǎn)地)來查看情況;特別的,本窗體可以通過折損數(shù)量的輸入,更新庫(kù)存商品的折損信息。本窗體的運(yùn)行效果如圖421。折損更新的實(shí)現(xiàn)過程:DataGridView控件中選中商品,工具欄中輸入折損數(shù)量,單擊保存,則完成折損的更新和顯示。圖421 庫(kù)存盤點(diǎn)功能要求:(1)實(shí)現(xiàn)對(duì)庫(kù)存商品信息的查詢、添加、修改、編輯、刪除。(2)實(shí)現(xiàn)對(duì)往來單位信息的查詢、添加、修改、編輯、刪除。(3)實(shí)現(xiàn)對(duì)公司職員信息的查詢、添加、修改、編輯、刪除。它是對(duì)庫(kù)存商品的編輯,由于進(jìn)貨和銷售的實(shí)現(xiàn)都和它是有關(guān)聯(lián)的,為此在設(shè)計(jì)時(shí),它展現(xiàn)的信息必須盡量的詳細(xì)。所以本窗體顯示的信息包括:商品編號(hào)、商品名稱、商品型號(hào)、商品單位、商品產(chǎn)地、庫(kù)存數(shù)量、商品價(jià)價(jià)格和折損數(shù)量。庫(kù)存商品信息管理的方式有:查詢、添加、編輯和刪除。運(yùn)行的結(jié)果如圖422。庫(kù)存信息管理實(shí)現(xiàn)的原理:(1)查詢的實(shí)現(xiàn)是通過if語句判斷查詢類別里的文本,創(chuàng)建DataSet對(duì)象獲取數(shù)據(jù)庫(kù)中表tb_stock信息,顯示到DataGridView控件中。(2)添加和編輯:添加信息是通過創(chuàng)建DataSet對(duì)象獲取商品編號(hào),再加1后在組合框第一個(gè)文本框顯示;填入剩下文本框的信息(編輯同理)。(3)保存:文本框的輸入信息存更新到數(shù)據(jù)庫(kù)表tb_stock中,在通過DataGridView控件顯示新的庫(kù)存信息。(4)取消:文本框清空。(5)刪除:調(diào)用公共類中的刪除,直接刪除數(shù)據(jù)庫(kù)的信息。圖422 庫(kù)存商品它是對(duì)往來單信息的編輯,編輯的內(nèi)容包括:?jiǎn)挝痪幪?hào)、單位名稱、稅號(hào)、單位電話、聯(lián)系人、單位地址、開戶行及帳號(hào)。往來單位信息管理的方式有:查詢、添加、編輯、刪除,它們的實(shí)現(xiàn)原理與庫(kù)存商品的類似。運(yùn)行的結(jié)果如圖423。 圖423 往來單位 圖424 公司職員它是對(duì)公司職員信息的編輯,編輯的內(nèi)容包括:職員編號(hào)、職員姓名、性別、所在部門、聯(lián)系電話和備注。公司職員信息管理的方式有:查詢、添加、編輯、刪除,它們的實(shí)現(xiàn)原理與庫(kù)存商品的類似。運(yùn)行的結(jié)果如圖424。功能要求:(1)完成本單位的信息設(shè)置;(2)完成系統(tǒng)權(quán)限的管理,包括添加、修改、刪除的操作;(3)完成數(shù)據(jù)的備份和恢復(fù);(4)清理不同的數(shù)據(jù)表。本單位的信息包括:?jiǎn)挝蝗Q、稅號(hào)、單位電話、聯(lián)系人、單位地址和開戶行及帳號(hào)。它可以顯示單位的信息同時(shí),在文本框中輸入新信息,單擊更新就可以顯示本單位的新信息。信息顯示原理:創(chuàng)建DataSet對(duì)象獲取數(shù)據(jù)庫(kù)中本單位的信息,在文本框中顯示。更新原理:創(chuàng)建創(chuàng)建DataSet空的對(duì)象,文本框中的內(nèi)容存放到空對(duì)象,調(diào)用公共類中的更新方法,完成數(shù)據(jù)庫(kù)的更新。信息運(yùn)行的結(jié)果如圖425。 圖425本單位信息 圖426 系統(tǒng)權(quán)限管理權(quán)限管理窗體的設(shè)計(jì)是為了完成登錄時(shí)對(duì)用戶賦予系統(tǒng)操作的限制,同時(shí),名和密碼的添加修改和刪除工作也是在本窗體實(shí)現(xiàn)的。運(yùn)行的結(jié)果如圖426。企業(yè)系統(tǒng)的重裝、升級(jí)、操作者的失誤刪除、外界(停電、網(wǎng)絡(luò)病毒等)的干擾等的問題都會(huì)導(dǎo)致數(shù)據(jù)的丟失[19]。操作者汗水付諸東流了不說,企業(yè)的損失又由誰來承擔(dān)?為了減少這樣的損失,本系統(tǒng)設(shè)計(jì)了數(shù)據(jù)庫(kù)的備份和恢復(fù)窗體。運(yùn)行的結(jié)果如圖427。由于本系統(tǒng)采用的是三層架構(gòu)中的隔離驅(qū)動(dòng)模式,所以對(duì)數(shù)據(jù)庫(kù)信息的備份就可以完成數(shù)據(jù)的備份。,所以關(guān)閉系統(tǒng)后,文件的恢復(fù)可以通過如下步驟得到實(shí)現(xiàn):重新進(jìn)入進(jìn)銷存系統(tǒng)→系統(tǒng)維護(hù)模塊→數(shù)據(jù)庫(kù)備份/恢復(fù)→單擊“數(shù)據(jù)恢復(fù)”→找到備份文件的路徑→單擊“確定”。 圖427 數(shù)據(jù)庫(kù)備份與恢復(fù) 圖428 數(shù)據(jù)庫(kù)清理系統(tǒng)數(shù)據(jù)清理這個(gè)窗體的實(shí)現(xiàn)主要對(duì)庫(kù)存商品信息表、往來單位信息表、進(jìn)貨表、銷售表、權(quán)限表等表的清理。通過if語句判斷要清理的表,調(diào)用公共類中的ClearTable方法完成表的清理工作。運(yùn)行的結(jié)果如圖428。5 總 結(jié)本課題“”采用Visual Studio 2010作為開發(fā)環(huán)境,選用SQL_2008數(shù)據(jù)庫(kù)管理平臺(tái),實(shí)現(xiàn)了進(jìn)銷存系統(tǒng)中基本的功能如進(jìn)貨管理、銷售管理、庫(kù)存管理,同時(shí)增加了基礎(chǔ)信息管理、系統(tǒng)維護(hù)以及一些輔助功能功能,把進(jìn)銷存功能融合到了一起。系統(tǒng)可以對(duì)進(jìn)貨進(jìn)行統(tǒng)計(jì),對(duì)銷售進(jìn)行排行,對(duì)庫(kù)存進(jìn)行盤點(diǎn)和上下限報(bào)警,還可以對(duì)進(jìn)貨和銷售進(jìn)行往來對(duì)賬,對(duì)所有的數(shù)據(jù)隨時(shí)備份和清理。我一直非常努力地學(xué)習(xí)應(yīng)用程序開發(fā)工具Visual Studio 2010和SQL_2008數(shù)據(jù)庫(kù)的相關(guān)知識(shí),同時(shí)認(rèn)真閱讀進(jìn)銷存系統(tǒng)的有關(guān)資料。由于是第一次開發(fā)系統(tǒng),在系統(tǒng)的設(shè)計(jì)過程中也遇到了不少問題,如:在編寫銷售成本清單窗體時(shí),因?yàn)楸容^多的表格數(shù)據(jù),每次數(shù)據(jù)的獲取都要定義、行列都要對(duì)應(yīng),所以要反復(fù)分析和實(shí)驗(yàn),以防止漏數(shù)據(jù)或是錯(cuò)數(shù)據(jù)的情況發(fā)生。由于時(shí)間有限,系統(tǒng)還存在一些不足之處,比如庫(kù)存模塊只能在用戶查看時(shí)上下限報(bào)警,還未能實(shí)現(xiàn)自動(dòng)報(bào)警。系統(tǒng)目前屬于單機(jī)版,即在同一臺(tái)主機(jī)上安裝了SQL_2008數(shù)據(jù)庫(kù)服務(wù)器和應(yīng)用程序軟件才能使用,還沒有實(shí)現(xiàn)在其他服務(wù)器或者是多用戶的同時(shí)操作。通過本次畢業(yè)設(shè)計(jì),提高了我的C編程能力,掌握了SQL_2008數(shù)據(jù)庫(kù)的一些基本操作。正是設(shè)計(jì)過程中遇到的困難讓我分析和解決問題的能力有了一定的提高。這次畢業(yè)設(shè)計(jì)讓我學(xué)到了許多東西,特別是程序編到無路可走的時(shí)候,我沒有放棄,而是通過圖書館、上網(wǎng)、去物聯(lián)網(wǎng)中心尋找新的的突破點(diǎn),這讓我在學(xué)習(xí)新知識(shí)的同時(shí)更磨練了我的意志,更深刻的體會(huì)到成功的喜悅。我想,在以后的學(xué)習(xí)和工作無論面對(duì)什么困難,我將更加有信心來面對(duì)。參考文獻(xiàn):[1] . 北京:機(jī)械工業(yè)出版社,2010[2] :中國(guó)發(fā)展出版社,2009[3] 苑旭,董明輝, C.NET開發(fā)Windows應(yīng)用. 北京:希望電子出版社,2005[4] 孫三才 張智凱 許薰尹.C.北京:中國(guó)青年出版社,2002[5] . 北京:機(jī)械工業(yè)出版社,2011[6] C.NET 開發(fā)技術(shù)原理與實(shí)踐教程. 北京:電子工業(yè)出版社,2008[7] (美). 北京:人民郵電出版社,2006[8] 李嵐,:職業(yè)技術(shù)學(xué)院計(jì)科系,2007[9] . 北京:航天航空大學(xué)出版社,2006[10] (美)Tim 4從入門到精通. 北京:清華大學(xué)出版社,2012[11] 、方法. 北京:高等教育出版社,2009[12] 代方霞, C2005 程序設(shè)計(jì)從入門到精通.北京:[13] (美) Server2008從入門到精通/微軟技術(shù)叢. 北京:清華大學(xué)出版社,2012[14] (美)程序設(shè)計(jì)語言 (原書第3版). 北京:機(jī)械工業(yè)出版社2009[15] C.:清華大學(xué)出版社,2002[16] (美)William Y. . 北京:電子工業(yè)出版社,2000[17] Studio 2010(C) Windows數(shù)據(jù)庫(kù)項(xiàng)目開發(fā). 北京:電子工業(yè)出版社,2012[18] 王小科,趙會(huì)東. 實(shí)戰(zhàn)突擊:C項(xiàng)目開發(fā)案例整合. 北京:電子工業(yè)出版社,2011[19] 、數(shù)據(jù)還原、故障急救. 北京:人民交通出版社,2005翻譯部分英文原文About C.NET C is a language, .Net is a platform, which support the use of C or VBdotNet to write code. In addition, C not only can be developed based on the .Net application, also can be developed based on the WinForm procedures, this is the difference between. If simple in concept, you can think as a working platform in general, it is a development environment of the substrate, providing you the development of Windows, Web, Mobile, XML... Etc. Application of a mon platform, if need to understand a bit deeper, then again to understand its operation mechanism that is help you to use it to develop .C is mainly used in the internet.The C programming languageC ( pronounced Csharp) programming language was created by Microsoft Corp Anders Hejlsberg and Scott Willamette led the development team specifically for the .NET platform design language, it can make programmers ported . Such grafts for the majority of programmers is easier, because the C from C, C++ and Java development, it uses three languages that the most outstanding characteristics, and adding its own characteristics. C is an event driven, fully object oriented visual programming language, we can use the integrated development environment to write C program. The use of IDE, the programmer can easily build, operation, testing and missioning of C program, this will be the development of a usable program time is reduced to I