You are currently offline, waiting for your internet to reconnect

The ItemUpdating event or the ItemUpdated event occurs two times when you enable the Require Check Out option for a document library in Windows SharePoint Services 3.0

SYMPTOMS
When you enable the Require Check Out option for a document library in Microsoft Windows SharePoint Services 3.0, the ItemUpdated event or the ItemUpdating event occurs two times. This occurs when the document library is updated. The same problem happens when you upload a document into a document library with a required column if this column is not filled in the document.
CAUSE
By design, Windows SharePoint Services 3.0 works in this manner. When you check out a document in a document library, a local copy of that document is created. Changes that you make to that document are saved to the local copy. When you check in the document, the operation occurs in two separate steps. The local copy is first saved to the server. This save operation occurs even if you do not make any changes to the document. Then, a separate request is performed to check in the document. Therefore, the ItemUpdating event or the ItemUpdated event occurs two times.
WORKAROUND
To work around this behavior, examine the vti_sourcecontrolcheckedoutby property inside an event receiver. If the vti_sourcecontrolcheckedoutby property exits in the BeforeProperties property but not in the AfterProperties property, the event was caused by checking in a document.The following sample code shows you how to do this.
if (properties.AfterProperties["vti_sourcecontrolcheckedoutby"] == null && properties.BeforeProperties["vti_sourcecontrolcheckedoutby"] != null)            {                //This is when the update event is triggered by check-in.            }            else            {                //This is triggered by events other than check-in action.            }
wss wss3 wssv3
Properties

Article ID: 939307 - Last Review: 08/31/2007 16:20:52 - Revision: 1.2

Microsoft Windows SharePoint Services 3.0 Service Pack 1

  • kbtshoot kbexpertiseinter KB939307
Feedback