locked
Prevent checked-out documents from being viewed RRS feed

  • Question

  • Hi,

    I need to be able to have checked-out documents to NOT be viewable by users in SharePoint.  We are runnign SharePoint 2007 with MOSS.

    I thought this was a default, but apparently I am incorrect.

    Any help appreciated.

    • Moved by Mike Walsh FIN Tuesday, May 4, 2010 3:20 PM not collaboration (From:SharePoint - Collaboration (pre-SharePoint 2010))
    Tuesday, May 4, 2010 2:18 PM

Answers

  • Your requirement cannot be met using out of box functionality and some custom code will be required to facilitate this. You could create a custom event handler for the check-out event. When the item is checked-out, change the items security such that it is only accessible to the person that checked it out. Similarly, when the item is checked-in set the item to inherit security from the list. Some samples event handler code can be found here: http://msdn.microsoft.com/en-us/library/dd587315(office.11).aspx. If this is done then only the person that has checked-out the document will be able to see the document in the list if it is checked out to them.
    Thursday, May 13, 2010 10:18 AM

All replies

  • Once a document is checked-out it is cached on the users local drive and hence not visible to other users until it is checked-in. This allows the author to work on the NEXT version of the document and also allows only one person to edit a document at a time. Check-in/check-out functionality does not prevent other users from viewing the last checked-in document (i.e. the CURRENT version).

    Once a document is checked-in there are only two ways to prevent users from viewing it:

    1. Revoke the user's read permissions on the document
    2. Delete the document

    Check-in/check-out functionality can be used in conjunction with major/minor versioning to prevent some users from viewing documents that are being edited. Minor versions of documents (i.e. DRAFT) security can be managed through the document library settings within SharePoint. The draft item security allows three different settings:

    1. you can specify whether files that are pending approval can be viewed by people with permission to read,
    2. people with permission to edit, or
    3. only the author and people with permission to approve items

    If the third option is chosen then the minor version (once checked-in) is only visible to the author and users with permissions to approve items.

    For further information on this topic refer to these articles:

    http://office.microsoft.com/en-us/sharepointserver/HA100986431033.aspx

    http://office.microsoft.com/en-us/sharepointtechnology/HA101535891033.aspx

     

    • Marked as answer by Stanfford Liu Thursday, May 13, 2010 3:41 AM
    • Unmarked as answer by fjaconda199 Thursday, May 13, 2010 9:53 AM
    Wednesday, May 5, 2010 12:16 PM
  • "Once a document is checked-out it is cached on the users local drive and hence not visible to other users until it is checked-in. "

    That is the PROBLEM!  I can check out a document, and I and everyone else can see the down green arrow (checked out); but they can still see the document, they can still read the document, they can still priont the document.  I don't want any of that to happen.  I even went so far as to NOT include versioning.

    I have also tried it woith versioning checked off, and this has had no effect in preventing users from viweing a checked-out document.  Checked out should mean checked out. 

     

    Wednesday, May 5, 2010 12:34 PM
  • Hi,

     

    I agree with Neille.

    The “Check Out” can’t prevent other users viewing the document.

    When you disable the versioning function, the document wouldn’t keep the history of changing documents, just keep a latest version and draft version.

    All users can view this latest version and only the user who checks out the documents can view the draft version.

     

    Hope this helps

     

    Thanks!

    Stanfford

    • Marked as answer by Stanfford Liu Thursday, May 13, 2010 3:41 AM
    • Unmarked as answer by fjaconda199 Thursday, May 13, 2010 9:54 AM
    Wednesday, May 12, 2010 9:10 AM
  • My question isn't being answered.  So, please remove my question.
    Thursday, May 13, 2010 9:58 AM
  • Your requirement cannot be met using out of box functionality and some custom code will be required to facilitate this. You could create a custom event handler for the check-out event. When the item is checked-out, change the items security such that it is only accessible to the person that checked it out. Similarly, when the item is checked-in set the item to inherit security from the list. Some samples event handler code can be found here: http://msdn.microsoft.com/en-us/library/dd587315(office.11).aspx. If this is done then only the person that has checked-out the document will be able to see the document in the list if it is checked out to them.
    Thursday, May 13, 2010 10:18 AM
  • As pointed by Neville, this should be handled using event receiver class (SPItemEventReceiver) by its ItemCheckedOut/ItemCheckedIn method. You may write the code to alter the permissions in these methods.
    Thursday, May 13, 2010 11:01 AM