G
Guest
I have a question about dataset rowfilter.
I have a list of event table in a database. each event has start-date and
end-date column. I grab these from db and save to dataset. And then I have
to do rowfilter of dataset to filter based on user's input.
Users can select the following as dropdown for filtering.
- last 30 days
- last 7 days
- today
- all pasts
for example for past 30 days filtering I build the following rowfiltering.
string dFrom = today.AddDays(-30);
string dTo = today;
sFilter += " ([event-start-date] <= #" + dFrom.ToShortDateString() + "# AND
[event-end-date] >= #" + dTo.ToShortDateString() + "#) OR " ;
sFilter += " ([event-start-date] <= #" + dFrom.ToShortDateString() + "# AND
[event-end-date] >= #"+ dFrom.ToShortDateString() +"# AND [event-end-date]
<= #" + dTo.ToShortDateString() + "#) OR " ;
sFilter += " ([event-start-date] >= #" + dFrom.ToShortDateString() + "# AND
[event-start-date] <= #"+ dTo.ToShortDateString() + "# AND [event-end-date]
[event-end-date] <= #" + dTo.ToShortDateString() + "#) " ;
myDataView.RowFilter = sFilter;
But the above didn't return the correct resultset.
since each event has a start/end date and not easy to filter around to get
the correct result set. Please help!
I have a list of event table in a database. each event has start-date and
end-date column. I grab these from db and save to dataset. And then I have
to do rowfilter of dataset to filter based on user's input.
Users can select the following as dropdown for filtering.
- last 30 days
- last 7 days
- today
- all pasts
for example for past 30 days filtering I build the following rowfiltering.
string dFrom = today.AddDays(-30);
string dTo = today;
sFilter += " ([event-start-date] <= #" + dFrom.ToShortDateString() + "# AND
[event-end-date] >= #" + dTo.ToShortDateString() + "#) OR " ;
sFilter += " ([event-start-date] <= #" + dFrom.ToShortDateString() + "# AND
[event-end-date] >= #"+ dFrom.ToShortDateString() +"# AND [event-end-date]
<= #" + dTo.ToShortDateString() + "#) OR " ;
sFilter += " ([event-start-date] >= #" + dFrom.ToShortDateString() + "# AND
[event-start-date] <= #"+ dTo.ToShortDateString() + "# AND [event-end-date]
sFilter += " ([event-start-date] >= #" + dFrom.ToShortDateString() + "# AND= #" + dTo.ToShortDateString() + "#) OR " ;
[event-end-date] <= #" + dTo.ToShortDateString() + "#) " ;
myDataView.RowFilter = sFilter;
But the above didn't return the correct resultset.
since each event has a start/end date and not easy to filter around to get
the correct result set. Please help!