GZZQ:GETREGVAL('SettingBJX',GZQ,0);//跟踪周期
C20:=IF(REF(CROSS(C,RMA20) OR CROSS(RMA20,C),1),20,0);
C40:=IF(REF(CROSS(C,RMA40) OR CROSS(RMA40,C),1),40,0);
C80:=IF(REF(CROSS(C,RMA80) OR CROSS(RMA80,C),1),80,0);
C160:=IF(REF(CROSS(C,RMA160) OR CROSS(RMA160,C),1),160,0);
C320:=IF(REF(CROSS(C,RMA320) OR CROSS(RMA320,C),1),320,0);
C640:=IF(REF(CROSS(C,RMA640) OR CROSS(RMA640,C),1),640,0);
ZQ:MAX(MAX(MAX(MAX(MAX(C20,C40),C80),C160),C320),C640);//选择的周期
ZQ1:CONST(ZQ);
IF ZQ1>GZZQ THEN BEGIN SETREGVAL('SettingBJX',GZQ,ZQ1);
SETREGVAL('SettingBJX',FS,0);
END
整个程序是运行的,就是GZZQ的值有时刷新有时漏刷新。遇到这个问题后我加了ZQ1:CONST(ZQ)这句,也没有后果。
1.如何判断“有是漏刷新”
2.注册列表函数只有能保存整形值,而用户是有浮点数值
3.const是用来实现什么目的的?
1、就是统一公式里,其他变量都运算完输出正确的结果了,GZZQ这个不更新结果。例如ZQ:80; GZZQ:40;运算后应该是把GZZQ更新为80,但是实际是有时候更新,有时候不更新。
2、由于ZQ的运算结果都是整数,应该没影响吧。如有影响请问如何变为整形值?
3、原来我以为是因为序列变量的问题,就用const来转成常量,但结果还是不行。
所以让你
“把某些经过计算的数值做一下取整,比如用函数floor ”
整体会无效,数值不被记录