You've already forked lazarus-ccr
tvplanit: Trying to fix workaround for filter bug - not successful.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4711 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
@ -1644,9 +1644,9 @@ begin
|
|||||||
|
|
||||||
{ Load this resource's events into memory }
|
{ Load this resource's events into memory }
|
||||||
with EventsTable do begin
|
with EventsTable do begin
|
||||||
SetFilterCriteria(EventsTable, True, Resource.ResourceID,
|
SetFilterCriteria(EventsTable, True, Resource.ResourceID,
|
||||||
TimeRange.StartTime,
|
TimeRange.StartTime,
|
||||||
TimeRange.EndTime);
|
TimeRange.EndTime);
|
||||||
First;
|
First;
|
||||||
|
|
||||||
while not EventsTable.EOF do
|
while not EventsTable.EOF do
|
||||||
@ -1795,7 +1795,9 @@ procedure TVpCustomDBDataStore.SetFilterCriteria(aTable : TDataset;
|
|||||||
aUseDateTime : Boolean; aResourceID : Integer; aStartDateTime : TDateTime;
|
aUseDateTime : Boolean; aResourceID : Integer; aStartDateTime : TDateTime;
|
||||||
aEndDateTime : TDateTime);
|
aEndDateTime : TDateTime);
|
||||||
begin
|
begin
|
||||||
// error here. Could it be that it does not recognise StartTime and EndTime
|
// error here: "... raised an exception class 'EDatabaseError' with message:
|
||||||
|
// Index based on unknown field '>='.".
|
||||||
|
// Could it be that it does not recognise StartTime and EndTime
|
||||||
// (because they are not mapped?)
|
// (because they are not mapped?)
|
||||||
// however StartTime + EndTime are only found in events not tasks
|
// however StartTime + EndTime are only found in events not tasks
|
||||||
|
|
||||||
@ -1812,13 +1814,15 @@ begin
|
|||||||
aTable.Filter := Format('ResourceID = %d', [aResourceID]);
|
aTable.Filter := Format('ResourceID = %d', [aResourceID]);
|
||||||
aTable.Filtered := true;
|
aTable.Filtered := true;
|
||||||
end;
|
end;
|
||||||
(*
|
(*
|
||||||
procedure TVpCustomDBDataStore.SetFilterCriteria(aTable : TDataset;
|
procedure TVpCustomDBDataStore.SetFilterCriteria(aTable : TDataset;
|
||||||
aUseDateTime : Boolean; aResourceID : Integer; aStartDateTime : TDateTime;
|
aUseDateTime : Boolean; aResourceID : Integer; aStartDateTime : TDateTime;
|
||||||
aEndDateTime : TDateTime);
|
aEndDateTime : TDateTime);
|
||||||
|
var
|
||||||
|
filter: String;
|
||||||
begin
|
begin
|
||||||
if aUseDateTime then
|
if aUseDateTime then
|
||||||
aTable.Filter := Format('ResourceID = %d '
|
filter := Format('ResourceID = %d '
|
||||||
+ 'and (( (StartTime >= %s) and (EndTime <= %s) ) '
|
+ 'and (( (StartTime >= %s) and (EndTime <= %s) ) '
|
||||||
+ ' or ( (RepeatCode > 0) and (%s <= RepeatRangeEnd) ))',
|
+ ' or ( (RepeatCode > 0) and (%s <= RepeatRangeEnd) ))',
|
||||||
[aResourceID,
|
[aResourceID,
|
||||||
@ -1826,9 +1830,10 @@ begin
|
|||||||
QuotedStr(FormatDateTime('c', aEndDateTime)),
|
QuotedStr(FormatDateTime('c', aEndDateTime)),
|
||||||
QuotedStr(FormatDateTime('c', aStartDateTime))])
|
QuotedStr(FormatDateTime('c', aStartDateTime))])
|
||||||
else
|
else
|
||||||
aTable.Filter := Format('ResourceID = %d', [aResourceID]);
|
filter := Format('ResourceID = %d', [aResourceID]);
|
||||||
|
aTable.Filter := filter;
|
||||||
aTable.Filtered := true;
|
aTable.Filtered := true;
|
||||||
end;*)
|
end; *)
|
||||||
{=====}
|
{=====}
|
||||||
|
|
||||||
end.
|
end.
|
||||||
|
Reference in New Issue
Block a user