Records Center Web Service
Windows SharePoint Services 3.0 provides an intuitive, robust environment for document collaboration and storage. However, many corporations have records management and regulatory compliance needs that necessitate maintaining separate servers that are used to manage official business records and other highly regulated material. This presents a challenge to records managers: How do you easily, and consistently, move documents from the collaborative SharePoint sites to the more strictly controlled environment of a record repository server? Office SharePoint Server 2007 provides the record repository Web service, designed to enable records managers to automate the process of moving documents into a record repository.
Record Repository Web Service Overview
This Web service enables Office SharePoint Server 2007 to send documents and their associated metadata to a record repository, be that repository a SharePoint site or a third-party document storage application. The Web service is designed to be as generic as possible, so that third-party document storage providers can implement it with minimum effort. The Web service relies on no SharePoint-specific concepts or functionality. The service lets you pass both the document and any metadata about the document you want to retain, including an audit history of the events performed on the document.
This capability gives records managers a simple yet powerful way to integrate the advantages of the Office SharePoint Server 2007 collaborative work environment with their existing records storage system. Also, because the record repository Web service is heavily abstracted, moving from one document storage application to another requires much less effort than an approach that requires more knowledge of the inner structure and workings of the record repository.
You can send documents to the record repository from within Office SharePoint Server 2007 either manually or programmatically:
In the Windows SharePoint Services user interface, users can right-click a document and choose Send to Records Center.
You can automate sending a document to the record repository through the Office SharePoint Server 2007 object model by using the Microsoft.SharePoint.SPFile.SendToOfficialFile(System.String,System.String) method.
Write your own SOAP call to access the Web service directly.
Using code enables records managers to consistently and transparently capture vital documents and move them into the correct record repository locations without having to rely on user interaction for compliance. This is especially true when you combine programming the record center submission process with the other powerful document management features provided in Office SharePoint Server 2007.
For example, you could create a content type called Contract. To this content type you add a workflow. The final activity in the workflow calls the SendToOfficialFile method. Now, any document that is assigned this content type is moved to the record repository when the workflow runs. The workflow in turn can be configured to run automatically—for example, in response to a document event.
For more information about workflows, see Introduction to Windows SharePoint Workflows.
Sending Files to a Record Repository
When you send a file to the record repository, either manually or through the object model, you are sending a copy of that file. The original file is not altered in any way and contains no link to its copy in the record repository. However, the copy is submitted to the repository with a pointer to the location of the original file.
When submitting a file, Office SharePoint Server 2007 packages the content type metadata for that file, along with the file's audit history, as XML. Office SharePoint Server 2007 passes the file's content type name as its record routing type. Because a given record routing type can have multiple aliases, multiple content types can be mapped to the same record routing type.
Office SharePoint Server 2007 sends only the most recent version, not all versions, of the document.