以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]窗口上如何做筛选  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=21617)

--  作者:蒋仁义
--  发布时间:2012/7/19 1:03:00
--  [求助]窗口上如何做筛选
请教:我在窗口上插入了一个销售表:我只想列表列出未结帐的,或者我只想列表列出已结账的。如何做。
--  作者:sloyy
--  发布时间:2012/7/19 1:57:00
--  
tables("窗口名称_table1").filter="[结账]=True"
[此贴子已经被作者于2012-7-19 1:56:51编辑过]

--  作者:蒋仁义
--  发布时间:2012/7/19 11:47:00
--  
谢谢,是在什么地方录入:tables("窗口名称_table1").filter="[结账]=True", 这个内容在帮助的的那个章节呢?
[此贴子已经被作者于2012-7-19 11:51:19编辑过]

--  作者:yangming
--  发布时间:2012/7/19 11:52:00
--  
代码放在窗口中的按钮中
--  作者:蒋仁义
--  发布时间:2012/7/19 15:48:00
--  

谢谢在窗口上可以了,但是如果是在页面集合,当我的表放在页面集合的第二页,那我该如写代码及放在什么地方呢?

[此贴子已经被作者于2012-7-19 15:48:51编辑过]

--  作者:18956645511
--  发布时间:2012/7/19 16:05:00
--  用帮助
在"页面-事件-selectedindexchang"里输入代码,用"select case"语句选择页面.如果不如何写代码,请在帮助的搜索中输入"

SelectedIndexChanged"查找!

这是我按照帮助写的一段代码,用于查找会计科目的页面.希望对你有帮助.也请大侠们批评指教.

Dim bar As WinForm.tabcontrol = e.sender
Select Case bar.SelectedPage.Text
    Case "全部"
        MainTable = Tables("会计科目")  \'窗口各个页面中表控件绑定的都是"会计科目"表,下同
    Case "资产类"
        Tables("窗口5_table2").Filter = "[科目代码] like \'1*\'"
    Case "负债类"
        Tables("窗口5_table3").Filter = "[科目代码] like \'2*\'"
    Case "权益类"
        Tables("窗口5_table4").Filter = "[科目代码] like \'3*\'"
    Case "成本类"
        Tables("窗口5_table5").Filter = "[科目代码] like \'4*\'"
    Case "损益类"
        Tables("窗口5_table6").Filter = "[科目代码] like \'5*\'"
       
End Select

[此贴子已经被作者于2012-7-19 16:51:14编辑过]

--  作者:蒋仁义
--  发布时间:2012/7/20 2:31:00
--  

窗口上可以了,但是如果是在页面集合我花了很多时间都没做出来。

比如我现在做的是售后服务系统。我做的窗口是页面集合,第一页是“报修”,第二页是“派工”,第三页是“完工”,第四页是“回访”,第五页是“结算”等。

我定义了的服务总表,报修窗口绑定到服务表,在第一页是“报修”,通过窗口录入报修数据进入到服务总表。

打开第二页时,自动打开,在服务总表筛选“没有派工的”,列出没有派工的行。然后进行派工。

打开第三页时,自动打开,在服务总表筛选“已经派工的”,列出已经派工的行。然后进行完工操作。

打开第四页时,自动打开,在服务总表筛选“已经完工的”,列出已经完工的行。然后进行回访操作。

 

这样在每个页面自动打开的表,如何写代码,在那的事件录入代码。

 

[此贴子已经被作者于2012-7-20 2:47:11编辑过]

--  作者:blackzhu
--  发布时间:2012/7/20 7:55:00
--  
用6楼的代码改改.
--  作者:18956645511
--  发布时间:2012/7/20 15:08:00
--  用帮助

选中“页面集合(TabControl1)”控件,点“事件”,在第一条“selectedindexchanged”里输入代码:

(前提是在页面集合的每个页面里都要插入“table”控件,并绑定要操作的表(作为副本),而且设定好要显示的列及其列宽。你要绑定的是“服务总表”)

Dim bar As WinForm.tabcontrol = e.sender
Select Case bar.SelectedPage.Text
case "报修”

Tables("窗口5_table2").Filter = "[报修] =true"  ’本人理解,这些列应该是逻辑列,下同.如果是要显示“服务总表”,用maintable=tables("服务总表")
Case "未派工"
Tables("窗口5_table3").Filter = "[派工]=false"
Case "已派工"
Tables("窗口5_table4").Filter = "[派工]=true"
Case "完工"
Tables("窗口5_table5").Filter = "[完工]=true"
End Select

请试一试看。

[此贴子已经被作者于2012-7-20 15:27:37编辑过]

--  作者:蒋仁义
--  发布时间:2012/7/20 16:11:00
--  

很感谢,我试试。