烤选项 1:Eval()、Parse() 和递归,元编程中的一次冒险 - JMP 用户社区来自 Jed Cambell (JMP US 系统工程师)
嗨玛丽亚,
以下是一段可能值得探讨的代码: Eval()、Parse() 和递归,元编程中的一次冒险 - JMP 用户社区
即使我不能参加会议,也可以随意使用它(至少我很想看录音)。注释应该解释变量名的双重使用,我认为使用 Expr() 而不是 Eval(Parse()) 会更好
最好的,
杰德
回复:Roasting 选项 1:Eval()、Parse() 和递归,元编程中的一次冒险 - JMP 用户社区这可以作为吐槽剧本的基础。杰德的剧本是关于如何构建剧本的“过程”,但如果我们只采用最后的部分,那就行得通了(在我看来)。
所以这部分:
//determine number of parts
New Window ("How many parts?",
<< Modal,
neb = Number Edit Box (10),
Button Box ("OK", numParts = neb << Get;)
);
show(numParts);
listParts = {};
//Build first portion of script for modal window
//Escape character sequence for " is \!"
a = "
New Window(\!"Get Pass/Fail List\!",
<<MODAL></MODAL>
<P>在这个脚本中,这些可能是一些可能的“烤”点:</P>
<UL>
<LI>开始时无名称默认为此处(1)</LI>
<LI>脚本无标题</LI>
<LI>缺少变量引用</LI>
<LI>我认为用户应该能够在第一个模式窗口上“退出”</LI>
<LI>允许零件编号为 0、. 和负值(这些值稍后只会创建空窗口,不会使应用程序崩溃)</LI>
<LI>变量名不具描述性</LI>
<LI>使用 Evil(Parse()) 会带来很多不同的(潜在)问题</LI>
<LI>当您只有两个选项可供选择(通过或失败)时,使用文本编辑框<UL><LI>组合框/单选框/复选框通常更好</LI></UL></LI>
<LI>Pass 是好的默认值吗?通常我会将 Fail 设置为默认值(或者更好的是“空”、“未选择”以确保用户做出了选择)</LI>
<LI>如果我们认为这是 JMP18 脚本(我知道它不是为 JMP18 构建的),我会更新模态窗口以使用 << 类型</LI>
<LI>是否有必要使用列表来收集参考和值?<UL><LI>这不是,但这是一个简单的方法</LI></UL></LI>
</UL>
<P> </P>
<P>而且我们不知道这个脚本的确切用途。它必须有两个模态窗口吗?在创建第二个模态之前是否有必要确定部件数量,或者是否可以将它们放在同一个窗口中,或者让用户通过按下按钮添加更多部件。但这些也可以被视为烤点?在开始这项工作之前,您是否有适当的规范?正在解决哪些问题?</P>
<P> </P>
<P>我还可以想出我经常看到的非常基本的脚本(我刚开始时也写过类似的东西)。获取数据(SQL 查询、打开表、excel ......),添加一些公式列,创建汇总表,然后创建带有一些报告的窗口。最后将其保存为交互式 .html。</P>
<P> </P>