產(chǎn)量分析

寫(xiě)在前面

研究主題:狀態(tài)點(diǎn)和緩存點(diǎn)的產(chǎn)量計(jì)算

攻克難點(diǎn):SAP HANA參數(shù)的使用

計(jì)算工具:SAP HANA

引子

滅霸用行星飛船炸毀了復(fù)仇者聯(lián)盟基地,企圖毀滅宇宙,建立新宇宙……

鋼鐵俠站在屋脊的最高處,滿(mǎn)面疲倦,凝神仰望三萬(wàn)五千里英尺外的繁星點(diǎn)點(diǎn)。向上看,那里一望無(wú)垠,不是安詳靜謐,而是腥風(fēng)血雨;向下看,有這個(gè)夜里最挑動(dòng)他內(nèi)心深處所有情緒的那根琴弦,他的女兒,摩根,長(zhǎng)長(zhǎng)的眸子在月光下閃動(dòng),仿佛記錄了這世間所有的單純與美好?!皭?ài)你,三千萬(wàn)次”,鋼鐵俠在心中默念……

“這個(gè)假期休的夠久了吧,老兄”,鋼鐵俠突然覺(jué)得天地在晃動(dòng),回頭一看,原來(lái)是大塊頭浩克,沒(méi)等鋼鐵俠開(kāi)口,浩克繼續(xù)說(shuō)道:“聽(tīng)著,至少為這個(gè)小天使,你必須重新戰(zhàn)斗!”

鋼鐵俠抬頭看著他,“我的手炮和我一樣,度假太久了,故障停機(jī)了,你至少得給我的武器一點(diǎn)時(shí)間吧”。浩克松了一口氣,笑道:“早已準(zhǔn)備就緒”。

鋼鐵俠和浩克來(lái)到薩哈爾拉工廠(chǎng),這里生產(chǎn)復(fù)仇者聯(lián)盟的所有武器,薩哈爾拉是隱藏在新基地的地下工廠(chǎng),24小時(shí)不間斷生產(chǎn),為復(fù)仇者們提供最強(qiáng)大的戰(zhàn)斗武器。

屏幕上實(shí)時(shí)展示每個(gè)車(chē)間的生產(chǎn)情況,鋼鐵俠十分好奇,向浩克詢(xún)問(wèn)細(xì)節(jié),浩克娓娓道來(lái):

薩哈爾拉工廠(chǎng)共有3個(gè)生產(chǎn)車(chē)間,所有武器的加工過(guò)程都依次經(jīng)過(guò)1號(hào)、2號(hào)、3號(hào)車(chē)間,生產(chǎn)工序由小到大遞增,工序劃分如下:

工序劃分

每個(gè)武器經(jīng)過(guò)每個(gè)生產(chǎn)工位都會(huì)添加一條記錄,記錄各種武器在各個(gè)工位的生產(chǎn)日期,形成總體生產(chǎn)信息記錄,如下:

總體生產(chǎn)信息記錄

目標(biāo)結(jié)果:輸入指定任意日期或者默認(rèn)當(dāng)前時(shí)刻,計(jì)算該日期或當(dāng)前時(shí)刻的各車(chē)間進(jìn)出入產(chǎn)品數(shù)量和緩存產(chǎn)品數(shù)量。

計(jì)算思路

零部件按照1號(hào)車(chē)間、2號(hào)車(chē)間、3號(hào)車(chē)間的順序進(jìn)行生產(chǎn),不同產(chǎn)品的加工工位可能不同,但都必須通過(guò)每個(gè)車(chē)間的起始和結(jié)束工位。

首先,對(duì)工位進(jìn)行分類(lèi)和定義,將工位分為兩種類(lèi)型:

1.狀態(tài)工位:每個(gè)生產(chǎn)車(chē)間的起始/結(jié)束工位,計(jì)算每日通過(guò)起始/結(jié)束工位的產(chǎn)品數(shù)量。

2.緩存工位:每個(gè)生產(chǎn)車(chē)間的非起始/結(jié)束工位,計(jì)算每日最后狀態(tài)位于各個(gè)車(chē)間內(nèi)的產(chǎn)品數(shù)量。

工位劃分

在計(jì)算時(shí),需要注意一個(gè)十分重要的問(wèn)題:

狀態(tài)工位的數(shù)量計(jì)算是每日開(kāi)始到每日結(jié)束,緩存工位的數(shù)量計(jì)算是從過(guò)往到每日結(jié)束。

產(chǎn)生這種差別的原因是,對(duì)于緩存工位的計(jì)算來(lái)說(shuō),可能出現(xiàn)產(chǎn)品一整日都沒(méi)有生產(chǎn)的情況,它停在了某一生產(chǎn)車(chē)間,但是因?yàn)闆](méi)有生產(chǎn),所以生產(chǎn)信息記錄表里沒(méi)有那一日的數(shù)據(jù),而實(shí)際上它仍然停留在車(chē)間內(nèi)。

計(jì)算過(guò)程

狀態(tài)工位的計(jì)算

1.計(jì)算視圖-STATUS_BASE:獲取每日各車(chē)間進(jìn)出入工位的產(chǎn)品數(shù)量,如下圖:

STATUS_BASE

該計(jì)算模型可分為兩步:

步驟1:生產(chǎn)信息記錄表與工位劃分表進(jìn)行關(guān)聯(lián)(實(shí)際并沒(méi)有關(guān)聯(lián)的字段),join_1的結(jié)果類(lèi)似于兩者的笛卡爾積;判斷工位是否等于車(chē)間起始/結(jié)束工位(判斷條件如下)。計(jì)算結(jié)果如下圖。

判斷條件
步驟1計(jì)算結(jié)果

步驟2:篩選出位于車(chē)間起始/結(jié)束工位的數(shù)據(jù),即TYPE為進(jìn)入/離開(kāi)的數(shù)據(jù)。

最終得到結(jié)果:

STATUS_BASE計(jì)算結(jié)果

2.計(jì)算視圖-STATUS:添加參數(shù)INPUT_DATE,輸入指定日期或默認(rèn)當(dāng)前日期,得出指定日期的各車(chē)間進(jìn)出入數(shù)量。

STATUS

篩選出日期等于INPUT_DATE的數(shù)據(jù)(INPUT_DATE默認(rèn)當(dāng)前日期),根據(jù)日期、車(chē)間、類(lèi)型(進(jìn)入/離開(kāi)),對(duì)產(chǎn)品進(jìn)行聚合(count),得到以下計(jì)算結(jié)果(輸入日期為2015-08-06為例)。

STATUS計(jì)算結(jié)果

緩存工位的計(jì)算

1.計(jì)算視圖-PROCESS_BASE:獲取每日各車(chē)間內(nèi)部的產(chǎn)品數(shù)量,計(jì)算方法與狀態(tài)工位基本類(lèi)似,區(qū)別在于步驟1TYPE的判斷方式不同。

PROCESS_BASE

步驟1:計(jì)算思路與狀態(tài)工位基本相同,區(qū)別在于TYPE的判斷方式不同,緩存計(jì)算時(shí),認(rèn)為當(dāng)工序介于某個(gè)車(chē)間的起始和結(jié)束工位時(shí),則表明該產(chǎn)品位于該車(chē)間內(nèi)。

判斷條件

步驟1計(jì)算結(jié)果:

步驟1計(jì)算結(jié)果

步驟2:篩選出位于車(chē)間內(nèi)的緩存數(shù)據(jù),即TYPE為1的數(shù)據(jù)。最終結(jié)果如下:

PROCESS_BASE計(jì)算結(jié)果

2.計(jì)算視圖PROCESS:添加參數(shù)INPUT_DATE,輸入指定日期或默認(rèn)當(dāng)前日期,得出指定日期的各車(chē)間緩存數(shù)量。

PROCESS

步驟1:添加參數(shù)INPUT_DATE(默認(rèn)當(dāng)前日期);篩選數(shù)據(jù),此處有別于狀態(tài)工位的計(jì)算,時(shí)間不是等于INPUT_DATE,而是小于,是為了避免上文提到的產(chǎn)品一整天都并未發(fā)生工位變化的情況。

步驟2:選出每種產(chǎn)品的最后狀態(tài)(工序最大)

步驟3:因?yàn)椴襟E2丟失了最后狀態(tài)對(duì)應(yīng)的車(chē)間,步驟三再次關(guān)聯(lián),找回車(chē)間。

最后根據(jù)車(chē)間,對(duì)產(chǎn)品進(jìn)行聚合(count),得到以下計(jì)算結(jié)果(輸入日期以2015-08-06為例)。

PROCESS計(jì)算結(jié)果(?輸入?yún)?shù)2015-08-06 )

說(shuō)明

1.本例中沒(méi)有將起始和結(jié)束工位看做車(chē)間內(nèi)的緩存工位,即左右全開(kāi),可以根據(jù)實(shí)際情況設(shè)為左開(kāi)右閉或左閉右開(kāi),將會(huì)影響計(jì)算結(jié)果。

2.本例的應(yīng)用場(chǎng)景是無(wú)需同時(shí)獲得每日生產(chǎn)數(shù)據(jù)的情況,比如生產(chǎn)車(chē)間的LED大屏,僅需實(shí)時(shí)顯示當(dāng)前生產(chǎn)數(shù)量,這種情況可以采取輸入?yún)?shù)的形式,可以大大提高計(jì)算速度。

3.為避免篇幅較長(zhǎng)和偏離重點(diǎn),本文未將狀態(tài)和緩存二者計(jì)算結(jié)果合并。實(shí)際上,為了能提供給前端干凈整齊的計(jì)算結(jié)果,應(yīng)當(dāng)將二者合并。


“嘿,你還在聽(tīng)嗎?老兄”,浩克飛快的瞥了一眼鋼鐵俠。

鋼鐵俠一時(shí)語(yǔ)塞,轉(zhuǎn)過(guò)身去,他腦子里只有一個(gè)念頭,無(wú)奈的開(kāi)了口:“我只關(guān)心什么時(shí)候才能和我的手炮一起戰(zhàn)斗,這些,是你這個(gè)物理學(xué)家該擔(dān)心的事情!”

浩克笑笑,“沒(méi)辦法,四肢發(fā)達(dá),頭腦更發(fā)達(dá)。”

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容