﻿<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>StrataFrame Forum » StrataFrame Application Framework - V1 » Business Objects and Data Access (How do I?)  » Effect of BO.Filter and BO.Save()</title><generator>InstantForum 2017-1 Final</generator><description>StrataFrame Forum</description><link>http://forum.strataframe.net/</link><webMaster>StrataFrame Forum</webMaster><lastBuildDate>Wed, 08 Apr 2026 03:42:27 GMT</lastBuildDate><ttl>20</ttl><item><title>Effect of BO.Filter and BO.Save()</title><link>http://forum.strataframe.net/FindPost23391.aspx</link><description>I have a BO in which I edit several records based on the BO.Filter condition, so I do this:&lt;br&gt;
[codesnippet]&lt;br&gt;
1- Fill the BO with all records.&lt;br&gt;
2- Apply filter #1 and modify some records.&lt;br&gt;
3- Apply filter #3 and modify other records.&lt;br&gt;
4- Remove BO.Filter and save the BO.&lt;br&gt;
[/codesnippet]&lt;br&gt;
&lt;br&gt;
Now when I call the BO.Save() will the Save() method do the following:&lt;br&gt;
[codesnippet]&lt;br&gt;
1- Scan all the BO records to see which one have been modified?&lt;br&gt;
2- Or apply some internal filter to just save the modified records without looping all the BO records?&lt;br&gt;
[/codesnippet]&lt;br&gt;
&lt;br&gt;
I ask because originally the BO may have a couple of thousand records and need to know if the saving speed will be compromized in any way.</description><pubDate>Sat, 06 Jun 2009 18:44:24 GMT</pubDate><dc:creator>Edhy Rijo</dc:creator></item><item><title>RE: Effect of BO.Filter and BO.Save()</title><link>http://forum.strataframe.net/FindPost23394.aspx</link><description>Thanks for the explanation.  Now I know I don't have to worry about which BO.Filter is in effect in order to save all modified records.</description><pubDate>Sat, 06 Jun 2009 18:44:24 GMT</pubDate><dc:creator>Edhy Rijo</dc:creator></item><item><title>RE: Effect of BO.Filter and BO.Save()</title><link>http://forum.strataframe.net/FindPost23392.aspx</link><description>When looking at anything on the BO that deals with dirty records, the filter applied is irrelevant as the CurrenDataTable is used instead of the current view.&amp;nbsp; Your applied filter will be left alone so there will not be any speed issues as the applied filter will be ignored for dirty records.&lt;/P&gt;&lt;P&gt;The Select() is used through ADO.NET on the data table to get any rows that have an added, modified, or deleted row state.&amp;nbsp; The same logic is taken into account during a save.&amp;nbsp; So you should not experience any performance issues in this regard.&amp;nbsp; Just so you know, the current data table is enumerated (not the view) when checking any to see if a row needs to be checked for validation, so the applied filter is ignored there as well.&amp;nbsp; In short, the save and row checking only looks at rows that have been modified, deleted, or added.</description><pubDate>Sat, 06 Jun 2009 18:36:21 GMT</pubDate><dc:creator>Trent L. Taylor</dc:creator></item></channel></rss>