畢業(yè)設(shè)計(jì)----超市進(jìn)銷存管理系統(tǒng)_第1頁(yè)
已閱讀1頁(yè),還剩38頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p><b>  超市進(jìn)銷存管理系統(tǒng)</b></p><p><b>  摘 要</b></p><p>  超市進(jìn)銷存管理系統(tǒng)是目前應(yīng)用于公司或是企業(yè)進(jìn)銷存管理系統(tǒng)中的典型代表,涉及到了商品或貨物管理中主要的6個(gè)方面,即進(jìn)貨、銷售、錢流、庫(kù)存、統(tǒng)計(jì)及查賬。通過(guò)一個(gè)典型超市進(jìn)銷存管理系統(tǒng)的例子,介紹了現(xiàn)代企業(yè)進(jìn)銷存管理信息化的一般解決

2、方案,其重要性不言而喻。但是,目前超市在具體的業(yè)務(wù)流程處理過(guò)程中仍然使用手工操作的方式來(lái)實(shí)施,不僅費(fèi)時(shí)、費(fèi)力、效率低下,而且無(wú)法達(dá)到理想的效果。</p><p>  本系統(tǒng)是根據(jù)企業(yè)的特點(diǎn),集進(jìn)、銷、存于一體,為企業(yè)量身定做的進(jìn)銷存管理軟件。在設(shè)計(jì)過(guò)程中最大限度滿足用戶的要求,因此,該系統(tǒng)具有較強(qiáng)的實(shí)用性和針對(duì)性。本系統(tǒng)界面友好,操作簡(jiǎn)單,可維護(hù)性強(qiáng),功能完備。本論文介紹了進(jìn)銷存管理信息系統(tǒng)開(kāi)發(fā)的全過(guò)程,詳細(xì)介紹

3、了系統(tǒng)的分析、系統(tǒng)的開(kāi)發(fā)與設(shè)計(jì)說(shuō)明等內(nèi)容,最后給出了系統(tǒng)的使用說(shuō)明和系統(tǒng)設(shè)計(jì)的心得體會(huì)。</p><p>  關(guān)鍵詞:超市進(jìn)銷存管理,數(shù)據(jù)庫(kù),統(tǒng)計(jì)</p><p>  PURCHASE, SALES AND INVENTORY MANAGEMENT</p><p>  SYSTEM SUPERMARKET</p><p><b>

4、  Abstract </b></p><p>  Purchase, Sales and Inventory Management System supermarket is used in companies or enterprises in the Purchase, Sales and Inventory Management System for a typical representat

5、ive of, relating to the goods or goods of the management of six major areas, namely, purchase, sale, money flow, inventories, statistics and auditing . Supermarkets, through a typical example of Invoicing Management Syst

6、em, introduced the modern enterprise management information Invoicing solution of the general, the impor</p><p>  KEY WORDS: The supermarket enters sells saves the management ,database ,statistics</p>

7、<p><b>  目錄</b></p><p><b>  摘 要I</b></p><p>  AbstractII</p><p><b>  第一章 引言1</b></p><p>  1.1問(wèn)題的提出1</p><p>

8、  1. 2課題的研究目的2</p><p>  1. 3課題的研究意義2</p><p>  第二章 系統(tǒng)分析3</p><p>  2.1 需求分析3</p><p>  2.2 可行性分析3</p><p>  第三章 總體設(shè)計(jì)5</p><p>  3.1 項(xiàng)目規(guī)

9、劃5</p><p>  3. 2 數(shù)據(jù)庫(kù)設(shè)計(jì)6</p><p>  第四章 系統(tǒng)設(shè)計(jì)9</p><p>  4.1 設(shè)計(jì)目標(biāo)9</p><p>  4.2 開(kāi)發(fā)及運(yùn)行環(huán)境9</p><p>  4.3 邏輯結(jié)構(gòu)設(shè)計(jì)9</p><p>  第五章 主要功能模塊設(shè)計(jì)17&

10、lt;/p><p>  5.1 主窗體設(shè)計(jì)17</p><p>  5.2 基礎(chǔ)窗體創(chuàng)建21</p><p>  5.3 數(shù)據(jù)模塊設(shè)計(jì)22</p><p>  5.4 庫(kù)存商品模塊設(shè)計(jì)24</p><p>  5.5 商品基本信息模塊設(shè)計(jì)27</p><p>  5.6 進(jìn)貨單

11、錄入模塊設(shè)計(jì)29</p><p><b>  總結(jié)33</b></p><p><b>  參考文獻(xiàn)34</b></p><p><b>  致謝36</b></p><p><b>  第一章 引言</b></p><p&g

12、t;  超市進(jìn)銷存管理系統(tǒng)是超市商品銷售及貨物管理的主要控制部分,直接影響銷售的方便性及管理的規(guī)范性。隨著信息時(shí)代的發(fā)展,對(duì)效率的要求日益提高,企業(yè)經(jīng)營(yíng)涉及進(jìn)、銷、存多個(gè)環(huán)節(jié),涉及商品種類繁多,業(yè)務(wù)量大,庫(kù)存管理復(fù)雜,使用手工管理已無(wú)法勝任,因而軟件控制銷售和管理已經(jīng)取代了傳統(tǒng)全手工方式。如何采用先進(jìn)的計(jì)算機(jī)系統(tǒng)管理進(jìn)貨、庫(kù)存、銷售等諸多環(huán)節(jié)也已成為趨勢(shì)及必然。超市具有自身的特點(diǎn):商品要求一般齊全,進(jìn)出貨關(guān)系較為簡(jiǎn)單,員工人數(shù)種類不多;

13、在軟件角度看,數(shù)據(jù)較少,對(duì)存儲(chǔ)和速度要求不高。但正由于員工較少,使用軟件控制成為必須。</p><p><b>  問(wèn)題的提出</b></p><p>  目前,大量的中小超市企業(yè)中,存在這樣的現(xiàn)象:分散的、不連貫的進(jìn)銷存信息使超市管理者或相關(guān)管理人員無(wú)法看到進(jìn)銷存的全部資料及相關(guān)報(bào)表,信息的分散使得產(chǎn)生的結(jié)果也無(wú)法保持一致和完整性,造成中小超市在進(jìn)銷存管理上存在如下

14、問(wèn)題:</p><p><b>  無(wú)法統(tǒng)計(jì)銷售信息?</b></p><p>  無(wú)法準(zhǔn)確全面掌握各業(yè)務(wù)進(jìn)展?fàn)顟B(tài)?</p><p>  對(duì)銷售人員工作過(guò)程掌握不夠?</p><p>  業(yè)務(wù)人員對(duì)產(chǎn)品沒(méi)有一定認(rèn)識(shí)?</p><p>  銷售及市場(chǎng)流程不清晰,流程變動(dòng)較大?</p>

15、<p>  對(duì)市場(chǎng)信息、競(jìng)爭(zhēng)的資訊掌握程度較不完善?</p><p>  無(wú)結(jié)構(gòu)統(tǒng)一銷售及市場(chǎng)情況報(bào)表?基本銷售及市場(chǎng)費(fèi)用統(tǒng)計(jì)較不完備?</p><p>  銷售人員辭職時(shí)失單現(xiàn)象嚴(yán)重?等等。</p><p>  加之,現(xiàn)在顧客的期望值越來(lái)越高,顧客需要更好的服務(wù)(產(chǎn)品及個(gè)性化服務(wù))。企業(yè)的競(jìng)爭(zhēng)已逐漸從產(chǎn)品的競(jìng)爭(zhēng)轉(zhuǎn)變?yōu)榉?wù)的競(jìng)爭(zhēng),因此中小企業(yè)要發(fā)展就必須需

16、要進(jìn)一步優(yōu)化業(yè)務(wù)流程以提高企業(yè)競(jìng)爭(zhēng)能力。因此,加強(qiáng)超市進(jìn)銷存管理是企業(yè)發(fā)展的必然,通過(guò)計(jì)算機(jī)來(lái)大量完成本來(lái)由工作人員手工完成的工作,真正達(dá)到合理和充分利用現(xiàn)有資源,減輕工作壓力。</p><p><b>  課題的研究目的</b></p><p>  研究該課題是為了通過(guò)對(duì)“超市進(jìn)銷存管理系統(tǒng)”的設(shè)計(jì)與實(shí)現(xiàn),熟悉這類的信息管理系統(tǒng)的開(kāi)發(fā)原理及流程。在設(shè)計(jì)過(guò)程,能夠深入

17、地理解面向?qū)ο笤O(shè)計(jì)方法的優(yōu)越性,獲得這些方面的相關(guān)經(jīng)驗(yàn)。對(duì)一個(gè)即將畢業(yè)的計(jì)算機(jī)專業(yè)本科生來(lái)說(shuō),又想在軟件行業(yè)領(lǐng)域里有所發(fā)展,研究并應(yīng)用面向?qū)ο笤O(shè)計(jì)方法是百益無(wú)一害的,可以使其走向社會(huì)后能夠快速地適應(yīng)行業(yè)需求。這正是本次設(shè)計(jì)的根本目的所在。</p><p><b>  課題的研究意義</b></p><p>  首先,該課題屬于管理信息系統(tǒng)范疇。而管理信息系統(tǒng)(Mana

18、gement Information System,簡(jiǎn)稱MIS)在現(xiàn)代社會(huì)已深入到各行各業(yè),是一個(gè)不斷發(fā)展的新學(xué)科,是由人和計(jì)算機(jī)設(shè)備或其他信息處理手段組成并用于管理信息的系統(tǒng)。再加上行業(yè)信息化的熱潮才剛剛開(kāi)始,特別是中小型企業(yè)的信息化建設(shè)步伐剛剛邁出第一步。管理信息系統(tǒng)的開(kāi)發(fā)的市場(chǎng)將是非常龐大的。這種需求對(duì)開(kāi)發(fā)人員在數(shù)量上和素質(zhì)上的要求也是非常迫切的。為了滿足市場(chǎng)的需求以及能在競(jìng)爭(zhēng)中取勝,系統(tǒng)設(shè)計(jì)人員就不僅僅是單純地滿足用戶對(duì)功能的要

19、求,還要從設(shè)計(jì)方法上來(lái)加以改進(jìn)。 其次,面向?qū)ο蠓椒ㄊ且环N非常實(shí)用的軟件開(kāi)發(fā)方法,它一出現(xiàn)就受到軟件技術(shù)人員的青睞,現(xiàn)在已經(jīng)成為計(jì)算機(jī)科學(xué)研究的一個(gè)重要領(lǐng)域,并逐漸成為軟件開(kāi)發(fā)的一種主要方法。面向?qū)ο蟮某绦蛟O(shè)計(jì)將數(shù)據(jù)及對(duì)數(shù)據(jù)的操作方法封裝在一起,作為一個(gè)互相依存、不可分離的整體。采用這種方法來(lái)設(shè)計(jì)系統(tǒng),可以增加系統(tǒng)的安全性。同時(shí)通過(guò)繼承與多態(tài)性,使程序具有很高的可重用性,使軟件的開(kāi)發(fā)和維護(hù)帶來(lái)了方便。由于面向?qū)ο蠓椒ǖ耐怀鰞?yōu)點(diǎn),

20、它才被廣大用戶所愛(ài)好。</p><p><b>  第二章 系統(tǒng)分析</b></p><p><b>  2.1 需求分析</b></p><p>  經(jīng)過(guò)對(duì)系統(tǒng)的業(yè)務(wù)流程和系統(tǒng)數(shù)據(jù)流程的調(diào)查,用戶對(duì)系統(tǒng)的功能需求如下:</p><p> ?、僖蟠斯芾碥浖?duì)庫(kù)存產(chǎn)品進(jìn)行資料管理和統(tǒng)計(jì),對(duì)產(chǎn)品

21、的進(jìn)貨單和產(chǎn)品的銷售單進(jìn)行錄入管理和統(tǒng)計(jì);</p><p> ?、谝蟠斯芾碥浖⒏鶕?jù)用戶的需要對(duì)進(jìn)貨、銷售、庫(kù)存情況進(jìn)行查詢,并能提供庫(kù)存短缺預(yù)警功能;</p><p> ?、垡蟠斯芾碥浖橛脩籼峁┵~號(hào)管理工具,以便用戶對(duì)賬號(hào)進(jìn)行管理,具體為添加用戶、刪除用戶、修改用戶密碼;</p><p> ?、芤蟠斯芾碥浖峁┢髽I(yè)人員管理,能夠?qū)ζ髽I(yè)員工的分類管理,新員

22、工的加入以及員工刪除,修改基本信息等功能;</p><p> ?、菀蟠斯芾碥浖峁?shù)據(jù)信息的備份和還原功能。</p><p>  對(duì)這些功能需求進(jìn)行分類,主要包含有以下幾種:進(jìn)貨管理模塊、庫(kù)存管理模塊、銷售管理模塊、員工管理模塊和系統(tǒng)模塊。</p><p>  除上述功能外,系統(tǒng)還需要有以下功能:</p><p>  要有良好的人機(jī)界面,并

23、提供換膚功能。</p><p>  支持多人操作,要求有較好的權(quán)限分配功能。</p><p>  在進(jìn)貨、退貨時(shí)存在一對(duì)多的關(guān)系,要求支持多行錄入功能。</p><p>  為了方便用戶查詢,要求支持多條件查詢。</p><p>  對(duì)于每種商品要求編號(hào)惟一,編號(hào)需要自動(dòng)生成。</p><p><b>  支

24、持多種報(bào)表打印。</b></p><p>  支持賬目的詳細(xì)內(nèi)容瀏覽。</p><p>  2.2 可行性分析</p><p>  開(kāi)發(fā)任何一個(gè)基于計(jì)算機(jī)的系統(tǒng),都會(huì)受到時(shí)間和資源上的限制。因此,在接受任何一個(gè)項(xiàng)目開(kāi)發(fā)任務(wù)之前,必須根據(jù)客戶可能提供的時(shí)間和資源條件進(jìn)行可行性分析,以減少項(xiàng)目開(kāi)發(fā)風(fēng)險(xiǎn),避免人力、物力和財(cái)力的浪費(fèi)。</p>&

25、lt;p>  本系統(tǒng)數(shù)據(jù)庫(kù)采用目前比較流行的Microsoft SQL Server,該數(shù)據(jù)庫(kù)系統(tǒng)在安全性、準(zhǔn)確性、運(yùn)行速度方面有絕對(duì)的優(yōu)勢(shì),并且處理數(shù)據(jù)庫(kù)量大,效率高;開(kāi)發(fā)工具采用Delphi7,Delphi7是目前應(yīng)用最廣泛的數(shù)據(jù)庫(kù)系統(tǒng)開(kāi)發(fā)工具,可以快速開(kāi)發(fā)Windows應(yīng)用程序。</p><p><b>  第三章 總體設(shè)計(jì)</b></p><p><

26、;b>  3.1 項(xiàng)目規(guī)劃</b></p><p>  超市進(jìn)銷存管理系統(tǒng)是一個(gè)典型的數(shù)據(jù)庫(kù)應(yīng)用程序,由登錄模塊、主界面、基本信息模塊、進(jìn)貨管理和銷售管理模塊、錢流管理模塊、庫(kù)存管理模塊、查賬模塊、統(tǒng)計(jì)分析模塊、系統(tǒng)維護(hù)模塊等組成。特規(guī)劃功能模塊如下:</p><p><b>  基本信息模塊</b></p><p>  基

27、本信息模塊主要實(shí)現(xiàn)庫(kù)存商品、內(nèi)部職員、往來(lái)單位、費(fèi)用類型等的管理。</p><p><b>  進(jìn)貨管理模塊</b></p><p>  進(jìn)貨管理模塊主要管理超市商品進(jìn)貨及退貨信息,支持多行錄入。</p><p><b>  銷售管理模塊</b></p><p>  銷售管理模塊主要管理超市商品銷售

28、及退貨信息,支持多行錄入。</p><p><b>  錢流管理模塊</b></p><p>  錢流管理模塊主要實(shí)現(xiàn)往來(lái)賬目的錄入和賬目的詳細(xì)信息瀏覽等功能。</p><p><b>  庫(kù)存管理模塊</b></p><p>  庫(kù)存管理模塊主要實(shí)現(xiàn)庫(kù)存貨品瀏覽、庫(kù)存盤(pán)點(diǎn)、庫(kù)存報(bào)警等功能。<

29、/p><p><b>  統(tǒng)計(jì)分析模塊</b></p><p>  統(tǒng)計(jì)分析模塊主要實(shí)現(xiàn)進(jìn)貨統(tǒng)計(jì)分析、銷售統(tǒng)計(jì)分析和成本分析等功能。</p><p><b>  查賬模塊</b></p><p>  查賬模塊主要實(shí)現(xiàn)與供應(yīng)商、代理商對(duì)賬、費(fèi)用支出、應(yīng)收應(yīng)付等功能。</p><p>

30、;<b>  系統(tǒng)維護(hù)模塊</b></p><p>  系統(tǒng)維護(hù)模塊的主要實(shí)現(xiàn)本單位管理、操作員設(shè)置、數(shù)據(jù)的備份和還原等功能。</p><p>  根據(jù)項(xiàng)目規(guī)劃,可畫(huà)出超市進(jìn)銷存管理系統(tǒng)的功能框圖,如圖3-1所示。</p><p>  圖3-1 系統(tǒng)功能模塊圖</p><p><b>  3.2數(shù)據(jù)庫(kù)設(shè)計(jì)<

31、;/b></p><p>  本系統(tǒng)根據(jù)上面的設(shè)計(jì)規(guī)劃出的主要實(shí)體有職員信息、進(jìn)貨、用戶、費(fèi)用、收款、進(jìn)貨退貨。</p><p>  各個(gè)實(shí)體的E-R圖分別如圖3-2至圖3-7所示。</p><p>  圖3-2 職員信息的E-R圖</p><p>  圖3-3 進(jìn)貨的E-R圖</p><p>  圖3-4用戶

32、的E-R圖</p><p>  圖3-5費(fèi)用的E-R圖</p><p>  圖3-6 進(jìn)貨退貨的E-R圖</p><p>  圖3-7收款的E-R圖</p><p>  實(shí)體與實(shí)體之間關(guān)系的E-R圖,如圖3-8所示。</p><p>  圖3-8 實(shí)體之間的E-R圖</p><p><b

33、>  第四章 系統(tǒng)設(shè)計(jì)</b></p><p><b>  4.1 設(shè)計(jì)目標(biāo)</b></p><p>  根據(jù)超市的需求和進(jìn)銷存管理的特點(diǎn),該系統(tǒng)實(shí)施后,應(yīng)達(dá)到以下目標(biāo):</p><p>  支持多行輸入,自動(dòng)生成編號(hào)。</p><p>  界面美觀友好、信息查詢靈活、方便、快捷、準(zhǔn)確。</p

34、><p>  強(qiáng)大的庫(kù)存預(yù)警功能,在意外中將損失降到最低。</p><p>  提高工作效率,降低成本。</p><p><b>  往來(lái)賬目詳細(xì)瀏覽。</b></p><p><b>  圖形化數(shù)據(jù)分析。</b></p><p>  對(duì)用戶輸入的數(shù)據(jù)進(jìn)行過(guò)濾,當(dāng)輸入有誤時(shí)提示用

35、戶。</p><p>  數(shù)據(jù)保密性強(qiáng),用戶對(duì)應(yīng)不同的操作級(jí)別。</p><p>  系統(tǒng)最大限度地實(shí)現(xiàn)了易安裝性、易維護(hù)性和易操作性。</p><p>  直接調(diào)用Word、Excel軟件。</p><p>  系統(tǒng)運(yùn)行穩(wěn)定、安全可靠。</p><p>  4.2 開(kāi)發(fā)及運(yùn)行環(huán)境</p><p&

36、gt;  系統(tǒng)開(kāi)發(fā)平臺(tái):Delphi 7.0。</p><p>  數(shù)據(jù)庫(kù)管理系統(tǒng)軟件:SQL Server 2000。</p><p>  運(yùn)行平臺(tái):Windows xp/ Windows 2000。</p><p>  分辨率:最佳效果1024*768。</p><p>  4.3 邏輯結(jié)構(gòu)設(shè)計(jì)</p><p>

37、  本系統(tǒng)數(shù)據(jù)庫(kù)采用SQL Server 2000數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)名稱為“db_EMS”。數(shù)據(jù)庫(kù)db_EMS中包含18個(gè)表。各個(gè)數(shù)據(jù)表的結(jié)構(gòu)如下所示。</p><p>  (1)職員信息表(tb_employ)</p><p>  職員信息表用來(lái)保存職員信息。職員信息表的結(jié)構(gòu)如表4-1所示。</p><p>  表4-1 職員信息表結(jié)構(gòu)</p>&l

38、t;p>  (2)進(jìn)貨主表(tb_warehouse_main)</p><p>  進(jìn)貨主表用來(lái)保存進(jìn)貨中主要和相同的信息。進(jìn)貨主表的結(jié)構(gòu)如表4-2所示。</p><p>  表4-2 進(jìn)貨主表結(jié)構(gòu)</p><p> ?。?)進(jìn)貨明細(xì)表(tb_warehouse_detailed)</p><p>  進(jìn)貨明細(xì)表用來(lái)保存進(jìn)貨中商品

39、的詳細(xì)信息。進(jìn)貨明細(xì)表結(jié)構(gòu)如表4-3所示。</p><p>  表4-3 進(jìn)貨明細(xì)表結(jié)構(gòu)</p><p>  (4)用戶權(quán)限表(tb_power)</p><p>  用戶權(quán)限表用來(lái)保存用戶權(quán)限設(shè)置信息。用戶權(quán)限表結(jié)構(gòu)如表4-4所示。</p><p>  表4-4 用戶權(quán)限表結(jié)構(gòu)</p><p> ?。?)費(fèi)用表(

40、tb_cf)</p><p>  費(fèi)用表用于記錄費(fèi)用信息。費(fèi)用表結(jié)構(gòu)如表4-5所示。</p><p>  表4-5 費(fèi)用表結(jié)構(gòu)</p><p>  (6)往來(lái)賬明細(xì)表(tb_currentaccount)</p><p>  往來(lái)賬明細(xì)表用于記錄往來(lái)單位的應(yīng)收、應(yīng)付賬目。往來(lái)賬明細(xì)表結(jié)構(gòu)如表4-6所示。</p><p&

41、gt;  表4-6 往來(lái)賬明細(xì)表結(jié)構(gòu)</p><p> ?。?)費(fèi)用類型表(tb_freetype)</p><p>  費(fèi)用類型表用于存儲(chǔ)費(fèi)用類型信息。費(fèi)用類型表表結(jié)構(gòu)如表4-7所示。</p><p>  表4-7 費(fèi)用類型表</p><p> ?。?)收款信息表(tb_gathering)</p><p>  

42、收款信息表用于保存收款信息。收款信息表結(jié)構(gòu)如表4-8所示。</p><p>  表4-8 收款信息表結(jié)構(gòu)</p><p> ?。?)付款信息表(tb_payment)</p><p>  付款信息表用于保存付款信息。付款表結(jié)構(gòu)如表4-9所示。</p><p>  表4-9 付款表結(jié)構(gòu)</p><p> ?。?0

43、)銷售退貨明細(xì)表(tb_resell_detailed)</p><p>  銷售退貨明細(xì)表用于保存銷售退貨的詳細(xì)信息。銷售退貨明細(xì)表結(jié)構(gòu)如表4-10所示。</p><p>  表4-10 銷售退貨明細(xì)表結(jié)構(gòu)</p><p> ?。?1)銷售退貨表(tb_resell_main)</p><p>  銷售退貨表用于保存銷售退貨。銷售退貨表

44、結(jié)構(gòu)如表4-11所示。</p><p>  表4-11 銷售退貨表結(jié)構(gòu)</p><p> ?。?2)進(jìn)貨退貨明細(xì)表(tb_rewarehouse_detailed)</p><p>  進(jìn)貨退貨明細(xì)表用于保存進(jìn)貨退貨詳細(xì)信息。進(jìn)貨退貨明細(xì)表結(jié)構(gòu)如表4-12所示。</p><p>  表4-12 進(jìn)貨退貨明細(xì)表</p>&l

45、t;p>  (13)進(jìn)貨退貨表(tb_rewarehouse_main)</p><p>  進(jìn)貨退貨表用于存儲(chǔ)進(jìn)貨退貨中主要的和相同的信息。進(jìn)貨退貨表結(jié)構(gòu)如表4-13所示。</p><p>  表4-13 退貨表</p><p> ?。?4)銷售明細(xì)表(tb_sell_detailed)</p><p>  銷售明細(xì)表用于保存銷售詳

46、細(xì)信息。銷售明細(xì)表結(jié)構(gòu)如表4-14所示。</p><p>  表4-14 銷售明細(xì)表</p><p> ?。?5)銷售表(tb_sell_main)</p><p>  銷售表用于保存銷售信息中主要的和相同的信息。銷售表結(jié)構(gòu)如表4-15所示。</p><p>  表4-15 銷售表結(jié)構(gòu)</p><p>  (16)

47、庫(kù)存商品信息表(tb_stock)</p><p>  庫(kù)存商品信息表用于保存庫(kù)存商品信息。庫(kù)存商品表結(jié)構(gòu)如表4-16所示。</p><p>  表4-16 庫(kù)存商品表結(jié)構(gòu) </p><p>  (17)本單位信息表(tb_unit)</p><p>  本單位信息表用于保存本單位的信息。本單位信息表結(jié)構(gòu)如表4-17所示。</p>

48、;<p>  表4-17 本單位信息表結(jié)構(gòu)</p><p> ?。?8)往來(lái)單位信息表(tb_units)</p><p>  往來(lái)單位信息表用于保存往來(lái)單位的信息。往來(lái)單位信息表結(jié)構(gòu)如表4-18所示。</p><p>  表4-18 往來(lái)單位信息表結(jié)構(gòu)</p><p>  第五章 主要功能模塊設(shè)計(jì)</p>

49、<p>  5.1 主窗體設(shè)計(jì)</p><p>  主窗體是程序的控制中心,其他模塊都是通過(guò)主窗體來(lái)調(diào)用,所以主窗體的界面要設(shè)計(jì)的美觀易操作。超市進(jìn)銷存管理系統(tǒng)主窗體運(yùn)行結(jié)果如圖5-1所示。</p><p>  圖5-1 主窗體運(yùn)行界面</p><p><b>  1.設(shè)計(jì)步驟</b></p><p> 

50、?。?)運(yùn)行Delphi會(huì)自動(dòng)創(chuàng)建一個(gè)窗體,設(shè)置該窗體為程序主窗體,命名為“F_zct”,設(shè)置窗體的Caption屬性為“超市進(jìn)銷存管理系統(tǒng)”;BorderStyle屬性為“bsDialog”;KeyPreview屬性為“True”。</p><p> ?。?)在“Additional”組件頁(yè)中點(diǎn)選“TActionManager”組件,添加到窗體上,命名為“ActionManage1”,雙擊該組件打開(kāi)“動(dòng)作編輯器

51、”,選擇“Toolbars”選項(xiàng)卡,單擊【New】按鈕添加“TActionToolBar”對(duì)象,命名為“ActionToolBar1”,如圖5-2所示。</p><p>  圖5-2 添加TActionToolBar對(duì)象</p><p> ?。?)選擇“Actions”選項(xiàng)卡,單擊【New Action】按鈕,添加“TAction”對(duì)象,并在“Object Inspector”窗口中設(shè)

52、置Caption屬性,如圖5-3所示。</p><p>  圖5-3 添加TAction對(duì)象</p><p>  (4)在窗體上點(diǎn)選ActionManager1組件,在“Object Inspector”窗口中,單擊ActionBars屬性右側(cè)的【…】按鈕,彈出如圖5-4所示的對(duì)話框。</p><p>  圖5-4 菜單欄設(shè)置界面1</p><

53、;p> ?。?)在彈出的對(duì)話框中點(diǎn)選“0-ActionBar->ActionTooBar1”,在“Object Inspector”窗口中,單擊Items屬性右側(cè)的【…】按鈕,在彈出的對(duì)話框中,單擊【Add New】按鈕添加菜單項(xiàng),并設(shè)置各個(gè)菜單項(xiàng)的Action屬性,如圖5-5所示。</p><p>  圖5-5 菜單欄設(shè)置界面2</p><p> ?。?)點(diǎn)選各菜單項(xiàng),在“O

54、bject Inspector”窗口中,單擊Items屬性右側(cè)的【…】按鈕,在彈出的對(duì)話框中設(shè)置子菜單項(xiàng)。</p><p> ?。?)在“Win32”組件頁(yè)中點(diǎn)選“TStatusBar”組件,添加到窗體上,命名為“StatusBar1”。TStatusBar組件用于顯示狀態(tài)信息,雙擊StatusBar1組件,在彈出的對(duì)話框中單擊【Add New】按鈕添加面板。在“Object Inspector”窗口中設(shè)置面板的

55、Width屬性和Caption屬性,如圖5-6所示。</p><p>  圖5-6 面板編輯器界面</p><p> ?。?)在“Standard”組件頁(yè)中點(diǎn)選“TPanel”組件。在窗體上添加3個(gè)TPanel組件,分別命名為“Panel3”、“Panel1”、“Panel4”,分別設(shè)置其Align屬性為“alTop”、“alLeft”、“alClient”。</p>&l

56、t;p> ?。?)在“Additional”組件頁(yè)中點(diǎn)選“TImage”組件,分別添加到Panel3組件和Panel1組件上,并在“Object Inspector”窗口中通過(guò)Picture屬性為其加載圖片。當(dāng)用戶單擊主窗體左側(cè)的按鈕時(shí),在右則將彈出相應(yīng)的功能圖片。在右側(cè)的面板中添加多個(gè)TPanel組件,并在相應(yīng)的TPanel組件上添加TImage組件,并為T(mén)Image組件加載圖片。</p><p> ?。?/p>

57、10)在“Additional”組件頁(yè)中點(diǎn)選“TSpeedButton”組件,將TSpeedButton組件添加到圖片相應(yīng)的位置,設(shè)置其Flat屬性為“True”;Caption屬性為空。</p><p><b>  2.程序相關(guān)代碼</b></p><p>  在窗體的OnKeyDown事件處理過(guò)程中設(shè)置用戶按下〈F5〉鍵時(shí)關(guān)閉窗體。代碼如下:</p>

58、<p>  procedure TF_zct.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);</p><p><b>  begin</b></p><p>  F_zct.KeyPreview:=True; //設(shè)置窗體先接受鍵盤(pán)按下事件</p><

59、;p>  if key=vk_F5 then Close;</p><p><b>  end;</b></p><p>  在窗體的OnCloseQuery事件處理過(guò)程中讓用戶確認(rèn)是否關(guān)閉窗體。代碼如下:</p><p>  procedure TF_zct.FormCloseQuery(Sender: TObject; var Can

60、Close: Boolean);</p><p><b>  begin</b></p><p>  if Application.MessageBox('是否退出系統(tǒng)?','提示',mb_yesno)=id_no then</p><p>  CanClose:=False;</p><p&

61、gt;<b>  end;</b></p><p>  在窗體右側(cè)按鈕的單擊事件處理過(guò)程中,設(shè)置相應(yīng)的面板在其他面板前面。代碼如下:</p><p>  procedure TF_zct.SpeedButton1Click(Sender: TObject);</p><p><b>  begin</b></p>

62、;<p>  kumanage.BringToFront; //設(shè)置面板在最前面</p><p><b>  end;</b></p><p>  在窗體右側(cè)的功能按鈕單擊事件處理過(guò)程中,動(dòng)態(tài)創(chuàng)建相應(yīng)的功能窗體。動(dòng)態(tài)創(chuàng)建“庫(kù)存狀況窗體”代碼如下:</p><p>  procedur

63、e TF_zct.SpeedButton9Click(Sender: TObject);</p><p><b>  begin</b></p><p>  Application.CreateForm(TF_kczk, F_kczk); //創(chuàng)建窗體</p><p>  F_kczk.ShowModal;

64、 //顯示窗體</p><p>  F_kczk.Free; //釋放窗體</p><p><b>  end;</b></p><p>  在窗體的OnShow事件處理過(guò)程中,添加TCheckBox組件到面板中。指定TCheckBox組件的父對(duì)象并設(shè)置該

65、組件的大小和位置。代碼如下:</p><p>  with statusbar1 do</p><p><b>  begin</b></p><p>  checkbox1.Parent:=statusbar1;</p><p>  checkbox1.Top:=4;</p><p>  che

66、ckbox1.Height:=Height-4;</p><p>  checkbox1.Width:=75;</p><p>  checkbox1.Left:=Panels[0].Width+Panels[1].Width+Panels[2].Width+10;</p><p>  checkbox1.Visible:=true;</p><

67、p><b>  end;</b></p><p>  5.2 基礎(chǔ)窗體創(chuàng)建</p><p>  創(chuàng)建基礎(chǔ)窗體主要為了提高開(kāi)發(fā)速度和代碼的利用率,從基礎(chǔ)窗體繼承的子窗體具有基礎(chǔ)窗體的全部功能。基礎(chǔ)窗體如圖5-7所示。</p><p><b>  圖5-7 基礎(chǔ)窗體</b></p><p>  

68、1.基礎(chǔ)窗體設(shè)計(jì)步驟</p><p>  添加一個(gè)新窗體,命名為“F_base”,設(shè)置其BorderStyle屬性為“bsDialog”;KeyPreview屬性為“True”。</p><p><b>  2.程序相關(guān)代碼</b></p><p>  在窗體的OnKeyPress事件處理過(guò)程中設(shè)置〈Enter〉鍵代替〈Tab〉鍵。代碼如下:&

69、lt;/p><p>  procedure TF_base.FormKeyPress(Sender: TObject; var Key: Char);</p><p><b>  begin</b></p><p>  if Key=#13 then</p><p>  perform(WM_NEXTDLGCTL,0,0);

70、</p><p><b>  end;</b></p><p>  5.3 數(shù)據(jù)模塊設(shè)計(jì)</p><p>  數(shù)據(jù)模塊窗體主要功能是統(tǒng)一管理數(shù)據(jù)組件。數(shù)據(jù)模塊如圖5-8所示。</p><p><b>  圖5-8 數(shù)據(jù)模塊</b></p><p><b>  1.

71、數(shù)據(jù)模塊創(chuàng)建</b></p><p> ?。?)在Delphi中選擇“File”/“New”/“Data Module”菜單項(xiàng),新建一個(gè)數(shù)據(jù)模塊,命名為“F_dm”。</p><p>  (2)在“ADO”組件頁(yè)中點(diǎn)選“TADOConnection”組件,添加到窗體上,命名為“ADOConnection1”。TADOConnection組件用于連接數(shù)據(jù)庫(kù),其他數(shù)據(jù)庫(kù)組件通過(guò)它連

72、接數(shù)據(jù)庫(kù)。</p><p>  (3)點(diǎn)選ADOConnection1組件,在“Object Inspector”窗口中,單擊ConnectionString屬性右側(cè)的【…】按鈕,彈出對(duì)話框,如圖5-9所示。</p><p>  圖5-9 設(shè)置連接字符串界面</p><p> ?。?)單擊【Build】按鈕,在彈出的對(duì)話框中 “提供程序”選項(xiàng)卡中選擇希望連接的數(shù)據(jù)

73、所需的驅(qū)動(dòng)程序,如圖5-10所示。</p><p>  圖5-10 驅(qū)動(dòng)程序選擇界面</p><p> ?。?)選擇“連接”選項(xiàng)卡,設(shè)置數(shù)據(jù)庫(kù)連接相關(guān)設(shè)置,如圖5-11所示。</p><p>  圖5-11 數(shù)據(jù)庫(kù)連接設(shè)置界面</p><p>  (6)單擊【測(cè)試連接】按鈕,如果連接成功,則提示成功,單擊【確定】按鈕完成數(shù)據(jù)庫(kù)的連接。<

74、;/p><p> ?。?)在窗體上添加TADOQuery組件和TADOCommand組件,設(shè)置它們的Connection屬性為“ADOConnection1”。</p><p>  5.4 庫(kù)存商品模塊設(shè)計(jì)</p><p>  庫(kù)存商品模塊主要實(shí)現(xiàn)瀏覽、添加、修改、刪除、查詢、打印商品信息等功能。庫(kù)存商品模塊運(yùn)行結(jié)果如圖5-12所示。</p><p

75、>  圖5-12 庫(kù)存商品模塊運(yùn)行界面</p><p><b>  1.窗體設(shè)計(jì)步驟</b></p><p> ?。?)選擇“File”/“New”/“Other”菜單項(xiàng),打開(kāi)“New Items”對(duì)話框,選擇“ima”選項(xiàng)卡,點(diǎn)選“F_base”選項(xiàng),以繼承方式使用該窗體。單擊【OK】按鈕添加一個(gè)新窗體,命名為“F_kcsp”,設(shè)置Caption屬性為“庫(kù)存

76、商品”。</p><p>  (2)在“Win32”組件頁(yè)中點(diǎn)選“TToolBar”組件,添加到窗體上。在該組件上添加TSpeedButton組件,在“Object Inspector”窗口中通過(guò)Caption屬性為其設(shè)置相應(yīng)的文本,通過(guò)Glyph屬性為其指定圖標(biāo)。右鍵單擊TToolBar組件,在彈出的菜單中選擇“New Button”菜單項(xiàng),并設(shè)置其Style屬性為“tbsDivider”。</p>

77、<p> ?。?)在窗體上添加TPanel組件,命名為“Panel1”,設(shè)置Align屬性為“alBottom”;Visable屬性為“False”。在TPanel組件上添加TGroupBox組件,設(shè)置其Caption屬性為“查詢條件”。在“Standard”組件頁(yè)中找到TLabel組件、TEdit組件和TComboBox組件,添加到TGroupBox組件上。點(diǎn)選TComboBox組件,在“Object Inspector

78、”窗口中,單擊Items屬性,在彈出的對(duì)話框中添加項(xiàng)目,如圖5-13所示。</p><p>  圖5-13 添加項(xiàng)目界面</p><p> ?。?)在“ADO”組件頁(yè)中點(diǎn)選“TADOQuery”組件,添加到窗體上,命名為“ADOQuery1”。在“Data Access”組件頁(yè)中點(diǎn)選“TDataSource”組件,添加到窗體上,命名為“DataSource1”。設(shè)置ADOQuery1組件

79、的Connection屬性為“F_dm.ADOConnection1”;設(shè)置DataSource1組件的DataSet屬性為“ADOQuery1”。</p><p>  (5)在“Data Controls”組件頁(yè)中點(diǎn)選“TDBGrid”組件,添加到窗體上,命名為“DBGrid1”,設(shè)置其Align屬性為“alClient”;DataSource屬性為“DataSource1”,雙擊DBGrid1組件,在彈出的列

80、編輯器中設(shè)置字段標(biāo)題,如圖5-14所示。</p><p>  圖5-14 為T(mén)DBGrid組件設(shè)置列標(biāo)題</p><p> ?。?)在“Rave”組件頁(yè)中點(diǎn)選“TRvDataSetConnection”組件、“TRvProject”組件,添加到窗體上,分別命名為“RvDataSetConnection1”、“RvProject1”,設(shè)置RvDataSetConnection1組件的Dat

81、aSet屬性為“ADOQuery1”。設(shè)置RvProject1組件的ProjectFile屬性為制作的報(bào)表文件。</p><p><b>  2.程序相關(guān)代碼</b></p><p>  在窗體的OnShow事件處理過(guò)程中打開(kāi)庫(kù)存商品表。代碼如下:</p><p>  procedure TF_kcsp.FormShow(Sender: TOb

82、ject);</p><p><b>  begin</b></p><p>  inherited; //由于窗體是繼承自基窗體該代碼自動(dòng)生成。意為調(diào)用父類的同名方法。</p><p>  change:=False;</p><p>  with adoquery1 do</p><p&

83、gt;<b>  begin</b></p><p><b>  Close;</b></p><p>  SQL.Clear;</p><p>  SQL.Add('Select * from tb_stock order by tradecode asc'); //排序</p>&

84、lt;p><b>  Open;</b></p><p><b>  end;</b></p><p><b>  end;</b></p><p>  在【添加】按鈕的單擊事件處理過(guò)程中動(dòng)態(tài)創(chuàng)建添加庫(kù)存商品基本信息窗體。代碼如下:</p><p>  procedure

85、 TF_kcsp.SpeedButton4Click(Sender: TObject);</p><p><b>  begin</b></p><p>  inherited; //調(diào)用父類的同名方法</p><p>  Application.CreateForm(TF_sbjbcx, F_sbjbcx); //創(chuàng)建窗體</

86、p><p>  F_sbjbcx.ShowModal; //顯示窗體</p><p>  F_sbjbcx.Free; //釋放窗體</p><p><b>  end;</b></p><p>  在【刪除】按鈕的單擊事件處理過(guò)程中當(dāng)用戶確認(rèn)刪

87、除后刪除數(shù)據(jù)。代碼如下:</p><p>  procedure TF_kcsp.SpeedButton2Click(Sender: TObject);</p><p><b>  begin</b></p><p>  inherited; //調(diào)用父類的同名方法</p><p><b>  try&l

88、t;/b></p><p>  if Application.MessageBox('是否刪除當(dāng)前記錄?','提示',mb_yesno)=id_yes then</p><p>  Adoquery1.Delete;</p><p><b>  except</b></p><p>

89、  Application.MessageBox('不能刪除','提示',mb_yesno);</p><p><b>  end;</b></p><p><b>  end;</b></p><p>  在【查詢】按鈕的單擊事件處理過(guò)程中動(dòng)態(tài)設(shè)置查詢條件。代碼如下:</p>

90、<p>  procedure TF_kcsp.SpeedButton1Click(Sender: TObject);</p><p><b>  var</b></p><p>  searchwhat:string;</p><p><b>  begin</b></p><p> 

91、 inherited; //調(diào)用父類的同名方法</p><p>  Panel1.Visible:=not(Panel1.Visible);</p><p>  if Panel1.Visible=False then</p><p><b>  begin</b></p><p>  searchwhat:=&#

92、39;';</p><p>  case combobox1.ItemIndex of //設(shè)置要查找的字段</p><p>  0: searchwhat:='tradecode';</p><p>  1: searchwhat:='fullnamed';</p><p>  2: se

93、archwhat:='name';</p><p>  3: searchwhat:='shortcode';</p><p><b>  end;</b></p><p><b>  try</b></p><p>  with ADoquery1 do</p

94、><p><b>  begin</b></p><p><b>  Close;</b></p><p>  SQL.Clear;</p><p>  SQL.Add('select * from tb_stock '); //寫(xiě)SQL語(yǔ)句</p><p

95、>  SQL.Add('where '+''+searchwhat+''+' like :a order by tradecode');</p><p>  parameters.ParamByName('a').Value:='%'+Trim(Edit1.Text)+'%';</p>

96、<p><b>  open;</b></p><p><b>  end;</b></p><p>  if Application.MessageBox('是否刷新表?','提示',mb_yesno)=Id_yes then</p><p>  with ADoquery1

97、 do</p><p><b>  begin</b></p><p><b>  Close;</b></p><p>  SQL.Clear;</p><p>  SQL.Add('select * from tb_stock order by tradecode'); //

98、刷新</p><p><b>  open;</b></p><p><b>  end;</b></p><p><b>  except</b></p><p>  Application.MessageBox('請(qǐng)正確輸入條件','提示',

99、mb_ok);</p><p><b>  end;</b></p><p><b>  end;</b></p><p><b>  end;</b></p><p>  在【打印】按鈕的單擊事件處理過(guò)程中指定報(bào)表文件、預(yù)覽報(bào)表。代碼如下:</p><p&

100、gt;  procedure TF_kcsp.SpeedButton6Click(Sender: TObject);</p><p><b>  begin</b></p><p>  inherited; //調(diào)用父類的同名方法</p><p><b>  //指定報(bào)表文件</b></p><

101、;p>  Rvproject1.ProjectFile:=ExtractFilePath(Application.ExeName)+'stockprint.rav'; </p><p>  RvProject1.Execute; //預(yù)覽報(bào)表</p><p><b>  end;</b></p><p>  5.5

102、商品基本信息模塊設(shè)計(jì)</p><p>  商品基本信息模塊主要功能是錄入商品基本信息,便于其他窗體使用,在該模塊中可以設(shè)置商品的報(bào)警上下限。商品基本信息模塊運(yùn)行結(jié)果如圖5-15所示。</p><p>  圖5-15 商品基本信息模塊運(yùn)行界面</p><p><b>  1.窗體設(shè)計(jì)步驟</b></p><p> ?。?

103、)從基礎(chǔ)窗體繼承一個(gè)窗體,命名為“F_sbjbcx”,設(shè)置其Caption屬性為“商品基本信息”。</p><p> ?。?)在“Additional”組件頁(yè)中點(diǎn)選“TBevel”組件,為每一類數(shù)據(jù)添加邊框。</p><p> ?。?)在“Additional”組件頁(yè)中點(diǎn)選“TGroupBox”組件,添加到窗體上,命名為“GroupBox1”,設(shè)置其Caption屬性為“輸入報(bào)警值----

104、-請(qǐng)輸入大于0的數(shù) 0為不報(bào)警”。在GroupBox1組件上添加2個(gè)TLabel組件和2個(gè)TEdit組件。分別設(shè)置TLabel組件的Caption屬性為“商品報(bào)警上限:”、“商品報(bào)警下限:”。</p><p> ?。?)在窗體上添加TLabel組件和TEdit組件,在“Additional”組件頁(yè)中點(diǎn)選“TBitBtn”組件,添加到窗體上,分別命名為“BitBtn1”、“BitBtn2”,設(shè)置BitBtn1組

105、件的Caption屬性為“保存”,通過(guò)Glyph屬性為其指定圖標(biāo)。設(shè)置BitBtn2組件的Caption屬性為“退出”,通過(guò)Glyph屬性為其指定圖標(biāo)。</p><p><b>  2.程序相關(guān)代碼</b></p><p>  在窗體的OnShow事件處理過(guò)程中如果為修改,將要修改的記錄顯示在窗體的編輯框中。代碼如下:</p><p>  pr

106、ocedure TF_sbjbcx.FormShow(Sender: TObject);</p><p><b>  begin</b></p><p>  inherited; //調(diào)用父類的同名方法</p><p><b>  try</b></p><p>  if F_kcsp.ch

107、ange=True then //判斷是否為修改</p><p>  with F_kcsp.ADOQuery1 do</p><p><b>  begin</b></p><p>  Edit1.Text:=fieldbyname('fullnamed').AsString;</p><p>  

108、Edit2.Text:=fieldbyname('tradecode').AsString;</p><p>  Edit3.Text:=fieldbyname('name').AsString;</p><p>  Edit4.Text:=fieldbyname('type').AsString;</p><p> 

109、 Edit5.Text:=fieldbyname('standard').AsString;</p><p>  Edit6.Text:=fieldbyname('unit').AsString;</p><p>  Edit7.Text:=fieldbyname('produce').AsString;</p><p&g

110、t;  Edit8.Text:=fieldbyname('provideinf').AsString;</p><p>  Edit9.Text:=fieldbyname('memo').AsString;</p><p>  Edit10.Text:=inttostr(fieldbyname('upperlimit').AsInteger)

111、;</p><p>  Edit11.Text:=inttostr(fieldbyname('lowerlimit').AsInteger);</p><p><b>  end</b></p><p><b>  else</b></p><p><b>  begin&

112、lt;/b></p><p>  F_kcsp.getspbh(sender); //如果為添加操作調(diào)用過(guò)程getspbh得到編號(hào)</p><p>  Edit2.Text:=F_kcsp.spbh;</p><p><b>  end;</b></p><p><b>  except</b&

113、gt;</p><p><b>  end;</b></p><p><b>  end;</b></p><p>  調(diào)用getspbh過(guò)程得到商品編號(hào)。getspbh過(guò)程完整代碼如下:</p><p>  procedure TF_kcsp.getspbh(sender:Tobject);

114、 //得到商品編號(hào)</p><p><b>  begin</b></p><p>  adoquery1.Last;</p><p>  if adoquery1.RecordCount=0 then</p><p>  spbh:='T'+formatfloat('00000',1)

115、 //格式化編號(hào)</p><p><b>  else</b></p><p>  spbh:='T'+Formatfloat('00000',strtoint(copy(adoquery1.Fields[0].AsString,2,5))+1);</p><p><b>  end;</b>

116、;</p><p>  5.6 進(jìn)貨單錄入模塊設(shè)計(jì)</p><p>  進(jìn)貨單錄入窗體主要功能是錄入進(jìn)貨的相關(guān)信息,在該模塊中支持多行錄入,可以調(diào)用其他信息提示窗體。進(jìn)貨單錄入模塊運(yùn)行結(jié)果如圖5-16所示。</p><p>  圖5-16 進(jìn)貨單錄入模塊運(yùn)行界面</p><p><b>  1.窗體設(shè)計(jì)步驟</b>&l

117、t;/p><p> ?。?)從基礎(chǔ)窗體繼承一個(gè)窗體,命名為“F_jhd”,設(shè)置其Caption屬性為“進(jìn)貨單錄入”。</p><p> ?。?)在窗體上添加TLabel組件、TEdit組件、TDateTimePicker組件,用于輸入信息。在“Additional”組件頁(yè)中點(diǎn)選“TStringGrid”組件,添加到窗體上,命名為“StringGrid1”。設(shè)置StringGrid1組件的Row

118、Count屬性為“10”;ColCount屬性為“10”。</p><p> ?。?)在窗體上添加TSpeedButton組件,通過(guò)Glyph屬性為其指定圖標(biāo)。添加TBitBtn組件,用于完成“保存”、“取消”功能。</p><p>  (4)在窗體上添加TPanel組件,命名為“Panel1”,設(shè)置其Caption屬性為空。用于顯示統(tǒng)計(jì)應(yīng)付金額。</p><p>

119、 ?。?)在窗體上添加TADOQuery組件,命名為“ADOQuery1”,設(shè)置其Connection屬性為“F_dm.ADOConnection1”。</p><p><b>  2.程序相關(guān)代碼</b></p><p>  在窗體的OnShow事件處理過(guò)程中初始化相關(guān)信息。代碼如下:</p><p>  procedure TF_jhd.F

120、ormShow(Sender: TObject);</p><p><b>  begin</b></p><p>  inherited;</p><p>  F_zct.wf:=1; //窗體標(biāo)記</p><p>  DateTimePicker1.Dat

121、e:=now(); //初始化為當(dāng)天日期</p><p>  with F_jhd.StringGrid1 do //設(shè)置列標(biāo)題</p><p><b>  begin</b></p><p>  Cells[1,0]:='商品編號(hào)';</p><

122、;p>  Cells[2,0]:='商品全稱';</p><p>  Cells[3,0]:='商品型號(hào)';</p><p>  Cells[4,0]:='商品規(guī)格';</p><p>  Cells[5,0]:='單位';</p><p>  Cells[6,0]:=&#

123、39;產(chǎn)地';</p><p>  Cells[7,0]:='數(shù)量';</p><p>  Cells[8,0]:='進(jìn)貨價(jià)';</p><p>  Cells[9,0]:='金額';</p><p><b>  end;</b></p><p&

124、gt;  with adoquery1 do</p><p><b>  begin</b></p><p><b>  close;</b></p><p>  SQl.Clear;</p><p>  SQl.Add('select * from tb_warehouse_main

溫馨提示

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

評(píng)論

0/150

提交評(píng)論