以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]狐狸老爹,表已上传  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=12466)

--  作者:shipangzi
--  发布时间:2011/9/4 16:04:00
--  [求助]狐狸老爹,表已上传
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:求统计办法.table


--  作者:don
--  发布时间:2011/9/4 22:07:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:求统计办法.table


--  作者:shipangzi
--  发布时间:2011/9/5 14:03:00
--  

非常感谢don

 

我想在窗口下实现上述功能

 


图片点击可在新窗口打开查看此主题相关图片如下:360截图20110907140559531.jpg
图片点击可在新窗口打开查看

--  作者:紙上不談兵
--  发布时间:2011/9/5 14:58:00
--  

余下的作练习题,自己练练手吧


窗口中的Table控件


DataSource属性

Table有一个DataSource属性,可以通过此属性动态设置其绑定的表。

例如:

Tables("窗口1_Table1").DataSource = DataTables("订单")


--  作者:狐狸爸爸
--  发布时间:2011/9/5 15:20:00
--  

累死人了,做了我20分钟:

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:求统计办法.table


--  作者:紙上不談兵
--  发布时间:2011/9/5 15:46:00
--  
俺昨晚将下列If ...End 中间两条倒转来,结果死活死活的,不干活!累俺纳闷了半天.
If dr1(s2) =True Then
        dr(format(CDate(s1),"M月_d日")) =Left(s2,1)
         Exit For
End If


--  作者:shipangzi
--  发布时间:2011/9/5 16:08:00
--  

呵呵,看来本菜鸟给大家添了不少麻烦。不过,老爹做的表效果不如DON的,没实现单人单行。

另外,"谈兵"朋友麻烦教教我怎么讲DON的表填到窗口里。


--  作者:狐狸爸爸
--  发布时间:2011/9/5 16:12:00
--  

这样就单人单行了:

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:求统计办法.table


--  作者:紙上不談兵
--  发布时间:2011/9/5 16:14:00
--  
在窗口中插入一个SQL型Table:

Dim b As New SQLGroupTableBuilder("统计表","考勤表")
b.Groups.AddDef("日期",DateGroupEnum.Year,"年")
b.Groups.AddDef("班组")
b.Groups.AddDef("班序")
b.Groups.AddDef("姓名")
b.Totals.AddDef("白班")

Dim t As Table = Tables(e.form.name & "_Table1")
t.DataSource=b.BuildDataSource()
t.StopRedraw
t.Cols.Remove("白班")

Dim s,s1,s2,Ls As String
Ls = DataTables("考勤表").GetComboListString("日期","姓名 is not null","日期")
Dim Ts As String()={"白班","二班","三班","公休","事假","婚假","病假","丧假","旷工"}


With t.DataTable.DataCols
    For Each s1 In Ls.split("|")
        If .Contains(format(CDate(s1),"M月_d日"))=False Then
            .Add(format(CDate(s1),"M月_d日"),Gettype(String),3)
        End If
    Next
End With

Dim dr,dr1 As DataRow
For Each dr  In t.DataTable.DataRows
    s = "班组= \'" & dr("班组") & "\'and 班序= \'" & dr("班序") & "\'and 姓名= \'" & dr("姓名")
    For Each s1 In Ls.split("|")
        dr1= DataTables("考勤表").Find(s & " \'and 日期 = #" & CDate(s1) & "#")
        If dr1 IsNot Nothing Then
            For Each s2 In Ts
                If dr1(s2) =True Then
                    dr(format(CDate(s1),"M月_d日")) =Left(s2,1)
                    Exit For
                End If
            Next
        End If
    Next
Next
t.AutoSizeCols(10)
t.ResumeRedraw

--  作者:shipangzi
--  发布时间:2011/9/5 16:16:00
--  

老爹怎么能把这两个表弄得窗口里也能运行