DataReport使用手记

06年的一篇blog,转过来:

   前几天,帮同事改一个VB的课业程序,具体任务就是在程序中添加报表功能,由于考虑到部署环境的问题,所以没有采用我以前惯用的Excel实现,而采用了同事提出的VB自带的DataReport实现,查到的资料大多数都是在DataReport数据源上连接DataEnvironment,MSDN也有这方面的一篇文章,可惜英文版和中文版一样的模糊,移到程序中也无法运行,后来根据实验中的错误提示在网上查到一个提问题的帖子,在他的帖子中倒是找到了正确的方法,原来直接把数据源链接为RecordSet就可以了,DataMember可以不用赋值,DataField赋值为字段名称,DataReport的空间索引必须以控件名称索引即可,下面是源代码。我在details Section按顺序建立了8个TextBox和Label接受字段值和字段名。
    Set DataReport.DataSource = rs_data2
    If rs_data2.RecordCount = 0 Then
        Exit Sub
    End If
    Dim i As Integer
    Dim j As String
    
   rs_data2.MoveFirst
   Do While Not rs_data2.EOF
      For i = 0 To 7
        With DataReport
            j = i + 1
            .Sections("Section1").Controls("Label" + j).Caption = rs_data2.Fields(i).Name + ":"
            .Sections("Section1").Height = 60
            If Len(rs_data2.Fields(0)) <> 0 Then
                .Sections("Section1").Controls("Text" + j).DataField = rs_data2.Fields(i).Name
            Else
                .Sections("Section1").Controls("Text" + j).DataField = ""
            End If
        End With
  
     Next i
     rs_data2.MoveNext
   Loop
   DataReport.Show

posted @   _朝晖  阅读(1560)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· [AI/GPT/综述] AI Agent的设计模式综述
历史上的今天:
2006-07-04 [转贴]一个比较那个的代码!
点击右上角即可分享
微信分享提示
主题色彩