設置從特定單元格到列屬性的限制大家好
我在獲取下面的代碼以設置列屬性中的限制時遇到了一些問題
它設置了規格限制,但設置為 0.0 而不是列的第 4 行和第 5 行中的值
有沒有人可以幫忙
for(c=2, c<=NCol(dt), c++, Column(dt, c) << Set Property("Spec Limits", Spec Limits(Show Limits(1))));
for(c=2, c<=NCol(dt), c++, Column(dt, c) << Set Property("Spec Limits", Spec Limits(LSL(Column(dt, c)[4]))));
for(c=2, c<=NCol(dt), c++, Column(dt, c) << Set Property("Spec Limits", Spec Limits(USL(Column(dt, c)[5]))));分析腳本編寫回复:設置從特定單元格到列屬性的限制你好@Claus_Jensen ,
很多時候,當您設置屬性 Spec Limits 時,您需要以一種特殊的方式進行設置。 你可能會考慮閱讀這篇文章這裡, 或者這裡,其中最初的第一個鏈接是關於其他內容的,但他們也想為列分配規格限制。
通常,您必須按照以下方式進行操作:
//define your spec limits
_LSL_ = 0;
_USL_ = 100;
_Target_ = 20;
//assign the spec limits to the column of interest
Eval( Eval Expr( Column( dt, C ) << Set Property( "Spec Limits", {LSL( Expr( _LSL_ ) ), USL( Expr( _USL_ ) ), Target( Expr( _Target_ ) )} ) ) );
在上面的示例中,規格限制的變量是 _LSL_ 等,並且必須在 <
如果您不想在 JSL 代碼中定義規範限制,而是將它們作為一列,請說 :"LSL"n,其中第一個元素是值,然後 :"LSL"n[1]=0 (管他呢)。 您還可以使用 JMP 研究“管理規格限制”這裡. 我經常使用這個過程,你可以把它全部編寫好。 它可以更輕鬆地構建數據表,其中每一行都是您的項目/產品的屬性,這是“第 1 列”,然後您有列 _LSL、_Target 和 _USL,並且只要第 1 列中的行匹配使用產品表的列名稱,然後您可以通過編寫腳本輕鬆地為所有列分配規格限制。 例如,您的規格表可能如下所示:
| 第 1 欄 | _LSL | _目標 | _USL |
| 重量 | 10 | 30 | 60 |
| 高度 | 30 | 45 | 60 |
| 硬度 | 0 | 5 | 10 |
然後,您測量的每個產品/項目的表格可能如下所示:
| 批號 | 重量 | 高度 | 硬度 |
| 010 | 20 | 37 | 7 |
| 020 | 40 | 22 | 9 |
| 030 | 50 | 50 | 3 |
然後,通過使用管理規格限制,您可以輕鬆地將規格數據表中的規格分配到產品/項目數據表。 對我而言,當我為我們的產品生成大型數據表並希望在讀取數據文件後自動執行此過程時,這會有所幫助。
無論如何,通過使用頂部的示例,您定義規格限制並使用 Eval(Eval Expr(Expr())) 肯定會得到您需要的東西。
希望這可以幫助!,
DS