Foxtable(狐表)用户栏目专家坐堂 → 打印选中记录


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

主题:打印选中记录

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


加好友 发短信
等级:六尾狐 帖子:1495 积分:12175 威望:0 精华:0 注册:2013/3/19 16:41:00
打印选中记录  发帖心情 Post By:2018/5/2 20:48:00 [显示全部帖子]

 老师您好,我想在窗口绑定的表中,先筛选出符合条件的记录,然后通过.Showcheckbox选中需要打印的记录,点击窗口上的打印按钮打印,请问这个代码怎么写呢。

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


加好友 发短信
等级:六尾狐 帖子:1495 积分:12175 威望:0 精华:0 注册:2013/3/19 16:41:00
  发帖心情 Post By:2018/5/2 22:25:00 [显示全部帖子]

老师,我想在设计的窗口中打印,已经筛选出了想要某一类记录,想在这些筛选出的记录中,通过选择,选出要打印的记录,点打印按钮打印。是用excel 打印的。


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


加好友 发短信
等级:六尾狐 帖子:1495 积分:12175 威望:0 精华:0 注册:2013/3/19 16:41:00
  发帖心情 Post By:2018/5/2 23:06:00 [显示全部帖子]

以下是引用有点甜在2018/5/2 22:36:00的发言:
合成条件,设置进去 http://www.foxtable.com/webhelp/scr/2626.htm

 

Dim t As Table = Tables("表A")
Dim filter As String = "1=2"
For Each r As Row In t.GetCheckedRows
    filter &= " or [_Identify] = " & r("_Identify")
Next
msgbox(filter)

老师好,请问和下面的代码合并应该如何写代码呢?

Dim txt As String = e.Form.Controls("ComboBox1").Text
Dim tbl As Table = Tables("打印审批表_Table1")
If txt = "" Then
    tbl.Filter = ""
Else
    txt = "'%" & txt & "%'"
    tbl.Filter = "采购方式 Like " & txt
End If
Tables("物品申报").ShowCheckBox=True


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


加好友 发短信
等级:六尾狐 帖子:1495 积分:12175 威望:0 精华:0 注册:2013/3/19 16:41:00
  发帖心情 Post By:2018/5/3 11:53:00 [显示全部帖子]

要想把下面的代码合并在一起怎么办呢?合并到打印代码中。

打印代码:

Dim Book As New XLS.Book(ProjectPath & "Attachments\采购审批表.xlsx")
Book.Build()
Book.Save(ProjectPath & "Reports\采购审批表.xlsx")
Dim Proc As New Process
Proc.File = "c:\reports\test.xlsx"
Proc.Start()

筛选代码:

Dim txt As String = e.Form.Controls("ComboBox1").Text
Dim tbl As Table = Tables("打印审批表_Table1")
If txt = "" Then
    tbl.Filter = ""
Else
    txt = "'%" & txt & "%'"
    tbl.Filter = "采购方式 Like " & txt
End If


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


加好友 发短信
等级:六尾狐 帖子:1495 积分:12175 威望:0 精华:0 注册:2013/3/19 16:41:00
  发帖心情 Post By:2018/5/3 14:44:00 [显示全部帖子]

我设置把下面的代码放在打印按钮的事件中,但打印的记录还是要通过选择才行。能不有加个逻辑列,来控制要打印哪条记录呢。

 

Dim txt As String = e.Form.Controls("ComboBox1").Text
Dim tbl As Table = Tables("打印审批表_Table1")
If txt = "" Then
    tbl.Filter = ""
Else
    txt = "'%" & txt & "%'"
    tbl.Filter = "采购方式 Like " & txt
End If

Dim Book As New XLS.Book(ProjectPath & "Attachments\采购审批表.xlsx")
Dim fl As String = ProjectPath & "Reports\采购审批表.xlsx"
Book.Build() '生成细节区
Book.Save(fl) '保存工作簿
Dim Proc As New Process '打开工作簿
Proc.File = fl
'Proc.Verb = "Print" '指定动作
Proc.Start()


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


加好友 发短信
等级:六尾狐 帖子:1495 积分:12175 威望:0 精华:0 注册:2013/3/19 16:41:00
  发帖心情 Post By:2018/5/3 21:00:00 [显示全部帖子]

以下是引用有点甜在2018/5/3 15:06:00的发言:
具体问题,请做一个foxtable项目发上来测试。

就是想在表中设置一个“是否打印”的逻辑列,点击打印按钮把选中的记录打印出来。表是绑定在窗口中的,用EXCEL报表打印,代码不会写。

 

Dim Book As New XLS.Book(ProjectPath & "Attachments\采购审批表.xlsx")
Dim fl As String = ProjectPath & "Reports\采购审批表.xlsx"
Book.Build() '生成细节区
Book.Save(fl) '保存工作簿
Dim Proc As New Process '打开工作簿
Proc.File = fl
'Proc.Verb = "Print" '指定动作
Proc.Start()


 回到顶部