您的位置:控制工程论坛网论坛 » 自动化软件 » 组态王的n个经典问题解答之二

马军成

马军成   |   当前状态:在线

总积分:13914  2024年可用积分:0

注册时间: 2006-12-01

最后登录时间: 2022-06-28

空间 发短消息加为好友

组态王的n个经典问题解答之二

马军成  发表于 2007/1/2 15:10:18      1206 查看 0 回复  [上一主题]  [下一主题]

手机阅读

组态王的n个经典问题解答之二
21:如何不进入系统桌面环境而直接运行组态王工程如何实现(Win2000系统)?
    运行RegEdit文件:找到 我的\HKEY_Local_MACHINE\software\Microsoft\Windows NT\currentVersion\winlogon 将Userinit=c:\winnt\system32\userinit.exe改为:     Userinit= c:\program files\kingview\touchvew.exe 

22:如何在组态王中修改系统时间?
    调用批处理文件:dsh.bat
string Adate = StrFromInt( A年, 10 ) + "-" + StrFromInt( A月, 10 ) + "-" + StrFromInt( A日, 10 ); 
string Atime = StrFromInt( A时, 10 ) + ":" + StrFromInt( A分, 10 ) + ":"  + StrFromInt( A秒, 10 ); 
 string Acommand =InfoAppDir()+"dsh.bat"; 
Acommand = Acommand + " "; 
Acommand = Acommand + Adate; 
Acommand = Acommand + " "; 
Acommand = Acommand + Atime; 
 StartApp(Acommand);
批处理文件:dsh.bat
date %1 
time %2 

22:工程被破坏后如何恢复画面?
    1、新建一工程,在工程浏览器中选择导入,将被破坏工程的画面导入即可
    2、新建一工程,该工程下新建与原来工程*.pic文件名一样的空画面,保存画面.将被破坏工程的*.pic文件拷贝到新建工程的目录下将新建工程的*.pic文件覆盖,从新打开新建工程,将画面逐个打开可以看到工程画面。
          
23:如何打印信息到针式打印机?
      用函数filewritestr()函数实现,filename参数为“LPT1:”

24:组态王中的报表RTL为如何格式,如何打开?
      报表RTL是组态王自己的报表格式,只能通过组态王用载入报表函数(ReportLoad函数)打开。

25:为什么在命令语言中使用报表函数却不执行?
      在应用程序命令语言中使用各种报表函数(如:reportsetcellvalue()等)。当画面隐含时,函数无法正常执行,如:变量值无法正确写入对应的单元格中。用户要注意这种情况,这不属于软件错误,运行过程中当画面隐含时不能对报表进行操作。

26:组态王中的打印函数PrintWindow()如何使用纸张的横向打印功能?
      PrintWindow()函数的第二、三个参数不能够为0并且将打印机的纸张设置为横向即可;如:PrintWindow( "监控中心", 60,60, 0,10, 10);

27:在历史趋势曲线中看不到曲线?
    1、数据词典设置的记录变化与安全区中没有选择数据记录
    2、变量的量程过大,实际显示的数值占量程的百分比非常小,所以感觉没有曲线显示 
    3、系统时间被修改,历史数据存储有误,所以曲线无法显示

28:如何根据起始日期时间、终止日期时间查询历史趋势曲线?
    使用通用控件中的历史趋势曲线:
    \\本站点\PHTTime=AHTTime(\\本站点\HTDate,\\本站点\HTTime);
    \\本站点\PHTTime1=AHTTime(\\本站点\HTDate1,\\本站点\HTTime1);
    \\本站点\PHTTime2=\\本站点\PHTTime1-\\本站点\PHTTime;
批次历史曲线.SetTimeParam(\\本站点\PHTTime,0,\\本站点\PHTTime2,0);

29:如何利用通用控件中的历史趋势曲线作为实时曲线使用?
    在画面属性命令语言存在时调用历史趋势曲线控件HT的方法如下:
    HT.HTUpdateToCurrentTime()

30:与SQL SERVER进行数据交换,实数类型存入数据库后为什么在组态王中无法读取?
   原因是因为客户在数据库中定义的字段的类型不对。在组态王中定义的内存实型变量,在ACCESS数据库中对应的字段的类型应该是单精度型,在SQL SERVER数据库中对应的字段的类型应该是real型.(不能为float型).

31:为什么从EXCEL返回组态王会出错?
   在EXCEL中用 AppActivate "" 函数时,如果EXCEL中为AppActivate "组态王运行系统" ,组态王的设置运行系统中,标题条文本里填写:组态王运行系统,同时,不要选"标题条中显示工程路径",如果选择了,在AppActivate 应写"组态王运行系统-c:\…..".否则就会出错

32:组态王的存盘数据用何方式打开?为什么组态王的历史记录文件打开都是乱码?
    *.REC文件存放的历史数据,不能用excel直接打开,它本身是二进制文件.可以在VBA中调用提供的动态连接库来访问。

33:SQLDelete()函数中选择条件的用法。A3="客户="+a2做为条件不执行?
    sql查询语句如果查询的字段为字符串时应使用单引号,a3="客户'"+a2+"'"即可

34:数据库插入记录失败?
    1、在信息窗中查看数据库是否连接
    2、数据库表格的字段名与组态王记录体定义的字段名是否相同3、数据库表格的字段类型与组态王变量的类型是否符合,推荐使用组态王的表格模板创建表格4、表格中使用的字段名是否为data和time,请改为其他字段名。

35:如何将数据存为.txt文件?
    使用函数FileWriteStr(Filename,FileOffset,Message,LineFeed);  
例:将名为MsgTag的文字变量写入文件C:DATA\FILE.TXT的末尾。调用函数FileWriteStr ("C:\DATA\FILE.TXT", 0, MsgTag, 1);

36:数据库字段为"反应罐1#温度时",组态王无法通过ODBC往数据库中写数据?
    ODBC不支持存在'#'字符的字段,不要使用#

37:如何在数据库中始终保持一个月的数据,自动删除一个月之前的记录?
    请将控制面板中的区域设置日期改为yyyy-mm-dd格式
    数据库中保存一个月的历史数据,自动删除一个月以前的数据。命令语言放在应用程序命令语言启动时或者事件命令语言$时==1中: 

SQLConnect( DeviceID, "dsn=历史;uid=er;pwd=0"); 

 long  month=\\本站点\$月-1; 

long year=\\本站点\$年; 

long day=\\本站点\$日; 

string date1; 

if(month==0) 

{month=12; 

year=\\本站点\$年-1;} 

date1= StrFromInt( year, 10 ); 

date1=date1+"-"; 

date1 = date1 + StrFromInt( month, 10 ); 

date1 = date1 + "-" +  StrFromInt( day, 10); 

string whereexpr="日期={d'"+date1+"'}"; 

SQLDelete( DeviceID, "A", whereexpr); 

if(\\本站点\$月==4||\\本站点\$月==6||\\本站点\$月==9||\\本站点\$月==11) 

{ if(\\本站点\$日==30) 

   {

day=31; 

date1= StrFromInt( year, 10 ); 

date1=date1+"-"; 

date1 = date1 + StrFromInt( month, 10 ); 

date1 = date1 + "-" +  StrFromInt( day, 10); 

whereexpr="日期={d'"+date1+"'}"; 

SQLDelete( DeviceID, "A", whereexpr);

    }

}

38:使用进行网络配置的远程站点后,远程站点的数据词典中没有变量显示?
    1、网络是否联通
    2、主机的工程应该是完全共享,不能是只读共享,从机是否可以看到工程文件夹,是否可进行读写操作

39:s7-200通过PPI与KingView6.1连,5到6小时断线不能恢复,组态王信息窗口显示尝试与S7-200恢复通讯失败。请问如何处理?
     1)西门子S7200使用西门子公司提供的PC/PPI带缆选用PPI方式与组态王通讯当中,一旦PLC断电,则必须先用PLC的编程软件与PLC 通讯一次,实现对PC/PPI电缆上的模块的初始化后,此时才能重新启动组态王,建立正常的通讯。
     2)若用户希望在设备断电后再上电时,组态王能自动恢复与设备的通讯,则不用西门子公司提的PC/PPI电缆,而使用RS232/485的转换模块,其中:485的DATA+接PLC的PORT口的3,DATA-接PLC的PORT的8(自己做线),采用这种方式。

40:组态王6.5安装后为何拨号网络无法建立“传入的连接”?
    运行注册表文件(RegEdit):在注册表中:    \\HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Ras\\AdminDll  删掉 
然后手动在控制面板—管理工具—服务中的“Routing and Remote Access”服务启动
1楼 0 0 回复