文档介绍:威纶通配方——宏指令
/**********************************************************行号刷新——number**********************************************************/
macro_
short index,array[10]//数组array[10]是存放行号的数组
bool OFF=false,ON=true
GetData(index, "本机触摸屏", LW, 9000, 1)//a用于提取索引寄存器的当前值array[0]=1+index/70//索引寄存器的值以700的倍数递增,即以当前页面中占用地址总数为基数
array[1]=array[0]+1
array[2]=array[1]+1
array[3]=array[2]+1
array[4]=array[3]+1
array[5]=array[4]+1
array[6]=array[5]+1
array[7]=array[6]+1
array[8]=array[7]+1
array[9]=array[8]+1
SetData(array[0], "本机触摸屏", RW, 7800, 10) //RW7800~RW7809中存放行号
SetData(OFF, "本机触摸屏", LB, 4, 1) //清零宏指令触发位
end macro_
/**********************************************************
add**********************************************************/ 新增——macro_
short name[5],temp[5],data[65]
short i,var=0,CurtLine=0,index=0,NextLine=0
bool OFF=false,flag=false
GetData(CurtLine, "本机触摸屏", RW, 8000, 1)//获取RW8000的值,即保存的行数
GetData(name[0], "本机触摸屏", LW, 0, 5)//获取LW0的值,即输入的配方名
GetData(data[0], "Panasonic FP", DT, 32700, 65)//获取当前HMI的数据输入值//判断数据表是否填满,若未填满,则判断是否有重名
if CurtLine==100 then
flag=true
SetData(flag, "本机触摸屏", LB, 22, 1)
else
//判断是否有重名
for i=0 to 99 step 1
GetData(temp[0], "本机触摸屏", RW, var, 5)//遍历每一行的配方名
if name[0]==temp[0] and name[1]==temp[1] and name[2]==temp[2] and name[3]==temp[3] and name[4]==temp[4]then
flag=true
SetData(flag, "本