回复:如何根据条件运行部分脚本或包含脚本我相信您遇到的问题是试图将 If() 语句传递给数据表。应该工作的是
dt = Data Table( "Data" );
If ( PRODUCT == "A", include("C:\....\Script1.jsl"), include("C:\....\Script2.jsl"), );回复:如何根据条件运行部分脚本或包含脚本嗨尼尔森,
我也试过了。 那也行不通。
回复:如何根据条件运行部分脚本或包含脚本我认为我们可能需要更多关于您正在尝试做什么以及“外部”部分是什么的信息。 如果您只是运行某些代码的一部分,则 Include() 和表达式都应该可以正常工作。
Names Default To Here(1);
exprA = Expr(Show("A"));
exprB = Expr(Show("B"));
PRODUCT = "B";
If(PRODUCT == "A",
exprA;
,
exprB;
);回复:如何根据条件运行部分脚本或包含脚本我运行这段代码没有错误
Names Default To Here( 1 );
b = 1;
If( b == 1,
Include( "path to one of the includes" ),
Include( "path to the second include" )
);
第一个包含代码是
a=1;
show(a);
第二个包含代码是:
a=2;
show(a);
它按预期工作
作为@jthi建议您可能需要提供有关包含的更多信息。
回复:如何根据条件运行脚本的一部分或包含脚本你好@txnelson和@jthi ,
实际上你的两个代码都工作正常(事实上,我自己的方式也有效)。 问题出在 JMP 会话上。再尝试几次后,我的 JMP 崩溃了,我放弃了。 今天在重新启动 JMP 后,相同的代码运行良好。 我相信 JMP 会话可能存在相同的内存/缓存/路径/变量问题。 重新启动后,它工作正常。
我真的很感谢你们的支持。
雷德,高速钢
回复:如何根据条件运行脚本的一部分或包含脚本不时发生。 如果你还没有,我建议你开始所有的脚本
Names Default To Here(1);
它将为您提供一些防止命名空间冲突的保护。 此链接对于名称默认为此处(1)(有多个页面)非常有用脚本指南 > 编程方法 > 高级作用域和命名空间 (jmp.com)
回复:如何运行脚本的一部分或根据条件包含脚本谢谢亚尔莫,
我学会了使用
Names Default To Here(1);
来自纳尔逊 ( @txnelson ) 几年前,我确实使用过它。 我将再次查看指南。
感谢你们。
如何根据条件运行脚本的一部分或包含脚本大家好,
我正在尝试根据列的条件运行脚本的一部分。 如果该条件失败,它应该运行脚本的其他部分或包含其他脚本。
这看起来很简单,但我做不到。 我遵循了两种方法——使用“include”函数调用脚本,使用“Expr”函数调用部分代码。 没有一个在工作。 这里有什么帮助吗?
第一种方法 -
dt = Data Table( "Data" ) << If ( PRODUCT == "A", include("C:\....\Script1.jsl"), include("C:\....\Script2.jsl"), );
当脚本 1 和 2 都独立工作时,这不起作用。
第二种方法类似于第一种方法,但使用“Expr”,在 - JSL 中的分段或分段代码
非常感谢,
自动化和脚本