以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- beforebuild (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=184571) |
|
-- 作者:edisontsui -- 发布时间:2022/12/14 10:23:00 -- beforebuild If CurrentTable.name = "SBG对账单" Then Dim tbl As Table = Tables("SBG对账单") If e.Book.TempLate = "开具发票项目" Then \'TempLate是指模板文件的名称 Dim cnt As Integer = tbl.DataTable.GetValues("页码", Tables("SBG对账单").filter).count \'统计某列筛选后含有多少个不同的页码, 加上 Tables("接头BOM").filter 就是进行筛选的意思,不加,就是所有数据 If cnt > 1 Then messagebox.show("本页面存在 " & cnt & " 个不同的页码, 请重新筛选后再使用此按钮!") Else \'不起作用? Dim a As Row = Tables("SBG对账单").Current If a.isnull("同年月序号") Then MessageBox.Show("存在 同年月序号 为空值的行!") Tables("SBG对账单").Filter = "[同年月序号] is null" End If End If End If End If 上面的代码,我希望在运行报表之前提醒还有同年月序号 为空值的行,但是这些代码无效。请教是哪里的问题呢?谢谢。
|
|
-- 作者:有点蓝 -- 发布时间:2022/12/14 10:42:00 -- 调试 msgbox(CurrentTable.name)
|
|
-- 作者:edisontsui -- 发布时间:2022/12/29 8:51:00 -- If CurrentTable.name = "生产计划" Then If e.Book.TempLate = "物料标签-腾龙" Then \'TempLate是指模板文件的名称 Dim a As Row = Tables("生产计划").Current If a.isnull("操作员3") Then MessageBox.Show("此行的操作员为空值,不允许打印标签!") Else If a("生产日期") < Date.Today.AddDays( - 2) AndAlso User.Group = "生产" Then MessageBox.Show("生产车间如果需要打印2天之前的标签,请找管理员处理!") End If End If End If End If 请教的问题:上述两个条件中任何一个没有满足,都会出现警告,但是报表也照样打印。我希望,如果任何一个条件没有满足,就不允许打印报表,要怎样修改代码?谢谢。
|
|
-- 作者:有点蓝 -- 发布时间:2022/12/29 9:03:00 -- 报表事件没有退出的功能,换种方式,写代码先判断再生成报表,类似:http://www.foxtable.com/webhelp/topics/1145.htm Dim a As Row = Tables("生产计划").Current If a.isnull("操作员3") Then MessageBox.Show("此行的操作员为空值,不允许打印标签!") return Else If a("生产日期") < Date.Today.AddDays( - 2) AndAlso User.Group = "生产" Then MessageBox.Show("生产车间如果需要打印2天之前的标签,请找管理员处理!") return End If End If ‘下面开始生成报表 Dim Book As New XLS.Book(ProjectPath & "Attachments\\出库单.xls")
Dim fl As String = ProjectPath & "Reports\\出库单.xls" Book.Build() \'生成细节区 Book.Sheets(0).Rows.RemoveAt(0) \'删除第一行,Excel报表的第一行通常是标记行 Book.Save(fl) \'保存工作簿 Dim Proc As New Process \'打开工作簿 Proc.File = fl Proc.Start() |
|
-- 作者:edisontsui -- 发布时间:2022/12/29 10:28:00 -- 这个方法有效,好。谢谢。 |