您的位置:程序门 -> delphi ->



关于filter语句的应用


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


关于filter语句的应用[已结贴,结贴人:chinajavis]
发表于:2007-10-09 16:54:59 楼主
for   iyear   :=   yearstart   to   yearend   do            
    with   bankrecordsttable   do
    try
        filtered   :=   false;
        close;
        tablename   :=   bankcardrecordtable   +   '_'   +   inttostr(iyear);
        filter   :=   '...';
        filtered   :=   true;
        open;
        ...;
    except
    end;        

每个年份一张银行表
程序是想统计指定年份之内的帐务信息,不能用query,只可以用table控件来filter
由于用的是同一个table控件,所以应该有filtered:=false和filter:=true的问题,也应该有table的open和close问题
就是不知道它们之间的运用的顺序是否妥当??
有人写程序在filtered   :=   false;之后加了filter:='';为什么要加,不加有什么问题??
table是先open还是先filter??
发表于:2007-10-09 16:59:451楼 得分:20
有人写程序在filtered   :=   false;之后加了filter:=   '   ';为什么要加,不加有什么问题??   应该可以不加吧,可能是各人习惯。
table是先open还是先filter??   这个应该是一样的。你可以自己测试。
发表于:2007-10-09 22:26:242楼 得分:10
filtered     后   一定   要   open   。。要不然   没起到作用啊。。
发表于:2007-10-10 07:37:063楼 得分:30
for   iyear   :=   yearstart   to   yearend   do              
    with   bankrecordsttable   do  
    try  
        close;  
        tablename   :=   bankcardrecordtable   +     '_   '   +   inttostr(iyear);  
        open;  
        filter   :=     '...   ';  
        filtered   :=   true;  

        ...;  
    except  
    end;          

     

发表于:2007-10-10 08:17:044楼 得分:20
我一般这样写:
先close  
filtered:=false
filter:='....';
open
filtered:=true;
发表于:2007-10-11 17:38:375楼 得分:20
table是先open还是先filter??  
------这没关系。

建议:如果每张年份利用率很高的话,可以用多个table控件或用query控件进行操作。


快速检索

最新资讯
热门点击