![九九級畢業(yè)論文設(shè)計_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/17/1fd38ffe-84da-42e8-a3a0-08fd99a2e177/1fd38ffe-84da-42e8-a3a0-08fd99a2e1771.gif)
![九九級畢業(yè)論文設(shè)計_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/17/1fd38ffe-84da-42e8-a3a0-08fd99a2e177/1fd38ffe-84da-42e8-a3a0-08fd99a2e1772.gif)
![九九級畢業(yè)論文設(shè)計_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/17/1fd38ffe-84da-42e8-a3a0-08fd99a2e177/1fd38ffe-84da-42e8-a3a0-08fd99a2e1773.gif)
![九九級畢業(yè)論文設(shè)計_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/17/1fd38ffe-84da-42e8-a3a0-08fd99a2e177/1fd38ffe-84da-42e8-a3a0-08fd99a2e1774.gif)
![九九級畢業(yè)論文設(shè)計_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/17/1fd38ffe-84da-42e8-a3a0-08fd99a2e177/1fd38ffe-84da-42e8-a3a0-08fd99a2e1775.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、九九級畢業(yè)論文設(shè)計-貴州大學信計學院計算機科學系課題名稱:紅林生產(chǎn)管理系統(tǒng)指導老師:張厚武所屬學院:信息與計算機科學學院所屬專業(yè):計算機科學與技術(shù)組員名單:張凌云 NO.101柳秋云 NO. 15 楊熙劍 NO.034 2003.05紅林生產(chǎn)管理系統(tǒng)貴州大學 1999級 計算機科學與技術(shù)專業(yè) 指導老師:張厚武 摘要: 生產(chǎn)管理技術(shù)是企業(yè)有序組織生產(chǎn),合理利用資源,避免浪費,提高生產(chǎn)效率和產(chǎn)值的重要管理手段,現(xiàn)代計算技術(shù)和信息技術(shù)與生產(chǎn)管理技術(shù)的結(jié)合極大地降低了企業(yè)生產(chǎn)管理的成本,提高了生產(chǎn)管理的有效性和可靠性?;仡櫫俗陨鲜兰o五十年代以來生產(chǎn)管理技術(shù)的發(fā)展,介紹了目前獲得廣泛應(yīng)用的物料需求計劃技
2、術(shù),設(shè)計并實現(xiàn)了一個簡單實用的基與MRP的零組件生產(chǎn)計劃軟件,分析了存在的問題和可能的擴展。關(guān)鍵詞 生產(chǎn)計劃,生產(chǎn)作業(yè)計劃,物料需求計劃系統(tǒng),BOM。 HONGLIN PRODUCE MANAGEMENT SYSTEM DESIGN AND IMPLEMENTABSTRACT In this paper, we introduced the production management and its development since 1950s ,then we pay our attention to material request planning system , which has
3、 been used in many famous corporation today. A simple production planning software has been designed and implemented here, and we discussed how to extend this simple application to be a enterprise resource planning system.(ERP)KEYWORD production planning, material request planning system, BOM.目 錄第一章
4、 生產(chǎn)管理簡介 1.1 生產(chǎn)管理概述. 1.2 物料需求系統(tǒng)第二章 計算機輔助生產(chǎn)管理信息系統(tǒng). 21計算機輔助生產(chǎn)制造應(yīng)提供的功能 22制造資源計劃的功能模塊和BOM 23生產(chǎn)計劃及生產(chǎn)作業(yè)計劃 231生產(chǎn)計劃 232生產(chǎn)作業(yè)計劃 第三章 開發(fā)環(huán)境第四章 設(shè)計與實現(xiàn). 41 需求 . 411 功能和性能要求 .412 數(shù)據(jù)模型 .42 系統(tǒng)實施 421 關(guān)系模型 . 422 各模塊功能簡介.第五章 用戶環(huán)境簡介. 51生產(chǎn)規(guī)劃 52 零件增加/修改 53庫存零件查詢/輸入.第六章 展望與前景.第八章 小結(jié)附錄 部分源程序摘要第一章 生產(chǎn)管理系統(tǒng)簡介1.1 生產(chǎn)管理系統(tǒng)概述 提高經(jīng)濟效益是企業(yè)
5、經(jīng)營管理的主要目標之一,生產(chǎn)管理在實現(xiàn)這個目標過程中起著關(guān)鍵的作用。在社會主義市場經(jīng)濟蓬勃發(fā)展,企業(yè)間競爭日趨激烈,生存與滅亡對每個企業(yè)都成為一個嚴峻問題的當今社會,掌握先進的生產(chǎn)管理技術(shù),實現(xiàn)企業(yè)經(jīng)營管理科學化,有序化是使企業(yè)在激烈競爭中立于不敗之地的先決條件。 裝配制造型企業(yè)產(chǎn)品結(jié)構(gòu)復(fù)雜,工藝流程多,生產(chǎn)周期長,各工序之間銜接配合緊密,上述特點使得這類企業(yè)的生產(chǎn)管理任務(wù)非常繁復(fù),且管理成本高昂,需要大量人時,生產(chǎn)計劃和作業(yè)計劃不具有實時性,不能及時調(diào)整以適應(yīng)環(huán)境的變化。 工業(yè)的發(fā)展促進了管理方法的革新,二十世紀五十年代至今各國管理學者及一些著名企業(yè)提出了各種先進的生產(chǎn)管理方法,其中的一些通
6、過實踐的考驗被證明是有效的方法。它們中的大多數(shù)都具有離散化,程序化的特性。這些方法與先進的計算技術(shù)和信息管理手段緊密結(jié)合,極大地拓展了計算機應(yīng)用的領(lǐng)域,推動企業(yè)的經(jīng)營管理向著降低成本,縮短時間,提高可靠性的方向邁進。 12 物料需求計劃系統(tǒng)(MRP-System) 裝配型企業(yè)生產(chǎn)管理主要采用物料需求計劃系統(tǒng),系統(tǒng)的發(fā)展經(jīng)歷了物料需求計劃系統(tǒng)(MRP),閉環(huán)物料需求計劃系統(tǒng)(Closed-Cycle MRP)和制造資源計劃系統(tǒng)(MRP-II)三個階段。系統(tǒng)的可靠性逐步提高,功能愈加豐富,實現(xiàn)更加復(fù)雜,對生產(chǎn)管理人員和信息系統(tǒng)設(shè)計人員的專業(yè)水平也有了更高的要求。這里只簡單介紹物料需求計劃系統(tǒng)MRP
7、. 物料需求計劃系統(tǒng)專為裝配型產(chǎn)品設(shè)計,主要任務(wù)是對構(gòu)成產(chǎn)品的各種物料的需求量和需求時間做出計劃。物料是指構(gòu)成產(chǎn)品的所有物品,包括部件,零件,外購件,標準件,以及制造零件所用的毛坯和材料等。MRP系統(tǒng)從最終成品的需求量和需要期限出發(fā),按照產(chǎn)品的結(jié)構(gòu)展開,推算出所有零部件需要量。并按零部件的生產(chǎn)提前期推算出它們的出產(chǎn)時間和投產(chǎn)時間。MRP只是提出物料需求的任務(wù),而沒有考察生產(chǎn)能力的約束條件。其基本結(jié)構(gòu)如圖1。閉環(huán)物料需求系統(tǒng)(Closed-Cycle MRP)擴展了物料需求系統(tǒng)的功能,在MRPS的基礎(chǔ)上增加了生產(chǎn)能力需求計劃和車間作業(yè)計劃兩部分。實現(xiàn)了對生產(chǎn)能力和生產(chǎn)計劃的統(tǒng)一管理。 定貨工程生
8、產(chǎn)數(shù)據(jù)管理1基本工程數(shù)據(jù)2數(shù)據(jù)維護作業(yè)分派主生產(chǎn)計劃1編制維護主生產(chǎn)計劃2模擬執(zhí)行主生產(chǎn)計劃采購與送貨1供應(yīng)廠資料維護2采購申請3送貨管理4采購質(zhì)量控制生產(chǎn)作業(yè)計劃1編制作業(yè)計劃2考核生產(chǎn)能力成本計劃與控制庫存管理1計算材料需求量2剔除變質(zhì)零件預(yù)測1產(chǎn)品預(yù)測2產(chǎn)量種類預(yù)測3銷售額預(yù)測倉庫管理1倉位管理2出入庫管理3臺帳管理設(shè)備維修發(fā)貨用戶定貨管理1登陸2定貨任務(wù)安排3查詢4發(fā)貨車間監(jiān)控 圖1 MRPSII系統(tǒng)結(jié)構(gòu) 第二章 計算機輔助生產(chǎn)管理信息系統(tǒng) 21計算機輔助生產(chǎn)制造應(yīng)提供的功能:1 計算機輔助編制生產(chǎn)作業(yè)計劃:(1)計算機輔助編制新產(chǎn)品試制生產(chǎn)作業(yè)計劃;(2)計算機輔助編制產(chǎn)品生產(chǎn)作業(yè)計
9、劃;(3)計算機輔助編制產(chǎn)品生產(chǎn)滾動計劃。2 計算機輔助生產(chǎn)作業(yè)統(tǒng)計:主要生成報表(1)月計劃統(tǒng)計表(2)月計劃結(jié)算表(3)月批次完成情況表(4)旬報表等。3 計算機輔助庫存管理:(1)進行庫房日常的收,存,發(fā)的動態(tài)管理;(2)對橡膠零件實行特殊管理(主要針對橡膠零件的報廢時間問題);(3)綜合信息查詢。 22制造資源計劃的功能模塊和BOM1主生產(chǎn)計劃(MPS)主生產(chǎn)計劃是說明一個企業(yè)計劃在各個時間周期內(nèi)制造些什么,其數(shù)量及最終目標。也就是說計劃生產(chǎn)什么,什么時候生產(chǎn),生產(chǎn)多少。通過(1)從上次的MPS入手編制初步的主生產(chǎn)計劃,(2)對能力和需求進行平衡制定粗估生產(chǎn)能力計劃(3)調(diào)整預(yù)計的負荷
10、量和調(diào)整能力評價初步的主生產(chǎn)計劃三個基本步驟實現(xiàn)它的編制。2物料需求計劃(MRP) 物料需求計劃MRP是MRPII的核心。包括:(1)物料清單BOM(2)MRP的數(shù)據(jù)來源。3 能力需求計劃生產(chǎn)能力對完成各項生產(chǎn)指標尤為重要。不同的生產(chǎn)計 劃有著相應(yīng)的能力需求計劃:(1) 資源需求計劃(MRPII)資源需求計劃主要考慮設(shè)備,廠房,人力,占地面積,資源和資金等。(2) 粗估能力需求計劃:粗估能力計劃僅對主生產(chǎn)計劃所需的關(guān)鍵生產(chǎn)能力做一粗略的估算,給出一個能力需求的概貌。(3) 詳細能力需求計劃 詳細能力需求計劃主要針對物料需求計劃所需的生產(chǎn)能力做一較精確的計算。以工作地為單位匯總某一時段的生產(chǎn)能力
11、和生產(chǎn)負荷,給出能力和負荷的詳細數(shù)據(jù),二者比較后得出能力的使用情況。4 車間作業(yè)管理車間作業(yè)管理是短期計劃管理的核心部分。包括:(1) 車間任務(wù)下達(2) 車間任務(wù)監(jiān)控(定單管理)(3) 生產(chǎn)數(shù)據(jù)收集第三章 開發(fā)環(huán)境本軟件采用Visual Basic集成開發(fā)環(huán)境編碼實現(xiàn), Visual Basic 是 Microsoft 公司推出的一個集成開發(fā)環(huán)境,具有簡單易學、功能強大、軟件費用支出低、見效快等特點。Visual Basic 繼承了 Basic 語言易學易用的特點,特別適合初學者學習Windows 系統(tǒng)編程。它具有:(1) 可視化的集成開發(fā)環(huán)境(2) 面向?qū)ο蟮某绦蛟O(shè)計思想(3) 交互式的開
12、發(fā)環(huán)境(4) 高度的可擴充性等特點。用戶不需編寫大量代碼去描述界面元素的外觀和位置,只需把預(yù)先建立的對象添加到屏幕上即可。同時能即時捕獲并突出顯示大多數(shù)語法和拼寫錯誤。又支持第三方軟件商為其開發(fā)的可視化控制對象,支持訪問動態(tài)鏈接庫(Dynamic Link Library,DLL),支持訪問應(yīng)用程序接口(API)。方便易用。第四章 設(shè)計與實現(xiàn) 41 需求 411 功能和性能要求 貴州紅林機械有限公司原是軍品制造企業(yè),主要產(chǎn)品為飛機尾翼,坐艙蓋,襟翼等軍品,上世紀九十年代初適應(yīng)建設(shè)社會主義市場經(jīng)濟建設(shè)的需要轉(zhuǎn)型生產(chǎn)各種通用摩托車配件。這些產(chǎn)品在生產(chǎn)過程中表現(xiàn)出共同的特點,即產(chǎn)品結(jié)構(gòu)復(fù)雜,工藝流程
13、繁多,產(chǎn)品成批小批量地生產(chǎn)?,F(xiàn)有生產(chǎn)管理系統(tǒng)是基于物料需求計劃的人工系統(tǒng),庫存管理,采購訂貨等管理功能已初步實現(xiàn)了信息化,自動化。原系統(tǒng)經(jīng)過數(shù)十年的應(yīng)用,已被實踐證明是有效的,自足的系統(tǒng),而目前用于企業(yè)級生產(chǎn)管理的軟件產(chǎn)品,如業(yè)界熟悉的ERP系統(tǒng),售價都在百萬元以上,并非一般企業(yè)所能承擔,且這些軟件產(chǎn)品龐大而復(fù)雜,企業(yè)需為充分發(fā)揮這些產(chǎn)品的強大功能而頻繁支付高昂的培訓費用和維護費用。基于這些原因,貴州紅林機械有限公司不打算使整個生產(chǎn)管理過程計算機化,更不愿意承擔開發(fā)完整的生產(chǎn)管理信息系統(tǒng)的費用。用戶需要的僅僅是一個零件生產(chǎn)計劃系統(tǒng),利用計算機的強大計算功能在最短時間內(nèi)耗費最少的人力編制特定時期
14、內(nèi)零件的生產(chǎn)計劃,以此為依據(jù)向各生產(chǎn)自制件的車間分派生產(chǎn)任務(wù),下達生產(chǎn)指令,保證產(chǎn)品所需要的各種零件按時按量的完成。通過上面的分析,我們認識到所需構(gòu)造的系統(tǒng)并非一個完整的生產(chǎn)管理信息系統(tǒng),而是生產(chǎn)管理系統(tǒng)的一個功能模塊,在MRP的系統(tǒng)結(jié)構(gòu)中應(yīng)屬于生產(chǎn)作業(yè)計劃模塊。主要功能為根據(jù)企業(yè)的年度生產(chǎn)計劃獲得各種產(chǎn)品的生產(chǎn)數(shù)量和交貨期限等信息,然后按產(chǎn)品工藝結(jié)構(gòu)展開,根據(jù)產(chǎn)品的結(jié)構(gòu)(即該產(chǎn)品使用了哪些零件和組件,使用數(shù)量是多少)和零件的期量標準(包括零件的生產(chǎn)周期,生產(chǎn)間隔期,批量等)確定各種零件需要量和需求時間,編制零件生產(chǎn)計劃。系統(tǒng)流程如圖4提取產(chǎn)品供求信息生成計劃條件年度生產(chǎn)計劃計劃時間段編制零件
15、生產(chǎn)計劃零件生產(chǎn)計劃零件期量信息產(chǎn)品結(jié)構(gòu)信息圖4 系統(tǒng)流程生產(chǎn)計劃的編制是企業(yè)生產(chǎn)管理系統(tǒng)的靈魂,企業(yè)在長期生產(chǎn)計劃(三年期或五年期生產(chǎn)計劃)的指導下,根據(jù)年度生產(chǎn)計劃的要求編制廠級生產(chǎn)作業(yè)計劃,各車間依據(jù)廠級生產(chǎn)作業(yè)計劃,權(quán)衡自己的生產(chǎn)能力編制車間級生產(chǎn)作業(yè)計劃和派工計劃。因此各級生產(chǎn)計劃的可行性和高效性直接影響企業(yè)各生產(chǎn)運營,決定企業(yè)能否在規(guī)定時限內(nèi)完成國家下達的指標和滿足客戶的訂貨要求。由于生產(chǎn)計劃舉足輕重的地位,當前投入市場的很多軟件產(chǎn)品將生產(chǎn)計劃作為整個軟件系統(tǒng)的核心功能,在此基礎(chǔ)上擴展產(chǎn)品功能滿足企業(yè)經(jīng)營的需要。所以為特定企業(yè)開發(fā)獨立的生產(chǎn)計劃軟件是合理的,且這種軟件在某種意義上也
16、是可擴展的,甚至最終擴展成為通用的商業(yè)軟件。當然,由于企業(yè)組織結(jié)構(gòu)的靈活多樣性和生產(chǎn)管理本身所表現(xiàn)出的復(fù)雜性,建造企業(yè)級生產(chǎn)管理系統(tǒng)需要長時間的調(diào)查工作和大量的分析研究和編碼工作,開發(fā)者不僅要掌握計算機專業(yè)技術(shù),還要熟悉現(xiàn)代生產(chǎn)管理方法。這是一件需要耗費大量人時的軟件工程項目。這里我們僅打算編寫一個簡單合用的計劃程序,同時盡量減少系統(tǒng)的開發(fā)維護費用,也適當?shù)乜疾旖窈蟮臄U展。412 數(shù)據(jù)模型 應(yīng)用包括零件,產(chǎn)品,倉庫幾個主要的實體,其實體關(guān)系圖如圖5所示。零件本身按其來源又可劃分為外購件和自制件兩類,將零件進行這樣的劃分是有必要的,因為我們總認為外購件滿足“可滿足性條件(available)”,
17、即外購件在生產(chǎn)過程中任何時候都是絕對保證供應(yīng)的,作出這一限定后系統(tǒng)僅對自制零件作出生產(chǎn)計劃。零件既自制又外購的策略存在明顯的缺點,首先是增加了固定費用投資,其次是影響產(chǎn)品的標準化,再有就是削弱了成本預(yù)算控制能力,與用戶交流的結(jié)果充分肯定了這個假設(shè)的正確性。外購件和自制件實體與零件實體存在繼承關(guān)系,即外購件/自制件IS A SUBSET OF零件, 存放使用產(chǎn)品零件名稱保存期限庫存數(shù)量使用數(shù)量是否外購自制件外購件倉庫期量標準代號名稱代號圖5 實體關(guān)系圖產(chǎn)品實體和零件實體之間存在著聯(lián)系“使用”或“包含”,因為一種產(chǎn)品由多種零件構(gòu)成,而一種零件可以為多種產(chǎn)品使用,所以這個聯(lián)系是多對多的。零件實體和倉
18、庫實體之間有“存放”聯(lián)系,從概念上分析,企業(yè)肯定包含不止一個倉庫,則這個聯(lián)系本該是多對多的。但在應(yīng)用中這個倉庫實體并不承擔倉庫管理的功能,而僅提供諸如“本廠目前自制和外購哪些零件,這些零件的庫存量能否滿足產(chǎn)品生產(chǎn)的需要”的信息。對每一種零件這些信息是唯一的,因此“存放”是一對多的關(guān)系。42 系統(tǒng)實施 421 關(guān)系模型 由上一節(jié)給出的實體關(guān)系圖可導出該數(shù)據(jù)庫應(yīng)用的關(guān)系模型,基本的關(guān)系模型示意如下:加下劃線的字段是該關(guān)系的主碼。 關(guān)系1 產(chǎn)品(產(chǎn)品代號,產(chǎn)品名稱)關(guān)系2 自制件(零件編號,零件名稱,生產(chǎn)周期,批量,特征標示)關(guān)系3 外購件(零件編號,零件名稱,供應(yīng)商,保存期限)關(guān)系4 庫存(零件編
19、號,當前庫存量,是否外購件)關(guān)系5 產(chǎn)品使用零件(產(chǎn)品代號,零件數(shù)量,使用數(shù)量)所有的關(guān)系都是合法的,即每一個屬性都是原子的。關(guān)系1,2,3,4的主碼只包含一個屬性,關(guān)系5的非主屬性只有“使用數(shù)量”,它完全函數(shù)依賴于碼,所以諸關(guān)系不存在非主屬性部分函數(shù)依賴于碼的情形,即關(guān)系屬于2NF。同樣地,也不存在關(guān)系的非主屬性傳遞依賴于碼的情形,則關(guān)系屬于3NF。更進一步分析,可發(fā)現(xiàn)這些關(guān)系還屬于BCNF。在實體關(guān)系圖中,產(chǎn)品實體和零件實體的聯(lián)系“使用”是一個多對多的關(guān)系,按一般的方法將此聯(lián)系作為一個獨立的關(guān)系:產(chǎn)品實體和零件實體的碼作為新關(guān)系的碼,聯(lián)系的屬性作為關(guān)系的屬性,得到如上的關(guān)系5。由于每件產(chǎn)品
20、包含多種零件,每種零件被多種產(chǎn)品使用,故關(guān)系5存在數(shù)據(jù)冗余量大的問題:相同的產(chǎn)品代號或零件代號可能被重復(fù)存儲多次。在這里我們采用另一種設(shè)計策略:將關(guān)系5按產(chǎn)品種類分成若干個關(guān)系,每一個關(guān)系對應(yīng)著該產(chǎn)品與零件的使用聯(lián)系。但這樣定義的關(guān)系在企業(yè)開發(fā)研制新產(chǎn)品后會出現(xiàn)問題:在數(shù)據(jù)庫中找不到對應(yīng)的產(chǎn)品使用零件信息,無法完成計劃。這時只能通過新建表來解決,可以在程序中動態(tài)創(chuàng)建數(shù)據(jù)表以適應(yīng)新產(chǎn)品的加入。考慮到多個用戶需要在局域網(wǎng)上共享生產(chǎn)管理信息,關(guān)系數(shù)據(jù)庫采用微軟的SQL-SERVER數(shù)據(jù)庫管理系統(tǒng)實現(xiàn),用客戶/服務(wù)器體系結(jié)構(gòu)。為了應(yīng)用的需要,增加了幾張表,如用于用戶登錄身份驗證的“身份驗證表”,在計劃
21、過程中充當中間變量的“模擬零件庫存表”和用于存放規(guī)劃結(jié)果的“零件生產(chǎn)規(guī)劃表”等。422 各模塊功能簡介系統(tǒng)由零件生產(chǎn)計劃編制,零件生產(chǎn)計劃查詢,增加零件與零件信息修改,零件庫存量查詢,用戶管理,登錄等模塊構(gòu)成,各模塊相互獨立,與其他模塊之間沒有直接的信息交換,系統(tǒng)具有低耦合和高內(nèi)聚的優(yōu)點。編碼時采用Visual Basic語言,在Microsoft Visual Studio6.0集成開發(fā)環(huán)境下完成系統(tǒng)實現(xiàn)。.Red_wood PCS修改密碼零件生產(chǎn)計劃查詢零件生產(chǎn)計劃編制零件庫存量查詢設(shè)置密碼零件數(shù)據(jù)更新修改零件屬性增加零件用戶管理。 圖8 系統(tǒng)的HIPO圖4221 零件生產(chǎn)計劃編制 編制零
22、件生產(chǎn)計劃是本系統(tǒng)的核心功能,該模塊也是本系統(tǒng)中最為復(fù)雜的模塊。其要求可用數(shù)學語言形式化地描述如下: 某廠生產(chǎn)m種產(chǎn)品,每一種產(chǎn)品都由多個零件構(gòu)成,而且可能有不同的產(chǎn)品使用相同的零件。所有m種產(chǎn)品總共使用r種零件,其中n種是自制件,其余r-n種是外購件,現(xiàn)僅關(guān)心自制件的生產(chǎn)安排。每一種產(chǎn)品使用自制件的數(shù)量可用m行n列正定矩陣P描述,第i行j列的矩陣元素表示產(chǎn)品i包含零件j的數(shù)量,所有n種零件的期量標準可用兩個矢量C(零件生產(chǎn)周期)和N(批量)描述,矢量的第n個元素代表零件i的期量標準。另外還有一個m*r階矩陣M用以形式化從產(chǎn)品生產(chǎn)計劃中獲得的信息,矩陣第i行j列的元素表示第i種產(chǎn)品在第j月的產(chǎn)
23、量,r取決于計劃期的長度。最長不超過12個月。規(guī)劃的結(jié)果是一個n行r列的矩陣,其中第i行j列的元素表示第j月零件i的計劃生產(chǎn)數(shù)量。規(guī)劃的條件是計劃期內(nèi)每個月零件的計劃生產(chǎn)數(shù)量與當月預(yù)計庫存數(shù)量之和至少等于該月零件需求量。計劃期內(nèi)某月零件的需求量可用矩陣P和矩陣M求得,具體方法是用P的轉(zhuǎn)置矩陣與M作矩陣乘法,獲得的n*r階矩陣每一個元素表示某種零件在某一月的需求量。如果限制所有零件的生產(chǎn)數(shù)量只能是整數(shù)并加入某些最優(yōu)化量度(如要求零件庫存量最效益以降低成本),則該問題可以看作一個復(fù)雜的整數(shù)規(guī)劃問題,數(shù)學家已提出許多用以解決整數(shù)規(guī)劃問題的算法,如割平面法,分枝定界法等,但解整數(shù)規(guī)劃問題還是很不容易的
24、,沒有對所有實例都有效的算法,而且Integer Programming早已被證明是NP完全的。所以用純粹數(shù)學規(guī)劃方法解決此問題是不現(xiàn)實的。 這里采用一種與貪心算法類似的方法解決計劃問題,可以稱為“見好就收“的策略,預(yù)計計劃期內(nèi)某一月某種零件的生產(chǎn)數(shù)量時,檢查本月零件庫存量是否已滿足需求,若零件庫存量大于或等于零件需求量,則本月不再生產(chǎn)該零件,否則檢測按批量生產(chǎn)出一批零件后零件的總量是否滿足需求,若仍不滿足,則取消批量限制而生產(chǎn)所需零件,不再動用庫存零件,否則按批量生產(chǎn)一批零件,將滿足需求后剩余的零件入庫。由于問題并不具有貪心性質(zhì),使用這種策略編制零件生產(chǎn)計劃時,零件的庫存量并不能達到最小,但
25、通常可在適當?shù)臅r間內(nèi)返回令用戶基本滿意的結(jié)果。 用數(shù)據(jù)庫存儲產(chǎn)品結(jié)構(gòu)信息和零件期量標準使得算法的實現(xiàn)更加直接和容易,數(shù)據(jù)庫管理系統(tǒng)本身的高效性也令算法的運行更快捷。編制計劃過程的時間復(fù)雜度應(yīng)為O(m*n*r)。 輸入計劃期(開始時間,結(jié)束時間)計劃期超過12個月獲得計劃期內(nèi)產(chǎn)品產(chǎn)量選擇待計劃的產(chǎn)品統(tǒng)計計劃期內(nèi)零件需求量編制計劃 圖9 流程圖 4222 零件生產(chǎn)計劃查詢,零件信息查詢與修改,零件入庫 這幾個模塊的實現(xiàn)方法大體相同,即根據(jù)查詢條件編寫相應(yīng)的SQL語句查詢數(shù)據(jù)庫,返回用戶所需信息,或修改記錄集以更新數(shù)據(jù)庫。這幾個模塊沒有值得特別提請注意的算法,處理用戶輸入,響應(yīng)鍵盤和鼠標事件,生成查
26、詢條件等操作占用了大部分代碼。連接數(shù)據(jù)庫和操作數(shù)據(jù)集的工作由ADO對象和ODBC數(shù)據(jù)源負責。第五章 用戶環(huán)境簡介 本軟件安裝和刪除時,不經(jīng)過注冊表,不會改變用戶操作系統(tǒng)的設(shè)置,發(fā)布前經(jīng)過嚴格的測試,一般不會與其它軟件發(fā)生沖突,敬請放心使用。本軟件具有良好的向上和向下兼容性,可以運行于Win9x、Win2000等平臺上,在微型機上和服務(wù)器上都能順利的工作。運行此軟件需要Excel97和SQL_Server(2000或更高版本)的支持。仍在使用Excel95的用戶可能需要更改應(yīng)用到Excel95對象庫,否則規(guī)劃時可能出現(xiàn)難以預(yù)料的情況,我們對此表示歉意,并承諾在后續(xù)版本中予以解決。下面將簡單介紹幾
27、個界面。51生產(chǎn)規(guī)劃 編制零組件生產(chǎn)作業(yè)計劃是本文的核心內(nèi)容,也是設(shè)計和實現(xiàn)本軟件的目的所在。編制計劃前,用戶必須提供若干參數(shù)作為規(guī)劃的條件,這些參數(shù)有:計劃期(計劃起始時間,計劃終止時間),計劃期內(nèi)產(chǎn)品計劃產(chǎn)量,規(guī)劃開始前系統(tǒng)會提請用戶輸入上述參數(shù)。規(guī)劃完成后用戶可基于不同角度考察規(guī)劃結(jié)果,如查詢某種零件在某段時間內(nèi)的生產(chǎn)數(shù)量等。53 零件增加/更改 “零件增加”即在邏輯上的“產(chǎn)品使用零件”關(guān)系中新增記錄(在實現(xiàn)級,“產(chǎn)品使用零件”關(guān)系依照產(chǎn)品種類分割成若干關(guān)系,對應(yīng)著若干張表),“零件更改”即修改某種自制零件的基本信息(自制零件的基本信息存放在基本零件表中),如生產(chǎn)周期,批量,是否外購件等
28、。注意:界面中以藍色標簽標注的諸編輯框和組合框是必須由用戶填入的參數(shù)。5庫存零件查詢輸入庫存零件查詢輸入界面用于提取或更新某種零件的庫存量信息,提取信息的過程是根據(jù)用戶輸入的零件編號或零件名稱以及是否外購件等參數(shù)編制SQL語句,查詢中央零件庫零件庫存量表,取得滿足查詢條件的記錄并顯示在數(shù)據(jù)柵格中。更新特定零件的庫存量信息有兩種途徑,其一是用戶手工輸入零件編號和入庫數(shù)量,系統(tǒng)查找出對應(yīng)的記錄并修改其庫存數(shù)量字段,第二種方法是用戶在查詢結(jié)果(數(shù)據(jù)柵格)中選定需修改的記錄并輸入本次入庫數(shù)量以更新零件庫存量。第七章 展望和前景 用戶的需要是軟件升級的動力,就目前用戶的需求來分析,本系統(tǒng)至少可以在以下兩
29、個方向進行擴展。 一廠級零件生產(chǎn)計劃具體化到車間生產(chǎn)作業(yè)計劃 廠級生產(chǎn)調(diào)度部門將生產(chǎn)計劃下達到各車間,車間權(quán)衡生產(chǎn)能力和生產(chǎn)任務(wù),根據(jù)工序流程和工藝分離面等編寫車間生產(chǎn)作業(yè)計劃,包括派工計劃,設(shè)備維護計劃等。車間生產(chǎn)作業(yè)計劃是監(jiān)控車間日常生產(chǎn)活動,以保證按質(zhì)按量完成生產(chǎn)任務(wù)的重要媒介。目前這一級生產(chǎn)作業(yè)計劃仍由人工編制,耗時長,費工多,可靠性差。擴展后的系統(tǒng)有望提供對編制車間級生產(chǎn)作業(yè)計劃的支持。二零件生產(chǎn)計劃細化到原料供應(yīng)計劃 在制造裝配型企業(yè)中,零組件一般來說并不是原子級的生產(chǎn)和計劃單位:組件由若干零件組成,而制造一種零件需要若干種原料,原料供應(yīng)不足很容易干擾生產(chǎn)計劃的正常執(zhí)行,導致計劃失
30、效。所以只能作零件級的生產(chǎn)計劃是遠遠不夠的,而擴展系統(tǒng)以編制原料供應(yīng)計劃是容易的。我們只需提供“零件使用原料”關(guān)系而不必作太大的修改就能提供這一功能。 國內(nèi)已推出多款基于物料需求計劃技術(shù)或企業(yè)資源計劃技術(shù)的商業(yè)軟件,有些軟件公司甚至將這類軟件作為其唯一產(chǎn)品,而這類軟件工具也已獲得越來越多的國內(nèi)企業(yè)的重視與首肯,我們相信在不久的將來,生產(chǎn)管理系統(tǒng)將會成為企業(yè)運營管理不可或缺的強大工具。第八章 小結(jié) 在張厚武老師的耐心指導下,經(jīng)過本組成員的不懈努力,克服了種種困難,查閱了若干資料,終于完成了一個初步的系統(tǒng)。與大多數(shù)商業(yè)軟件相比,該系統(tǒng)顯得極其簡單,但是在實現(xiàn)過程中,我們經(jīng)過充分考慮,提出了一種新的
31、零件生產(chǎn)計劃,初步的實踐表明這種方法簡單明了,而且是正確有效的。系統(tǒng)的實現(xiàn)大量采用ADO技術(shù)連結(jié)和操縱關(guān)系數(shù)據(jù)庫,在這一過程中,本組成員對ADO技術(shù)加深了認識,能熟練使用ADO技術(shù)編制數(shù)據(jù)庫應(yīng)用,這將為將來的研究和開發(fā)工作打下基礎(chǔ)。在本系統(tǒng)的分析和實現(xiàn)過程中,充分考慮了擴展系統(tǒng)以增加新的模塊和功能或改變數(shù)據(jù)庫應(yīng)用的體系結(jié)構(gòu),最終形成一個完整的企業(yè)級資源計劃系統(tǒng)。 致 謝 謹向張厚武老師表達我們誠摯的謝意,在系統(tǒng)開發(fā)的過程中,張老師并不介意我們的愚鈍,而總是給予耐心的指導。對我們在工作過程中產(chǎn)生的怠惰畏難情緒時常予以提醒和疏導。沒有他的幫助,我們不可能在如此短的時間內(nèi)構(gòu)造系統(tǒng)和完成論文。同時,也
32、非常感謝系上各位領(lǐng)導、老師給予我們這樣一個機會,讓我們得以發(fā)展和提高。參考文獻生產(chǎn)管理手冊 南方工業(yè)出版社算法設(shè)計與分析 高等教育出版社軟件工程-實踐者的研究方法機械工業(yè)出版社 附錄附錄一部分源代碼 Dim intDateStartMonth As Integer '定義規(guī)劃起始時間變量月Dim intDateEndMonth As Integer '定義規(guī)劃終止時間變量月Dim txt1TorF As Boolean '定義邏輯變量來區(qū)別是響應(yīng)起始還是終止時間Dim txt2TorF As BooleanDim blnPlanDateEnd As Boolean
33、39;定義規(guī)劃時間輸入完成變量,用于確定規(guī)劃時間 '輸入完成標志Dim blnPlanDateGreaterCurDate As Boolean '定義重新規(guī)劃時是否有規(guī)劃時間 '大于原規(guī)劃時間 的邏輯變量Dim blnNoPart As Boolean Dim blnSingleQueryText6 As Boolean '在“單項查詢”方式中選擇按時段查詢,時定義'此兩個布爾變量來區(qū)別是起始時間(blnsinglequerytext6)還是終止時間(blnSingleQueryText7)Private Sub disPlanTable()Dim r
34、s As ADODB.RecordsetSet rs = New ADODB.RecordsetSet cnnDB = New ADODB.ConnectioncnnDB.Openrs.Open "select * from 零件生產(chǎn)規(guī)劃", cnnDB, adOpenDynamic, adLockOptimisticrs.MoveFirstDo While Not rs.EOF If rs!規(guī)劃時間 > CDate("04 - 4 - 1") And Trim(rs!零件編號) = Trim(Text3.Text) Then '滿足條件的
35、記錄加入零件生產(chǎn)規(guī)劃表中,在此 '之前,該表的內(nèi)容為空 '生成零件生產(chǎn)規(guī)劃表 Call PartProTable(rs!零件編號, rs!零件名稱, rs!規(guī)劃生產(chǎn)數(shù)量, rs!規(guī)劃時間) End If rs.MoveNextLooprs.CloseEnd SubPrivate Function PartProTable(ByVal PartID As String, ByVal PartName As String _, ByVal PartNum As Integer, ByVal PartDate As Date)Dim rs1 As ADODB.RecordsetSet
36、 rs1 = New ADODB.RecordsetcnnDB.Openrs1.Open "select * from 零件規(guī)劃表1", cnnDB, adOpenDynamic, adLockOptimisticrs1.AddNewcnnDB.BeginTrans rs1!零件編號 = PartID rs1!零件名稱 = PartName rs1!規(guī)劃時間 = PartDate rs1!規(guī)劃生產(chǎn)數(shù)量 = PartNum rs1.UpdatecnnDB.CommitTransrs1.CloseEnd FunctionPrivate Sub cmcDel_Click()Els
37、e MsgBox "沒有可刪除的記錄", vbOKOnly, "提示"End IfAdodc1.RefreshEnd SubPrivate Sub cmdExit_Click()Call CleanUpMe.HideUnload frmPlanEnd SubPrivate Sub cmdSingleQuery_Click()Dim startDate As StringDim endDate As StringIf Option3 Then '按編號選擇 If Trim(Text4.Text) = "" Then MsgBox
38、 "請選擇零件編號!", vbInformation, "提示" Exit Sub End If Adodc1.RecordSource = "select * from 零件生產(chǎn)規(guī)劃 where 零件別名=" & "'" & PartIDtoName(Trim(Text4.Text) & "'"ElseIf Option4 Then '按時間選擇 If Trim(Text5.Text) = "" Then MsgBox &qu
39、ot;請選擇查詢年月!", vbInformation, "提示" Exit Sub End If Dim QueryDate, temp As String temp = Text5.Text temp = Format(temp, "mm / dd / yyyy") Adodc1.RecordSource = "select * from 零件生產(chǎn)規(guī)劃 where 規(guī)劃時間=" & "#" & temp & "#"ElseIf Option5 Then
40、39;按時間段查詢 If Trim(Text6.Text) = "" Or Trim(Text7.Text) = "" Then MsgBox "初始/終止時間不能為空!", vbOKOnly + vbInformation, "提示" Exit Sub End If startDate = Format(CDate(Text6.Text), "mm/dd/yyyy") endDate = Format(CDate(Text7.Text), "mm/dd/yyyy") If
41、startDate > endDate Then MsgBox "初始時間不能大于終止時間!", vbInformation + vbOKOnly, "提示" Exit Sub End If Adodc1.RecordSource = "select * from 零件生產(chǎn)規(guī)劃 where 規(guī)劃時間 between " & "#" & startDate & "#" & "and" & "#" & en
42、dDate & "#"Else MsgBox "請選擇查詢方式!", vbInformation + vbOKOnly, "提示"End IfAdodc1.RefreshEnd SubPrivate Sub Command1_Click()Adodc1.RecordSource = "select * FROM 零件生產(chǎn)規(guī)劃"Adodc1.RefreshEnd SubPrivate Sub cmbProduct_Click()Dim i As IntegercmbProduct.RefreshcmbSele
43、ct.Refreshi = cmbProduct.ListIndexcmbSelect.AddItem (cmbProduct.List(i)cmbSelect.RefreshcmbSelect.Text = cmbSelect.List(0)cmbProduct.RemoveItem (i)cmbProduct.RefreshDim myText As StringmyText = cmbProduct.List(0)cmbProduct.Text = myTextEnd SubPrivate Sub cmdPlan_Click()blnPlanDateGreaterCurDate = Fa
44、lse '首先假定當前規(guī)劃時間包含原規(guī)劃時間變量為假Call PlanDateGreaterCurDate '調(diào)用此過程判斷當前規(guī)劃時間是否包含原規(guī)劃時間If blnPlanDateGreaterCurDate = True Then '重新規(guī)劃時間大于原規(guī)劃時間 Dim strMsg As String strMsg = "先前的規(guī)劃數(shù)據(jù)將被刪除!" & vbCr & "您確定要重新規(guī)劃嗎?" If MsgBox(strMsg, vbYesNo, "提示") = vbNo Then Unloa
45、d Me Exit Sub End If lblprompt.Visible = True Label5.Visible = False '“規(guī)劃需求統(tǒng)計”表中的的時間大于規(guī)劃初始時間,其內(nèi)容將被刪除 blnNoPart = False Call DelPrePlan If blnNoPart = True Then Exit SubEnd Iflblprompt.Visible = TrueLabel5.Visible = FalseCall CalPartReq '調(diào)用計算零件各月需求過程,結(jié)果在“零件需求統(tǒng)計”表中Call PlanstrMsg = "規(guī)劃已經(jīng)完
46、成,是否重新顯示規(guī)劃結(jié)果?"If MsgBox(strMsg, vbYesNo, "詢問") = vbYes Then Label5.Visible = True Adodc1.RefreshEnd Iflblprompt.Visible = FalsecmdPlan.Enabled = FalseLabel5.Visible = TruePlanAgain.Enabled = TrueEnd SubPrivate Sub Plan()Set rst = New ADODB.RecordsetDim PartID As String '零件號Dim Par
47、tName As String '零件名稱Dim PartReqNum As Integer '零件需求數(shù)量Dim PartProNum As Integer '零件生產(chǎn)數(shù)量Dim PartCycleNum As Integer '每期零件生產(chǎn)的最優(yōu)量(期量值中的數(shù)量)Dim PartRemainder As Integer '模擬零件庫中的零件剩余量Dim PartDate As Date '零件需求(或生產(chǎn))時間Dim i, j, sum As IntegerDim curDate As Date '定義要規(guī)劃的當前時間(年月)變量C
48、all SimRemainPart '規(guī)劃開始時,模擬零件庫的零件庫存數(shù)量為中央零件庫數(shù)量If intDateStartYear = intDateEndYear Then '如果規(guī)劃時間為同一年 For i = intDateStartMonth To intDateEndMonth '從第一月到最后一月 curDate = CDate(CStr(intDateStartYear) & "-" & CStr(i) rst.Open "select * from 零件需求統(tǒng)計 ", cnnDB, adOpenDyn
49、amic, adLockOptimistic Do While Not rst.EOF If curDate = rst!需求時間 Then '找出與本月相同的時間的記錄 PartID = rst!零件編號 PartReqNum = rst!需求數(shù)量 PartRemainder = chkPartRemainder(PartID) '調(diào)出零件庫存量 PartCycleNum = chkPartCycleNUM(PartID) '調(diào)出零件期量的數(shù)量值 PartName = chkPartName(PartID) '由零件編號在“基本零件”表中找出其對應(yīng)名稱 If
50、PartRemainder < PartReqNum Then '如果(模擬)庫存量少于需求量,則該月應(yīng)生產(chǎn) If (PartRemainder + PartCycleNum) < PartReqNum Then '如果剩余零件與該零件的期量值 '之和小于該月需求量,則優(yōu)先滿足生產(chǎn)要求 PartProNum = PartReqNum - PartRemainder Call AddPartProPlan(PartID, PartName, PartProNum, curDate) '零件的該月生產(chǎn)量 Call UpdateRemainder(Part
51、ID, 0) '更新模擬零件庫剩余量 Else PartProNum = PartCycleNum '按期量值生產(chǎn) Call AddPartProPlan(PartID, PartName, PartProNum, curDate) '零件的該月生產(chǎn)量 Call UpdateRemainder(PartID, PartRemainder + PartCycleNum - PartReqNum) '更新模擬零件庫剩余量 End If Else '模擬零件庫中零件滿足該月的需求,即該月不用生產(chǎn) Call UpdateRemainder(PartID, Par
52、tRemainder - PartReqNum) '更新模擬零件庫剩余量 End If End If rst.MoveNext Loop rst.Close Next iElse '為跨年度規(guī)劃 For i = intDateStartMonth To intDateEndMonth '從第一月到最后一月 '當前時間 If i <= 12 Then curDate = CDate(CStr(intDateStartYear) & "-" & CStr(i) Else curDate = CDate(CStr(intDateEndYear) & "-" & CStr(i
溫馨提示
- 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)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年調(diào)脂抗動脈粥樣硬化藥項目提案報告模范
- 2025年輸注延長管項目申請報告模板
- 2025年衛(wèi)生巾供應(yīng)合同格式
- 2025年加工服務(wù)協(xié)作協(xié)議模板
- 2025年合作研發(fā)新范本協(xié)議書
- 2025年個人房產(chǎn)購買協(xié)議標準文本
- 2025年農(nóng)村住宅用地互易協(xié)議標準化
- 2025年電氣安裝工程策劃合作框架協(xié)議范本提供
- 2025年修理廠技術(shù)師傅指導學徒合同
- 2025年信用卡消費抵押貸款協(xié)議書
- 2025版職業(yè)院校與企業(yè)合作育人合同3篇
- 自動化設(shè)備項目評估報告模板范文
- DB32T 4969-2024大型醫(yī)用設(shè)備使用監(jiān)督管理平臺基礎(chǔ)數(shù)據(jù)采集規(guī)范
- 2025年廣東廣州市海珠區(qū)官洲街道辦事處政府雇員招聘5人高頻重點提升(共500題)附帶答案詳解
- 《道路交通安全法》課件完整版
- 初中2025教學工作計劃
- 部編版教科版三年級科學下冊全冊教案【統(tǒng)編教材】
- 2024年度市政工程項目三方合作協(xié)議3篇
- 【大學課件】機電設(shè)備管理技術(shù)概論
- 切削加工中的刀具路徑規(guī)劃算法考核試卷
- 《推拿學》期末考試復(fù)習題庫(含答案)
評論
0/150
提交評論