Subject | Re: TIBOquery and FilterRecord |
---|---|
Author | paulfilmer |
Post date | 2005-02-09T04:14Z |
--- In IBObjects@yahoogroups.com, "rlssv" <rene@s...> wrote:
implementation. For the moment I have just commented out code in
IB_Components.pas to get it to work (see below). Apparantly Jason has
fixed this on the latest IBO release by disabling the tree structures
completely for a future IBO version.
My fixed code:
function TIB_BDataset.CheckRecordFilter( ARow: TIB_Row ): boolean;
function ParentIsExpanded(Node: PIB_Node): boolean;
*** left out code here to save space ***
begin
Result := true;
(* Commented out until tree structure is fully implemented
-pdf 29/11/2004
if FIsTree and Assigned(ARow.RowNode) then
begin
if (ARow.RowState <> rsNone) then
Result := (ARow.RowNode.Level = 0) or (rfVisible in
ARow.RowNode.RowFlags) or ParentIsExpanded(ARow.RowNode);
if (rfVisible in ARow.RowNode.RowFlags) then
ARow.RowNode.RowFlags := ARow.RowNode.RowFlags - [rfVisible];
*)
if ( ARow.RowState <> rsNone ) and Assigned( FOnFilterRecord ) then
OnFilterRecord( ARow, Result );
(*
end;
*)
end;
>I noticed this in 4.5Af. It was due to a bug in the tree structure
> Why is filterrecord not called for a filtered TIBOQuery ?
> I am using 4.5 Ad
>
> René /SSC
implementation. For the moment I have just commented out code in
IB_Components.pas to get it to work (see below). Apparantly Jason has
fixed this on the latest IBO release by disabling the tree structures
completely for a future IBO version.
My fixed code:
function TIB_BDataset.CheckRecordFilter( ARow: TIB_Row ): boolean;
function ParentIsExpanded(Node: PIB_Node): boolean;
*** left out code here to save space ***
begin
Result := true;
(* Commented out until tree structure is fully implemented
-pdf 29/11/2004
if FIsTree and Assigned(ARow.RowNode) then
begin
if (ARow.RowState <> rsNone) then
Result := (ARow.RowNode.Level = 0) or (rfVisible in
ARow.RowNode.RowFlags) or ParentIsExpanded(ARow.RowNode);
if (rfVisible in ARow.RowNode.RowFlags) then
ARow.RowNode.RowFlags := ARow.RowNode.RowFlags - [rfVisible];
*)
if ( ARow.RowState <> rsNone ) and Assigned( FOnFilterRecord ) then
OnFilterRecord( ARow, Result );
(*
end;
*)
end;