Foxtable(狐表)用户栏目专家坐堂 → 编制报表


  共有2828人关注过本帖树形打印复制链接

主题:编制报表

帅哥哟,离线,有人找我吗?
kaituozhe
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2236 积分:15335 威望:0 精华:0 注册:2015/7/18 10:10:00
编制报表  发帖心情 Post By:2017/12/10 11:01:00 [显示全部帖子]

以下黄色代码怎么修改

Dim tb As Table = CurrentTable
msgbox(tb.name & "报表打印")
Dim dtb As New DataTableBuilder("& tb.name & "报表打印"")
dtb.AddDef("字段名", Gettype(String), 255)
dtb.AddDef("是否打印", Gettype(Boolean))
dtb.AddDef("宽度", Gettype(Integer))
dtb.AddDef("顺序", Gettype(Integer))
dtb.Build()
MainTable= Tables(tb.name & "报表打印")


 回到顶部
帅哥哟,离线,有人找我吗?
kaituozhe
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2236 积分:15335 威望:0 精华:0 注册:2015/7/18 10:10:00
  发帖心情 Post By:2017/12/10 12:24:00 [显示全部帖子]

怎么能够表控件动态绑定表代码如下:e.Form.Controls("Table1").Table = Tables("科目余额")

 回到顶部
帅哥哟,离线,有人找我吗?
kaituozhe
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2236 积分:15335 威望:0 精华:0 注册:2015/7/18 10:10:00
  发帖心情 Post By:2017/12/10 18:23:00 [显示全部帖子]

我是希望能够通过窗口自动设置并打印报表,我的想法是建立一个临时表,提取当前表的各个字段、数据类型、宽度等信息,然后根据自己的设定需要打开的字段,代码如下,但是报错误,该怎么修改?

Forms("报表打印").open
Dim tb As Table = CurrentTable
'msgbox(tb.name & "报表打印")

Dim dtb As New DataTableBuilder(tb.name & "报表打印")
dtb.AddDef("字段名", Gettype(String), 255)
dtb.AddDef("是否打印", Gettype(String), 32)
dtb.AddDef("宽度", Gettype(Double))
dtb.AddDef("顺序", Gettype(Integer))
dtb.Build()
For Each c As Col In tb.Cols
    Dim dr As DataRow = DataTables(tb.name & "报表打印").AddNew()
    dr("字段名") = c.Name
    dr("宽度") = c.PrintWidth
Next
Tables("报表打印_Table1").DataSource = Tables(tb.name & "报表打印")

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目16.foxdb


 回到顶部
帅哥哟,离线,有人找我吗?
kaituozhe
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2236 积分:15335 威望:0 精华:0 注册:2015/7/18 10:10:00
  发帖心情 Post By:2017/12/11 3:02:00 [显示全部帖子]

提示为找不到“Label1”的控件,是什么原因?该怎么修改?

.NET Framework 版本:2.0.50727.8689
Foxtable 版本:2017.10.26.1
错误所在事件:窗口,报表打印,打印报表,Click
详细错误信息:
未设置对象变量或 With 块变量。


 回到顶部
帅哥哟,离线,有人找我吗?
kaituozhe
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2236 积分:15335 威望:0 精华:0 注册:2015/7/18 10:10:00
  发帖心情 Post By:2017/12/11 3:02:00 [显示全部帖子]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目16.foxdb


 回到顶部
帅哥哟,离线,有人找我吗?
kaituozhe
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2236 积分:15335 威望:0 精华:0 注册:2015/7/18 10:10:00
  发帖心情 Post By:2017/12/11 3:06:00 [显示全部帖子]

在7楼的例子中我还希望选择是否打印时,能够按照选择的顺序自动填入相应的数字的该怎么修改代码?

 回到顶部
帅哥哟,离线,有人找我吗?
kaituozhe
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2236 积分:15335 威望:0 精华:0 注册:2015/7/18 10:10:00
  发帖心情 Post By:2017/12/11 17:05:00 [显示全部帖子]

例子中的宽度怎么没有办法使用

 回到顶部
帅哥哟,离线,有人找我吗?
kaituozhe
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2236 积分:15335 威望:0 精华:0 注册:2015/7/18 10:10:00
  发帖心情 Post By:2017/12/12 15:43:00 [显示全部帖子]

我想把以下代码放在菜单中,但是黄色的代码怎么修改?

Forms("报表打印").open
Dim tb As Table = e.Form.controls("Table1").Table
Dim dtb As New DataTableBuilder(tb.name & "报表打印")
dtb.AddDef("字段名", Gettype(String), 255)
dtb.AddDef("数据类型", Gettype(String), 255)
dtb.AddDef("选择", Gettype(Boolean))
dtb.AddDef("宽度", Gettype(Double))
dtb.AddDef("顺序", Gettype(Date))
dtb.Build()
DataTables(tb.name & "报表打印").DataCols("顺序").SetDateTimeFormat(DateTimeFormatEnum.DateLongTime)
DataTables(tb.name & "报表打印").GlobalHandler.DataColChanged = True
For Each c As Col In tb.Cols
    Dim dr As DataRow = DataTables(tb.name & "报表打印").AddNew()
    dr("字段名") = c.Name
    If c.IsBoolean
        dr("数据类型") = "Boolean"
    ElseIf c.IsDate
        dr("数据类型") = "Date"
    ElseIf c.IsNumeric
        dr("数据类型") = "Numeric"
    ElseIf c.IsString
        dr("数据类型") = "String"
    End If
    dr("宽度") = c.PrintWidth
Next
Dim name As String = e.Form.controls("Table1").Table.DataTable.name
Forms("报表打印").controls("Label2").text = name
Forms("报表打印").controls("table1").Table.DataSource = DataTables(tb.name & "报表打印")


 回到顶部