可变性图表错误<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />大家好,
我有两个完全相同的JSL脚本版本来生成可变性图表,但是没有正确显示图表。格式化都搞砸了。两个版本之间的唯一区别是一个在for循环内执行,另一个不执行。我看到当我查看输出脚本时,它们会生成不同的内部脚本,以便for循环内的脚本忽略了很多命令。
我附上了我编写的脚本的两个版本,一个显示for循环(从数据库中获取几个参数并为每个生成可变性图表),另一个是硬编码的。还附加了JMP为这两个不同脚本生成的脚本。正如你在WhatJMPdoesInstead.txt中看到的那样,它忽略了一堆命令。
有没有人有这个问题?有任何解决这个问题的方法吗?
回复:可变性图表错误你是对的,我只是意味着代码的流程是一样的。显然for循环是为了处理多个唯一列,所以我不得不替换名称。它似乎正在处理所有其他参数,所以我不认为我必须对字符串做任何特殊的事情。
无论如何,我最终在变异图表之外创建了我需要的字符串,然后在循环中使用expr(String1),并将Eval(Exal Expr())放在整个变异图表周围,并且它做了我想要的。问题解决了。
回复:可变性图表错误所以两个版本的完全相同的脚本除了一个工作,一个不... 因为,嗯...... 他们不一样。 所以问题不是JMP而是你的代码。 如果你简化问题就会有所帮助,这样就没有大量的代码供我们查看并尝试发现差异...... 如果您可以使用内置的JMP示例数据集生成插图,那么人们可以更轻松地帮助您而无需访问您的数据。 根本问题在于您尝试将列名替换为脚本的方式。 在循环中,您使用的是变量,而在另一个循环中,您使用的是实际的列引用。 JMP评估来自外部工作的表达式(与大多数其他语言相反) - 因此在执行Variability命令时,您的变量没有值。 解决方案是通过使用EXPR函数并使用字符串操作或诸如SUBSTITUTE之类的函数构造命令的表示来推迟表达式的求值。 这是最近的一篇文章,说明了这一点......