请问如何将wincc里的变量值放入ACCESS中去 点击:3836 | 回复:14



vkin

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 2回
  • 年度积分:0
  • 历史总积分:9
  • 注册:2004年9月27日
发表于:2004-12-18 21:02:00
楼主
请问如何将wincc里的变量值放入ACCESS中去?具体步骤?



小诗

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 1回
  • 年度积分:0
  • 历史总积分:179
  • 注册:2004年2月17日
发表于:2004-12-19 13:11:00
1楼
写通讯程序,通过opc读取WINCC变量值,然后写入ACCESS就很简单了,DAO,ADO都很好实现

独江雪

  • 精华:0帖
  • 求助:0帖
  • 帖子:16帖 | 67回
  • 年度积分:0
  • 历史总积分:121
  • 注册:2002年9月23日
发表于:2004-12-30 19:22:00
2楼
这个不需要通过OPC,可以直接使用Wincc里的脚本功能,向Access数据库里直接写变量值。 1,建立Access数据库,比如Wincc_DATA,建立数据表:Wincc_Table,表中有一个字段比如“Tag” 2.建立ODBC数据源,名称可定义为Sample,连接指向“Wincc_DATA" 3.在Wincc里编写一个脚本如下: dim objconnection dim strconnectionstring dim lngvalue dim strsql dim objcommand strconnectionstring="Provider=MSDASQL;DSN=Sample;UID=;PWD=;" lngvalue=HMIRuntime.Tags("Tag1").Read strsql="insert into WINCC_DATA(Tag) values("&lngvalue&");" set objconnection=createobject("ADODB.Connection") objconnection.connectionString=strconnectionstring objconnection.Open set objCommand=CreateObject("ADODB.Command") with objcommand .ActiveConnection=objconnection .CommandText=strsql end with objcommand.Execute set objcommand=nothing objconnection.Close set objconnection=nothing 你可以在一个画面里,添加一个按钮,将这个按钮的按钮属性设为执行这段脚本。 这段脚本只向Tag这一个域里写Tag1数据。如果要写别的域的数据可以修改Sql语句,按照你的需要了........ 脚本中Tag1是你在Wincc中定义的一个变量。

wangyou236

  • 精华:0帖
  • 求助:1帖
  • 帖子:1帖 | 13回
  • 年度积分:0
  • 历史总积分:35
  • 注册:2005年1月13日
发表于:2005-01-13 16:56:00
3楼
楼上高手!我现在有很多画面,我的变量只想申明一次!是vbs,应该放载哪儿?

独江雪

  • 精华:0帖
  • 求助:0帖
  • 帖子:16帖 | 67回
  • 年度积分:0
  • 历史总积分:121
  • 注册:2002年9月23日
发表于:2005-01-19 13:32:00
4楼
就我所知道的,好象不可行,VBA还可以,用脚本好象不行.不过你想在一幅画面中用其它画面中的对象,可以用Wincc自带的:HMIRuntime,screens,ActiveScreens,screenitem等对象与方法.

xumingjun

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 4回
  • 年度积分:0
  • 历史总积分:4
  • 注册:2006年12月05日
发表于:2007-01-25 22:25:00
5楼
请问一下,我是照着做的,可的运行后数据库里没有反应,ADODB.后面也没有属性,不知道问题出在哪里,请高手帮帮忙啊

9515136

  • 精华:0帖
  • 求助:40帖
  • 帖子:305帖 | 1715回
  • 年度积分:0
  • 历史总积分:6747
  • 注册:2004年9月09日
发表于:2007-04-12 19:34:00
6楼
我发现数字是可以的,可是文本不行啊,
而且当变量不止1个是,要怎样做呢??

zadzrl

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 1回
  • 年度积分:0
  • 历史总积分:12
  • 注册:2005年2月14日
发表于:2009-09-09 23:52:41
7楼
这段程序好像只对wincc内置sql语言有效,必须安装sql后才可以。

qc846

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 30回
  • 年度积分:0
  • 历史总积分:208
  • 注册:2006年3月17日
发表于:2009-09-25 14:33:44
8楼

用西门子工业数据桥直接就可以了,很简单

我行我素-2008

  • 精华:0帖
  • 求助:1帖
  • 帖子:6帖 | 92回
  • 年度积分:7
  • 历史总积分:372
  • 注册:2004年8月03日
发表于:2009-09-27 14:58:29
9楼
使用WINCC6.0以上版本,在VBS脚本中建立ADO连接就可以了。

chenxiaohui033

  • 精华:0帖
  • 求助:0帖
  • 帖子:11帖 | 49回
  • 年度积分:0
  • 历史总积分:58
  • 注册:2006年6月23日
发表于:2009-09-29 15:04:01
10楼

讲到ADO 就麻烦多讲点,如果有30多个变量需要以定时采样的方式存到ACCESS中去,怎么做,SQL 语句是对表的查询,而WINCC 中没有表的概念,怎么办,我怎么在WINCC 中查询ACCESS 中的数据记录并把数据记录集合显示出来。

MSN:xh_chen@live.cn

EMAIL:chenxiaohui033@163.com

热心的大师请联系我

jgwangerming

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 22回
  • 年度积分:0
  • 历史总积分:54
  • 注册:2005年9月23日
发表于:2010-04-06 19:29:27
11楼
参照WINCC6使用入门中的例子,通过ODBC数据源进行读写数据库

wenke1034

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 3回
  • 年度积分:0
  • 历史总积分:3
  • 注册:2009年10月25日
发表于:2010-04-14 14:20:30
12楼

我用这个方法为什么老是 不行 

 有时候能够写进去数据 有时候不行

  现在是压根就没反应了

zhtwei1988

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 1回
  • 年度积分:0
  • 历史总积分:11
  • 注册:2012年5月26日
发表于:2012-12-03 13:52:14
13楼

 这个方法好啊!

qianghuazhen

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 24回
  • 年度积分:14
  • 历史总积分:56
  • 注册:2012年7月27日
发表于:2015-03-08 22:25:29
14楼

顶顶顶的顶顶顶顶顶顶顶顶顶顶顶


热门招聘
相关主题

官方公众号

智造工程师