Foxtable(狐表)用户栏目专家坐堂 → [求助]把代码改为从后台筛选


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

主题:[求助]把代码改为从后台筛选

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


加好友 发短信
等级:幼狐 帖子:141 积分:904 威望:0 精华:0 注册:2016/8/4 10:50:00
  发帖心情 Post By:2016/10/18 17:20:00 [只看该作者]

原来的表怎么恢复原状?在窗口表afterclose事件加入什么代码?

 回到顶部
帅哥,在线噢!
有点蓝
  22楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106067 积分:539428 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/10/18 17:36:00 [只看该作者]


Tables("原来的表").Filter = ""

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


加好友 发短信
等级:幼狐 帖子:141 积分:904 威望:0 精华:0 注册:2016/8/4 10:50:00
  发帖心情 Post By:2016/10/18 17:57:00 [只看该作者]

以下是引用有点蓝在2016/10/18 17:14:00的发言:
With Forms("退款记载结果").Controls("Table1").Table
    Forms("退款记载结果").Controls("label2").Text =  .Compute("sum(F4415)",.Filter)
End With

这段代码好像只能计算窗口副本表第一页数据的代码,可以改为计算窗口表上所有数据的代码吗?


 回到顶部
帅哥,在线噢!
有点蓝
  24楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106067 积分:539428 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/10/18 20:05:00 [只看该作者]

窗口副本表是怎么分页的

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


加好友 发短信
等级:幼狐 帖子:141 积分:904 威望:0 精华:0 注册:2016/8/4 10:50:00
  发帖心情 Post By:2016/10/19 9:40:00 [只看该作者]

第一页代码
With DataTables("T246")
    If .LoadPage <> 0 Then
       .LoadTop = 20
       .LoadPage = 0
       .Load()
    End If
End With
这样

 回到顶部
帅哥,在线噢!
有点蓝
  26楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106067 积分:539428 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/10/19 10:13:00 [只看该作者]

19楼说不要计算全部的,然后23楼又说要计算全部的。到底是要怎样?

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


加好友 发短信
等级:幼狐 帖子:141 积分:904 威望:0 精华:0 注册:2016/8/4 10:50:00
  发帖心情 Post By:2016/10/19 10:30:00 [只看该作者]

我的意思是筛选出来的结果要全部计算

 回到顶部
帅哥,在线噢!
有点蓝
  28楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106067 积分:539428 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/10/19 10:46:00 [只看该作者]

不知道你怎么筛选的,上例子测试

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


加好友 发短信
等级:幼狐 帖子:141 积分:904 威望:0 精华:0 注册:2016/8/4 10:50:00
  发帖心情 Post By:2016/10/19 11:21:00 [只看该作者]

例子太大,上传不了。。。
这是退费查询窗口进行条件查询,“确定”按钮的代码
Forms("退款记载结果").Open
Dim filter1 As String = ""

With e.Form.Controls("combobox1")
    If .Value IsNot Nothing Then
        filter1 = "[F5319]Like '%" & .Value & "%'"
    End If
End With
With e.Form.Controls("TextBox1")
    If .Value IsNot Nothing Then
        If filter1 > "" Then
            filter1 = filter1 & " And "
        End If
        filter1 = filter1 & "[F4384]Like '%" & .Value & "%'"
    End If
End With
With e.Form.Controls("TextBox2")
    If .Value IsNot Nothing Then
        If filter1 >"" Then
            filter1 = filter1 & " And "
        End If
        filter1 = filter1 & "[F4387] Like '%" & .Value & "%'"
    End If
End With
With e.Form.Controls("TextBox3")
    If .Value IsNot Nothing Then
        If filter1 >"" Then
            filter1 = filter1 & " And "
        End If
        filter1 = filter1 & "[F4419]Like '%" & .Value & "%'"
    End If
End With

Dim cal1 As WinForm.DateTimePicker = e.Form.Controls("datetimepicker1")
Dim cal2 As WinForm.DateTimePicker = e.Form.Controls("datetimepicker2")
If cal1.value IsNot Nothing And cal2.value IsNot Nothing Then
    If filter1 > "" Then
        filter1 = filter1 & " and"
    End If
    filter1 = filter1 & "[F4411] >= '" & cal1.value & " ' and [F4411] <= ' " & cal2.value & "'"
End If
    If filter1 > "" Then
        filter1 = filter1 & " and"
  End If  

Dim dt As DataTable = Forms("退款记载结果").Controls("Table1").Table.DataTable
dt.LoadFilter = filter1 & " [F4415]>0"
dt.Load

Forms("退款记载结果").Controls("label2").Text =  Forms("退款记载结果").Controls("Table1").Table.Compute("sum(F4415)")


然后点击“确定”按钮执行上面代码,打开退款窗口,里面有副本表,显示筛选出来的结果,我把它分页加载20行结果。
其实副本表里面显示出来的东西和原来的表T246一样,T246表原来是后台数据表(也是用了分页加载20行),执行上面的代码筛选后变成筛选结果表,跟副本表一样

 回到顶部
帅哥,在线噢!
有点蓝
  30楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106067 积分:539428 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/10/19 11:49:00 [只看该作者]

你们是一个公司的?看下面的处理方法

http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&Id=91749

 回到顶部
总数 42 上一页 1 2 3 4 5 下一页