Foxtable(狐表)用户栏目专家坐堂 → [求助]


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

主题:[求助]

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


加好友 发短信
等级:幼狐 帖子:103 积分:822 威望:0 精华:0 注册:2016/1/23 15:13:00
[求助]  发帖心情 Post By:2016/2/23 11:49:00 [只看该作者]

老师:我按你昨天介绍的方法做了,还有些问题无法解决,一是:合计金额生成;二是:金额分位套打代码我按以前从表中提取数据的方法生成各位数,但是不行;三是:如何才能实现全部打印,我现在套用的代码只能打印第一页。现在这样,第一页如果不足三行,还会报错
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:报账单.table

请你帮我看一下如何修改,谢谢!

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/2/23 12:09:00 [只看该作者]

 
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:报账单.table


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


加好友 发短信
等级:幼狐 帖子:103 积分:822 威望:0 精华:0 注册:2016/1/23 15:13:00
  发帖心情 Post By:2016/2/24 17:01:00 [只看该作者]

谢谢老师帮助,根据老师的方法,我把《报账单》也设计好了,我还想把报账单按日期及支款方式汇总,将汇总数自动加到《小委托》表中最后两行,(各列分别为:1列、日期为汇总日期;2列:支款方式为汇总的支付中心转账或零余额转账;3列:附件张数为汇总附件张数;4列:编号自动生成;5列:项目摘要第一行为取报账款;8列:列支渠道为取现金;11列:支出金额第一行为汇总金额;15列:收款单位名称为报账员;16列:收款单位账号为报账员账号;17列:收款单位开户行为报账员开户行)。这样,打印大委托时就能自动筛选进去一并打印。另:大委托打印窗口中“上一行”"下一行“按钮没有第一行和最末行终止命令。窗口中大写金额前面空位能不能加”零“,小写合计金额能不能加"¥"?
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:报账单2.table


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/2/24 17:33:00 [只看该作者]

1、要汇总的列,改成数值列,不能是字符列。

 

For Each ary() As String In DataTables("报账单").GetValues("日期|支款方式")
    Dim d As Date = ary(0)
    Dim s As String = ary(1)
    Dim filter As String = "日期 = #" & d & "# and 支款方式 = '" & s & "'"
    Dim fdr As DataRow = DataTables("小委托").find(filter & " and 项目摘要_第一行 = '取报账款汇总'")
    If fdr Is Nothing Then
        fdr = DataTables("小委托").AddNew
        fdr("日期") = d
        fdr("支款方式") = s
        fdr("项目摘要_第一行") = "取报账款汇总"
    End If
    fdr("附件张数") = DataTables("报账单").Compute("sum(单据张数)", filter)
    fdr("列支渠道_第一行") = "取现金"
Next

 

2、

 

第一行:

 

vars("idx") = 0

'下面代码一样

 

最末页

 

Dim t As Table = Tables("大委托.小委托")
Dim idx = t.Rows.count Mod 3
vars("idx") = iif(idx = 0, t.Rows.count-3, (t.Rows.count \ 3) * 3)
Dim count As Integer = 0

'下面代码一样


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/2/24 17:36:00 [只看该作者]

3、加零的问题

 

    e.Form.controls("lbl_d" & Format(j, "00")).Text = CUNum(val(GetDigit(sum,8-j,"")))

 

4、加¥的问题,本来就加了 ¥的


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


加好友 发短信
等级:幼狐 帖子:103 积分:822 威望:0 精华:0 注册:2016/1/23 15:13:00
  发帖心情 Post By:2016/2/25 15:39:00 [只看该作者]

老师,请你帮我看一下《报账单》窗口中的“编号”按月生成编号怎样写代码,金额前能加""。还有就是所有窗口打印都只能打印左边半部分,我以为是横向和纵向选择的问题,但怎么改变都不行,不知道是哪儿弄错了。
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:报账凭证套打.table


还有昨天4楼你给的编码,能不能改成只汇总筛选日的到小委托中,报账员名称及账号如何才能自动写入?
[此贴子已经被作者于2016/2/25 15:42:35编辑过]

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/2/25 15:48:00 [只看该作者]

1、生成编号,参考 http://www.foxtable.com/help/topics/2403.htm

 

2、e.Form.Controls("lbl_01").text = "¥" & sum

 

3、预览我测试没问题,打印按钮

 

Dim doc As PrintDoc = e.Form.GernatePrintDoc()
Doc.AutoRotate = False
Doc.PageSetting.Landscape = True
doc.Print

 

4、4楼的代码,你全部写也没问题,反正都要计算一次。如果要加条件,就这样写

 

For Each ary() As String In DataTables("报账单").GetValues("日期|支款方式", Tables("报账单").Filter)

 


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


加好友 发短信
等级:幼狐 帖子:103 积分:822 威望:0 精华:0 注册:2016/1/23 15:13:00
  发帖心情 Post By:2016/2/25 16:36:00 [只看该作者]

生成编号,参考 http://www.foxtable.com/help/topics/2403.htm中没有这个实例,我这个生成编号是按每个窗口一页,每四行为一页,按页编号。
4楼汇总我是想改成汇总关联表中的筛选数到小委托中,原来是汇总的报账单中的数。
[此贴子已经被作者于2016/2/25 16:38:23编辑过]

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/2/25 16:42:00 [只看该作者]

1、做一个表记录便后,每打印一次,不断递增;

 

2、代码就是汇总到小委托里面啊。


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


加好友 发短信
等级:幼狐 帖子:103 积分:822 威望:0 精华:0 注册:2016/1/23 15:13:00
  发帖心情 Post By:2016/2/25 17:05:00 [只看该作者]

1、做记录表我还不知道怎样做怎样写代码,我只是能勉强看懂你写的代码,自已写还成问题,大都只能照搬。还是请老师指导,或帮写一下代码。
能不能按月统计金额(e.Form.Controls("lbl_01").text = "¥" & sum)的个数来生成编号?
[此贴子已经被作者于2016/2/25 18:19:59编辑过]

 回到顶部
总数 22 1 2 3 下一页