﻿<?xml version="1.0" encoding="utf-8"?><rss version="2.0"><channel><title>Akal Tech RSS Feed</title><link>http://akaltech.com/Views/Forum/Default.aspx</link><description>Akal Tech Forum Topics</description><copyright>Akal Tech (c) 2010. All rights reserved.</copyright><language>en-us</language><lastBuildDate>9/9/2010 4:17:53 AM GMT</lastBuildDate><item><title>Topic: Advice needed on handling updating objects while in a loop of objectcollection items</title><description>&lt;br&gt;Topic Description: WHEW! that subject was a mouthful, or should I say a textboxful! LOL&lt;BR&gt;&lt;BR&gt;anyways here is the situation, hopefully I can explain it clearly so I can get advice on how I should handle it.&lt;BR&gt;&lt;BR&gt;we have an object base on a table that is a queue for items that need to be sent. The problem is that this can be a long running process to compile and send these items so we want to update the table to show it is being processed so that if another run of the processing system starts this item would not be found in the find run to get items to be processed.&lt;BR&gt;&lt;BR&gt;
&lt;DIV style="BORDER-RIGHT: #7f9db9 1px solid; BORDER-TOP: #7f9db9 1px solid; FONT-SIZE: 11px; OVERFLOW: auto; BORDER-LEFT: #7f9db9 1px solid; WIDTH: 100%; LINE-HEIGHT: 100%! important; BORDER-BOTTOM: #7f9db9 1px solid; FONT-FAMILY: Courier New; HEIGHT: 398px; BACKGROUND-COLOR: white"&gt;
&lt;TABLE style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; MARGIN: 2px 0px; WIDTH: 99%; BORDER-BOTTOM: #eee 0px solid; BORDER-COLLAPSE: collapse; BACKGROUND-COLOR: #fff; BORDER-RIGHT-WIDTH: 0px" cellSpacing=0 cellPadding=0&gt;
&lt;COLGROUP&gt;
&lt;COL style="PADDING-LEFT: 10px; FONT-SIZE: 11px; BORDER-BOTTOM: #f7f7f7 1px solid; FONT-FAMILY: Courier New; WHITE-SPACE: nowrap"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT style="COLOR: blue"&gt;Private&lt;/FONT&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;FONT style="COLOR: blue"&gt;Sub&lt;/FONT&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;&amp;nbsp;ProcessFolderSendQueue() &amp;nbsp;&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="BACKGROUND-COLOR: #f7f7f7"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT style="COLOR: green"&gt;'&amp;nbsp;get&amp;nbsp;reference&amp;nbsp;to&amp;nbsp;FolderSend &lt;/FONT&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Using&amp;nbsp;ReadyItems&amp;nbsp;&lt;/FONT&gt;&lt;FONT style="COLOR: blue"&gt;As&lt;/FONT&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;FONT style="COLOR: blue"&gt;New&lt;/FONT&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;&amp;nbsp;BizLibrary.FolderSend() &amp;nbsp;&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="BACKGROUND-COLOR: #f7f7f7"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT style="COLOR: green"&gt;'&amp;nbsp;get&amp;nbsp;the&amp;nbsp;items&amp;nbsp;ready&amp;nbsp;to&amp;nbsp;send&amp;nbsp;(status=2) &lt;/FONT&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ReadyItems.ObjectMode&amp;nbsp;=&amp;nbsp;Akal.QuickObjects.ObjectBase.ObjectModes.Search &amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="BACKGROUND-COLOR: #f7f7f7"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ReadyItems.Status.Parse(2) &amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="BACKGROUND-COLOR: #f7f7f7"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT style="COLOR: green"&gt;'&amp;nbsp;set&amp;nbsp;sort&amp;nbsp;order &lt;/FONT&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ReadyItems.Send_Method.&lt;/FONT&gt;&lt;FONT style="COLOR: blue"&gt;Set&lt;/FONT&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;(Akal.QuickObjects.ObjectBase.SortTypes.Ascending,&amp;nbsp;1) &amp;nbsp;&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="BACKGROUND-COLOR: #f7f7f7"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ReadyItems.Date_Submitted.&lt;/FONT&gt;&lt;FONT style="COLOR: blue"&gt;Set&lt;/FONT&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;(Akal.QuickObjects.ObjectBase.SortTypes.Ascending,&amp;nbsp;2) &amp;nbsp;&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="BACKGROUND-COLOR: #f7f7f7"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT style="COLOR: green"&gt;'&amp;nbsp;do&amp;nbsp;find &lt;/FONT&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ReadyItems.Find() &amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="BACKGROUND-COLOR: #f7f7f7"&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT style="COLOR: green"&gt;'&amp;nbsp;loop&amp;nbsp;through&amp;nbsp;any&amp;nbsp;found &lt;/FONT&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="BACKGROUND-COLOR: #f7f7f7"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT style="COLOR: blue"&gt;For&lt;/FONT&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;FONT style="COLOR: blue"&gt;Each&lt;/FONT&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;&amp;nbsp;ReadyItem&amp;nbsp;&lt;/FONT&gt;&lt;FONT style="COLOR: blue"&gt;As&lt;/FONT&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;&amp;nbsp;BizLibrary.FolderSend&amp;nbsp;&lt;/FONT&gt;&lt;FONT style="COLOR: blue"&gt;In&lt;/FONT&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;&amp;nbsp;ReadyItems.List &amp;nbsp;&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT style="COLOR: green"&gt;'&amp;nbsp;set&amp;nbsp;as&amp;nbsp;processing &lt;/FONT&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="BACKGROUND-COLOR: #f7f7f7"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ReadyItem.MarkProcessingStarted() &amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="BACKGROUND-COLOR: #f7f7f7"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT style="COLOR: green"&gt;'&amp;nbsp;do&amp;nbsp;processing &lt;/FONT&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="BACKGROUND-COLOR: #f7f7f7"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT style="COLOR: green"&gt;'&amp;nbsp;set&amp;nbsp;as&amp;nbsp;sent &lt;/FONT&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ReadyItem.MarkProcessingComplete() &amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="BACKGROUND-COLOR: #f7f7f7"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT style="COLOR: blue"&gt;Next&lt;/FONT&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT style="COLOR: blue"&gt;End&lt;/FONT&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;&amp;nbsp;Using &amp;nbsp;&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="BACKGROUND-COLOR: #f7f7f7"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT style="COLOR: blue"&gt;End&lt;/FONT&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;FONT style="COLOR: blue"&gt;Sub&lt;/FONT&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/DIV&gt;&lt;BR&gt;what I am wondering is how I should handle the&amp;nbsp;MarkProcessingStarted()&amp;nbsp; and&amp;nbsp;MarkProcessingComplete() methods on the object.&lt;BR&gt;&lt;BR&gt;what checks should I do in those methods? should I check the object is loaded using "Me.IsLoaded" first? should I just do this&lt;BR&gt;
&lt;DIV style="BORDER-RIGHT: #7f9db9 1px solid; BORDER-TOP: #7f9db9 1px solid; FONT-SIZE: 11px; OVERFLOW: auto; BORDER-LEFT: #7f9db9 1px solid; WIDTH: 100%; LINE-HEIGHT: 100%! important; BORDER-BOTTOM: #7f9db9 1px solid; FONT-FAMILY: Courier New; HEIGHT: 146px; BACKGROUND-COLOR: white"&gt;
&lt;TABLE style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; MARGIN: 2px 0px; WIDTH: 99%; BORDER-BOTTOM: #eee 0px solid; BORDER-COLLAPSE: collapse; BACKGROUND-COLOR: #fff; BORDER-RIGHT-WIDTH: 0px" cellSpacing=0 cellPadding=0&gt;
&lt;COLGROUP&gt;
&lt;COL style="PADDING-LEFT: 10px; FONT-SIZE: 11px; BORDER-BOTTOM: #f7f7f7 1px solid; FONT-FAMILY: Courier New; WHITE-SPACE: nowrap"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;&lt;/FONT&gt;&lt;FONT style="COLOR: blue"&gt;Public&lt;/FONT&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;FONT style="COLOR: blue"&gt;Sub&lt;/FONT&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;&amp;nbsp;MarkProcessingStarted() &amp;nbsp;&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="BACKGROUND-COLOR: #f7f7f7"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT style="COLOR: blue"&gt;With&lt;/FONT&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;FONT style="COLOR: blue"&gt;Me&lt;/FONT&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.ObjectMode&amp;nbsp;=&amp;nbsp;ObjectModes.Save &amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="BACKGROUND-COLOR: #f7f7f7"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.Status.Value&amp;nbsp;=&amp;nbsp;3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT style="COLOR: green"&gt;'&amp;nbsp;3=&amp;nbsp;processing &lt;/FONT&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.Update() &amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="BACKGROUND-COLOR: #f7f7f7"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT style="COLOR: blue"&gt;End&lt;/FONT&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;FONT style="COLOR: blue"&gt;With&lt;/FONT&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;&lt;/FONT&gt;&lt;FONT style="COLOR: blue"&gt;End&lt;/FONT&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;FONT style="COLOR: blue"&gt;Sub&lt;/FONT&gt;&lt;FONT style="FONT-SIZE: 11px"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="BACKGROUND-COLOR: #f7f7f7"&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/DIV&gt;&lt;BR&gt;or should I create a new object and run update on that object?&lt;BR&gt;&lt;BR&gt;Is it reccomended (or safe) to go updating the objects while they are being processed as they are in the loop of the item colelction?&lt;BR&gt;&lt;BR&gt;Thanks!&lt;BR&gt;&lt;BR&gt;Mike&lt;BR&gt;&lt;hr style="height:1px;"&gt;Replies: 3&lt;br&gt;Last Reply: Thu, 04 Dec 2008 22:26:08 GMT&lt;br&gt;Reply By: Ish Singh&lt;hr style="height:1px;"&gt;</description><link>http://akaltech.com/Views/Forum/Topic.aspx?BPT=5&amp;PT=7&amp;APT=57</link><pubDate>Thu, 04 Dec 2008 22:26:08 GMT</pubDate></item><item><title>Reply: Re: Advice needed on handling updating objects while in a loop of objectcollection items</title><description>Mike,&lt;br&gt;&lt;br&gt;One more trick and word of caution. When you are looping through items and you want to run another query/select against the same object, I highly recommend using the AddResultToDataSet = False.&lt;br&gt;&lt;br&gt;Here is an example:&lt;br&gt;&lt;div style="border: 1px solid rgb(127, 157, 185); overflow: auto; background-color: white; width: 100%; line-height: 100% ! important; font-family: Courier New; font-size: 11px;"&gt;&lt;table style="border-width: 0px; border-bottom: 0px solid rgb(238, 238, 238); margin: 2px 0px; width: 99%; border-collapse: collapse; background-color: rgb(255, 255, 255);" cellpadding="0" cellspacing="0"&gt;&lt;col style="border-bottom: 1px solid rgb(247, 247, 247); font-family: Courier New; font-size: 11px; padding-left: 10px; white-space: nowrap;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font style="color: blue;"&gt;Public&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;font style="color: blue;"&gt;Function&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;IsProcessed()&amp;nbsp;&lt;/font&gt;&lt;font style="color: blue;"&gt;As&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;font style="color: blue;"&gt;Boolean&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(247, 247, 247);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font style="color: blue;"&gt;Me&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;.AddResultsToDataSet&amp;nbsp;=&amp;nbsp;&lt;/font&gt;&lt;font style="color: blue;"&gt;False&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font style="color: blue;"&gt;Me&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;.UseAllFieldsForDisplay(&lt;/font&gt;&lt;font style="color: blue;"&gt;False&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;)&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(247, 247, 247);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font style="color: blue;"&gt;Me&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;.OrderProcessed.Visible&amp;nbsp;=&amp;nbsp;&lt;/font&gt;&lt;font style="color: blue;"&gt;True&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font style="color: blue;"&gt;If&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;font style="color: blue;"&gt;Me&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;.Load()&amp;nbsp;&lt;/font&gt;&lt;font style="color: blue;"&gt;And&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;font style="color: blue;"&gt;Me&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;.OrderProcessed.Value&amp;nbsp;&lt;/font&gt;&lt;font style="color: blue;"&gt;Then&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(247, 247, 247);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font style="color: blue;"&gt;Return&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;font style="color: blue;"&gt;True&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font style="color: blue;"&gt;End&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;font style="color: blue;"&gt;If&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(247, 247, 247);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font style="color: blue;"&gt;Return&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;font style="color: blue;"&gt;False&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font style="color: blue;"&gt;End&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;font style="color: blue;"&gt;Function&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(247, 247, 247);"&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;br&gt;Ofcourse if your field can contain null values you can also do a check for .IsNull before checking the value :)&lt;br&gt;&lt;br&gt;Thanks,&lt;br&gt;Ish&lt;br&gt;&lt;br&gt;</description><link>http://akaltech.com/Views/Forum/Topic.aspx?BPT=5&amp;PT=7&amp;APT=57</link><pubDate>Thu, 04 Dec 2008 22:26:08 GMT</pubDate></item><item><title>Reply: Re: Advice needed on handling updating objects while in a loop of objectcollection items</title><description>Ish,&lt;BR&gt;&lt;BR&gt;Thanks for the advice. &lt;BR&gt;&lt;BR&gt;I had forgot about the check of the item to make sure it was not grabbed by another run of the processing method. I dont forsee the numbers being that huge so the check of status before processing will not be much. But I will think about doing the bulk updates as you suggested too.&lt;BR&gt;&lt;BR&gt;I did go ahead and write the "Mark" methods on the object while waiting for response and did include the check of the PK as you listed, so I did get that right. LOL&lt;BR&gt;&lt;BR&gt;Mike</description><link>http://akaltech.com/Views/Forum/Topic.aspx?BPT=5&amp;PT=7&amp;APT=57</link><pubDate>Thu, 04 Dec 2008 17:09:44 GMT</pubDate></item><item><title>Reply: Re: Advice needed on handling updating objects while in a loop of objectcollection items</title><description>Mike,&lt;br&gt;&lt;br&gt;This is an interesting question. To start of, it is safe to update object while looping through the item collection.&amp;nbsp; In fact that sometimes is more desirable than creating a new instance to perform an update. If you create a new instance to do the update you will not have the capability perform a concurrency check out of the box, as in you can still do it but you will need to also assign/load the original values as well.&amp;nbsp; If you use the same instance and you have the ConcurrencyMode = DetectChanges then the concurrency check is automatic.&lt;br&gt;&lt;br&gt;From what I understand, you have a high number of objects that basically need to be processed. Once the processing starts on an Object you don't want another process/thread to process the same object. To solve this in addition to using the MarkProcessingStarted and MarkProcessingComplete methods I would add another method that will perform a quick check before starting the processing to make sure that no other process has begun processing.&amp;nbsp; This however will cause extra queries going to the server and will add to the amount of processing time.&amp;nbsp; This may not be an issue as you can reduce the query to pretty much "SELECT Status FROM FolderSend WHERE FolderSendID = X" but if you did the check for every record and you had 100k records you will be hitting your DB 100k times to perform a check.&amp;nbsp; &lt;br&gt;&lt;br&gt;Another solution would be to do something like this:&lt;br&gt;&lt;br&gt;&lt;div style="border: 1px solid rgb(127, 157, 185); overflow: auto; background-color: white; width: 100%; line-height: 100% ! important; font-family: Courier New; font-size: 11px;"&gt;&lt;table style="border-width: 0px; border-bottom: 0px solid rgb(238, 238, 238); margin: 2px 0px; width: 99%; border-collapse: collapse; background-color: rgb(255, 255, 255);" cellpadding="0" cellspacing="0"&gt;&lt;col style="border-bottom: 1px solid rgb(247, 247, 247); font-family: Courier New; font-size: 11px; padding-left: 10px; white-space: nowrap;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font style="color: blue;"&gt;Private&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;font style="color: blue;"&gt;Sub&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;ProcessOrders()&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(247, 247, 247);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Using&amp;nbsp;order&amp;nbsp;&lt;font style="color: blue;"&gt;As&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;Orders&amp;nbsp;=&amp;nbsp;&lt;/font&gt;&lt;font style="color: blue;"&gt;New&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;Orders()&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;order.Status.Value&amp;nbsp;=&amp;nbsp;2&amp;nbsp;&lt;font style="color: green;"&gt;'&amp;nbsp;Ready&amp;nbsp;To&amp;nbsp;Send&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(247, 247, 247);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;order.Status.UseInSearch&amp;nbsp;=&amp;nbsp;&lt;font style="color: blue;"&gt;True&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(247, 247, 247);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;order.MaxRecords&amp;nbsp;=&amp;nbsp;10&amp;nbsp; ' You could also limit the number of records you will be processing.&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;order.Find()&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(247, 247, 247);"&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;order.Status.Value&amp;nbsp;=&amp;nbsp;3&amp;nbsp;&lt;font style="color: green;"&gt;'&amp;nbsp;Processing&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(247, 247, 247);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;order.Status.UseInSave&amp;nbsp;=&amp;nbsp;&lt;font style="color: blue;"&gt;True&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(247, 247, 247);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;order.OrderID.SearchMode&amp;nbsp;=&amp;nbsp;SearchModes.List&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font style="color: green;"&gt;'&amp;nbsp;The&amp;nbsp;following&amp;nbsp;line&amp;nbsp;will&amp;nbsp;get&amp;nbsp;a&amp;nbsp;comma&amp;nbsp;seperated&amp;nbsp;list&amp;nbsp;of&amp;nbsp;OrderID&amp;nbsp;values&amp;nbsp;that&amp;nbsp;have&amp;nbsp;already&amp;nbsp;been&amp;nbsp;loaded.&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(247, 247, 247);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;order.OrderID.List.CustomValue&amp;nbsp;=&amp;nbsp;order.GetDelimetedValue(order.ResultTable.Rows,&amp;nbsp;order.OrderID.Name,&amp;nbsp;&lt;font style="color: blue;"&gt;","&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;)&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(247, 247, 247);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font style="color: green;"&gt;'&amp;nbsp;After&amp;nbsp;this&amp;nbsp;statement&amp;nbsp;only&amp;nbsp;OrderID's&amp;nbsp;UseInSearch&amp;nbsp;property&amp;nbsp;is&amp;nbsp;set&amp;nbsp;to&amp;nbsp;True&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;order.SetSearchFields(&lt;font style="color: blue;"&gt;True&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;,&amp;nbsp;order.OrderID)&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(247, 247, 247);"&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font style="color: blue;"&gt;If&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;order.BulkUpdate()&amp;nbsp;&lt;/font&gt;&lt;font style="color: blue;"&gt;Then&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(247, 247, 247);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font style="color: green;"&gt;'&amp;nbsp;Now&amp;nbsp;that&amp;nbsp;marked&amp;nbsp;multiple order&amp;nbsp;objects &lt;/font&gt;&lt;font style="color: green;"&gt;(that we fetched earlier) &lt;/font&gt;&lt;font style="color: green;"&gt;as&amp;nbsp;being&amp;nbsp;processed,&amp;nbsp;we&amp;nbsp;can&amp;nbsp;switch&amp;nbsp;the&amp;nbsp;SearchMode&amp;nbsp;of&amp;nbsp;OrderID&amp;nbsp;to&amp;nbsp;Value&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font style="color: green;"&gt;' that&amp;nbsp;way&amp;nbsp;next&amp;nbsp;time&amp;nbsp;OrderID&amp;nbsp;is&amp;nbsp;used&amp;nbsp;in&amp;nbsp;Search&amp;nbsp;criteria&amp;nbsp;its&amp;nbsp;single&amp;nbsp;value&amp;nbsp;will&amp;nbsp;be&amp;nbsp;used&amp;nbsp;rather&amp;nbsp;than&amp;nbsp;the&amp;nbsp;list&amp;nbsp;of&amp;nbsp;comma&amp;nbsp;seperated&amp;nbsp;values.&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(247, 247, 247);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;order.OrderID.SearchMode&amp;nbsp;=&amp;nbsp;SearchModes.Value&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(247, 247, 247);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font style="color: green;"&gt;'&amp;nbsp;Now&amp;nbsp;start&amp;nbsp;processing&amp;nbsp;the&amp;nbsp;orders&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(247, 247, 247);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font style="color: blue;"&gt;For&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;font style="color: blue;"&gt;Each&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;o&amp;nbsp;&lt;/font&gt;&lt;font style="color: blue;"&gt;As&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;Orders&amp;nbsp;&lt;/font&gt;&lt;font style="color: blue;"&gt;In&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;order.List&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font style="color: green;"&gt;'&amp;nbsp;Do&amp;nbsp;something&amp;nbsp;with&amp;nbsp;the&amp;nbsp;Order&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(247, 247, 247);"&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;o.Status.Value&amp;nbsp;=&amp;nbsp;4&amp;nbsp;&lt;font style="color: green;"&gt;'&amp;nbsp;Complete&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(247, 247, 247);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;o.Status.UseInSave&amp;nbsp;=&amp;nbsp;&lt;font style="color: blue;"&gt;True&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(247, 247, 247);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font style="color: blue;"&gt;If&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;o.Update()&amp;nbsp;&lt;/font&gt;&lt;font style="color: blue;"&gt;Then&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font style="color: green;"&gt;'MessageBox.Show("Order&amp;nbsp;Processed&amp;nbsp;for&amp;nbsp;"&amp;nbsp;+&amp;nbsp;o.OrderID.ToString())&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(247, 247, 247);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font style="color: blue;"&gt;End&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;font style="color: blue;"&gt;If&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font style="color: blue;"&gt;Next&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(247, 247, 247);"&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font style="color: green;"&gt;'&amp;nbsp;Another&amp;nbsp;choice&amp;nbsp;would&amp;nbsp;be&amp;nbsp;to&amp;nbsp;run&amp;nbsp;another&amp;nbsp;BulkUpdate&amp;nbsp;call&amp;nbsp;and&amp;nbsp;set&amp;nbsp;all&amp;nbsp;the&amp;nbsp;processed&amp;nbsp;rows&amp;nbsp;to&amp;nbsp;Complete&amp;nbsp;in&amp;nbsp;one&amp;nbsp;SQL&amp;nbsp;statement.&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(247, 247, 247);"&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font style="color: blue;"&gt;End&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;font style="color: blue;"&gt;If&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(247, 247, 247);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font style="color: blue;"&gt;End&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;Using&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font style="color: blue;"&gt;End&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;font style="color: blue;"&gt;Sub&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(247, 247, 247);"&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;br&gt;This choice of using BulkUpdate can significantly improve performance and reduce the load on your server as well.&lt;br&gt;&lt;br&gt;As far as "what checks should I do in those methods? should I check the object is loaded using "Me.IsLoaded" first? should I just do this" is concerned:&lt;br&gt;The method should primarily make sure that the Primary Key has a value or the Update will fail. Then could be done as below:&lt;br&gt;&lt;br&gt;&lt;div style="border: 1px solid rgb(127, 157, 185); overflow: auto; background-color: white; width: 100%; line-height: 100% ! important; font-family: Courier New; font-size: 11px;"&gt;&lt;table style="border-width: 0px; border-bottom: 0px solid rgb(238, 238, 238); margin: 2px 0px; width: 99%; border-collapse: collapse; background-color: rgb(255, 255, 255);" cellpadding="0" cellspacing="0"&gt;&lt;col style="border-bottom: 1px solid rgb(247, 247, 247); font-family: Courier New; font-size: 11px; padding-left: 10px; white-space: nowrap;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;font style="font-size: 11px;"&gt;&lt;/font&gt;&lt;font style="color: blue;"&gt;If&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;font style="color: blue;"&gt;Not&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;.MyID.IsNull&amp;nbsp;&lt;/font&gt;&lt;font style="color: blue;"&gt;Then&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(247, 247, 247);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;.Status.Value&amp;nbsp;=&amp;nbsp;3&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;.Update()&amp;nbsp;&lt;font style="color: green;"&gt;'&amp;nbsp;well&amp;nbsp;Ideally&amp;nbsp;you&amp;nbsp;would&amp;nbsp;check&amp;nbsp;if&amp;nbsp;the&amp;nbsp;Update&amp;nbsp;worked&amp;nbsp;or&amp;nbsp;not&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color: rgb(247, 247, 247);"&gt;&lt;font style="color: blue;"&gt;End&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;font style="color: blue;"&gt;If&lt;/font&gt;&lt;font style="font-size: 11px;"&gt;&amp;nbsp;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;br&gt;&lt;br&gt;I hope I didn't miss anything, but if I did or something is unclear or you need further clarification do let me know.&lt;br&gt;&lt;br&gt;Thanks,&lt;br&gt;Ish&lt;br&gt;</description><link>http://akaltech.com/Views/Forum/Topic.aspx?BPT=5&amp;PT=7&amp;APT=57</link><pubDate>Thu, 04 Dec 2008 09:14:59 GMT</pubDate></item></channel></rss>