以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  加载基础上再筛选的表达式  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=27621)

--  作者:SZDVYE
--  发布时间:2013/1/6 1:02:00
--  加载基础上再筛选的表达式

数据表内有11月的12月的数据,会员列(逻辑型)和付款(逻辑型),已经用加载树了12月的数据,想通过表达式再次筛选会员列(True)和付款(True)的数据,我的表达式如下,但是又加载了11月的12月的数据,请问表达式该如何修改?

Tables("结算表").Filter = "会员 = True And 付款 = True"


--  作者:lin_hailun
--  发布时间:2013/1/6 9:04:00
--  
 楼主是什么意思?是想筛选出所有数据 会员 = True And 付款 = True 的行,还是只是想筛选 12月 会员 = True And 付款 = True 的行?

 说明筛选意图。

--  作者:SZDVYE
--  发布时间:2013/1/6 9:46:00
--  
是打开程序数据表是没有加载内容的,然后先加载12月的数据,然后再通过按钮(想从已加载12月的数据中再筛选出 会员 = True And 付款 = True 的行),用于制作报表
--  作者:lin_hailun
--  发布时间:2013/1/6 9:55:00
--  
如果有月份列的话,就加多一个条件,如果是字符串列的话,就加引号。

 Tables("结算表").Filter = "会员 = True And 付款 = True And 月份 = \'12\'"

--  作者:SZDVYE
--  发布时间:2013/1/6 18:54:00
--  

月份 = \'12\'" 是个变量 这句代码是加入在专业报表管理器-代码报表的代码里。

我的操作过程是:

1、打开程序

2、使用加载树加载需要出报表的该月的数据,例如12月

3、当需要出具12月会员 = True And 付款 = True 的账单时,按下按钮自动生成出具12月每个客户的会员 = True And 付款 = True 的账单

    当需要出具12月会员 = FALSE And 付款 = True 的账单时,按下按钮自动生成出具12月每个客户的会员 = True FALSE 付款 = True 的账单

 

所以不知道该如何设置代码。能否给一个思路?


--  作者:nblwar
--  发布时间:2013/1/6 23:12:00
--  
楼主你确定你使用的是加载树,而不是筛选树??
--  作者:狐狸爸爸
--  发布时间:2013/1/7 8:56:00
--  
你的内部表还是外部表,如果是内部表,在BeforeLoadInnerTable设置代码,就可以只加载当月的数据:
 
If e.DataTableName = "这个表的名称" Then
    e.Filter = "会员 = True And 付款 = True & 月份 = " Date.Today.Month
End If
 
上面的代码假定月份是整数型,如果是字符型:
 
If e.DataTableName = "这个表的名称" Then
    e.Filter = "会员 = True And 付款 = True & 月份 = \'" Date.Today.Month & "\'"
End If