SharePoint Blogs / SharePoint University
SharePoint Blogs and SharePoint University - all in one place!
Need SharePoint Training? Attend a SharePoint Bootcamp!

Please delete cookies related to sharepointblogs.com and sharepointu.com to resolve login issues!

Be Careful with the BDC "hurricane" (update) button...

When you add a Business Data Catalog (BDC) column to a custom list, in the list view column headings you will see an icon with two green circular arrows next to the BDC column - it looks a little like the symbol for a hurricane.  This is the "BDC Update" (or "refresh" button).

You need to be very careful with this button.

When you click this button, it updates the BDC values in your list with the latest values from the BDC for every list item.

Why is this necessary? When you use a BDC column in a list, the BDC-related values that you pull in along with the BDC value you enter are actually stored in the list and are not "live" values from the BDC.  They are stored at the time you save the list item (create or update).  So these values can become "stale" if they change in the database behind the BDC entity. 

For example, Let's say I add a BDC value "Vendor" to my list for vendors from my back end ERP system. I also pull in the vendor's name, address, and phone number.  I add a list item and select a vendor from the BDC.  It brings along the vendor's name, address, and phone number and copies of these values get stored in the list.

A month later, the vendor's phone number is changed in the ERP system.  However, that list item will still show the old phone number, even though the BDC is pulling data directly from the ERP system.  It will not automatically update existing list items with the new value (but new list items will get the updated value).

The only way these values update in the list item are (1) if you edit and save the list item or (2) use the BDC Update button in the list view heading to refresh all list items.

But there are three potential side effects of the BDC Update button that you need to keep in mind.

  • If you have Versioning enabled on your list (or document library), clicking this button will create a new version of every item in the list, regardless of whether the BDC value(s) actually changed.  This could affect you if you attach meaning to version numbers changing.
  • If you have Content Approval enabled on your list (or document library), clicking this button will set every item back to Pending regardless of whether the BDC value(s) actually changed.  This can be a killer! 
  • If you have workflows attached to the list that automatically execute when an item changes, the workflow will execute on every item in the list, regardless of whether the BDC value(s) actually changed.

This can potentially be very dangerous.  For example, I had a situation where we had a list of over 1000 items and Content Approval was enabled.  Someone clicked the BDC Update button and it set every item's approval back to Pending!!  Not only did this require all of the items to be approved again, we had no easy way to determine the approval status of the items before they were all reset - we couldn't just blindly approve everything since it may not have been approved prior to the refresh.

Likewise, if your "on update" automatic workflows do something like send e-mails, create tasks, etc. you can potentially get a large number of unwanted e-mails and tasks created or other data-changing side effects.

Unfortunately, there appears to be no way to put any type of security restrictions on this button - anyone who can update list items will be able to click it.  It does warn you first, but users may not realize what may happen.

We really need a way to restrict or hide this button.

 

 


Posted 02-28-2008 3:32 PM by joed

Comments

SharePoint 2007 Link Love: 02-28-2008 at Virtual Generations wrote SharePoint 2007 Link Love: 02-28-2008 at Virtual Generations
on 02-28-2008 4:28 PM

Pingback from  SharePoint 2007 Link Love: 02-28-2008 at  Virtual Generations

Links (2/28/2008) « Steve Pietrek’s SharePoint Stuff wrote Links (2/28/2008) « Steve Pietrek’s SharePoint Stuff
on 02-28-2008 7:25 PM

Pingback from  Links (2/28/2008) « Steve Pietrek’s SharePoint Stuff

Eric wrote re: Be Careful with the BDC "hurricane" (update) button...
on 08-19-2008 8:17 PM

Yikes, I didn't know that.  I did find my own problems with using the BDC in lists - namely, if you delete something from the underlying database that was in use in a business data column, the refresh action will totally fail.  I wrote up my fix for this here: www.esotericdelights.com/post.aspx

DImitris Porikos wrote re: Be Careful with the BDC "hurricane" (update) button...
on 02-16-2009 4:18 AM

Hello.

Is it possible to avoid a workflow to be trigered during the BDC massive update. I want to send emails only when an item is created or manually updated.

joed wrote re: Be Careful with the BDC "hurricane" (update) button...
on 02-17-2009 9:28 PM

I do not know of a way to avoid this if the workflow is set up to execute automatically on changes to the list, other than editing the workflow before doing the mass update, and uncheck the option that executes it automatically when an item is changed.  After the mass update, change it back.

Add a Comment

(required)  
(optional)
(required)  
Remember Me?
Need SharePoint Training? Attend a SharePoint Bootcamp!
Posts (c) their respective authors. Everything else (c) 2009 SharePoint Experts, Inc.