连接odbc数据库-odbc 连接
1、Standard/Plus/Professional版本说明Standard:单机版或是标准版。Plus:网络版或是增强版。具有网络功能和ODBC接口,可做报表。Professional:专业版。可用来做服务器冗余。注:也可选用Plus+AutoFailover做服务器冗余。AutoFailover:报警同步。2、通讯正常,但是画面和数据库一些或是所有标签显示问号通过“任务控制”,察看驱动的运行状态和参数、SAC当前的运行状态。如果驱动运行、收发不正常,检查驱动的配置和运行具体信息;若驱动运行正常,察看标签的当前扫描状态。3、禁止报错对话框如果运行时产生错误连接odbc数据库,系统会弹出一个需要用户干预的报错对话框。可以通过编辑Program Files\GE Fanuc\Proficy iFIX\Local目录下的FILTEREDERRORS.INI文件屏蔽掉一些特殊的错误。例,当网络中通讯中断时,如果想禁止这些报错对话框。就可以在如下类似的INI文件中添加这些错误代码来进行过滤:;To add an error code to be filtered increment the c oun t and set;the Error equal to the return code【ErrorCodes】C ount = 4Error1 = 1620Error2 = 1914Error3 = 1915Error3 = 1915在上例中,所有典型的网络通讯错误都被禁止了。
编辑FILTEREDERRORS.INI文件之后,应重新启动工作台以确保修改内容被接受。4、安装iFIX并且插上狗以后,启动iFIX,仍然以运行模式启动首先,根据硬件狗上贴的标签确定狗的类型:M1 或是M4。从控制面板\添加删除程序里,卸载驱动:M1 Licensing/Proficy(M4) Common Licensing。重新安装最新的驱动:M1 License: 5、iFIX 2.6更换硬件狗以后,不能检测到硬件狗IFIX 2.6及之前版本的硬件狗为彩虹狗,更换/升级之后的硬件狗及3.0之后的狗为HASP的狗。需要安装一个补丁:IFIX26_268396.exe。并更新狗的驱动,步骤及方法同上。6、做趋势图的显示的时候,历史库为Proficy Historian,而不是iFIX的历史数据库当机器中安装Proficy Historian 或是其客户端之后,历史库会变成其历史库。可以从工作台\工具栏中,选中“iHistorian”,使用“Change Historian”可以在Proficy Historian和iFIX的历史库之间切换。也可以更改Program Files\GE Fanuc\Proficy iFIX\Local目录下的Fixuserpreferences.ini:Currenthistorian=Classic(iFIX 的历史数据库)Currenthistorian=iHistorian(Proficy Historian)7、直接使用VisiconX查询Proficy Historian的历史数据需要更改Program Files\GE Fanuc\Proficy iFIX\Local目录下的Fixuserpreferences.ini,在其中增加:【VisiconX】RunAsync=FALSE8、Windows XP中,安装iFIX之后,重新启动计算器,新建用户:FixIOUser可以切换OS的登陆用户,以管理员的身份进入并禁用该用户。
9、数据库中,如何计算点数在数据库中,有I/O驱动和地址的点,均计算点数,包括使用SIM仿真驱动器。也可以在数据库\一览中,I/O数即为点数。10、I/O驱动通讯不正常或是无法正常通讯察看驱动的版本。过早的版本可能不支持用户正在使用的操作系统、或是第三方软件版本。建议使用最新版本的驱动。11、iFIX PDB中添加数据块地址时,出现“无法加载驱动映像表”错误信息。此问题原因在于驱动程序的默认文件不在当前工程路径PDB下,如:default.mbe不在当前工程目录下。将此文件拷贝到当前工程PDB目录下,或再重新安装一次驱动即可。12、iFix提供哪些方式与关系数据库连接相连?主要通过ODBC和OLE DB。这两种方法的连接方式主要说明如下:
ODBC:使用此方式作连接主要有两种类型:在iFIX中使用关系数据库的ODBC驱动程序;在关系数据库中使用 iFIX的ODBC驱动程序。在 iFIX 中使用 ODBC 驱动连接有如下几种方式:
1) 在 PDB 中使用 SQL 数据库块,操作原理是: 使用控制面板中的ODBC数据源添加关系数据库源; 在 iFIX系统配置中配置上述数据源的ODBC任务; 在存放数据表的关系数据库中加入一张表存放要执行的 SQL 命令; 在 PDB 中定义相应的 SQT和SQD块,执行上述表中的命令,并存入相关数据。
2)在iFIX中使用 VBA 直接定义 ODBC 数据源,调用相应方法读取数据,然后将数据直接显示或写入iFIX数据库。 在关系数据库中使用 iFIX 的ODBC驱动程序获取数据 ,可在相应关系数据库中建立一张表,使用链接表或输入表,可使用的数据类型为iFIX历史数据和实时数据,然后通过查询的方式建立所需的数据表。
OLE DB:此方式多用于在iFIX中查询关系数据库的数据, Intellution 有现成的组件 VisiconX 通过 OLE DB 驱动与相应的关系数据库通讯,VisiconX 是一套企业级关系数据库连接查询工具,实际是通过 ActiveX 的形式提供查询连接。用户无需编程便可以通过这些控件显示关系数据库中指定的表或查询结果,若有复杂的查询条件,用户可以通过 VisiconX的SQL 向导自动生成查询命令。 如用户的VBA开发能力较强,也可用VBA命令通过 OLE DB的引擎进行数据交换。13、PLUS 版本与 CLIENT 版本的区别PLUS 版本支持SCADA。CLIENT 版本不支持 SCADA。这是二者最 大的区别。PLUS 版本的节点可以作为 CLIENT 版本节点的远程节点,供 CLIENT版本的节点读取实时数据。如果 CLIENT 版本的节点要对 PLUS 版本的节点的数据进行写操作, 两个节点的安全设置权限必须一致,否则写操作不会成功。 PLUS 版本 有单机版,CLIENT 版本都是网络版。两种版本的报价都与点数有关,不同点数的版本价格不同,价格随 点数的增加而增加,PLUS 版本的要比 CLIENT 版本高很多。
PLUS 版本如果需要电子签名,配方等功能,需要在定购时加以说明。14、iFIX数据连接精度不准的解决方法数据链接中与数据库管理器中显示的浮点精度有可能不同。要使它们一致,按下列方法修改 iFIX Local目录下的FixUserPreferences.ini文件设置:【AppRunPerferences】 AllowPrecisionAdjustment=0数值0表示数据链接没有特殊的精度调整,其与数据库管理器中显示的一致。默认值是允许数据链接精度调整。注:在iFIX使用SIM地址时,会出现精度问题,此时可使用SM2地址代替,可解决精度问题15、iFIX的画面转换为Portal不是所有的对象或是画面都可以转换,比如变量和定时器。而当超过300个图形对象/200个动画/50幅图像时会收到警告。建议参考iFIX电子书:《导出画面》。16、PDB作为DDE Server,DDE Client 获得数值,小数位为两位在PDB中,找到对应的tag,修改其工程范围的高低限值设置中的小数位。如:默认的低限值 为0.00,高限值为100.00,若要获得小数点三位的精确度,则需把限值修改为0.000 / 100.000。
17、运行状态,在画面中修改标签的报警范围V4.0及以前的版本,在画面中,可以修改某个标签的f_lo/f_lolo/f_hi/f_hihi修改该标签的报警范围,但是所做的修改不会保存到数据库中。当下次启动iFIX的时候,仍然为数据库最初的设置。V4.5开发版可以把运行时刻通过画面做的修改保存到数据库中(在退出iFIX的时候,会提示保存新的配置),运行版则不会。18、硬件狗能够检测到,但仍然以运行模式运行 / 运行时可检测到硬件狗,但是使用iKeyDiag.exe检测不到狗的信息需要更新狗的驱动。如果是M1的狗,只需要安装M1最新的驱动;但如果是M4的狗,则需要同时安装M1 和 M4最新的驱动。19、基于时间的调度没有在设定的时间点触发,有几秒或是几十秒的延时首先,确定iFIX已经安装最新的补丁;第二,在触发的脚本前加上代码:System.SendOperatorMessage "Schedule code started " 20、全局变量无法在后台运行的调度中使用全局变量无法直接在后台运行的调度中直接使用。例子:‘ First get a pointer to the Application object in the WorkspaceDim WrkSpcApp As ObjectSet WrkSpcApp = GetObject("", "Workspace.Application")‘ Get a pointer to the Variable object called Variable1 in the User globalsDim TargetVar As ObjectSet TargetVar = WrkSpcApp.Documents("User").Page.FindObject("Variable1")‘ Set the current value in the variable object to a 1TargetVar.CurrentValue = 121、AlarmODBC中,字段alm_timein的含义alm_timein为第一个未确认的报警产生的时间。
如果报警产生后一直未确认,则该区域的值不会改变。22、数据库的值显示为问号,但是驱动器收发状态正常首先在任务控制中,查看驱动和SAC状态。若在PowerTool中状态正常,但任务控制中没有收发,则驱动器损坏,需要重新安装;若SAC显示为停止,则需手动启动SAC。23、驱动无法连接硬件在网站上,找到使用中的驱动,查找该版本支持的操作系统和运行环境。24、Error:The license didn‘t have Historian Collect function在SCU----> 任务配置里,HTC.EXE 必须先于Workspace.exe 启动。25、外部程序访问iFix中的实时报警信息iFix 4.0及以上版本包含了OPC A26、iFix启动错误:应用要求32 位扩展
该错误经常出现在项目移植或是备份恢复的时候。原因:iFIX启动会通过SCU调用不同的进程和文件。在移植或项目恢复的时候,如果进程或文件路径指定错误,则会出现图中的错误,或是其他的错误。在做项目移植或恢复的时候,启动iFIX之前连接odbc数据库,检查SCU中所有进程以及会调用的文件的路径,必须和当前机器中路径完全一致。
27、过滤iFIX 中出现的错误当通讯中断或是脚本出错时,会在工作台运行时出现错误提示。其中,关于iFIX系统错误或是工作台错误,可以通过filterederrors.ini文件,设置error code 过滤错误的显示;但如果是脚本的返回错误,则不能够通过filterederrors.ini过滤错误,只能够使用“On Error GOTO”错误处理代码。28、报警一览控件 (Alarm Summary)最多可以设置的过滤条件在V4.0中有说明上限为9个,在V4.5中上限为11个,但报警一览控件实际可以设置的过滤条件最多为10个。29、抑制通讯报警(COMM)可以在SCU的启动列表中,编辑WSACTASK.EXE 的参数:C 。添加该参数后,可以抑制系统中所有COMM的报警,不被发送到 AlarmSummary或是报警文件中。但是在有 Alarm Status的文字显示的地方,仍然会有COMM 的显示。同时,AlarmSummary中未确认的报警会被自动确认(Status 为COMM)。30、在多显示器上,全屏显示画面4.5及以上版本支持该功能。31、iFIX数据库量程转换无法实现在iFIX PDB中对标签点的信号条件进行配置即可。标准量程转换参考帮助文档,非标量程转换用EGUCALC工具计算即可。在5.0及以后版本,对非标准量程转换在数据库标签点的配置中即可实现,不需要EGUCALC工具计算。