金字塔版本V5.01,公式编辑器一个简单公式如下:
A := 5;
B := 0;
MSGOUT(1,B);
If A > 30000 THEN MSGOUT(1,'ERROR');
按正常逻辑,消息窗口应该不会输出“ERROR”,但实际运行这个公式时,消息窗口会输出“ERROR”。 如果把B := 0 改为 B := 1 则不会输出“ERROR”。

此主题相关图片如下:1.png
[此贴子已经被作者于2018/12/12 17:45:11编辑过]
本地核实的确有这样的情况,问题已提交,感谢对金字塔的支持
你第一个msg的参数不是字符串,导致实际输出的是第二个字符串
这也是金字塔的bug吧,在正常情况下,Msgout如果输出的变量不是字符串,则不输出任何内容。(严格说起来这样处理也不够完善,应该报错或者自动转换为字符串。金字塔有很多这种类似的不严谨的地方导致脚本出现各种奇怪错误又很难查。)
如果把语句B := 0 改为 B := 1 则不会输出“ERROR”,这就更没法解释了。
[此贴子已经被作者于2018/12/13 14:22:25编辑过]
您好,问题之前已提交给产品部门了,会在后续发布的版本中进行修复