有没有办法关闭所有列的“抑制评估”?
(当我保存 .jrp 时,它似乎自动打开了“抑制求值”,而我需要评估此数据表中的许多公式列。)

抑制公式评估(1) [没有数据表] 很适合欺骗同事 - 没有机会注意到 - JMP 卡住了,没有机会与之对抗,也没有机会通过 GUI 进行对抗:

也不通过dt << Suppress Formula Eval( 0 );
_____________________________________
一些表操作(例如 Join)具有抑制公式评估的设置:

如果每一列都被单独禁用,那么您必须单独启用公式评估:
Names Default to Here(1);
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
f= Function({},New Column( "height+weight",
Formula( :height + :weight ),
));
f;
f;
f;<BR />column (6) << Suppress Eval( 1 );<BR />column (7) << Suppress Eval( 1 );<BR />column (8) << Suppress Eval( 1 );
Ncols = ncols(dt);
for (i=1,i<=NCols, i++,
column(i) << suppress eval(0)
)有趣的事实:
列菜单中的状态不会自动更新,因此不要被灰色加号所困惑:

<< Suppress Formula Eval() 和 Suppress Eval() 之间也有区别。<< Suppress Formula Eval() 用于数据表,而 Suppress Eval 用于公式列


如果您启用了 Suppress Eval,则可以循环遍历列(使用 << 获取列名并针对每个列)并将 << Suppress Eval(0) 发送到所有列。我不确定是否有任何“简单”的方法可以以交互方式执行此操作(标准化属性不起作用,因为它将替换所有公式),可以使用子集,但它会创建一个可能不太理想的新表。
但如果你不介意创建新的数据表子集是一个相当简单的选择


