q458538124
级别: 正式会员
精华主题: 0
发帖数量: 9 个
工控威望: 80 点
下载积分: 386 分
在线时间: 5(小时)
注册时间: 2021-03-05
最后登录: 2022-03-23
查看q458538124的 主题 / 回贴
楼主  发表于: 2021-07-28 16:27
威纶通用配方数据库和配方检视做了配方,但是客户配方数过多(约1000个),有什么办法可以做对应的搜索选定功能。就是输对应名字,可以自动在选择对应名字的配方。有大佬帮帮忙吗,谢谢
aracy123
级别: 探索解密
精华主题: 0
发帖数量: 79 个
工控威望: 134 点
下载积分: 813 分
在线时间: 81(小时)
注册时间: 2020-03-12
最后登录: 2024-10-21
查看aracy123的 主题 / 回贴
1楼  发表于: 2021-07-30 16:08
macro_command main()
short name[5],temp[5],i=0,var=80,b[75],c[5]
bool ON=true,OFF,flag=false

GetData(name[0], "Local HMI", LW, 0, 5)       
FILL(c[0],0,5)
for i=0 to 17 step 1      
   GetData(temp[0], "Local HMI", 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
   GetData(b[0], "Local HMI", RW, var+5, 75)      
   SetData(b[0], "Local HMI", LW, 5, 75)
   flag=true          
   else
   if i==17 then
   SetData( on, "Local HMI", LB, 11, 1)
   SetData(name[0], "Local HMI", LW, 200, 5)
   SetData(c[0], "Local HMI", LW, 0, 5)
   else
   end if  
   var=var+80
   end if    
    
SetData(i, "Local HMI", LW, 100, 1)    
SetData(var, "Local HMI", LW, 101, 1)  
                        
next i
        
SetData(ON, "Local HMI", LB, 9, 1)  
SetData(OFF, "Local HMI", LB, 7, 1)                          
      
end macro_command

根据输入的名字比对配方库里的名字,名字一致将该名下的数据读出存到显示区