以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- excel报表? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=145312) |
-- 作者:有点蓝 -- 发布时间:2020/1/16 8:36:00 -- [%max(日期列)] |
-- 作者:有点蓝 -- 发布时间:2020/1/31 20:35:00 -- 报表事件不是这样用的,看这个:http://www.foxtable.com/webhelp/topics/1956.htm,如果看不懂就上传实例 |
-- 作者:有点蓝 -- 发布时间:2020/2/1 10:16:00 -- 连接不到数据库,无法测试,请改为内部表再发上来。或者新建一个项目,导入报表对应的出差表发上来 |
-- 作者:有点蓝 -- 发布时间:2020/2/1 14:13:00 -- 试了一下,最大日期只能在<FooterRow>处理,无法在HeaderRow做 |
-- 作者:有点蓝 -- 发布时间:2020/3/15 22:28:00 -- 报表事件: AfterBuild事件 vars("填报日期1") = new Date() BuildPageHeader事件 Select Case e.Book.TempLate Case "差旅费报销单" e.Book.Marks("pg") = e.Book.Marks("pg") + 1 e.Book.Marks("页码") = "第" & e.Book.Marks("pg") & "页" Dim dr As DataRow If vars("填报日期1") = Nothing dr= DataTables("登记出差").Find("[出差起日期]>=#2018-12-31# and [出差起日期]<=#2019-12-31# and 报销方式_车或差 = \'差旅\'","出差起日期",2) Else dr= DataTables("登记出差").Find("[出差起日期]>#" & vars("填报日期1") & "# And [出差起日期]<=#2019-12-31# And 报销方式_车或差 = \'差旅\'" ,"出差起日期",2) End If If dr IsNot Nothing Then e.Book.Marks("填报日期1")= dr("出差起日期") Else If vars("填报日期1") = Nothing dr= DataTables("登记出差").Find("[出差起日期]>=#2018-12-31# and [出差起日期]<=#2019-12-31# and 报销方式_车或差 = \'差旅\'","出差起日期",1) Else dr= DataTables("登记出差").Find("[出差起日期]>#" & vars("填报日期1") & "# And [出差起日期]<=#2019-12-31# And 报销方式_车或差 = \'差旅\'" ,"出差起日期",1) End If If dr IsNot Nothing Then e.Book.Marks("填报日期1")= dr("出差起日期") Else If vars("填报日期1") = Nothing dr= DataTables("登记出差").Find("[出差起日期]>=#2018-12-31# and [出差起日期]<=#2019-12-31# and 报销方式_车或差 = \'差旅\'","出差起日期",0) Else dr= DataTables("登记出差").Find("[出差起日期]>#" & vars("填报日期1") & "# And [出差起日期]<=#2019-12-31# And 报销方式_车或差 = \'差旅\'" ,"出差起日期",0) End If If dr IsNot Nothing Then e.Book.Marks("填报日期1")= dr("出差起日期") End If End If End If End Select BuildPageFooter事件 Select Case e.Book.TempLate Case "差旅费报销单" e.Book.Marks("填报日期2") = e.PageRows(e.PageRows.count -1)("出差起日期") \'" & [%max(出差起日期)] & " vars("填报日期1") = e.PageRows(e.PageRows.count -1)("出差起日期") e.Book.Marks("报账人")= user.name End Select |