Foxtable(狐表)用户栏目专家坐堂 → 限制行数


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

主题:限制行数

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


加好友 发短信
等级:六尾狐 帖子:1470 积分:8981 威望:0 精华:0 注册:2013/10/24 9:12:00
限制行数  发帖心情 Post By:2014/5/9 10:14:00 [显示全部帖子]

Dim drs As List(Of DataRow)
Dim xj As WinForm.textBox = e.Form.Controls("姓名")
drs = DataTables("收购").Select("[姓名] = '" & xj.Text & "'and [凭证号] is null")
If xj.text = "" Or drs.count=0 Then
    MessageBox.Show("请重新输入查询条件!")
Else
    Dim Filter As String
    Filter =  "[猪主姓名] = '" & xj.Text & "'and 收购凭证号 Is null And [重量] <> 0 And [日期] = #" & vars("adate") & "#"
    Tables("打印收购窗口_Table1").Filter = Filter

end if

如何在上述代码中加入限制显示的行数不超过5行?


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


加好友 发短信
等级:六尾狐 帖子:1470 积分:8981 威望:0 精华:0 注册:2013/10/24 9:12:00
  发帖心情 Post By:2014/5/9 10:15:00 [显示全部帖子]

Dim drs As List(Of DataRow)
Dim xj As WinForm.textBox = e.Form.Controls("姓名")
drs = DataTables("收购").Select("[姓名] = '" & xj.Text & "'and [凭证号] is null")
If xj.text = "" Or drs.count=0 Then
    MessageBox.Show("请重新输入查询条件!")
Else
    Dim Filter As String
    Filter =  "[姓名] = '" & xj.Text & "'and 凭证号 Is null And [重量] <> 0 And [日期] = #" & vars("adate") & "#"
    Tables("打印收购窗口_Table1").Filter = Filter

end if

如何在上述代码中加入限制显示的行数不超过5行?


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


加好友 发短信
等级:六尾狐 帖子:1470 积分:8981 威望:0 精华:0 注册:2013/10/24 9:12:00
  发帖心情 Post By:2014/5/9 10:19:00 [显示全部帖子]

应该怎样加入代码呢?

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


加好友 发短信
等级:六尾狐 帖子:1470 积分:8981 威望:0 精华:0 注册:2013/10/24 9:12:00
  发帖心情 Post By:2014/5/9 10:38:00 [显示全部帖子]

因为每打印一张piao据,都有一个凭证号,每张piao据最多只可打印5行,如果超过5行,就会造成2张或更多piao据同号,因而限制只显示5行,就不出现piao据同号。

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


加好友 发短信
等级:六尾狐 帖子:1470 积分:8981 威望:0 精华:0 注册:2013/10/24 9:12:00
  发帖心情 Post By:2014/5/9 10:41:00 [显示全部帖子]

有没有更好的办法。

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


加好友 发短信
等级:六尾狐 帖子:1470 积分:8981 威望:0 精华:0 注册:2013/10/24 9:12:00
  发帖心情 Post By:2014/5/9 10:47:00 [显示全部帖子]

Dim drs As List(Of DataRow)
Dim xj As WinForm.textBox = e.Form.Controls("姓名")
drs = DataTables("收购").Select("[姓名] = '" & xj.Text & "'and [凭证号] is null")
If xj.text = "" Or drs.count=0 Then
    MessageBox.Show("请重新输入查询条件!")
Else
    Dim Filter As String
    Filter =  "[姓名] = '" & xj.Text & "'and 凭证号 Is null And [重量] <> 0 And drs.count <= 5 and [日期] = #" & vars("adate") & "#"
    Tables("打印收购窗口_Table1").Filter = Filter
end if

用drs.count <= 5,为什么不行?


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


加好友 发短信
等级:六尾狐 帖子:1470 积分:8981 威望:0 精华:0 注册:2013/10/24 9:12:00
  发帖心情 Post By:2014/5/9 15:33:00 [显示全部帖子]

LockBaseMainForm() '锁定主窗口
Dim drs As List(Of DataRow)
Dim xj As WinForm.textBox = e.Form.Controls("猪主姓名")
drs = DataTables("收购").Select("[猪主姓名] = '" & xj.Text & "'and [收购凭证号] is null")
If xj.text = "" Or drs.count=0 Then
    MessageBox.Show("请重新输入查询条件!")
Else
    Dim Filter As String
    Filter =  "[猪主姓名] = '" & xj.Text & "'and 收购凭证号 Is null And [重量] <> 0 And [日期] = #" & vars("adate") & "#"
    Tables("打印收购窗口_Table1").Filter = Filter
    DataTables("打印收购窗口_Table1").LoadTop = 5  '每页加载5行
   
    Tables("打印收购窗口_Table1").SetHeaderRowHeight(40)
    Tables("打印收购窗口_Table1").DefaultRowHeight = 25
    Tables("打印收购窗口_Table1").SetColVisibleWidth("编号|150|猪主姓名|120|头数|80|重量|80|单价|80|收购金额|120")
    DataTables("收购单价汇总").DataRows.Clear
    DataTables("收购单明细表").DataRows.Clear
    For Each r10 As DataRow In drs
        Dim r20 As Row = Tables("收购单明细表").AddNew
        r20("猪主姓名") = r10("猪主姓名")
        r20("头数") = r10("头数")
        r20("重量") = r10("重量")
        r20("单价") = r10("单价")
        r20("收购金额") = r10("收购金额")
        r20("猪主地址") = r10("猪主地址")
        r20("日期") = vars("adate")
    Next
    Dim g1 As New GroupTableBuilder("统计表1",  DataTables("收购单明细表"))
    g1.Groups.AddDef("猪主姓名")
    g1.Groups.AddDef("单价")
    g1.Groups.AddDef("猪主地址")
    g1.Totals.AddDef("头数")
    g1.Totals.AddDef("重量")
    g1.Totals.AddDef("收购金额")
    g1.Build()
    For Each r10 As Row In Tables("统计表1")
        Dim r20 As Row = Tables("收购单价汇总").AddNew
        r20("猪主姓名") = r10("猪主姓名")
        r20("头数") = r10("头数")
        r20("重量") = r10("重量")
        r20("单价") = r10("单价")
        r20("收购金额") = r10("收购金额")
        r20("猪主地址") = r10("猪主地址")
        r20("日期") = vars("adate")
    Next
    vars("io") = "已汇总"
    vars("xx5") = 1
    DataTables("收购单价汇总").DeleteFor("[重量] = 0")
    DataTables("统计表1").DataRows.Clear
    MainTable = Tables("MAIN")
End If
UnLockBaseMainForm() '解锁主窗口

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


加好友 发短信
等级:六尾狐 帖子:1470 积分:8981 威望:0 精华:0 注册:2013/10/24 9:12:00
  发帖心情 Post By:2014/5/9 15:36:00 [显示全部帖子]

我用的是模式窗口,如果用加载会影响主窗口,使主窗口每次重新加载一次,用filter就不会有这种情况。

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


加好友 发短信
等级:六尾狐 帖子:1470 积分:8981 威望:0 精华:0 注册:2013/10/24 9:12:00
  发帖心情 Post By:2014/5/9 15:38:00 [显示全部帖子]

上述代码中

DataTables("打印收购窗口_Table1").LoadTop = 5  '每页加载5行
不起作用,有其他代码可以代替的吗?


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


加好友 发短信
等级:六尾狐 帖子:1470 积分:8981 威望:0 精华:0 注册:2013/10/24 9:12:00
  发帖心情 Post By:2014/5/9 16:11:00 [显示全部帖子]

 For count To drs.Count - 1
这句代码好像有错?

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