分配清單中包含的值你好,
這個問題真讓我困惑。
我想將表 1 (dt_group) 中的值指派給表 2 (dt_subset)。
因此,迭代表 2 的每一行,然後將表 2 Product列的行與表 1 ProductGroups的每一行進行比較,如果找到匹配的字串,則將 Limits 值分配給表 1 中的 _LIMITS 列。我該如何編寫這個腳本?
表格1:

表2:

我已經嘗試過,但在比較兩個表中的字串時遇到了問題...
Names Default To Here( 1 );
dt_subset = Current Data Table();
col_names = dt_subset << get column names( string );
dt_group = Data Table( "dt_groups" );
aa_limits = Associative Array( dt_group:Tests << get values, dt_group:Limits << get values );
For( i = 1, i <= N Items( aa_limits ), i++,
If( Contains( aa_limits, col_names[i] ),
curname = Column( dt_subset, col_names[i] ) << get name;
new_col = dt_subset << New Column( (curname || "_LIMITS"),
Numeric,
Continuous,
Format( "Percent", 12, 2 )
);
dt_subset << Move Selected Columns( new_col, After( Column( dt_subset, curname ) ) );
)
);
謝謝,
J
自動化和腳本編寫回覆:分配清單中包含的值這是我將如何做你指定的事情
Names Default To Here( 1 );
dt_subset = Current Data Table();
col_names = dt_subset << get column names( string );
dt_group = Data Table( "dt_groups" );
//aa_limits = Associative Array( dt_group:Tests << get values, dt_group:Limits << get values );
For( i = 1, i <= N Rows( dt_group ), i++,
found = Contains( col_names, dt_group:Tests[i] );
If( found > 0,
//curname = Column( dt_subset, col_names[i] ) << get name;
Eval(
Eval Expr(
new_col = dt_subset << New Column( col_names[found] || "_LIMITS",
Numeric,
Continuous,
Format( "Percent", 12, 2 ),
set each value( Expr( dt_group:limits[i] ) )
)
)
);
dt_subset << Move Selected Columns( new_col, After( Column( dt_subset, col_names[found] ) ) );
)
);
確保 dt_group:tests 欄位中的名稱與列名稱相符。與測試值相比,列名稱中可能有一些額外的空格。