版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、前言貨物管理是一般工業(yè)和商業(yè)企業(yè)生產(chǎn)管理的一個重要方面。要對基礎(chǔ)貨物信息管理、貨物調(diào)配等信息進行全面監(jiān)控。貨物入庫首先需要登記貨物的基本信息,包括貨物的種類、名稱、型號、單位、單價等,然后登記貨物入庫信息,包括貨物的基本信息、入庫地點、入庫人、經(jīng)辦人、數(shù)量等,出庫貨物需要登記出庫信息,包括貨物基本信息、出庫地點、出庫人、經(jīng)辦人、數(shù)量等,根據(jù)貨物出入庫流程一體化,獲取各種商品的余額信息,方便后續(xù)工作。因此,貨物管理系統(tǒng)需要記錄貨物流通的全過程。第一章 簡介隨著經(jīng)濟的發(fā)展,市場的國際一體化,市場的多變性,競爭的殘酷,企業(yè)經(jīng)營的艱難,企業(yè)主越來越意識到經(jīng)營好企業(yè)的艱辛。對于一個大企業(yè)來說,可能遇到的
2、問題是設(shè)備老舊、包袱重、體制死板、管理混亂,產(chǎn)品在市場上的競爭力越來越差。 ERP的出現(xiàn)就是為了解決這些問題。什么是ERP?值得單位花這么多錢、時間、精力去實施。事實上, ERP是一套思想,一套以企業(yè)系統(tǒng)成本最低、利潤最高為目標(biāo),適應(yīng)新經(jīng)濟運行特點的過程管理思想。它的實體是一組滿足上述許多條件的軟件。因此,開發(fā)一套完整的庫存管理系統(tǒng),對于提高倉儲部門的效率、降低企業(yè)的成本、增強企業(yè)的競爭力具有重要意義。至此,本文使用Power Builder 8.0作為前端開發(fā)語言,SQL Server 2000作為后端數(shù)據(jù)庫,開發(fā)了一個簡單的庫存管理子系統(tǒng)。文中介紹了庫存管理系統(tǒng)的特點和重要性,并結(jié)合企業(yè)實
3、際工作對本項目的設(shè)計、技術(shù)實現(xiàn)和編程方法進行了詳細(xì)說明。1.1 學(xué)科背景隨著經(jīng)濟全球化競爭的加劇和信息流與物流的高度融合,對企業(yè)資源的要求也越來越高,無論是傳統(tǒng)的MRP(物料需求計劃)、MRPII(制造資源計劃),還是現(xiàn)在的流行的ERP(企業(yè)資源計劃)和TEP(Total Enterprise Planning),庫存管理是非常重要的基礎(chǔ)部分。因為對于企業(yè)的決策層來說,如果庫存居高不下,倉庫管理混亂,他們會很頭疼,那么由此造成的企業(yè)資源浪費,產(chǎn)品制造成本高,企業(yè)經(jīng)營不暢會導(dǎo)致到企業(yè)競爭。減少能源和可持續(xù)發(fā)展能力是他們更關(guān)心的問題。因此,合理管理倉庫一直是企業(yè)關(guān)注的熱點。庫存管理也是管理者和理論
4、研究者經(jīng)常討論的話題,其重要性怎么強調(diào)都不為過。隨著庫存管理理論的進一步發(fā)展和信息技術(shù)的進步,如何在信息技術(shù)充分發(fā)達的今天更好地進行庫存管理是我們的重要任務(wù)之一1.2 庫存管理研究的目的和意義隨著我國改革開放的不斷深入和我國加入世貿(mào)組織的時間不長,各類企業(yè)和事業(yè)都面臨著前所未有的機遇和挑戰(zhàn)。這就要求企業(yè)在日益激烈的市場競爭中,及時、準(zhǔn)確、全面地了解市場信息,并根據(jù)企業(yè)的具體實際情況迅速做出反應(yīng)。如根據(jù)倉儲情況調(diào)整供應(yīng)、采購等。同時,在當(dāng)前市場經(jīng)濟的推動下,傳統(tǒng)的計劃經(jīng)濟模式已經(jīng)被“一切圍繞市場、一切源于市場、一切服務(wù)于市場”的模式所取代。信息交換的速度使得采購和銷售成本有更大的下降空間,這給這
5、個環(huán)節(jié)的庫存管理帶來了巨大的挑戰(zhàn)。1.2.1企業(yè)信息化建設(shè)的需要信息技術(shù)的發(fā)展給企業(yè)帶來了機遇,也帶來了巨大的壓力。在知識經(jīng)濟時代,每個企業(yè)的發(fā)展機會,無論大小,都越來越趨于平等。面對海量的信息,如何為企業(yè)使用,如何構(gòu)建自己的信息網(wǎng)絡(luò)資源,如何將企業(yè)的資源管理延伸到企業(yè)外部的整個供應(yīng)鏈,成為亟待思考的問題。近年來,全球信息技術(shù)發(fā)展加快,世界各國信息化形勢突飛猛進,人類正在進入知識經(jīng)濟時代。全社會對知識經(jīng)濟的廣泛研究和探討,極大地豐富和拓展了信息化的內(nèi)涵,為信息產(chǎn)業(yè)和信息化的進一步發(fā)展奠定了理論和實踐基礎(chǔ)。當(dāng)前,信息化帶來的技術(shù)創(chuàng)新、商業(yè)模式轉(zhuǎn)型和新的資本市場,極大地推動了社會生產(chǎn)力的發(fā)展??葱?/p>
6、勢,黨的十五屆五中全會抓緊提出“以信息化帶動工業(yè)化,發(fā)揮后發(fā)優(yōu)勢,實現(xiàn)跨越式發(fā)展”的宏偉目標(biāo)。社會生產(chǎn)力的發(fā)展”。那么,什么是企業(yè)信息化建設(shè)? ?準(zhǔn)確地說,企業(yè)的信息化建設(shè),是指運用先進成熟的管理思想和方法,依托現(xiàn)代電子信息技術(shù),對企業(yè)生產(chǎn)經(jīng)營中的管理流程進行全方位的分析和改進。企業(yè),重新整合資源,提高整合資源。提高效率和效益,增強企業(yè)競爭力的過程。這不是一般意義上的新技術(shù)的應(yīng)用和創(chuàng)新,而是更高層次的新管理革命。面對中國加入世貿(mào)組織時間不長,企業(yè)將不得不面對全球的競爭,企業(yè)如何才能抓住巨大的市場機遇?企業(yè)如何應(yīng)對生存和發(fā)展的嚴(yán)峻挑戰(zhàn)?這些都是每個勇敢的企業(yè)家都應(yīng)該思考、關(guān)注和解決的重要問題。企
7、業(yè)信息化建設(shè)將是解決這些問題的有效途徑。因此,無論從世界競爭的角度,還是從企業(yè)自身的發(fā)展來看,信息化建設(shè)都必然會在企業(yè)管理上發(fā)生革命和飛躍。推進信息化有利于加快發(fā)展和完善我國社會主義市場經(jīng)濟體制,加快我國產(chǎn)業(yè)結(jié)構(gòu)調(diào)整優(yōu)化升級,加快提高國民經(jīng)濟運行質(zhì)量。為此,我國顯然不能走發(fā)達國家“先工業(yè)化、后信息化”的老路,而應(yīng)充分發(fā)揮后發(fā)優(yōu)勢,走工業(yè)化與信息化相結(jié)合的發(fā)展道路,實現(xiàn)“發(fā)展”。國民經(jīng)濟”的起點較高??缭绞桨l(fā)展,開展企業(yè)信息化建設(shè)。1.2.2庫存管理的意義成本競爭是現(xiàn)代競爭的有效手段。對于經(jīng)營者來說,增加銷量或者降低成本可以擴大利潤,而增加利潤的最佳途徑之一就是做好庫存管理,也就是現(xiàn)代商人所說的
8、庫存。要走的路。由于存貨資產(chǎn)占各企業(yè)總資產(chǎn)的比重極為樂觀,適當(dāng)?shù)墓芾韺ζ髽I(yè)利益的提高影響很大。一方面,如果庫存過多,容易陷入資金周轉(zhuǎn)不力的境地;另一方面,如果庫存太少,不能滿足實際需要,勢必會增加采購數(shù)量或生產(chǎn)批次,增加采購或生產(chǎn)成本,違反經(jīng)濟原則。 ,盡量減少庫存水平是企業(yè)管理的重要目標(biāo),降低庫存成為“第三利潤來源”??梢?,不斷提高庫存管理水平,進行適時適度的庫存管理,已成為企業(yè)興衰的關(guān)鍵之一。自從有了生產(chǎn),就有了庫存物品的存在。庫存對于市場的發(fā)展和企業(yè)的正常經(jīng)營發(fā)展起著非常重要的作用。1.3 國外庫存管理發(fā)展現(xiàn)狀1.3.1存儲理論的形成與發(fā)展1940年代初期,西方經(jīng)濟學(xué)家通過研究庫存物資的
9、使用和消耗隨時間變化的規(guī)律,提出了訂單點的方法和理論,并將其應(yīng)用于企業(yè)的庫存計劃管理。 1960年代中期,美國IBM公司的管理專家約瑟夫奧利弗博士首先提出了獨立需求和相關(guān)需求的概念。這種理論和方法與傳統(tǒng)的庫存理論和方法有很大的不同。其主要特點是:在傳統(tǒng)的基礎(chǔ)上,引入了時間分段和反映產(chǎn)品結(jié)構(gòu)的BOM(Bill Of Materials),更好地解決了庫存管理和生產(chǎn)控制中的問題,即準(zhǔn)時保量。到所需的材料。以加強物料計劃和控制,盡量減少庫存,減少資金占用,滿足企業(yè)生產(chǎn)為目標(biāo),是一種基于按需采購的企業(yè)生產(chǎn)和庫存管理方法。其次是制造資源計劃(MRPII,Manufacturing Resources P
10、lanning)是1970年代后期的一種,以企業(yè)資源優(yōu)化配置,保證企業(yè)持續(xù)均衡生產(chǎn),實現(xiàn)信息流、物流和資本流動。目標(biāo)是提高企業(yè)的整體水平,以計劃和控制為主線,以現(xiàn)代企業(yè)管理思想和方法為企業(yè)的生產(chǎn)、供應(yīng)、銷售和財富。1.3.2庫存管理的發(fā)展現(xiàn)狀最后,企業(yè)資源計劃(ERP,Enterprise Resources Planning)是1990年代初的一種,以市場和客戶需求為導(dǎo)向,實現(xiàn)企業(yè)外部資源的優(yōu)化配置,消除生產(chǎn)和生產(chǎn)過程中一切無效的勞動力和資源。手術(shù)。 ,以計劃和控制為主線,以網(wǎng)絡(luò)和信息技術(shù)為平臺,整合客戶、市場、集銷售、采購、計劃、生產(chǎn)、財務(wù)、質(zhì)量、服務(wù)、信息集成和業(yè)務(wù)流程再造(BPR,Bu
11、siness Process Reengineering)等功能于一體,供應(yīng)鏈管理(SCM,Supply Chain Management)的現(xiàn)代企業(yè)管理思想和方法)。傳統(tǒng)上,對庫存管理的一般理解是指對物料進出入庫的業(yè)務(wù)管理,但這種理解在現(xiàn)代庫存管理中已不再是全面的。 APICS詞匯中對庫存的定義是:“以支持生產(chǎn)、維修、運營和客戶為目的的各種物料的存儲,包括原材料和在制品、維修件和生產(chǎn)消耗、產(chǎn)成品和備件等。 .。因此,庫存管理應(yīng)包括與物料儲存、交付、使用、計劃和控制有關(guān)的所有方面。第二章系統(tǒng)設(shè)計2.1 系統(tǒng)目標(biāo)設(shè)計本軟件作為物資供應(yīng)部信息管理系統(tǒng)的組成部分,負(fù)責(zé)倉庫的日常出入庫和結(jié)算處理,提供
12、功能全面、使用方便、倉庫管理準(zhǔn)確、快捷的倉庫管理系統(tǒng)。為倉庫管理人員替代傳統(tǒng)的人工操作。利用先進的信息技術(shù),為用戶提供一些更加方便實用的功能,從而提高企業(yè)管理效率。2.2 培養(yǎng)設(shè)計思維倉庫信息管理的特點是信息處理量比較大。被管理的數(shù)據(jù)進出頻率高,在管理上難以落實。在人工管理的時代或者數(shù)據(jù)庫管理系統(tǒng)的設(shè)計不科學(xué)的情況下,管理數(shù)據(jù)會比較混亂,與數(shù)據(jù)庫相關(guān)的數(shù)據(jù)關(guān)聯(lián)性不好,導(dǎo)致數(shù)據(jù)不一致時有發(fā)生。在本系統(tǒng)的設(shè)計過程中,為了克服上述困難,滿足計算機管理的需要,我們采用了以下原則。本系統(tǒng)的開發(fā)設(shè)計思路: 盡量利用單位現(xiàn)有的軟硬件環(huán)境和先進的管理系統(tǒng)開發(fā)方案,充分利用單位現(xiàn)有資源,提高系統(tǒng)開發(fā)水平和應(yīng)用效
13、果。系統(tǒng)應(yīng)符合單位倉庫信息管理的規(guī)定,滿足單位對倉庫物資日常管理的需要,在操作過程中滿足直觀、方便、實用、安全的要求。系統(tǒng)采用模塊化編程方式,方便系統(tǒng)功能的各種組合和修改,也方便非參與開發(fā)的技術(shù)維護人員補充和維護。2.3 系統(tǒng)開發(fā)及運行環(huán)境:開發(fā)工具:中文版Visual Basic6.0 。訪問。運行環(huán)境: Windows9X或Windows2000 , Windowxp + vb6.0 。2.4 系統(tǒng)功能分析系統(tǒng)開發(fā)的總體任務(wù)是實現(xiàn)倉庫信息的系統(tǒng)化、標(biāo)準(zhǔn)化和自動化。系統(tǒng)功能分析是在系統(tǒng)開發(fā)總體任務(wù)的基礎(chǔ)上完成的。倉庫管理系統(tǒng)需要完成的主要功能如下:倉庫基本信息的錄入,包括倉庫編號、倉庫名稱、
14、規(guī)格、類型、計量單位等。倉庫基本信息的查詢報表。修改倉庫基本信息。入庫信息輸入。入庫信息修改。入庫信息查詢報表。出庫倉庫信息輸入。出庫倉庫信息查詢報表。出庫信息修改。倉庫余額信息查詢報表。瀏覽倉庫余額信息。2.5 系統(tǒng)模塊設(shè)計將上述功能集中分塊,根據(jù)結(jié)構(gòu)化編程的要求,得到如圖所示的系統(tǒng)功能模塊圖:倉庫管理信息系統(tǒng)事物系統(tǒng)資本資本體系剩余進出基管Ekuku原則信 信 信興趣檢查管子查詢理由進出事物,進出,進出首都圖書館 圖書館 圖書館 首都代碼賬戶渣基管資金數(shù)額字母 字母 字母 字母 字母 字母 字母 字母 字母 字母 字母 字母 字母 字母 字母 字母 字母 字母 字母 字母 字母 字母 字母
15、 字母 字母 字母 字母 字母 字母 字母 字母 字母 字母 字母 字母 字母 字母 字母 字母 字母 字母 字母 字母有趣的檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢查檢
16、查檢查檢查檢查檢查一次檢查查詢更改查詢添加查詢更改添加查詢更改添加2-1 系統(tǒng)功能框圖整個系統(tǒng)分為5個模塊:倉庫基本信息管理模塊、入庫信息管理模塊、出庫信息管理模塊、倉庫余額信息管理模塊、系統(tǒng)模塊。每個模塊下都有相應(yīng)的子模塊。第 3 章 數(shù)據(jù)庫設(shè)計在設(shè)計數(shù)據(jù)庫系統(tǒng)時,首先要充分了解用戶各方面的需求,包括現(xiàn)有的和未來可能增加的需求。數(shù)據(jù)庫設(shè)計一般包括以下步驟:數(shù)據(jù)庫需求分析數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計3.1 數(shù)據(jù)庫需求分析用戶的具體要求體現(xiàn)在各種信息的提供、保存、更新和查詢中。這就要求數(shù)據(jù)庫結(jié)構(gòu)能夠充分滿足各種信息的輸入輸出,收集基礎(chǔ)數(shù)據(jù)、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)處理流程,形成詳細(xì)的數(shù)據(jù)字典,為后
17、續(xù)的具體設(shè)計奠定基礎(chǔ)。在對倉庫管理的信息需求進行仔細(xì)分析和調(diào)查的基礎(chǔ)上,得到如圖所示的本系統(tǒng)處理的數(shù)據(jù)流:倉庫登記基本信息錄入倉庫基本信息管理入庫倉庫信息管理 倉庫分配 出庫倉庫信息管理倉庫余額信息管理3-1 系統(tǒng)處理數(shù)據(jù)流程圖根據(jù)一般倉庫信息管理系統(tǒng)的要求,通過對倉庫調(diào)撥工作過程的內(nèi)容和數(shù)據(jù)流的分析,設(shè)計了以下數(shù)據(jù)項和數(shù)據(jù)結(jié)構(gòu):倉庫基本信息,包括數(shù)據(jù)項:倉庫編號、倉庫名稱、規(guī)格型號、類別、計量單位等。存儲倉庫信息,包括數(shù)據(jù)項:倉庫編號、倉庫名稱、規(guī)格型號、類別、計量單位、數(shù)量、單價、數(shù)量、存儲時間、經(jīng)辦人、保管人、倉庫、備注等。出庫倉庫信息,包括數(shù)據(jù)項:倉庫編號、倉庫名稱、規(guī)格型號、類別、計
18、量單位、數(shù)量、單價、金額、收貨時間、收貨人、經(jīng)理、倉庫、備注等。倉庫余額信息,包括數(shù)據(jù)項:倉庫編號、倉庫名稱、規(guī)格型號、類別、計量單位、數(shù)量、單價、金額、倉庫等。3.2 數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計得到上述數(shù)據(jù)項和數(shù)據(jù)結(jié)構(gòu)后,就可以設(shè)計出各種能夠滿足用戶需求的實體,并設(shè)計它們之間的關(guān)系,為后續(xù)的邏輯結(jié)構(gòu)設(shè)計打下基礎(chǔ)。這些實體包含各種特定的信息,并通過相互交互形成數(shù)據(jù)流。本系統(tǒng)設(shè)計和規(guī)劃的實體包括:倉庫基本信息實體、入庫信息實體、出庫信息實體、倉庫余額信息實體。每個實體ER圖的具體描述如下:1:倉庫基本信息實體ER圖:倉庫基本信息實體倉號記錄單位倉庫名稱.倉庫規(guī)格3-2倉庫基本信息實體ER圖2:倉庫存儲信
19、息實體ER圖:倉庫入庫信息實體倉庫編號管理員入庫時間.經(jīng)理3-3倉庫入庫信息實體ER圖3:倉庫出庫信息實體ER圖:出庫信息實體倉庫號收件人交貨時間.經(jīng)理3-4出庫信息實體ER圖4:倉庫基本信息實體ER圖:倉庫余額信息實體倉庫編號倉庫數(shù)量.數(shù)量3-5倉庫基本信息實體ER圖5:實體間關(guān)系的ER圖:庫倉庫登記倉庫基本信息倉庫入庫信息 倉庫分配 倉庫出庫信息倉庫余額信息3-6實體之間關(guān)系的ER圖3.3 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計現(xiàn)在將上述數(shù)據(jù)庫的概念結(jié)構(gòu)轉(zhuǎn)換為ACCESS數(shù)據(jù)庫系統(tǒng)支持的實際數(shù)據(jù)模型,即數(shù)據(jù)庫的邏輯結(jié)構(gòu)。在上述實體和實體之間的關(guān)系的基礎(chǔ)上,將數(shù)據(jù)庫中的表形成為每個表之間的關(guān)系。倉庫信息管理系統(tǒng)
20、數(shù)據(jù)庫中各表的設(shè)計結(jié)果如下表所示。每個表代表數(shù)據(jù)庫中的一個表。1:倉庫基本信息表物料表3-1倉庫基本信息表物料表列名數(shù)據(jù)類型可以為空闡明wzidvarchar非空倉庫編號wznamevarchar非空倉庫名稱wzpecvarchar非空規(guī)格wzkindvarchar無效的類別wzunitvarchar無效的測量單位2:倉庫入庫信息表msave表 3-2倉庫入庫信息表msave列名數(shù)據(jù)類型可以為空闡明Rknovarchar非空入庫號孩子varchar非空入庫倉號名字varchar非空入庫倉庫名稱rkspecvarchar無效的規(guī)格類型類型varchar無效的類別單位_varchar非空單元賬號v
21、archar非空數(shù)量價格varchar非空單價方值varchar無效的數(shù)量日期varchar無效的入庫時間Rkdeal_personvarchar非空經(jīng)理Rksave_peasonvarchar非空保管人rkbasevarchar無效的庫備忘錄varchar無效的評論3:倉庫出庫信息表muse表3-3倉庫出庫信息表muse列名數(shù)據(jù)類型可以為空闡明lynovarchar非空入庫號lyidvarchar非空入庫倉號地名varchar非空倉庫名稱lyspecvarchar無效的規(guī)格萊金德varchar無效的類別lyunitvarchar非空單元賬號varchar非空數(shù)量價格varchar非空單價利值
22、varchar無效的數(shù)量賴氨酸varchar無效的入庫時間lyuser_personvarchar非空經(jīng)理lydeal_peasonvarchar非空保管人堿基varchar無效的庫萊梅莫varchar無效的評論4:倉庫余額信息表msurplus表 3-4倉庫余額信息表msurplus列名數(shù)據(jù)類型可以為空闡明耶德varchar非空倉庫編號日名varchar非空倉庫名稱耶派克varchar非空規(guī)格葉金德varchar無效的類別耶單位varchar非空單元葉賬戶varchar非空數(shù)量耶值varchar無效的數(shù)量yebasevarchar無效的庫耶梅莫varchar無效的評論3.4 數(shù)據(jù)庫結(jié)構(gòu)的實現(xiàn)
23、在需求分析和概念結(jié)構(gòu)設(shè)計的基礎(chǔ)上得到數(shù)據(jù)庫的邏輯結(jié)構(gòu)設(shè)計后,就可以在Visual Basic 6.0中實現(xiàn)邏輯結(jié)構(gòu)。實現(xiàn)方法和步驟如下:以英文版為例:通過菜單欄:Add -Ins Visual Data Manager.點擊顯示VisData界面,點擊菜單File New Microsoft Access Vision 7.0 MDB.彈出對話框保存數(shù)據(jù)庫文件的存放位置和數(shù)據(jù)庫框的文件名,命名為wzgl.mdb,保存到當(dāng)前系統(tǒng)存放的文件中。此時出現(xiàn)Database Windows設(shè)計界面,右鍵選擇New Table。設(shè)計表的字段是邏輯結(jié)構(gòu)表中的列名。第四章 倉庫管理信息系統(tǒng)主窗體的創(chuàng)建數(shù)據(jù)庫結(jié)
24、構(gòu)的所有后臺工作都已完成。下面通過倉庫管理信息系統(tǒng)中各個功能模塊的實現(xiàn),講解如何使用Visual Basic編寫數(shù)據(jù)庫系統(tǒng)的客戶端程序。4.1 創(chuàng)建工程項目 - 材料 MIS打開Visual Basic ,點擊File|NEW項目菜單,在項目模塊中選擇StandardEXE,VisualBasic會自動生成一個Form表單,屬性都是默認(rèn)設(shè)置。這里我們刪除表單,點擊FileSaveProject菜單,將項目命名為Material MIS 。4.2 創(chuàng)建倉庫管理信息系統(tǒng)的主要形式在本項目中,我們使用多文檔界面,點擊工具欄中的ADD MDI Form按鈕生成一個表單。在此表單上添加所需的控件。表格和
25、控件的屬性設(shè)置見表格。表 4-1窗體和控件的屬性設(shè)置表控制屬性屬性值窗體(窗體)姓名框架標(biāo)題倉庫管理信息系統(tǒng)啟動位置中心綠窗口狀態(tài)最大化Sbstatusbar(狀態(tài)條)姓名Sb stausbar面板(1)風(fēng)格文本面板(2)風(fēng)格Sbr日期面板(3)風(fēng)格時間_創(chuàng)建的表格如圖所示。4-1 物資管理信息系統(tǒng)表格圖在主窗體中添加狀態(tài)欄控件,可以實時反映系統(tǒng)中各種狀態(tài)的變化。狀態(tài)欄控件需要在通常的屬性窗口以及它自己的彈出菜單中設(shè)置通用屬性。選擇狀態(tài)欄控件,單擊鼠標(biāo)右鍵,選擇屬性菜單,然后設(shè)置屬性。面板1用于顯示各種文本信息,面板2用于顯示當(dāng)前日期,面板3用于顯示當(dāng)前時間。4.3 創(chuàng)建主窗體的菜單在主窗體中
26、,單擊鼠標(biāo)右鍵,在彈出的菜單中選擇MenuEditor,創(chuàng)建菜單結(jié)構(gòu)如圖:4-2 主窗體的菜單圖4.4 創(chuàng)建通用模塊在VisualBasic中,公共模塊可用于存儲整個項目的常用函數(shù)、過程和全局變量。這可以提高代碼的效率。在 Project Explorer 中向項目添加一個Module并將其保存為Module bas ?,F(xiàn)在您可以開始添加所需的代碼。由于系統(tǒng)中的各個功能模塊會頻繁使用數(shù)據(jù)庫中的各個數(shù)據(jù),因此需要一個公共的數(shù)據(jù)操作函數(shù)來執(zhí)行各種SQL語句。添加函數(shù)ExecuteSQL ,代碼如下:公共函數(shù) ExecuteSQL(ByVal SQL _作為字符串,MsgString 作為字符串)_
27、作為 ADODB.Recordset執(zhí)行 SQL 并返回 Recordset暗淡為 ADODB.Connection暗淡為 ADODB.Recordset將 sTokens() 調(diào)暗為字符串出錯時轉(zhuǎn)到 ExecuteSQL_ErrorsTokens = 拆分(SQL)Setn = 新的 ADODB.Connectionn.打開連接字符串如果 InStr(插入、刪除、更新, _UCase$(sTokens(0) 然后n.執(zhí)行SQLMsgString = sTokens(0) & _“查詢成功”別的設(shè)置 rst = 新 ADODB.Recordsetrst.Open Trim$(SQL),n,_a
28、dOpenKeyset, _adLockOptimisticrst.MoveLast 獲取 RecordCount設(shè)置 ExecuteSQL = rstMsgString = 查詢到 & rst.RecordCount & _“ 記錄”萬一執(zhí)行SQL_Exit:設(shè)置 rst = 無Setn = 無退出函數(shù)執(zhí)行SQL_錯誤:MsgString = 查詢錯誤: & _錯誤描述恢復(fù) ExecuteSQL_Exit結(jié)束功能String 函數(shù)用于ExecuteSQL 函數(shù)中,用于連接數(shù)據(jù)庫。代碼如下:公共函數(shù) ConnectString() _作為字符串返回一個數(shù)據(jù)庫連接字符串ConnectString
29、 = FileDSN=material.dsn;UID=sa;PWD=結(jié)束功能輸入相關(guān)信息時,需要回車進入下一個文本框,對于軟件用戶來說非常方便。所有功能模塊都需要這個功能,所以放在公共模塊中,代碼如下:Public Sub EnterToTab(Keyasc As Integer)如果 Keyasc = 13 那么致鍵“TAB”萬一結(jié)束子Keyasc用于保存當(dāng)前密鑰, SendKeys函數(shù)用于指定密鑰。一旦按下 Enter 鍵,它將返回到Tab鍵,并且下一個控件會自動獲得輸入焦點。添加一個全局變量來記錄每個表單的讀寫狀態(tài)。代碼如下:公共 fMainForm 作為 frmMain公共標(biāo)志Med
30、it As Boolean公共標(biāo)志Iedit As Boolean公共標(biāo)志Ledit As Boolean公共標(biāo)志Oedit As Boolean公共 gintMmode 作為整數(shù)公共 gintImode 作為整數(shù)公共 gintLmode 作為整數(shù)公共 gintOmode 為整數(shù)gintMmode變量用于記錄狀態(tài)是添加還是修改。 1 表示添加,2 表示修改。 FlajMedit變量用于指示是否輸入修改后的表單。倉庫管理信息系統(tǒng)啟動后,需要對用戶進行判斷。如果登錄的是授權(quán)用戶,則進入系統(tǒng),否則將停止程序的執(zhí)行。這個判斷需要在系統(tǒng)運行之初進行,所以代碼放在一個通用模塊中。4.5 倉庫基礎(chǔ)信息模塊的
31、創(chuàng)建倉庫基礎(chǔ)信息管理模塊主要實現(xiàn)以下功能: 添加倉庫基本信息。 修改倉庫基本信息。 刪除倉庫基本信息。 查詢倉庫基本信息。1:添加倉庫基本信息表的創(chuàng)建選擇“倉庫基本信息管理添加倉庫基本信息”菜單,出現(xiàn)如圖所示的表單。4-3 倉庫物料信息窗口示意圖在表單上放置多個文本框,輸入倉庫基本信息;兩個按鈕用于判斷是否添加倉庫信息;多個標(biāo)簽用于提示在文本框中輸入的內(nèi)容。這些控件的屬性如下表所示:表 4-2表單控件屬性表控制屬性屬性值Frm mater1 (表格)姓名框架信息標(biāo)題倉庫信息MDI兒童真的文本條目(0)文本條目(4)姓名文本條目(0)文本條目(4)標(biāo)簽1標(biāo)題學(xué)生卡標(biāo)簽2標(biāo)題標(biāo)簽3標(biāo)題性別標(biāo)簽4標(biāo)
32、題出生日期標(biāo)簽5標(biāo)題班號加載表單時,程序首先判斷狀態(tài),代碼如下:私有子 Form_Load()將 intCount 調(diào)暗為整數(shù)將 MsgText 調(diào)暗為字符串如果 gintMmode = 1 那么Me.Caption = Me.Caption & “添加”否則如果 gintMmode = 2 那么設(shè)置 mrc = ExecuteSQL(txtSQL, MsgText)如果 mrc.EOF = False 那么與 mrc對于 intCount = 0 到 4txtItem(intCount) = .Fields(intCount)下一個 intCount結(jié)束于txtItem(0).Enabled
33、 = False萬一Me.Caption = Me.Caption & 修改萬一mblChange = 假結(jié)束子gintMmode判斷是添加還是修改。如果處于添加狀態(tài),則清除文本框,表單有提示信息;如果處于修改狀態(tài),則顯示當(dāng)前記錄。用戶完成輸入后,點擊cmdSave按鈕會觸發(fā)Click事件。代碼詳情見附錄中的源代碼列表:程序先判斷內(nèi)容是否輸入,再判斷格式。在倉庫管理中,所有的倉庫都有唯一的編號,不同類型的倉庫對應(yīng)不同的編號。程序會判斷是否存在重復(fù)ID和重復(fù)位置的記錄,然后將數(shù)據(jù)添加到數(shù)據(jù)庫中。最后根據(jù)狀態(tài)顯示相應(yīng)的信息:如果是添加狀態(tài)則提示添加成功,然后重新顯示并清除所有文本框繼續(xù)添加記錄;如
34、果處于修改狀態(tài),則提示修改成功,然后更新所有記錄列表。當(dāng)文本框獲得焦點時,會觸發(fā)以下事件: 自動選擇輸入內(nèi)容,方便修改。Private Sub txtItem_GotFocus(索引為整數(shù))txtItem(索引).SelStart = 0txtItem(Index).SelLength = Len(txtItem(Index)結(jié)束子點擊按鈕cmdedit取消添加倉庫信息,代碼如下:私有子 cmdExit_Click()如果 mblChange 和 cmdSave.Enabled 則If MsgBox(保存當(dāng)前記錄更改?, vbOKCancel + vbExclamation, Warning)
35、 = vbOK Then節(jié)省調(diào)用 cmdSave_Click萬一萬一卸載我結(jié)束子2:修改倉庫基本信息表的創(chuàng)建選擇“倉庫基本信息管理修改倉庫基本信息”菜單,出現(xiàn)如圖所示的窗體,窗體中放置一個窗體控件。4-4 倉庫基本信息修改圖加載表單時,觸發(fā)表單的Load事件,顯示當(dāng)前數(shù)據(jù)庫中的所有記錄。代碼如下:調(diào)用showTitle函數(shù)顯示表頭,代碼如下調(diào)用showData函數(shù)顯示記錄列表。代碼如下:私有子 Form_Load()節(jié)目標(biāo)題顯示數(shù)據(jù)flagMedit=真結(jié)束子調(diào)用showtitle函數(shù)顯示表頭,代碼如下:顯示網(wǎng)格標(biāo)題私人子 ShowTitle()將 i 調(diào)暗為整數(shù)使用 msgList.Cols
36、 = 6.TextMatrix(0, 1) = 倉庫編號.TextMatrix(0, 2) = 倉庫名稱.TextMatrix(0, 3) = 規(guī)范模型.TextMatrix(0, 4) = 類別.TextMatrix(0, 5) = 度量單位固定標(biāo)題.FixedRows = 1設(shè)置每一列的對齊方式對于 i = 0 到 5.ColAlignment(i) = 0接下來我標(biāo)題項居中.FillStyle = flexFillRepeat.Col = 0. 行 = 0.RowSel = 1.ColSel = .Cols - 1.CellAlignment = 4設(shè)置單元格大小.ColWidth(0)
37、 = 300.ColWidth(1) = 1000.ColWidth(2) = 2000.ColWidth(3) = 2000.ColWidth(4) = 1000.ColWidth(5) = 1000. 行 = 1結(jié)束于結(jié)束子調(diào)用showdata函數(shù)顯示記錄列表,代碼如下:顯示網(wǎng)格的內(nèi)容私有子 ShowData()將 i 調(diào)暗為整數(shù)設(shè)置 mrc = ExecuteSQL(txtSQL, MsgText)使用 msgList.Rows = 1不做時做 mrc.EOF.Rows = .Rows + 1對于 i = 1 到 mrc.Fields.Count選擇案例 mrc.Fields(i - 1
38、).Type案例 addDBDate.TextMatrix(.Rows - 1, i) = Format(mrc.Fields(i - 1) & , yyyy-mm-dd)其他情況.TextMatrix(.Rows - 1, i) = mrc.Fields(i - 1) & 結(jié)束選擇接下來我mrc.MoveNextLoop結(jié)束于mrc.關(guān)閉結(jié)束子選擇記錄并單擊鼠標(biāo)右鍵將觸發(fā)MouseUp事件并出現(xiàn)一個彈出菜單。該事件在鼠標(biāo)松開時發(fā)生,代碼如下:Private Sub msgList_MouseUp(Button As Integer, Shift As Integer, x As Single
39、, y As Single)右鍵彈出如果 Button = 2 并且 Shift = 0 那么PopupMenu fMainForm.menuMaterial萬一結(jié)束子當(dāng)窗口發(fā)生變化時,需要調(diào)整標(biāo)簽和表格的位置,使標(biāo)簽始終位于窗口頂部,表格始終位于標(biāo)簽下方。當(dāng)表單大小發(fā)生變化時,會觸發(fā)Resize 事件。代碼如下:私有子 Form_Resize()If Me.WindowState vbMinimized And fMainForm.WindowState vbMinimized Then邊界處理如果 Me.ScaleHeight 10 * lblTitle.Height 然后退出子萬一如果
40、Me.ScaleWidth 1 那么if MsgBox(你真的要刪除這條文件記錄嗎?, vbOKCancel + vbExclamation, Warning) = vbOK ThenintCount = frmMater.msgList.RowtxtSQL = 從材料中刪除 wzid= & Trim(frmMater.msgList.TextMatrix(intCount, 1) & 設(shè)置 mrc = ExecuteSQL(txtSQL, MsgText)卸載 frmMaterfrmMater.txtSQL = 從材料中選擇 *frmMater.Show萬一萬一萬一結(jié)束子4:創(chuàng)建查詢司機信息
41、的表格選擇“倉庫基本信息管理查詢倉庫基本信息”菜單,出現(xiàn)如圖所示的表格。在這里,可以以各種方式并結(jié)合它們來執(zhí)行查詢。4-5 倉庫基本信息查詢圖查詢倉庫基本信息表單中包含的控件及其屬性設(shè)置如表所示。表 4-3倉庫基本信息表單控件及其屬性設(shè)置控制屬性屬性值格式(Form)姓名框架信息標(biāo)題倉庫登記查詢MDI兒童真的文本條目(0)文本條目(1)姓名文本條目(0)文本條目(1)檢查1標(biāo)題倉庫名稱命令行標(biāo)題倉庫名稱姓名命令行退出標(biāo)題取消姓名退出先選擇查詢方式,然后輸入查詢內(nèi)容。點擊“確定”按鈕觸發(fā)Click事件進行查詢,代碼如下:私有子 cmdOK_Click()將 txtSQL 調(diào)暗為字符串將 sQSq
42、l 調(diào)暗為字符串If chkItem(0).Value = vbChecked ThensQSql = wzname = & Trim(txtItem(0) & ) & 萬一If chkItem(1).Value = vbChecked ThenIf Trim(sQSql & ) = Then sQSql = wzspec = & Trim(txtItem(1) & ) & Else sQSql = sQSql & and wzspec = & Trim(txtItem(1) & ) & End If End If Me.Hide If Trim(sQSql) = Then MsgBox 請設(shè)
43、置查詢方式!, vbOKOnly + vbExclamation, 警告 Exit Sub Else If flagMedit Then Unload frmMater End IffrmMater.txtSQL = select * from material where & sQSqlfrmMater.Show萬一結(jié)束子程序先判斷查詢方式,如果沒有設(shè)置查詢方式,會顯示提示信息;然后將查詢內(nèi)容組合成一條SQL語句進行查詢。查詢數(shù)據(jù)集后,需要在表格控件中正常顯示。使用循環(huán)顯示每條記錄的每個字段。單擊“取消”按鈕將退出程序。4.6 倉儲信息管理模塊的創(chuàng)建倉儲信息管理模塊主要實現(xiàn)以下功能: 添加入
44、庫信息。 修改存儲信息。 刪除存儲信息。 查詢存儲信息。1:增加創(chuàng)建倉庫入庫信息表選擇“倉庫入庫信息管理添加倉庫入庫信息”菜單,出現(xiàn)如圖所示的窗體。4-6 倉庫入庫信息管理圖表單中各個控件的屬性這里就不一一介紹了。將各種文本框放入表單的框架中,形成“倉庫信息”和“倉庫信息”兩部分。加載表單時,現(xiàn)有的倉庫信息會自動添加到倉庫信息中。代碼被添加到窗體的Load事件中。源代碼見附件:存儲信息的記錄號由程序隨機生成,使每條記錄都有唯一的編號。生成隨機數(shù)的代碼如下:私有函數(shù) GetRkno() 作為字符串GetRkno = 格式(現(xiàn)在,“yymmddhhmmss”)隨機化GetRkno = GetRkn
45、o & Int(99 - 10 + 1) * Rnd + 10)結(jié)束功能隨機數(shù)的前 12 位由當(dāng)前時間確定,后兩位由隨機數(shù)生成。輸入內(nèi)容后點擊“保存”按鈕觸發(fā)Click事件,首先檢查文本內(nèi)容是否符合格式要求,然后判斷是否有重復(fù)記錄,更新倉庫余額表中的相關(guān)信息,最后添加內(nèi)容到數(shù)據(jù)庫,代碼見附錄。 :這里很重要的一點是在添加入庫信息的同時更新倉庫余額表中的信息。更新時使用SQL語句更新:2:修改倉庫入庫信息選擇“倉庫入庫信息管理和修改倉庫入庫信息”菜單,出現(xiàn)如圖所示的窗體。4-7修改倉庫入庫信息圖表單中放置了一個表單控件,所有入庫記錄都顯示在其中。選擇要修改的記錄,在彈出的菜單中選擇“修改入庫信息
46、”命令,修改成如圖所示的形式。選擇“修改倉庫入庫信息”命令會觸發(fā)menuModifymaterialin 的 Click 事件,代碼如下:Private Sub menuModifymaterialin_Click()將 intCount 調(diào)暗為整數(shù)If flagIedit Then如果 frmMaterIn.msgList.Rows 1 那么gintImode=2intCount = frmMaterIn.msgList.RowfrmMaterIn1.txtSQL = select * from msave where rkno= & Trim(frmMaterIn.msgList.Text
47、Matrix(intCount, 1) & frmMaterIn1.顯示別的調(diào)用菜單Addmaterialin_Click萬一別的frmMaterIn.txtSQL = 從 msave 中選擇 *frmMaterIn.Show萬一結(jié)束子程序判斷為修改狀態(tài)后,先刪除原來的記錄,然后將新的內(nèi)容添加到數(shù)據(jù)庫中,同時保持倉庫余額表中的相關(guān)信息更新。3:刪除倉庫入庫信息在入庫記錄列表中選擇一條記錄,然后在菜單中選擇“刪除入庫信息”命令,即可刪除當(dāng)前記錄并更新入庫余額表中的相關(guān)信息。代碼顯示如下:Private Sub menuDeletematerialin_Click()將 txtSQL 調(diào)暗為字符串
48、將 intCount 調(diào)暗為整數(shù)將 mrc 調(diào)暗為 ADODB.Recordset將 MsgText 調(diào)暗為字符串If flagIedit Then如果 frmMaterIn.msgList.Rows 1 那么if MsgBox(你真的要刪除這條文件記錄嗎?, vbOKCancel + vbExclamation, Warning) = vbOK ThenintCount = frmMaterIn.msgList.RowtxtSQL = 更新 msurplus 設(shè)置 yeaccount=yeaccount- & Trim(frmMaterIn.msgList.TextMatrix(intCou
49、nt, 7) & ,yevalue=yevalue- & Trim(frmMaterIn.msgList.TextMatrix(intCount, 9) & 其中yeid= & Trim(frmMaterIn.msgList.TextMatrix(intCount, 2) & 設(shè)置 mrc = ExecuteSQL(txtSQL, MsgText)txtSQL = 從 rkno= 的 msave 中刪除 & Trim(frmMaterIn.msgList.TextMatrix(intCount, 1) & 設(shè)置 mrc = ExecuteSQL(txtSQL, MsgText)卸載 frmMa
50、terInfrmMaterIn.txtSQL = 從 msave 中選擇 *frmMaterIn.Show萬一萬一萬一結(jié)束子4:查詢倉庫入庫信息選擇“倉庫入庫信息管理查詢倉庫入庫入庫信息”菜單,出現(xiàn)如圖所示的表格。在這里,可以以各種方式并結(jié)合它們來執(zhí)行查詢。4-8查詢倉庫入庫信息圖表加載表單時會自動添加所有記錄的存儲時間,代碼如下:私有子 Form_Load()sQSql = 將 i 調(diào)暗為整數(shù)將 j 調(diào)暗為整數(shù)將 sSql 作為字符串變暗將 txtSQL 調(diào)暗為字符串將 MsgText 調(diào)暗為字符串將 mrc 調(diào)暗為 ADODB.RecordsettxtSQL = 從 msave 中選擇不同
51、的 datepart(yy,rkdate)設(shè)置 mrc = ExecuteSQL(txtSQL, MsgText)如果 mrc.EOF = False 那么與 mrc不做.EOFcboYear(0).AddItem.Fields(0)cboYear(1).AddItem.Fields(0).MoveNextLoop結(jié)束于對于 i = 0 到 1cboYear(i).ListIndex = 0接下來我對于 i = 0 到 1對于 j = 1 到 12cboMonth(i).AddItem j下一個 j接下來我對于 i = 0 到 1cboMonth(i).Text = Month(Now()接下
52、來我別的cmdOk.Enabled = False萬一mrc.關(guān)閉結(jié)束子查詢方法與查詢倉庫基本信息的方法相同。4.7 倉庫出庫管理模塊的創(chuàng)建倉庫出庫管理模塊主要實現(xiàn)以下功能:添加倉庫出庫信息。修改倉庫出庫信息。刪除出庫信息。查詢出庫信息。1:增加創(chuàng)建倉庫出庫信息表選擇“倉庫出庫信息管理|添加倉庫出庫信息”菜單,出現(xiàn)如圖所示的表單。4-9添加倉庫出庫信息窗口圖加載表格時,程序會自動將所有數(shù)量大于零的倉庫的名稱添加到倉庫余額表中。代碼如下:私有子 Form_Load()將 sSql 作為字符串變暗將 intCount 調(diào)暗為整數(shù)將 mrc 調(diào)暗為 ADODB.Recordset如果 gintOmo
53、de = 1 那么Me.Caption = Me.Caption & “添加”初始化存儲庫名稱txtSQL = 從 msurplus 中選擇 DISTINCT 名稱,其中 yeaccount0設(shè)置 mrc = ExecuteSQL(txtSQL, MsgText)如果不是 mrc.EOF 那么不做時做 mrc.EOFcboItem(1).AddItem Trim(mrc!yename)mrc.MoveNextLoopcboItem(1).ListIndex = 0別的MsgBox 存儲庫中沒有存儲庫!, vbOKOnly + vbExclamation, 警告cmdSave.Enabled =
54、 False退出子萬一mrc.關(guān)閉txt帳戶=“0”txt值 = 0txtNo = GetRknotxtBase = ElseIf gintOmode = 2 那么設(shè)置 mrc = ExecuteSQL(txtSQL, MsgText)如果 mrc.EOF = False 那么與 mrc對于 intCount = 0 到 4cboItem(intCount).AddItem .Fields(intCount + 1)cboItem(intCount).ListIndex = 0下一個 intCount對于 intCount = 0 到 7If Not IsNull(.Fields(intCou
55、nt + 6) 那么txtItem(intCount) = .Fields(intCount + 6)萬一下一個 intCount保存更改的數(shù)據(jù)txtAccount = !lyaccounttxtValue = !lyvaluetxtNo = !lynotxtBase = !lybase & 結(jié)束于萬一mrc.關(guān)閉Me.Caption = Me.Caption & “修改”萬一mblChange = 假結(jié)束子選擇存儲庫名稱時,還會顯示該存儲庫的其他信息,代碼如下:私有子 cboItem_Click(索引為整數(shù))將 sSql 作為字符串變暗將 mrcc 調(diào)暗為 ADODB.Recordset如果
56、 gintOmode = 1 那么 初始化員工姓名和ID如果索引 = 1 那么cboItem(0).Enabled = TruecboItem(3).Enabled = TruecboItem(4).Enabled = TruecboItem(2).清除cboItem(0).清除cboItem(3).清除cboItem(4).清除txtSQL = select yeid,yespec,yekind,yeunit from msurplus whereyename= & Trim(cboItem(1) & 設(shè)置 mrcc = ExecuteSQL(txtSQL, MsgText)如果不是 mrc
57、c.EOF 則不做時做 mrcc.EOFcboItem(0).AddItem mrcc!yeidcboItem(2).AddItem mrcc!yespeccboItem(3).AddItem mrcc!yekindcboItem(4).AddItem mrcc!yeunitmrcc.MoveNextLoopcboItem(0).Enabled = FalsecboItem(3).Enabled = FalsecboItem(4).Enabled = FalsecboItem(2).ListIndex = 0cmdSave.Enabled = True別的MsgBox 版本庫中不存在版本庫!,
58、 vbOKOnly + vbExclamation, 警告cmdSave.Enabled = False退出子萬一mrcc.關(guān)閉ElseIf 索引 = 2 則cboItem(0).Enabled = TruecboItem(3).Enabled = TruecboItem(4).Enabled = True使用 cboItem(2)cboItem(0).ListIndex = .ListIndexcboItem(3).ListIndex = .ListIndexcboItem(4).ListIndex = .ListIndex結(jié)束于cboItem(0).Enabled = FalsecboIt
59、em(3).Enabled = FalsecboItem(4).Enabled = False萬一萬一結(jié)束子為了防止輸入信息時的誤操作,可以限制鍵盤的使用。在文本框中Private Sub txtItem_KeyPress(Index As Integer, KeyAscii As Integer)如果索引 = 0 或索引 = 1 則消息框鍵碼控制輸入的字符txtQuantity(Index).Locked = False小數(shù)點只能輸入一次如果 KeyAscii = 190 那么如果 InStr(Trim(txtItem(Index), .) = 0 那么如果 Len(Trim(txtItem
60、(Index) 0 那么txtItem(索引).Locked = False別的txtItem(索引).Locked = True萬一別的txtItem(索引).Locked = True萬一退出子萬一非數(shù)字不能輸入如果 KeyAscii 57 或 KeyAscii 1 那么if MsgBox(你真的要刪除這條文件記錄嗎?, vbOKCancel + vbExclamation, Warning) = vbOK ThenintCount = frmMaterOut.msgList.RowtxtSQL = 更新 msurplus 設(shè)置 yeaccount=yeaccount+ & Trim(fr
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版綠色包裝材料研發(fā)及推廣合同2篇
- 2025年度石料廠產(chǎn)品質(zhì)量安全承包管理合同范本2篇
- 二零二五年度城市綜合體建筑設(shè)計合同3篇
- 2025年度高新技術(shù)企業(yè)知識產(chǎn)權(quán)質(zhì)押擔(dān)保合同范本3篇
- 二零二五版農(nóng)村小微企業(yè)發(fā)展借款合同解析論文3篇
- 二零二五年生物制藥工藝技術(shù)聘用合同2篇
- 二零二五版股權(quán)代持協(xié)議簽訂前的合同談判注意事項3篇
- 二零二五年度建筑工程安全施工環(huán)境保護監(jiān)理合同3篇
- 二零二五版購房合同違約責(zé)任條款解析3篇
- 2025年度緊急物資承攬運輸合同3篇
- 精神病醫(yī)院財務(wù)后勤總務(wù)管理制度
- 停車場施工施工組織設(shè)計方案
- GB/T 37238-2018篡改(污損)文件鑒定技術(shù)規(guī)范
- 普通高中地理課程標(biāo)準(zhǔn)簡介(湘教版)
- 河道治理工程監(jiān)理通知單、回復(fù)單范本
- 超分子化學(xué)簡介課件
- 高二下學(xué)期英語閱讀提升練習(xí)(一)
- 易制爆化學(xué)品合法用途說明
- 【PPT】壓力性損傷預(yù)防敷料選擇和剪裁技巧
- 大氣喜慶迎新元旦晚會PPT背景
- DB13(J)∕T 242-2019 鋼絲網(wǎng)架復(fù)合保溫板應(yīng)用技術(shù)規(guī)程
評論
0/150
提交評論