Wincc使用.net控件将锐浪报表Grid++Report6嵌入

前言:本人萌新,WinCC和C#的编写能力几乎为0,因此虽然做出来的成品看似简单,但也耗费了我不少时间。在网上查阅资料的时候,有关WinCC插入锐浪报表的资料少的可怜。这也是我写这篇文章的初衷,希望可以帮助和我一样毫无基础可言的人。

使用软件:Visual Studio 2022;WinCC V7.5 SP2;锐浪Grid++Report6;Microsoft SQL Server Management Studio 18


一、查看WinCC数据库

注:这里没有任何编程和改动,只是带领读者了解一下SQL数据库的基础信息。

1.打开Microsoft SQL Server Management Studio 18

注意这里的服务器名称为DESKTOP-4JJUVVA\WINCC,后面会用(每个人的服务器名称都会有所不同,以自己电脑的服务器名称为准)

2.选择与WinCC项目对应的数据库

我的WinCC项目名称是test1,所以对应数据库GCS_test1和CC_test1_22_06_21_14_54_33R,两者区别不是本文重点,不在这里赘述。此处以GCS_test1为例,选择dbo.Information,在右边一栏会显示内容。

那么为什么会有dbo.Information呢?因为在WinCC项目对应文件夹路径test1\GraCS\Data下我建了一个csv格式的表格,名为Information2052(此处2052在WinCC里代表中文,所以在数据库里不显示2052)。我们打开这个表格,可以发现里面的内容和SQL数据库里一致。当我们运行WinCC,初始化数据库后,该表格的信息才会同步到数据库中。


二、生成锐浪模板

1.打开Grid++Report 报表设计器

(1)新建向导→主标题副标题设置(我这里不设,直接点击下一页)

 (2)创建数据库连接串→选择红框中的驱动点击下一步

 (3)填写服务器名称,数据库名称,测试连接,成功后点击确定,完成向导创建。

 

 (4)系统自动生成数据库连接串→填写查询SQL(select * from Information)→疯狂点下一页,然后完成。

因为刚刚带大家看了dbo.Information,我们这里就查询Information下面的数据。

 

 我们保存一下,命个名,这一步就完成了。


三、使用VS 2022生成.net控件

1.创建C# Windows窗体控件库

注意这里框架要选.NET Framework 4,我也忘了调试过程中遇到什么问题了,最后发现就是需要.NET 4的框架。VS 2022是没有.NET Framework 4的,大家自己在网上下载即可。VS2022 安装 .NET Framework 4.0 和 .NET Framework 4.5 的方法_小歆Pro的博客-CSDN博客

 2.添加引用-锐浪的COM

 3.放2个按钮,Name分别为button1和button2,Text分别为打印预览和打印。

 4.双击任意一个按钮,可以进入C#编辑器界面。接下来就写代码了。

 以下为全部代码内容:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using gregn6Lib;

namespace Report
{
    public partial class UserControl1 : UserControl
    {
        //定义Grid++Report报表主对象
        private GridppReport Report = new GridppReport();
        public UserControl1()
        {
            InitializeComponent();
            Report.LoadFromFile(@"C:\Users\Administrator\Desktop\11.grf");
         //第二步中生成的锐浪模板,我命名为11.grf,并且放在了桌面上。大家根据实际情况填写。
            Report.DetailGrid.Recordset.ConnectionString = @"Provider=SQLOLEDB.1;Initial Catalog=GCS_test1;Data Source=DESKTOP-4JJUVVA\WINCC;Integrated Security=SSPI;Persist Security Info=False";
       //第二步中新建向导时,系统自动生成的数据库链接串,我删除了部分不重要的。
        }
        [STAThread]

        private void button1_Click(object sender, EventArgs e)
        {
            Report.PrintPreview(true);
        }

        private void button2_Click(object sender, EventArgs e)
        {
            Report.Print(true);
        }
    }
}

5.右击Report,选择属性;应用程序→程序集信息→使程序集信息可见

 

 6.生成→为COM互操作注册

7.选择Release→Any CPU→启动,启动一下看看能不能实现基本的打印预览和打印功能

 8.确认调试无误后,打开Release文件夹,看看里面是不是有三个文件。如下图所示是正确的。

 9.右击解决方案→添加→新建项目 ,选择Setup Project(没有的话需要下载,具体网上可以找到)

 

10.右击Application Folder→Add→文件,选择Report.dll

 11.右击setup→生成

 12.在setup程序的Release文件夹中找到exe程序,双击点开

 

 

 13.至此,控件注册完成


四、在WinCC中引用.net控件

1.右击.net控件→添加/删除,单击“添加”按钮,打开Report.dll,选择Usercontrol1

 

 

 2.拖拽该.net控件到画面中,放大一下,和我们在VS 2022中设计的界面一模一样

 

 3.我们启动一下WinCC,看看该控件是否运行正常

 4.OK,没问题!大功告成!

  • 8
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值