Foxtable(狐表)用户栏目专家坐堂 → 指定行


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

主题:指定行

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


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

 去编写currentChanged事件,写代码控制筛选就好。具体哪里不会做?

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


加好友 发短信
等级:六尾狐 帖子:1470 积分:8981 威望:0 精华:0 注册:2013/10/24 9:12:00
  发帖心情 Post By:2016/7/7 11:26:00 [只看该作者]

希望清除窗口的table1和table2的数据,统计表1和统计表2的数据导入到table1和table2,使到这两个表与姓名为关联,并按序号进行排序?

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


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

如果要动态显示,那就

 

去编写currentChanged事件,写代码控制筛选就好啊


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


加好友 发短信
等级:六尾狐 帖子:1470 积分:8981 威望:0 精华:0 注册:2013/10/24 9:12:00
  发帖心情 Post By:2016/7/7 15:01:00 [只看该作者]

DataTables("工资汇总").DataRows.Clear
DataTables("工资明细汇总").DataRows.Clear
Dim ss1 As String = e.Form.Controls("TextBox1").text
Dim ss2 As String = e.Form.Controls("TextBox2").text
Dim g1 As New GroupTableBuilder("统计表1",DataTables("工资"))   '期初集资款余额
g1.Groups.AddDef("姓名")
g1.Filter = "[字符日期] >= '" & ss1 & "' and [字符日期] <= '" & ss2 & "'"
g1.Build()
For Each r10 As Row In Tables("统计表1")
    Dim r1 As Row = Tables("工资汇总").AddNew()
    r1("姓名") = r10("姓名")
    For Each r As Row In Tables("身份证号码")
        If r("姓名") = r1("姓名") Then
            r1("序号") = r("序号")
            Exit For
        End If
    Next
Next
Dim g2 As New GroupTableBuilder("统计表2",DataTables("工资明细表"))   '期初集资款余额
g2.Groups.AddDef("序号")
g2.Groups.AddDef("姓名")
g2.Groups.AddDef("工资摘要")
g2.Totals.AddDef("金额")
g2.Filter = "[字符日期] >= '" & ss1 & "' and [字符日期] <= '" & ss2 & "'"
g2.Build()
For Each r10 As Row In Tables("统计表2")
    Dim r1 As Row = Tables("工资明细汇总").AddNew()
    r1("姓名") = r10("姓名")
    r1("工资摘要") = r10("工资摘要")
    r1("金额") = r10("金额")
    For Each r As Row In Tables("工资摘要名称")
        If r("工资摘要") = r1("工资摘要") Then
            r1("序号") = r("序号")
            Exit For
        End If
    Next
Next
Tables("工资汇总窗口_Table1").DataSource = DataTables("工资汇总")
Tables("工资汇总窗口_Table2").DataSource = DataTables("工资明细汇总")
Tables("工资汇总窗口_Table1").Cols("金额").GrandTotal = True '指定要合计的列
Tables("工资汇总窗口_Table1").GrandTotal = True '显示合计模式
Tables("工资汇总窗口_Table2").Cols("金额").GrandTotal = True '指定要合计的列
Tables("工资汇总窗口_Table2").GrandTotal = True '显示合计模式
If Relations.Contains("关联1") = False Then
    Relations.Add("关联1",DataTables("工资汇总窗口_Table1").DataCols("姓名"),DataTables("工资汇总窗口_Table2").DataCols("姓名"))
End If
'Dim drs1 As List(of DataRow) = Tables("工资汇总").Select("","序号")
'For i As Integer = 0 To drs1.Count - 1
    'drs1(i).BaseRow("_SortKey") = i
'Next
'Dim drs2 As List(of DataRow) = Tables("工资明细汇总").Select("","序号")
'For i As Integer = 0 To drs2.Count - 1
    'drs2(i).BaseRow("_SortKey") = i
'Next
DataTables("统计表1").DataRows.Clear
DataTables("统计表2").DataRows.Clear

再次请问老师:窗口中的table1与table2如何添加关联?
If Relations.Contains("关联1") = False Then
    Relations.Add("关联1",DataTables("工资汇总窗口_Table1").DataCols("姓名"),DataTables("工资汇总窗口_Table2").DataCols("姓名"))
End If


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


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

去编写CurrentChanged事件啊

 

Tables("工资汇总窗口_Table2").Filter = "姓名 = '" & e.Table.Current("姓名") & "'"


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


加好友 发短信
等级:六尾狐 帖子:1470 积分:8981 威望:0 精华:0 注册:2013/10/24 9:12:00
  发帖心情 Post By:2016/7/7 16:39:00 [只看该作者]

'If Forms("工资汇总窗口").Opened Then
    If Tables("工资汇总窗口_Table2").Cols(0).Name = "序号" Then
        Tables("工资汇总窗口_Table2").Filter = "姓名 = '" & e.Table.Current("姓名") & "'"
    End If
'End If
如何判断第一列的列名才打开?


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


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

 什么意思?窗口没有打开,是没有窗口表的。

 

 这样写 If Tables("工资汇总窗口_Table2").Cols(0).Name = "序号" Then 有什么问题?


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


加好友 发短信
等级:六尾狐 帖子:1470 积分:8981 威望:0 精华:0 注册:2013/10/24 9:12:00
  发帖心情 Post By:2016/7/8 9:02:00 [只看该作者]

DataTables("工资汇总").DataRows.Clear
DataTables("工资明细汇总").DataRows.Clear
Dim ss1 As String = e.Form.Controls("TextBox1").text
Dim ss2 As String = e.Form.Controls("TextBox2").text
If ss1 = "" AndAlso ss2 ="" Then
    messagebox.show("请在文本框内输入期初和期末字符日期!")
Else
    Dim g1 As New GroupTableBuilder("统计表1",DataTables("工资"))   '期初集资款余额
    g1.Groups.AddDef("姓名")
    g1.Filter = "[字符日期] >= '" & ss1 & "' and [字符日期] <= '" & ss2 & "'"
    g1.Build()
    For Each r10 As Row In Tables("统计表1")
        Dim r1 As Row = Tables("工资汇总").AddNew()
        r1("姓名") = r10("姓名")
        For Each r As Row In Tables("身份证号码")
            If r("姓名") = r1("姓名") Then
                r1("序号") = r("序号")
                Exit For
            End If
        Next
    Next
    Dim g2 As New GroupTableBuilder("统计表2",DataTables("工资明细表"))   '期初集资款余额
    g2.Groups.AddDef("序号")
    g2.Groups.AddDef("姓名")
    g2.Groups.AddDef("工资摘要")
    g2.Totals.AddDef("金额")
    g2.Filter = "[字符日期] >= '" & ss1 & "' and [字符日期] <= '" & ss2 & "'"
    g2.Build()
    For Each r10 As Row In Tables("统计表2")
        Dim r1 As Row = Tables("工资明细汇总").AddNew()
        r1("姓名") = r10("姓名")
        r1("工资摘要") = r10("工资摘要")
        r1("金额") = r10("金额")
        For Each r As Row In Tables("工资摘要名称")
            If r("工资摘要") = r1("工资摘要") Then
                r1("序号") = r("序号")
                Exit For
            End If
        Next
    Next
    Tables("工资汇总窗口_Table1").DataSource = DataTables("工资汇总")
    Tables("工资汇总窗口_Table2").DataSource = DataTables("工资明细汇总")
    Tables("工资汇总窗口_Table1").SetColVisibleWidth("序号|60|姓名|80|金额|100")
    Tables("工资汇总窗口_Table2").SetColVisibleWidth("序号|60|姓名|80|工资摘要|120|金额|100")
    Tables("工资汇总窗口_Table1").SetHeaderRowHeight(30)
    Tables("工资汇总窗口_Table1").DefaultRowHeight = 30
    Tables("工资汇总窗口_Table2").SetHeaderRowHeight(30)
    Tables("工资汇总窗口_Table2").DefaultRowHeight = 30
    Tables("工资汇总窗口_Table1").Grid.Rows(Tables("工资汇总窗口_Table1").Grid.Rows.count-1).height = 30
    Tables("工资汇总窗口_Table2").Grid.Rows(Tables("工资汇总窗口_Table2").Grid.Rows.count-1).height = 30
    Tables("工资汇总窗口_Table1").Cols("金额").GrandTotal = True '指定要合计的列
    Tables("工资汇总窗口_Table1").GrandTotal = True '显示合计模式
    Tables("工资汇总窗口_Table2").Cols("金额").GrandTotal = True '指定要合计的列
    Tables("工资汇总窗口_Table2").GrandTotal = True '显示合计模式
    Dim drs1 As List(of DataRow) = DataTables("工资汇总").Select("","序号")
    For i As Integer = 0 To drs1.Count - 1
        drs1(i).BaseRow("_SortKey") = i
    Next
    Dim drs2 As List(of DataRow) = DataTables("工资明细汇总").Select("","序号")
    For i As Integer = 0 To drs2.Count - 1
        drs2(i).BaseRow("_SortKey") = i
    Next
    DataTables("统计表1").DataRows.Clear
    DataTables("统计表2").DataRows.Clear
End If
第一次点击按钮生成:Tables("工资汇总窗口_Table1")和Tables("工资汇总窗口_Table2"),如果不清除Tables("工资汇总窗口_Table1")和Tables("工资汇总窗口_Table2")出现如下错误

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


加好友 发短信
等级:六尾狐 帖子:1470 积分:8981 威望:0 精华:0 注册:2013/10/24 9:12:00
  发帖心情 Post By:2016/7/8 9:03:00 [只看该作者]


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

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


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

加入msgbox定位错误。

 

不会做,上传具体实例。


 回到顶部