Foxtable(狐表)用户栏目专家坐堂 → 专业报表问题


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

主题:专业报表问题

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


加好友 发短信
等级:四尾狐 帖子:822 积分:5800 威望:0 精华:0 注册:2015/2/3 22:19:00
专业报表问题  发帖心情 Post By:2019/1/2 16:50:00 [显示全部帖子]

refer to this page: http://www.foxtable.com/webhelp/scr/1179.htm

    rx = new prt.RenderText
    rx.Text = CurRow("日期")
    rx.x = 51
    rx.y = 36
   rx.Style.F_o-n-t_name = "微-软——雅黑"
    rx.style.fontsize = 10        ‘加入了这二行,就出错了, 不是这么设置的吗?
    doc.body.Children.Add(rx)


.NET Framework 版本:2.0.50727.8937
Foxtable 版本:2018.9.9.1
错误所在事件:窗口,收据打印,Button3,Click
详细错误信息:
未将对象引用设置到对象的实例。
[此贴子已经被作者于2019/1/2 16:57:56编辑过]

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


加好友 发短信
等级:四尾狐 帖子:822 积分:5800 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2019/1/2 19:26:00 [显示全部帖子]

我遇到的问题有好几个,
1. WIN10系统没有打印服务器属性设置, http://www.foxtable.com/help/index.htm?page=2904.htm
2. 针式打印机不支持自定义纸张
3. foxtable预览里面的页面设置不能保存, 每次都要手动调整一下。我要设置成 纵向, 怎么办?

图片点击可在新窗口打开查看此主题相关图片如下:微信图片_20190102192324.png
图片点击可在新窗口打开查看

[此贴子已经被作者于2019/1/2 19:27:17编辑过]

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


加好友 发短信
等级:四尾狐 帖子:822 积分:5800 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2019/1/2 19:39:00 [显示全部帖子]

哦, 我用代码. doc.print() 直接打印就可以了,不要用预览,用了还很出错。
[此贴子已经被作者于2019/1/2 19:55:02编辑过]

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


加好友 发短信
等级:四尾狐 帖子:822 积分:5800 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2019/1/2 20:07:00 [显示全部帖子]

还有一个小问题,我用的连打纸张,始终都是在重新进第一张打印纸时,打印机会自动入纸多一点,结果造成后面的页面打印出来位置靠下/ 错位了。

代码设置的页边距都是 0

这个怎么解决呢?
[此贴子已经被作者于2019/1/2 20:16:14编辑过]

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


加好友 发短信
等级:四尾狐 帖子:822 积分:5800 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2019/1/2 20:52:00 [显示全部帖子]

用的win10, 但WIN10系统没有打印服务器属性设置。

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


加好友 发短信
等级:四尾狐 帖子:822 积分:5800 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2019/1/2 21:40:00 [显示全部帖子]

打印机有光敏设置,我才问了经销商,明天试下。谢谢甜老师,辛苦了。

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


加好友 发短信
等级:四尾狐 帖子:822 积分:5800 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2019/1/4 16:57:00 [显示全部帖子]

还有一个问题

日期列为空, 但打印预览显示 00:00:00,  这个地方应该怎么处理?

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


加好友 发短信
等级:四尾狐 帖子:822 积分:5800 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2019/1/4 17:27:00 [显示全部帖子]

    rx = new prt.RenderText
    rx.Text = iif(CurRow.Isnull("日期"),Nothing,currow("日期"))

got it, thanks.

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


加好友 发短信
等级:四尾狐 帖子:822 积分:5800 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2019/1/8 13:41:00 [显示全部帖子]

参考了这里 http://www.foxtable.com/webhelp/scr/2904.htm
是piao据连打,打印第一张完全正常,格式吻合。但是打印第二张就出问题了。第一张和第二张中间留了很大间距,第三张和第二张中间也一样情况,很大间距。

单张piao据宽x高,190mm x 120mm
自动旋转设置的false
设置了自定义纸张
边距都设置的0
padding 没有设置

会是哪里的问题呢?



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


加好友 发短信
等级:四尾狐 帖子:822 积分:5800 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2019/1/8 14:48:00 [显示全部帖子]

Dim doc As New PrintDoc '定义一个新报表
doc.PageSetting.Width = 190 '纸张宽度为190毫米
doc.PageSetting.Height = 120 '纸高
doc.AutoRotate = False
Dim rx As prt.RenderText '定义一个文本对象
Dim rm As prt.RenderImage '定义一个图形队形
Doc.PageSetting.LeftMargin = 0 '设置左边距
Doc.PageSetting.RightMargin = 0 '设置右边距
Doc.PageSetting.TopMargin = 0 '设置上边距
Doc.PageSetting.BottomMargin = 0 '
'rx.Width = "Parent.Width" '对象宽度等于页面宽度
'rx.Height = "Parent.Height" '对象高度等于页面高度
Dim Currow As Row
Dim tbl As Table = Tables("收据打印")
For i As Integer = 0 To tbl.Rows.count -1

    CurRow = tbl.rows(i)

    Dim rep As New prt.RenderEmpty '定义一个新的空对象
    rep.BreakBefore = prt.BreakEnum.Page '打印前换页
    doc.Body.Children.Add(rep ) '加入到报表中

    rx = new prt.RenderText
    rx.Text = iif(CurRow.Isnull("日期"),Nothing,currow("日期"))
    rx.style.fontsize = 12
    rx.x = 40
    rx.y = 20
    doc.body.Children.Add(rx)

    rx = new prt.RenderText
    rx.Text = CurRow("姓名")
    rx.style.fontsize = 12
    rx.x = 40
    rx.y = 35
    doc.body.Children.Add(rx)

    rx = new prt.RenderText
    rx.Text = CurRow("人民币大写")
    rx.style.fontsize = 12
    rx.x = 50
    rx.y = 50
    doc.body.Children.Add(rx)

    rx = new prt.RenderText
    rx.Text = CurRow("金额")
    rx.style.fontsize = 14
    rx.x = 140
    rx.y = 50
    doc.body.Children.Add(rx)

    rx = new prt.RenderText
    rx.Text = CurRow("收款事由")
    rx.style.fontsize = 12
    rx.x = 45
    rx.y = 65
    doc.body.Children.Add(rx)

    rx = new prt.RenderText
    Dim tt As String = ""
    tt = forms("收据打印").Controls("TextBox1").Value 
    rx.Text = tt
    rx.style.fontsize = 10
    rx.x = 155
    rx.y = 80
    doc.body.Children.Add(rx)
    
Next
doc.Preview()
'Doc.PrinterName = "..."   '指定打印机
'doc.Print()
[此贴子已经被作者于2019/1/8 14:48:35编辑过]

 回到顶部
总数 18 1 2 下一页