運行重複值的計數JSL腳本 - 第2部分<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />我很高興有人在幾天前提出了這個計數問題,但是,我想進一步提出許多製造/生產線會遇到的類似問題。
使用相同的顏色示例,具有不同的顏色產品,如紅色,藍色,綠色,黃色,白色。通過使用count_color腳本,我們可以直接計算每種顏色的計數。
然後,如果我將累計5個相同顏色的產品計數到一個裝箱作為裝運單位。當某個顏色產品達到其最大拳擊容量時,即將推出的具有相同顏色的產品將自動將計數重置為1。為了區分包含相同顏色的生產的每個盒子的生產順序,Box列應該保持像RED-1,RED-2,....
另一個約束是count_color需要區分/排序產品在哪個Shift(日或夜)。請參考下表。
我希望可以設計一個有用的jsl腳本來幫助滿足生成count_color列和Box列的這種請求。
謝謝
| 顏色 | count_color | 轉移 | 框 |
|---|
| ..... | ..... | | |
| 紅色 | 4 | 晚 | RED-4 |
| 紅色 | 五 | 晚 | RED-4 |
| 紅色 | 1 | 天 | RED-1 |
| 紅色 | 2 | 天 | RED-1 |
| 藍色 | 1 | 晚 | BLUE-3 |
| 黃色 | 1 | 天 | YELLOW-2 |
| 藍色 | 2 | 晚 | BLUE-3 |
| 綠色 | 1 | 晚 | 綠色-2 |
| 紅色 | 3 | 天 | RED-1 |
| 藍色 | 1 | 天 | BLUE-1 |
| 綠色 | 1 | 晚 | 綠色-2 |
| 白色 | 1 | 晚 | WHITE-1 |
| 白色 | 1 | 天 | WHITE-1 |
| 紅色 | 4 | 天 | RED-1 |
| 紅色 | 五 | 天 | RED-1 |
| 紅色 | 1 | 天 | RED-2 |
| 藍色 | 3 | 晚 | BLUE-3 |
| 黃色 | 2 | 天 | YELLOW-2 |
| 紅色 | 1 | 晚 | RED-1 |
Re:運行重複值的計數JSL Script-Part2謝謝,MS。
Re:運行重複值的計數JSL Script-Part2如果將其粘貼到公式編輯器中,我的公式會給出預期結果。要按腳本添加它,就像您似乎已經完成的那樣,您需要使用NameExpr()技巧來確保在進入公式屬性之前不評估表達式(參見最近這篇博客 )。如果你看一下MS_Box_Script列中的公式,你會注意到它不是我在上面發布的。
DT = 當前數據表 () ;
DT << 新欄目 ( “真正的MS_Box_Script” ,
式 ( 名稱Expr ( EVAL ( Eval Expr ( : 顏色 || “ - ” || 燒焦 ( 天花板 ( Col Sum ( 行 () <= EXPR ( 行 ()) , : 顏色 , : 轉移 ) / 五 ))))))
) ;
Re:運行重複值的計數JSL Script-Part2謝謝,它很棒!
Re:運行重複值的計數JSL Script-Part2你好MS,
感謝您為我編寫框腳本!
但是,您編寫的腳本不能用作例外。
設計是有一個盒子商店5(最大)相同顏色的產品,然後一個新的!空的將進來存儲即將推出的相同顏色的產品。Ť 盒子描述,即使是用於存儲相同顏色的產品,也應該從1移動到2或2到3,就像n + 1一樣。 但是,您提供的腳本對於相同的顏色都具有相同的框#。
我用過的Box腳本是
dt =當前數據表();
dt <<新列(“MS_Box_Script”,
數字,
“連續”,
格式(“最佳”,4),
公式(Eval(Eval Expr(:color ||“ - ”|| Char(Ceiling(Col Sum(Row()<= Expr(Row()),: color,:Shift)/ 5)+1)))) );
我附加了示例文件,“Excepted Box Result”列應該是腳本應該能夠執行的結果。
你能幫忙解決這個問題嗎?非常感謝,
| 顏色 | 轉移 | 例外箱子結果 | MS_Box_Script |
| 藍色 | 天 | BLUE-1 | BLUE-1 |
| 藍色 | 天 | BLUE-1 | BLUE-1 |
| 藍色 | 天 | BLUE-1 | BLUE-1 |
| 藍色 | 晚 | BLUE-1 | BLUE-1 |
| 藍色 | 晚 | BLUE-1 | BLUE-1 |
| 藍色 | 晚 | BLUE-1 | BLUE-1 |
| 藍色 | 晚 | BLUE-1 | BLUE-1 |
| 綠色 | 天 | GREEN-1 | GREEN-1 |
| 綠色 | 天 | GREEN-1 | GREEN-1 |
| 綠色 | 天 | GREEN-1 | GREEN-1 |
| 綠色 | 天 | GREEN-1 | GREEN-1 |
| 綠色 | 天 | GREEN-1 | GREEN-1 |
| 綠色 | 天 | 綠色-2 | GREEN-1 |
| 綠色 | 天 | 綠色-2 | GREEN-1 |
| 綠色 | 天 | 綠色-2 | GREEN-1 |
| 綠色 | 晚 | GREEN-1 | GREEN-1 |
| 紅色 | 天 | RED-1 | RED-1 |
| 紅色 | 天 | RED-1 | RED-1 |
| 紅色 | 天 | RED-1 | RED-1 |
| 紅色 | 天 | RED-1 | RED-1 |
| 紅色 | 天 | RED-1 | RED-1 |
| 紅色 | 天 | RED-2 | RED-1 |
| 紅色 | 天 | RED-2 | RED-1 |
| 紅色 | 天 | RED-2 | RED-1 |
| 紅色 | 晚 | RED-1 | RED-1 |
| 紅色 | 晚 | RED-1 | RED-1 |
| 紅色 | 晚 | RED-1 | RED-1 |
| 紅色 | 晚 | RED-1 | RED-1 |
| 紅色 | 晚 | RED-1 | RED-1 |
| 黃色 | 天 | YELLOW-1 | YELLOW-1 |
| 黃色 | 天 | YELLOW-1 | YELLOW-1 |
| 黃色 | 天 | YELLOW-1 | YELLOW-1 |
| 黃色 | 晚 | YELLOW-1 | YELLOW-1 |
| 黃色 | 晚 | YELLOW-1 | YELLOW-1 |
| 黃色 | 晚 | YELLOW-1 | YELLOW-1 |
| 黃色 | 晚 | YELLOW-1 | YELLOW-1 |
| 黃色 | 晚 | YELLOW-1 | YELLOW-1 |
| 黃色 | 晚 | YELLOW-2 | YELLOW-1 |
| 黃色 | 晚 | YELLOW-2 | YELLOW-1 |
Re:運行重複值的計數JSL Script-Part2偉大的配方!我認為這適用於Box:
EVAL ( Eval Expr ( : 顏色 || “ - ” || 燒焦 ( 天花板 ( Col Sum ( 行 () <= EXPR ( 行 ()) , : 顏色 , : 轉移 ) / 五 ))) )
Re:運行重複值的計數JSL Script-Part2建立在前幾天他們所做的事情上。
如果(Mod(Eval(Eval Expr(Col Sum(Row()<= Expr(Row()),: Color,:Shift))),5),
Mod(Eval(Eval Expr(Col Sum(Row()<= Expr(Row()),: Color,:Shift))),5),
五
)
*編輯*或
Mod(Eval(Eval Expr(Col Sum(行()<= Expr(行()),:顏色,:Shift))) - 1,5) + 1