張龍 仲梁維
摘? 要:文章主要研究銷售的大數(shù)據(jù)分析,以及客戶需求對往后生產(chǎn)計劃的影響。以VB.net和SQL還有Excel為平臺,通過程序?qū)崿F(xiàn)對銷售數(shù)據(jù)的統(tǒng)計,銷售數(shù)據(jù)的保存,銷售數(shù)據(jù)的預(yù)測、產(chǎn)品生產(chǎn)過程中的故障與分析、成本優(yōu)化等。銷售數(shù)據(jù)可以通過SQL保存,可以通過Excel產(chǎn)出折線圖從而對產(chǎn)品數(shù)據(jù)分析,銷售數(shù)據(jù)也可以通過Excel進(jìn)行周期性預(yù)測,生產(chǎn)過程的故障也可以通過檢索相關(guān)信息達(dá)到檢測目的;對上季度客戶需求多的產(chǎn)品可以在下季度實現(xiàn)生產(chǎn)。
關(guān)鍵詞:VB.net;SQL;大數(shù)據(jù)分析;生產(chǎn)計劃;故障分析;數(shù)據(jù)預(yù)測;成本優(yōu)化
中圖分類號:TP31? ? ?文獻(xiàn)標(biāo)識碼:A
Abstract: This paper studies the big data of sales and the impact of customer demand for production planning. Using VB.net, SQL and Excel as platforms, sales data is collected, preserved and used to make sales predictions, for fault analysis and cost optimization of the production process. Sales data can be saved in SQL relational database, line chart can be produced in Excel to analyze product data, sales data can be periodically predicted in Excel, and faults in production process can be detected by retrieving relevant information. The products that the customers demand high in the previous quarter can be timely produced in the following quarter.
Keywords: VB.net; SQL; big data analysis; production planning; fault analysis; data forecasting; cost optimization
1? ?引言(Introduction)
大數(shù)據(jù)分析指的是對規(guī)模巨大的數(shù)據(jù)進(jìn)行分析。特別是在企業(yè)中,對于分析每一季度的銷售數(shù)據(jù)的變化,從而可以找出產(chǎn)品銷售的規(guī)律性[1],如哪種產(chǎn)品更受歡迎、不同地區(qū)對不同產(chǎn)品的需求量從而對該地區(qū)需求產(chǎn)品重點投放等。正是因為數(shù)據(jù)量大、類型大等特點,如何從眾多數(shù)據(jù)中尋找規(guī)律是大數(shù)據(jù)分析的重中之重[2]。
本文通過對企業(yè)本年度銷售數(shù)據(jù)、生產(chǎn)成本數(shù)據(jù)、故障檢測數(shù)據(jù)進(jìn)行分析,從而實現(xiàn)對銷售數(shù)據(jù)保存,以及基于上一季度銷售數(shù)據(jù)從而預(yù)測處下一季度的銷售數(shù)據(jù);也可以通過分析生產(chǎn)成本數(shù)據(jù)從而簡單進(jìn)行生產(chǎn)成本的優(yōu)化;當(dāng)然通過對生產(chǎn)過程的故障檢測數(shù)據(jù)分析,從而給出故障部位的監(jiān)測數(shù)據(jù)等[3]。
2? ?數(shù)據(jù)分析流程圖(Data analysis flow chart)
整個數(shù)據(jù)分析包括五個步驟,銷售數(shù)據(jù)的初步分析、銷售數(shù)據(jù)的預(yù)測、故障分析與檢測、成本優(yōu)化、需求產(chǎn)品的影響。其中各個模塊的數(shù)據(jù)都是由VB通過編程產(chǎn)生的,各個模塊的功能就在于對隨機(jī)產(chǎn)生的數(shù)據(jù)進(jìn)行分析從而給出分析的結(jié)果。而后是對這些數(shù)據(jù)的保存,以期以后的分析和提取。因數(shù)據(jù)分析的數(shù)據(jù)量大的特性,所以本文的數(shù)據(jù)承繼此特性對其進(jìn)行分析。
3? ?數(shù)據(jù)庫的創(chuàng)建(Database creation)
數(shù)據(jù)庫是保存產(chǎn)品銷售數(shù)據(jù)及生產(chǎn)數(shù)據(jù)重要軟件,其內(nèi)的數(shù)據(jù)表的格式可以起到分類數(shù)據(jù)的作用,所以在進(jìn)行大數(shù)據(jù)分析之前,應(yīng)先創(chuàng)建數(shù)據(jù)庫及數(shù)據(jù)表。本文數(shù)據(jù)庫創(chuàng)建名為“數(shù)據(jù)分析”。數(shù)據(jù)庫創(chuàng)建的代碼如下:
通過提示“執(zhí)行完成”對話框來顯示數(shù)據(jù)庫創(chuàng)建完成。
4? 銷售數(shù)據(jù)的排序及保存(Sorting and saving of sales data)
本文中銷售數(shù)據(jù)包括月利潤及每個型號的月利潤,所以對銷售數(shù)據(jù)的排序就涉及這兩組利潤的排序,其中月利潤只是單純的升序以及降序排列,一般采取降序排序,便于觀察的個月份的利潤較高些,下面給出降序排列的程序:
myExcel.ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Clear() myExcel.ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add(Key:=myExcel.Range("B1"), _ SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal)
至于升序只需將xlDescending改為xlAscending即可。
再就是型號利潤的排序,因為每種型號每月皆有銷售利潤,須將每種型號的月利潤提取出來再相加排序即可。圖2為各產(chǎn)品型號月利潤排序圖。
而數(shù)據(jù)保存包括EXCEL表的保存和數(shù)據(jù)庫的保存,本文給出數(shù)據(jù)庫的保存截圖以及保存過程圖。本文數(shù)據(jù)庫的保存是通過OpenFileDialog打開外部保存的EXCEL文件從而存儲到數(shù)據(jù)庫,并在VB的Datagridview中顯示數(shù)據(jù),當(dāng)跳出導(dǎo)入成功的對話框就表示數(shù)據(jù)庫保存成功。
5? ?銷售數(shù)據(jù)的預(yù)測與保存(Forecast and storage of sales data)
銷售數(shù)據(jù)的預(yù)測是基于上一季度的數(shù)據(jù),通過設(shè)定周期從而給出下一季度的銷售數(shù)據(jù)預(yù)測。其預(yù)測可以通過Python中的回歸算法、ARIMA算法、BP神經(jīng)網(wǎng)絡(luò)模型等[4]實現(xiàn),但本文就簡單通過EXCEL中的 “預(yù)測工作表”功能進(jìn)行實現(xiàn)。通過選取月份及月總利潤從而預(yù)測出下一年月份與月總利潤的數(shù)據(jù)。預(yù)測周期設(shè)定為7。圖2為銷售數(shù)據(jù)預(yù)測圖。
6? ?故障分析與檢測及存儲(Fault analysis, detection and storage)
故障數(shù)據(jù)的獲取是由傳感器所得,我們對數(shù)據(jù)的分析取決于數(shù)據(jù)的類型,不同數(shù)據(jù)類型可能會對數(shù)據(jù)分析產(chǎn)生不同的結(jié)果。本文對故障進(jìn)行編碼,對設(shè)備同樣進(jìn)行編碼。不同的設(shè)備由多個不同的部件組成,故障就有可能在這些部件中產(chǎn)生,所以對故障進(jìn)行編碼就可以快速對應(yīng)出部位。然后對這些故障編碼進(jìn)行統(tǒng)計就可以找出發(fā)生最多的故障部位[5]。本文列出了10中設(shè)備,每種設(shè)備由四個部件組成,所以產(chǎn)生了40中故障編碼。而不同的故障又屬于不同的系統(tǒng),本文列出了5中傳動系統(tǒng),分別為“送片系統(tǒng)”“支架系統(tǒng)”“機(jī)械系統(tǒng)”“電氣系統(tǒng)”“傳動系統(tǒng)”。當(dāng)然,在進(jìn)行統(tǒng)計時,若對應(yīng)的設(shè)備出錯,則需精細(xì)到每個組成部件,如編碼為“3”的設(shè)備出現(xiàn)問題,那么故障編碼只能是設(shè)備“3”下屬的組成部件對應(yīng)的編碼。
對故障分析的數(shù)據(jù)包括眾數(shù)所屬的故障編碼、設(shè)備編碼、設(shè)備型號、故障型號等。最后是故障分析過程數(shù)據(jù)的存儲。同上述存入雷同,差別只是要將故障編碼表及設(shè)備編碼表和產(chǎn)品故障清單全部導(dǎo)入數(shù)據(jù)庫。因其都在一個EXCEL文件內(nèi),只需將下列代碼相應(yīng)部位更改即可:
7? ?成本優(yōu)化及存儲(Cost optimization and storage)
類似于故障分析里面的數(shù)據(jù)類型,一個產(chǎn)品由四個部件組成,但就成本模塊來說,每個模塊會有多個廠家進(jìn)行生產(chǎn),本文對成本優(yōu)化的目的就是對零部件生產(chǎn)廠家的篩選,根據(jù)成本最少從而實現(xiàn)優(yōu)化(注:此成本與銷售數(shù)據(jù)中的預(yù)設(shè)成本不同)。雖成本可以從更多方面實現(xiàn)優(yōu)化,但本文只通過價格進(jìn)行了優(yōu)化,表明成本優(yōu)化是完全可以通過數(shù)據(jù)分析完美實現(xiàn)的[6]。實際上也可以對供應(yīng)商進(jìn)行篩選,采用關(guān)聯(lián)規(guī)則的裝備制造業(yè)供應(yīng)商質(zhì)量評價模型,從而指導(dǎo)企業(yè)選擇供應(yīng)商[7]。
根據(jù)價格最低實現(xiàn)篩選,如零件1有四個生產(chǎn)廠家,其價格各不相同,則選取其中價格最低就能實現(xiàn)優(yōu)化目的。其具體的篩選程序如下:
8? 需求對產(chǎn)品的影響(Impact of demand on products)
當(dāng)公司在上一季度的產(chǎn)品銷售過程中,若有客戶需要本公司未開發(fā)過的產(chǎn)品,則需要根據(jù)總客戶需求來評判是否在下一季度將客戶需求產(chǎn)品加入生產(chǎn)計劃當(dāng)中。所以在上一季度開始就要對需求產(chǎn)品進(jìn)行統(tǒng)計記錄,當(dāng)達(dá)到一定數(shù)據(jù)后就允許加入生產(chǎn)計劃當(dāng)中。本文對需求產(chǎn)品的數(shù)據(jù)要求假定為100,當(dāng)對需求統(tǒng)計達(dá)到100后,會加入銷售數(shù)據(jù)中,但本身是沒有銷售數(shù)據(jù)的,只是為下一季度添加生產(chǎn)。對需求產(chǎn)品的篩選及導(dǎo)入的代碼如下:
不同的需求影響可以運用不同的算法或者不同的方向切入分析,比如將大數(shù)據(jù)分析方法綜合應(yīng)用到經(jīng)銷商的客戶價值分析中[8],或是采用關(guān)聯(lián)規(guī)則算法從而影響生產(chǎn)計劃[9]等。
9? ?結(jié)論(Conclusion)
大數(shù)據(jù)意為需要新處理模式才能具有更強(qiáng)的決策力、洞察發(fā)現(xiàn)力和流程優(yōu)化能力來適應(yīng)海量、高增長率和多樣化的信息資產(chǎn)[10]。雖然本文只通過簡單的編程從而實現(xiàn)對百組數(shù)據(jù)的整理,但通過本文的程序整理也可以看出,企業(yè)了解客戶從而調(diào)整生產(chǎn)計劃以求達(dá)到客戶需求;客戶了解企業(yè),通過企業(yè)公布的部分?jǐn)?shù)據(jù),客戶可以選擇滿意的企業(yè)。大數(shù)據(jù)分析對一企業(yè)意義正在于此,鎖定資源,規(guī)劃生產(chǎn),以及開展服務(wù),企業(yè)所遇到的問題基本能在數(shù)據(jù)中找到。
參考文獻(xiàn)(References)
[1] Harding J A,Shahbaz M,Srinivas,et al.Data Mining inManufacturing:A Review[M].VDM:Verlag Dr. Muller,2006:969-976.
[2] 陳承貴.基于數(shù)據(jù)挖掘技術(shù)倉庫管理系統(tǒng)的應(yīng)用與研究[D].成都:電子科技大學(xué),2009.
[3] 譚軍,余紹軍.數(shù)據(jù)挖掘在制造業(yè)中的應(yīng)用[C].全國電子信息技術(shù)與應(yīng)用學(xué)術(shù)會議,2011.
[4] 王鵬鵬,廖小平,鄧建新.ERP環(huán)境下銷售決策支持的研究與實現(xiàn)[J].機(jī)械設(shè)計與制造,2008(5):219-221.
[5] 辛旭明.基于過程監(jiān)控的數(shù)據(jù)挖掘系統(tǒng)及其應(yīng)用[D].上海:東華大學(xué),2004.
[6] 周明.基十?dāng)?shù)據(jù)挖掘的制造業(yè)采購DSS理論及方法研究[D].天津:天津大學(xué),2009.
[7] 宋建聰.數(shù)據(jù)挖掘在裝備制造業(yè)質(zhì)量管理中的應(yīng)用研究[D].廣州:廣東工業(yè)大學(xué),2013.
[8] 李燁.數(shù)據(jù)挖掘技術(shù)在卡車制造商的客戶價值分析應(yīng)用研究[D].柳州:廣西科技大學(xué),2013.
[9] 汪奇,黃洪,鄭曉群.筆記本電腦 BTO生產(chǎn)計劃中兲聯(lián)觃則挖掘的應(yīng)用研究[J].商場現(xiàn)代化,2007(36):30-31.
[10] 劉瑋.企業(yè)的變革思維——大數(shù)據(jù)時代的來臨[J].辦公自動化,2014(15):44-45.