几个用于博图WINCC的VBS问题请教各位大神?

已锁定

工控侠隐

  • 帖子

    377
  • 精华

    2
  • 被关注

    35

论坛等级:侠士

注册时间:2011-03-03

钻石 钻石 如何晋级?

几个用于博图WINCC的VBS问题请教各位大神?

284

3

2021-10-19 20:12:23

    本人目前在开发一套博图WINCC PRO上位机项目,在用WINCC VBS脚本的SQL语句实现配方的加载、下载、上载、保存及新建功能。现在遇到几个问题,想和各位大神讨论下。

  1. 在用UPDATE做保存配方时,有没有批量更新的方法,因为配方数据元素有60多个,用UPDATE SET 需要一个一个赋值很麻烦,原本很简单的功能,要写一大串。部分代码如下:oCom.CommandText="UPDATE UA#Recipe SET fLinefeed_toloutput="& fLinefeed_toloutput &",iSetvalue_input="& iSetvalue_input &",fMelttemp_setpoint="& fMelttemp_setpoint &",fTCUtemp_setpoint="& fTCUtemp_setpoint &",fOiltemp_setpoint="& fOiltemp_setpoint &","oCom.CommandText=oCom.CommandText & "fSidefeeder_setpoint="& fSidefFeeder_setpoint &",fFeedconvey_setpoint="& fFeedconvey_setpoint &",fExtruder_setpoint="& fExtruder_setpoint &",fPelletizer_setpoint="& fPelletizer_setpoint &""oCom.CommandText=oCom.CommandText & "WHERE sRecipe_name='"& ObjCombRecipe.SelText &"'"

    Set oRs = oCom.Execute 

    ObjCombRecipe.SelText是组合框选择项,sRecipe_name是配方名称,UA#Recipe 为配方表格

  2. 在使用VBS中用SQL语句做项目时,老是遇到各种Set oRs = oCom.Execute 不能执行。我一般用msgbox 显示执行命令来排查问题,但有时候也找不出问题,请问大家用什么方法调试脚本的?

    就比如这个新建配方的脚本,我找不到问题出在哪里:

    oCom.CommandText="INSERT INTO UA#Recipe"

    oCom.CommandText=oCom.CommandText & "VALUES("& IDtemp &" ,'"& SmartTags("10_Recipe_name_input") &"','"

    oCom.CommandText=oCom.CommandText & sFeeder_material(1) &"','"& sFeeder_material(2) &"','"& sFeeder_material(3) &"','"& sFeeder_material(4) &"','"& sFeeder_material(5) &"','"& sFeeder_material(6) &"','"& sFeeder_material(7) &"','"& sFeeder_material(8) &"',"

    oCom.CommandText=oCom.CommandText & iFeeder_feedmode(1) &","& iFeeder_feedmode(2) &","& iFeeder_feedmode(3) &","& iFeeder_feedmode(4) &","& iFeeder_feedmode(5) &","& iFeeder_feedmode(6) &","& iFeeder_feedmode(7) &","& iFeeder_feedmode(8) &","

    oCom.CommandText=oCom.CommandText & iFeeder_component(1) &","& iFeeder_component(2) &","& iFeeder_component(3) &","& iFeeder_component(4) &","& iFeeder_component(5) &","& iFeeder_component(6) &","& iFeeder_component(7) &","& iFeeder_component(8) &","

    oCom.CommandText=oCom.CommandText & iFeeder_feedin(1) &","& iFeeder_feedin(2) &","& iFeeder_feedin(3) &","& iFeeder_feedin(4) &","& iFeeder_feedin(5) &","& iFeeder_feedin(6) &","& iFeeder_feedin(7) &","& iFeeder_feedin(8) &","

     oCom.CommandText=oCom.CommandText & fFeeder_setpoint(1) &","& fFeeder_setpoint(2) &","& fFeeder_setpoint(3) &","& fFeeder_setpoint(4) &","& fFeeder_setpoint(5) &","& fFeeder_setpoint(6) &","& fFeeder_setpoint(7) &","& fFeeder_setpoint(8) &","

     oCom.CommandText=oCom.CommandText & fLinefeed_toloutput &","& iSetvalue_input &","

    oCom.CommandText=oCom.CommandText & fZone1temp_setpoint(1) &","& fZone1temp_setpoint(2) &","& fZone1temp_setpoint(3) &","& fZone1temp_setpoint(4) &","& fZone1temp_setpoint(5) &","& fZone1temp_setpoint(6) &","& fZone1temp_setpoint(7) &","& fZone1temp_setpoint(8) &","

     oCom.CommandText=oCom.CommandText & fZone1temp_setpoint(9) &","& fZone1temp_setpoint(10) &","& fZone1temp_setpoint(11) &","& fMelttemp_setpoint &","& fTCUtemp_setpoint &","& fOiltemp_setpoint &","

    oCom.CommandText=oCom.CommandText & fSidefFeeder_setpoint &","& fFeedconvey_setpoint &","& fExtruder_setpoint &","& fPelletizer_setpoint &")"MsgBox oCom.CommandText

    Set oRs = oCom.Execute

     MsgBox "增加配方成功!",48

    oRs.Close

    Set oRs=Nothing

      谢谢大家了!

几个用于博图WINCC的VBS问题请教各位大神? 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC WinCC / Panel

共有31081条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。