Monday, May 3, 2010

The BDC, Required Metadata, and the Word2007 Properties Panel = FAIL

Word 2007 has some nice integration features with Sharepoint.  One of them is the implementation of a "Server Properties" panel from with the client.  Its intended purpose is to allow the user to edit both the document's content and metadat from within the same interface.  It works flawlessly with simple metadata.  However, when you introduce a metadata field that taps into the business data catalog (BDC), things go horribly, horribly wrong.

Ideally, your document has a field that exposes a connection to the BDC and then tries to autopopulate other fields based on that connection.  In the Sharepoint 'Properties' page, these autopoulated fields are editable.  However, in the Word2007 client, these fileds are grayed out, waiting for data from the BDC.  You cannot edit these fields.  This becomes problematice if the Primary Key field for the BDC metadata is required.  The Word2007 client interprets not only the main field as required, but all the fields that this connector autopopulates.  What if your database record for this primary key is not fully filled out?  What if its missing one piece of data?  That data cannot be autopoulated into the metadata field (which is implicitly required in Word2007).  As a result, when you try to save and check in the document, Word throws an error saying that the required meatdata is not filled out.  You are stuck!  You can't leave any field blank, but you also can't fill them out due to the fact that they're autopopulated. 

At this point you have one of 4 options:
  • Uncheck the 'Required' property for the Primary Key BDC metadata
  • Upload, but don't check in the document.  Then go into the Sharepoint GUI, fill out the required properties, and check in.
  • Check in the document using Word 2003 or earlier.
  • Fill out all the data for that BDC record in the source database.
None of these workarounds are good from a usability standpoint.  If anyone has a better workaround for this, let me know.

4 comments:

  1. I'm leaving you a comment... just to test.

    ReplyDelete
  2. Testing out your comments. Now I'm gonna go read the article. :)

    ReplyDelete
  3. You traffic whore.

    And you changed the blog name.

    ReplyDelete
  4. Jeremy,
    Lol. I've been trying to blog more. I wanted a spaec where I could swap recipes and record some of the more challenging things from my job (SharePoint). I like how you, John, and Phillip have segregated the more reflective stuff to the tumbler blogs. I might try that as well.

    ReplyDelete