组态王报表功能实现方法

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一种简单的组态王报表功能实现方法

2010年04月24日星期六 15:18

前段时间用组态王做了一个小的画面组态,其中用到了KVADODBGrid控件来做报表,现总结如下。

一、准备工作

第一步:在组态王工程管理器中新建一个项目,项目路径为D:\实验项目。

第二步:新建一个ACCESS数据库

1、在“D:\实验项目”路径下新建一个 Microsoft Office Access 应用程序并命名为;

2、打开“控制面板\管理工具\ODBC数据源管理器”选择“系统DSN”选项;

3、点击“添加”按钮创建新数据源,选择“Microsoft Access Driver(*.mdb)”;

4、在数据源名处填下“mydata”,并选择数据库路径为“D:\实验项目\”。

第三步:创建表格模板

点击工程浏览器左侧的“SQL访问管理器”下的“表格模板”,新建一个表格并命名为Table。在Table中添加所需记录的变量及

1

日期参数,其中“日期”为定长字符串型,字符长度为10;其它诸如年、月、日、时、分则为浮点型,字符长度为1。

第四步:创建记录体

点击工程浏览器左侧的“SQL访问管理器”下的“记录体”,新建一个表格并命名为Record,在Record中添加所需记录的变量及日期参数。记录体用来定义Access数据表格字段与组态王变量之间的对应关系。

二、连接数据库

第一步:在工程浏览器左侧的“数据库”下的“数据字典”中定义一个内存整型变量,并命名为ConnectID。

第二步:创立组态王与mydata数据源的连接,并以“表格模板”Table的格式在数据库中建立名为“TheDate”的表格,命令如下:

SQLConnect( ConnectID, "dsn=mydata;uid=;pwd=");

SQLCreateTable(ConnectID, "TheDate", "Table" );

将上面两条命令填入“工程浏览器\命令语言\应用程序命令语言”下的“启动时”选项中。

第三步:在工程浏览器左侧的“命令语言\事件命令语言”下新建一事件命令,在“事由描述”项内填下“\\本站点\$分==01”(每

2

小时事件发生一次即分变量每次为一,计算了60分钟),在“发生时”框内填写

SQLInsert(connectionid, "TheDate", "Record");.a = '清除字典VC: CARRAY类下的操作函数,功能:删除该数组中的所有指针。从该数组中删除所有指针,但并不真正的删除CObject对象。RemoveAll 函数将释放所有用于指针存储所占用的内存。)2.定义按钮的“命令语言连接”“弹起时”为:(下列语言中“条件句”为内存字符串格式,在“数据词典”里面定义) long a;

long b;

string str1;

string str2;

a=;(指针命令,控件DayrepotSelect中的Month变量)

b=;

if (a<10)

str1="-0"+StrFromInt( , 10 );

else

str1="-"+StrFromInt( , 10 );

if (b<10)

3

str2="-0"+StrFromInt( , 10 );

else

str2="-"+StrFromInt( , 10 );

\\本站点\条件句=StrFromInt( , 10 )+str1+str2;

="日期='"+\\本站点\条件句+"' order by 时";

();

();

注意:在控制面板\区域和语言\自定义下,需定义短日期格式为“yyyy-MM-dd”样式,若不同,则上面命令代码的判断段需作相应修改。

第四步:添加打印按钮

定义按钮的“命令语言连接”“弹起时”为:

();

第五步:添加退出按钮

总体效果图如下图所示:

4

5

6

相关文档
最新文档