Search This Blog

Showing posts with label sharepoint. Show all posts
Showing posts with label sharepoint. Show all posts

Saturday, 10 May 2014

How documents are opened from a Web site in Office 2003

This article describes the process that is used by Microsoft Office 2003 to open Microsoft Office Word 2003 documents, Microsoft Office Excel 2003 spreadsheets, and Microsoft Office PowerPoint 2003 presentations by using hyperlinks or Web folders in Microsoft Internet Explorer. The process involves several additions that have been made to enhance Web collaboration. These additions may affect existing Web solutions that rely on previous Office behavior. The information that is provided is for Web solution developers who want a better understanding of the technical process that Office uses to handle document downloading and editing from an HTTP resource.

Office 2003 is designed to make a more collaborative workspace. Therefore, several changes have been made to how Office 2003 works with Web content. These changes help to build Web solutions that make Office documents fully compatible with the Office 2003 system. This article describes these changes from a technical perspective. These changes provide better authoring features for the following Web servers that support Office 2003:

    Microsoft Windows SharePoint Services
    Microsoft SharePoint Portal Server
    Microsoft Exchange Web Store

Note The term "Office" applies to the following products:

    Microsoft Office Word 2003
    Microsoft Office Excel 2003
    Microsoft Office PowerPoint 2003

The term "document" applies to any file or any template that can be opened in Word 2003, in Excel 2003, or in PowerPoint 2003, regardless of the file format.
Back to the top
Hyperlinking in Office 2003 by using HLINK and URLMON
Like earlier versions of Office, Office 2003 implements hyperlinking behavior by using the publicly exposed OLE interfaces of the URL Moniker component (Urlmon.dll) from Internet Explorer. The API that is provided by URLMON lets Office treat a URL resource as any OLE link source is treated by Office. Additionally, the URLMON API also provides methods for asynchronous navigation, for redirection, and for content sharing between processes.

To handle navigation history and backward capabilities, Office uses the public interfaces of the Microsoft Hyperlink Library (Hlink.dll) to create hyperlinks, to bind to hyperlinks, and to move to hyperlinks. HLINK is high-level wrapper for the features that are exposed by URLMON. HLINK gives Office applications a common framework to handle the basic tasks of hyperlink behavior.
Opening an Office document from Internet Explorer
When you click a hyperlink to an Office document from a Web page in Internet Explorer, the host frame navigates to the hyperlink resource by using URLMON. URLMON downloads the file content by using an HTTP GET command. After URLMON obtains the resource, URLMON looks at any one of the three following locations to identify the content type:

    The associated MIME type that is specified in the HTTP header
    The CLSID as it is saved in a structured storage document
    The file name extension, if it is preserved in the URL string

If the type is associated with an Office application, URLMON creates an OLE instance of the target application. URLMON prompts the OLE instance to load the content by using the IPersistMoniker interface of the OLE object. URLMON passes the URL Moniker that URLMON creates for the resource to Office. Office then wraps the URL Moniker in a new HLINK object. After the URL Moniker is bound to the HLINK object, Office can load the file and then display the file to the user.

The full process of loading from a moniker and then using HLINK and URLMON to bind to Web content is beyond the scope of this article. For more detail on the programming aspects of this process, see the documentation on the Microsoft Developer Network.

For more information, click the following article number to view the article in the Microsoft Knowledge Base:
178853  HLINKAXD demonstrates a hyperlinking active document
There is one critical drawback to this approach. URL monikers that are provided by Internet Explorer are typically read-only. You can open content and modify content, but you cannot save content back to the server. When you save content back to the storage that is provided by the moniker, the modifications are applied to the content in the Internet Explorer Temporary Internet Files cache. However, the modifications are not applied to the content on the Web server. To resolve this drawback, the concept of the publishing moniker is introduced in Office 2000 and later.
Making a URL moniker have read access and write access by using MSDAIPP
With the introduction of Office 2000, the capabilities of URLMON are extended to support full write access to a publishing server that supports either FrontPage Server Extensions (FPSE) or the HTTP 1.1 command extensions for Web Distributed Authoring and Versioning (DAV).

Support for full write access is completed by using a protocol provider extension to URLMON. The protocol provider extension to URLMON permits binding through a component that is named the Microsoft OLE DB Provider for Internet Publishing Provider (Msdaipp.dll). By using a set of flags to URLMON, a host can request binding by using a specialized URL moniker type that uses MSDAIPP. Office refers to this as a publishing moniker. The publishing moniker uses MSDAIPP to open and to save the content directly on the server. This is an important step to extend the capabilities of URLMON.

However, there is a drawback. The MSDAIPP component uses its own session of the Windows Internet (WININET) API, not the session in use by Internet Explorer itself. Therefore, non-persisted session information, such as server cookies, is unavailable in MSDAIPP requests. This makes some servers require re-authentication or re-navigation to the URL for MSDAIPP to communicate with those servers. Additionally, to avoid obtaining "stale" data that may have been changed by another user, MSDAIPP re-acquires the Web content after successfully locking the Web content for write access. This causes a second HTTP GET request or a second FPSE POST request to the Web server for the document content.

To work around this drawback, a modified approach is introduced in Office 2000 Service Release 1. Instead of trying to bind by using a publishing moniker at load time, Office binds to the document by using the typical read-only URL moniker that is provided by Internet Explorer. When you want to save the file, Office tries to switch to the publishing moniker to perform a save back to the server, if the server supports Web publishing. If re-authentication is required because of the change in session, you are prompted for credentials on save instead of on open. If you want to read the file without saving the file, Office avoids the costly switch-of-context to a publishing moniker. Office also avoids a server lock on the resource. This is a compromise approach.

For more information about some of the changes that have been made to Office 2000 Service Release 1 to mitigate the effects of opening Web documents by using the publishing moniker context, click the following article numbers to view the articles in the Microsoft Knowledge Base:
185978  Double GET requests and cookies are lost with Word 2000 or Excel 2000
266263  BUG: Word 2000 and Excel 2000 display ASP source when using MIME type to stream data
247318  BUG: Word 2000 and Excel 2000 do not redirect correctly when using Response.Redirect
264143  FIX: ASP session variables empty when Office 2000 MIME types are streamed with Internet Explorer
Recognizing drawbacks with the approaches that are used by previous Office versions
The compromise approach that is used by Office 2000 Service Release 1 and by Office XP is well suited for browsing documents and for saving these documents to the server. However, the compromise approach has drawbacks. The drawbacks become more noticeable as Web developers build more sophisticated Web-based document management systems that are meant to more seamlessly integrate with Microsoft Office.

The most important drawback is delaying the switch-of-context until after a user tries to save or to perform some explicit action that requires write access. The document resource is not locked and may be changed by another user or another process during the time that the first user has the file open. If the first user then tries to save, the changes of the second user are lost. Alternatively, the first user is faced with the choice of discarding their changes without knowing what the second user has changed.

Another drawback occurs because the author permissions of the user are unknown until the switch-of-context occurs. The user is not notified that they do not have permission to save the file until the user makes the actual request to save the file. The user must be notified that they do not have permissions to save the file before the file is opened for editing. This is the drawback that lead to the approach that is taken in Office 2000 Service Release 1.
Back to the top
Identifying changes to the hyperlink process for Office 2003
There are a growing number of users who are using Office as a front end for document collaboration over HTTP intranets. Therefore, the drawbacks of the previous approach are acute. Changes are required to detect the difference between a shared document and a browsed document. Office 2003 introduces new features to the hyperlinking process to work around the drawbacks.
Understanding Microsoft Office Protocol Discovery
When an Office application receives a request to open a Web resource, the Office application has to make the following decisions about how to open the Web resource:

    Open the resource as read-only from the content that is downloaded by Internet Explorer. This content is opened in browse mode.
    Open the resource as read/write with a document lock on the server for exclusive access. This content is opened in edit mode.

The decision about how to open the Web resource is resolved by investigating the folder path where the document comes from and by investigating the capabilities of the server that manages that path. To determine what capabilities the server supports, Office 2003 issues an HTTP 1.1 standard OPTIONS command. The OPTIONS command requests that the server identify what commands and what methods that the server supports for the folder where the document is located. The server identification is done according to the rules that are outlined in RFC 2616. An HTTP 1.1-compatible Web server responds to the OPTIONS request with the list of methods that are supported for the uniform resource identifier (URI). Office evaluates the response and then looks for the following:

    Web authoring protocol

    If the server response provides either an MS-AUTHOR-VIA header value or a list of methods that are consistent with Distributed Authoring and Versioning, Office notes that the document can be saved back to the Web server by using the protocol that is specified.

    The protocols that are currently available are Web Extender Client (WEC) and Web DAV. If the server does not provide a protocol, the file is considered read-only. The client can perform a SaveAs to save a copy locally. However a copy cannot be saved back to the folder where the file came from.
    Web-server type

    Office also tries to determine the Web-server type. This determination is based on header information that is returned by the OPTIONS call. Specifically, Office looks for header values that indicate communications with a SharePoint document library or an Exchange WebStore folder. If communications are detected, Office performs additional communication to the server to enable the following Web collaboration features:
        Web discussion
        Task list updates
        Document check-out
        Document check-in
    The previous Web collaboration features are supported by certain Web-server types. To identify the Web-server type, Office looks for the following headers:
        MicrosoftSharePointTeamServices
        MicrosoftTahoeServer
        MicrosoftOfficeWebServer
        MS-WebStore

If the Web server requires authentication to successfully complete the OPTIONS request, you may be prompted for credentials to complete the call. After the call is completed, the information that is gathered is cached in your registry hive so that the call does not have to be repeated again for this folder. The Office Protocol Discovery Cache is located under the following registry key:
HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Common\Internet\Server Cache
The Server Cache contains sub-key entries for each Web folder that is opened and that has successfully returned an OPTIONS call. Each entry contains the following values set to the appropriate setting for that folder:

    Protocol

    This is a 32-bit DWORD value that contains the Web authoring protocol to use for the document. The currently-defined values follow:
        0 for read-only HTTP
        1 for WEC to an FPSE-enabled Web folder
        2 for DAV to a DAV-extended Web folder
    Type

    This is a DWORD value that indicates the type of Web document collaboration server that manages the folder. The currently-defined values follow:
        0 for no collaboration
        1 for SharePoint Team Server
        2 for Exchange 2000 Server
        3 for SharePoint Portal 2001 Server
        4 for SharePoint 2001 enhanced folder
        5 for Windows SharePoint Server and SharePoint Portal 2003 Server
    Expiration

    This is a 64-bit QWORD value that contains an expiration time. The value is a Win32 FILETIME structure that contains the expiration time in Universal Time Coordinate (UTC) format. After the expiration, Office re-queries the Web server with another OPTIONS call to make sure that the server configuration has not changed since the values were last cached. The length of the expiration time varies based on a random seed. The length of the expiration time is typically 2 weeks or longer.

    Important The registry key is provided for informational purposes only. Do not edit the registry key or values directly. Office clears the cache periodically. Therefore, saved information is temporary.

The maximum number of cache entries may be set by the MaxCount registry value under the same Server Cache key. Office removes old entries to make space if the maximum count is reached. If no space can be cleared, the results of the OPTIONS call are not cached.
Identifying known drawbacks that are caused by Office Protocol Discovery
Office Protocol Discovery resolves the most important drawback, and that is to determine if the document must be opened as a read-only document or as a read/write document on the server. However, Office Protocol Discovery has the potential for some new drawbacks. The following problems are known side-effects of the current design:

    Office Protocol Discovery uses a standard HTTP 1.1 OPTIONS command. Web servers that do not handle this command cannot support full read/write access in Office 2003. This is expected and is by design.
    You may be prompted for authentication when you open Office files. This behavior occurs if the Web server requires authentication to process an OPTIONS call to the URI of the folder. Changes to the server configuration can typically be made to avoid this problem by giving anonymous users browse permissions to the folder. Browse permissions are also know as list permissions. The prompt for authentication is expected if the server requires authentication.
    You may be prompted to select a client certificate or to select a trust-a-server certificate on open. This behavior may occur even if this certificate information is previously provided to Internet Explorer for the same navigation. Because Office makes a new request for its own process space to the server, a new session is created every time. This new session may produce additional security warnings or additional prompts to complete the OPTIONS call successfully.
    Cookie information that is used for gathering the document is not used in the OPTIONS request. If the server does not permit direct calls to the folder URL without this cookie information, the OPTIONS call may not be successful. If this problem occurs, the user may be prompted repeatedly for authentication, but the user may not be able to provide authentication. This is not because of missing authentication. This problem occurs because of missing session cookies for the Web server. This problem is specific to certain Web-server designs that depend on cookie information instead of authentication information or that depend on cookie information plus authentication information.
    There is a known problem with network configurations that use a Cisco Content Server Switch (CSS) load balancer with layer 5 filtering in their intranet environment. The CSS software does not correctly handle the HTTP 1.1 OPTIONS command. The CSS software does not forward the call to the Web server. Also, the CSS software does not return a response to the client that indicates an error and then closes the TCP connection.

    Because the TCP packet is never acknowledged by the server, the client believes that the server has not received the message. Therefore, the client resends the message. Office continues sending this message and waiting for a response until the TCP connection eventually times out. This can cause a client to stop responding when opening an Office file. The Office application waits for the server response. The server response is never received because the CSS load balancer drops the TCP packet.

    Cisco knows about this problem. Cisco is working on an update to resolve the issue. To work around this problem without the update, you can lower the CSS filtering to level 3 rules or to level 4 rules. You can also bypass the load balancer by changing the URL that is opened so that the URL points directly to the Web server that holds the content.

Back to the top
The benefits that are gained by Office Protocol Discovery outweigh the currently known drawbacks. We believe these issues will decrease over time. We will continue to follow the last two problems to make sure that solutions are available if the existing network design cannot be adjusted. We believe the choice to use Office Protocol Discovery is the correct long-term strategy for Web collaboration.
Understanding HTTP conversion for UNC redirector files
Clients that are running Windows XP Professional can create Network Places to DAV Web folders by using the Web Client service. The Web Client service is also known as the WebDAV mini-redirector. This Web Client service lets DAV-enabled folders appear as UNC shares.

An application can open the file, edit the file, and save to the file because the application typically saves to a UNC path. However, document collaboration requires more functions than are provided by the Web Client service. Therefore, Office 2003 has added code to determine if a file is opened by the Web Client service. If a file is opened by the Web Client service, Office 2003 re-maps the path back to a full URL and then opens the file separately by using the protocol that is appropriate for the server type. This lets an Office 2003 application perform full-document collaboration features, as if the file is opened directly from the URL in Office. The information that is provided previously, including Office Protocol Discovery, applies to documents that are opened from a Web Client-enabled UNC share.
Understanding Hyperlink zone security and security prompts
Office 2003 uses enhanced-security measures for Internet hyperlinking from links in the Office document. This includes passing security credential information under a more restrictive security zone policy so that Internet Explorer can permit or can deny passing credentials to the server. Permission or denial is based on the zone settings that are set for the user.

Also, Office 2003 makes sure that when navigation is under user control, WININET has a correct window handle. This means that WININET can raise security prompts to the user if prompts are required to perform an action. This enhances Web security in Office. However, tighter restrictions for Internet Explorer security zones may cause alerts to appear that did not appear in older versions of Office. The alerts appear during hyperlink navigation.

Additionally, Office 2003 adds an additional warning prompt under the following circumstances:

    A user clicks a hyperlink in an Office document
    A document contains content that is based on a URL resource that may perform navigation

The additional warning prompt makes sure that the user wants to move to the Web site, and that the site is trusted. You can control this prompt behavior through a registry setting.

For more information, click the following article number to view the article in the Microsoft Knowledge Base:
829072  How to disable hyperlink warning messages in Office 2003

source: http://support.microsoft.com/kb/838028/en-us

Friday, 5 August 2011

Could not open Office document from SharePoint document library

Office is not able to open documents added to sharepoint 2010 document library. However on saving locally, the document opens.

Protected View is a new security feature in Microsoft Office 2010 to enhance protection of computer against risky Outlook email attachments, files originated from or downloaded via Internet, files that fail validation or files that are located in potentially unsafe locations. The only problem is that Protected View will remove support for legacy document formats, and cause documents and files deemed unsafe to be opened in read-only mode.

This worked for me:
  1. Run one of the Office 2010 application (e.g. Word 2010).
  2. Click on File menu, and select Options.
  3. In the “Options” dialog, select Trust Center in the left pane.
  4. Click on Trust Center Settings in the right pane.
  5. Select Protected View in the left pane of “Trust Center” dialog.
  6. Disable any of all of the protected view options as below by unticking the check boxes:
    • Enable Protected View for files that fail validation
    • Enable Protected View for files originating from the Internet
    • Enable Protected View for files located in potentially unsafe locations
    • Enable Protected View for Outlook attachments"

Saturday, 30 July 2011

user profiles in sharepoint

“There are actually 2 user profiles – one is a WSS profile and one is a MOSS profile. The WSS profile you access from Welcome user > My Settings page. The MOSS profiles are created when users are imported into the system from AD or LDAP. They are access from People Search or from a link off of your MySite.
The reason there are 2 is that you can install WSS without MOSS and they wanted a basic user profile. If you installed WSS without MOSS, you would see the profile (again, accessed through Welcome user > My Settings page) with about 3 properties.
If you install MOSS, do an import, and go to the WSS profile, you’ll see a bunch of properties added that MOSS adds. We now depricate the WSS profile. If you want to add property values to your profile, you need to go to your MOSS profile from your MySite (MySite > Details). You’ll be on the editprofile.aspx page. Add your properties. We then sync your properties to the WSS user list. You will see the values show up on the WSS profile after the sync happens.”

To make a long story short, use stsadm -o sync to force the property sync:
  • -o -synctiming changes the Profile Sync job
  • -o -sweeptiming changes the Quick Profile Sync job
I have gotten the best results by changing the schedule for the Profile Sync job to run every couple of minutes (stsadm -o sync -synctiming m:2). This may not be appropriate in a production environment with a large user population, though.


Uninstall SQL Embedded 2005 from basic Wss3.0 install

If you do a basic install of WSS 3.0, it installs SQL Embedded. There’s no option to remove this in Add/Remove Programs. The directions to do it can be found here. I’ve also pasted them below
http://technet.microsoft.com/en-us/library/cc708491(WS.10).aspx – Search for “Uninstalling WSUS 3.0 does not uninstall the database instance”
Uninstalling WSUS 3.0 does not uninstall the database instance
If WSUS 3.0 is uninstalled, the database instance will not be uninstalled. The instance may be shared by more than one application, and will cause other applications to fail if it is removed.
If it is necessary to uninstall Windows Internal Database, the following commands will uninstall the application:
32-bit platforms: msiexec /x {CEB5780F-1A70-44A9-850F-DE6C4F6AA8FB} callerid=ocsetup.exe
64-bit platforms: msiexec /x {BDD79957-5801-4A2D-B09E-852E7FA64D01} callerid=ocsetup.exe

Slipstream SharePoint 2010 SP1 and Language Packs SP1 into RTM Builds

Slipstreaming SP1

  1. Download SP1 for either Foundation or Server.
    1. SharePoint Foundation SP1 - http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=26640
    2. SharePoint Server 2010 SP1 - http://www.microsoft.com/download/en/details.aspx?id=26623
  2. After downloading, extract the SP by running the following command.
    1. officeserver2010sp1-kb2460045-x64-fullfile-en-us.exe /extract:C:\destinationfolder\
  3. After doing this, copy the extracted files to the UPDATES folder of your SharePoint Server 2010 installation directory
  4. Install SharePoint Server 2010. At the end of the process, everything in the updates folder will get processed.
 

Slipstreaming SP1 for Language Packs

  1. Download SP1 for the Language Packs and choose the language you need.
    1. SharePoint Foundation 2010 Language Pack SP1 - http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=26629
    2. SharePoint Server 2010 Language Pack SP1 - http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=26621
  2. After downloading, extract the LP SP by running the following command
    1. serverlanguagepack2010sp1-kb2460056-x64-fullfile-en-us.exe /extract:C:\destinationfolder\
  3. After doing this, copy the extracted files to the UPDATES folder of your Language Pack installation directory, making sure you match languages
  4. Install each desired language pack. At the end of the process, everything in the updates folder will get processed.
    1. Language packs installation cannot be slipstreamed into the install of SharePoint itself. Separate installers must be run. 
Source: http://blogs.msdn.com/b/ronalg/archive/2011/07/11/slipstream-sharepoint-2010-sp1-and-language-packs-w-sp1-into-rtm.aspx

How do I control how a Word document opens from the internet or an intranet?

A web page on the internet or on an intranet can contain a link to a Word document. When you click on a link to a Word document, it can display in your web browser, or it can display within Word itself. How do you choose where to open it?

Open up the File Types dialog box by doing one of the following.
  • Hold down the Windows key, and press e. (The Windows key is the key with the Windows logo, often at the lower edge of your keyboard between the Ctrl and Alt keys.)
  • From the desktop, click (or double-click) My Computer.
  • Right-click the Start butrton. Choose Open.
  • Click Start, then Programs (or All Programs) and find Windows Explorer.
Now, click Tools > Folder Options and click on the File Types tab.

When the list appears, find the DOC file extension in the list, click it to highlight it, and then click Advanced, as shown in Figure 1.
On the File Types tab, find the entry for the DOC file type. Highlight it, and click Advanced.
Figure 1: Find the DOC file type in the list of file types.
You can now see the Edit File Type dialog box (Figure 2).
On the Edit File Type dialog, use the 'Confirm open after download' and the 'Browse in same window' boxes to control how to open Word documents from the internet or an intranet.
Figure 2: The Edit File Type dialog has two options that decide how your Word documents open: Confirm open after download, and Browse in same window.

Confirm open after download – Do you want the option to Open or Save the Word document?

If you tick the box at "Confirm open after download", you'll see a dialog box that asks whether you want to Open or Save the document.
The dialog looks like the dialog in Figure 3.
If you un-tick the box "Always ask before opening this type of file", Windows will un-tick the box "Confirm open after download" on the Edit File Type dialog for you.
Dialog to ask you whether you want to open or save the file
Figure 3: You can choose whether to see a warning dialog like this every time you open a Word document from the internet or an intranet.

Browse in same window – Do you want to open Word documents within Internet Explorer, or do you want to open Word and see the document there?

In the Edit File Type dialog box, if you tick the "Browse in same window" box, then your Word document will open within Internet Explorer. Internet Explorer uses what's called a "plug-in". You can see this in Figure 5. The toolbar is a combination of the main menu from Word and from Internet Explorer. You can edit the document as you would in Word, but some functionality of Word is unavailable.
A Word document open in Internet Explorer's Word plug-in, showing a combination of Word and Internet Explorer toolbars.
Figure 4. A word document open in Internet Explorer's Word plug-in.
Alternatively, in the Edit File Type dialog box, if you un-tick the "Browse in same window" box, then your Word document will open in Word.

Source: http://www.shaunakelly.com/word/sharing/opendocinie.html

Friday, 29 July 2011

How documents are opened from a Web site in Office 2003

This article describes the process that is used by Microsoft Office 2003 to open Microsoft Office Word 2003 documents, Microsoft Office Excel 2003 spreadsheets, and Microsoft Office PowerPoint 2003 presentations by using hyperlinks or Web folders in Microsoft Internet Explorer. The process involves several additions that have been made to enhance Web collaboration. These additions may affect existing Web solutions that rely on previous Office behavior. The information that is provided is for Web solution developers who want a better understanding of the technical process that Office uses to handle document downloading and editing from an HTTP resource.

Office 2003 is designed to make a more collaborative workspace. Therefore, several changes have been made to how Office 2003 works with Web content. These changes help to build Web solutions that make Office documents fully compatible with the Office 2003 system. This article describes these changes from a technical perspective. These changes provide better authoring features for the following Web servers that support Office 2003:

    Microsoft Windows SharePoint Services
    Microsoft SharePoint Portal Server
    Microsoft Exchange Web Store

Note The term "Office" applies to the following products:

    Microsoft Office Word 2003
    Microsoft Office Excel 2003
    Microsoft Office PowerPoint 2003

The term "document" applies to any file or any template that can be opened in Word 2003, in Excel 2003, or in PowerPoint 2003, regardless of the file format.
Back to the top
Hyperlinking in Office 2003 by using HLINK and URLMON
Like earlier versions of Office, Office 2003 implements hyperlinking behavior by using the publicly exposed OLE interfaces of the URL Moniker component (Urlmon.dll) from Internet Explorer. The API that is provided by URLMON lets Office treat a URL resource as any OLE link source is treated by Office. Additionally, the URLMON API also provides methods for asynchronous navigation, for redirection, and for content sharing between processes.

To handle navigation history and backward capabilities, Office uses the public interfaces of the Microsoft Hyperlink Library (Hlink.dll) to create hyperlinks, to bind to hyperlinks, and to move to hyperlinks. HLINK is high-level wrapper for the features that are exposed by URLMON. HLINK gives Office applications a common framework to handle the basic tasks of hyperlink behavior.
Opening an Office document from Internet Explorer
When you click a hyperlink to an Office document from a Web page in Internet Explorer, the host frame navigates to the hyperlink resource by using URLMON. URLMON downloads the file content by using an HTTP GET command. After URLMON obtains the resource, URLMON looks at any one of the three following locations to identify the content type:

    The associated MIME type that is specified in the HTTP header
    The CLSID as it is saved in a structured storage document
    The file name extension, if it is preserved in the URL string

If the type is associated with an Office application, URLMON creates an OLE instance of the target application. URLMON prompts the OLE instance to load the content by using the IPersistMoniker interface of the OLE object. URLMON passes the URL Moniker that URLMON creates for the resource to Office. Office then wraps the URL Moniker in a new HLINK object. After the URL Moniker is bound to the HLINK object, Office can load the file and then display the file to the user.

The full process of loading from a moniker and then using HLINK and URLMON to bind to Web content is beyond the scope of this article. For more detail on the programming aspects of this process, see the documentation on the Microsoft Developer Network.

For more information, click the following article number to view the article in the Microsoft Knowledge Base:
178853  HLINKAXD demonstrates a hyperlinking active document
There is one critical drawback to this approach. URL monikers that are provided by Internet Explorer are typically read-only. You can open content and modify content, but you cannot save content back to the server. When you save content back to the storage that is provided by the moniker, the modifications are applied to the content in the Internet Explorer Temporary Internet Files cache. However, the modifications are not applied to the content on the Web server. To resolve this drawback, the concept of the publishing moniker is introduced in Office 2000 and later.
Making a URL moniker have read access and write access by using MSDAIPP
With the introduction of Office 2000, the capabilities of URLMON are extended to support full write access to a publishing server that supports either FrontPage Server Extensions (FPSE) or the HTTP 1.1 command extensions for Web Distributed Authoring and Versioning (DAV).

Support for full write access is completed by using a protocol provider extension to URLMON. The protocol provider extension to URLMON permits binding through a component that is named the Microsoft OLE DB Provider for Internet Publishing Provider (Msdaipp.dll). By using a set of flags to URLMON, a host can request binding by using a specialized URL moniker type that uses MSDAIPP. Office refers to this as a publishing moniker. The publishing moniker uses MSDAIPP to open and to save the content directly on the server. This is an important step to extend the capabilities of URLMON.

However, there is a drawback. The MSDAIPP component uses its own session of the Windows Internet (WININET) API, not the session in use by Internet Explorer itself. Therefore, non-persisted session information, such as server cookies, is unavailable in MSDAIPP requests. This makes some servers require re-authentication or re-navigation to the URL for MSDAIPP to communicate with those servers. Additionally, to avoid obtaining "stale" data that may have been changed by another user, MSDAIPP re-acquires the Web content after successfully locking the Web content for write access. This causes a second HTTP GET request or a second FPSE POST request to the Web server for the document content.

To work around this drawback, a modified approach is introduced in Office 2000 Service Release 1. Instead of trying to bind by using a publishing moniker at load time, Office binds to the document by using the typical read-only URL moniker that is provided by Internet Explorer. When you want to save the file, Office tries to switch to the publishing moniker to perform a save back to the server, if the server supports Web publishing. If re-authentication is required because of the change in session, you are prompted for credentials on save instead of on open. If you want to read the file without saving the file, Office avoids the costly switch-of-context to a publishing moniker. Office also avoids a server lock on the resource. This is a compromise approach.

For more information about some of the changes that have been made to Office 2000 Service Release 1 to mitigate the effects of opening Web documents by using the publishing moniker context, click the following article numbers to view the articles in the Microsoft Knowledge Base:
185978  Double GET requests and cookies are lost with Word 2000 or Excel 2000
266263  BUG: Word 2000 and Excel 2000 display ASP source when using MIME type to stream data
247318  BUG: Word 2000 and Excel 2000 do not redirect correctly when using Response.Redirect
264143  FIX: ASP session variables empty when Office 2000 MIME types are streamed with Internet Explorer
Recognizing drawbacks with the approaches that are used by previous Office versions
The compromise approach that is used by Office 2000 Service Release 1 and by Office XP is well suited for browsing documents and for saving these documents to the server. However, the compromise approach has drawbacks. The drawbacks become more noticeable as Web developers build more sophisticated Web-based document management systems that are meant to more seamlessly integrate with Microsoft Office.

The most important drawback is delaying the switch-of-context until after a user tries to save or to perform some explicit action that requires write access. The document resource is not locked and may be changed by another user or another process during the time that the first user has the file open. If the first user then tries to save, the changes of the second user are lost. Alternatively, the first user is faced with the choice of discarding their changes without knowing what the second user has changed.

Another drawback occurs because the author permissions of the user are unknown until the switch-of-context occurs. The user is not notified that they do not have permission to save the file until the user makes the actual request to save the file. The user must be notified that they do not have permissions to save the file before the file is opened for editing. This is the drawback that lead to the approach that is taken in Office 2000 Service Release 1.
Back to the top
Identifying changes to the hyperlink process for Office 2003
There are a growing number of users who are using Office as a front end for document collaboration over HTTP intranets. Therefore, the drawbacks of the previous approach are acute. Changes are required to detect the difference between a shared document and a browsed document. Office 2003 introduces new features to the hyperlinking process to work around the drawbacks.
Understanding Microsoft Office Protocol Discovery
When an Office application receives a request to open a Web resource, the Office application has to make the following decisions about how to open the Web resource:

    Open the resource as read-only from the content that is downloaded by Internet Explorer. This content is opened in browse mode.
    Open the resource as read/write with a document lock on the server for exclusive access. This content is opened in edit mode.

The decision about how to open the Web resource is resolved by investigating the folder path where the document comes from and by investigating the capabilities of the server that manages that path. To determine what capabilities the server supports, Office 2003 issues an HTTP 1.1 standard OPTIONS command. The OPTIONS command requests that the server identify what commands and what methods that the server supports for the folder where the document is located. The server identification is done according to the rules that are outlined in RFC 2616. An HTTP 1.1-compatible Web server responds to the OPTIONS request with the list of methods that are supported for the uniform resource identifier (URI). Office evaluates the response and then looks for the following:

    Web authoring protocol

    If the server response provides either an MS-AUTHOR-VIA header value or a list of methods that are consistent with Distributed Authoring and Versioning, Office notes that the document can be saved back to the Web server by using the protocol that is specified.

    The protocols that are currently available are Web Extender Client (WEC) and Web DAV. If the server does not provide a protocol, the file is considered read-only. The client can perform a SaveAs to save a copy locally. However a copy cannot be saved back to the folder where the file came from.
    Web-server type

    Office also tries to determine the Web-server type. This determination is based on header information that is returned by the OPTIONS call. Specifically, Office looks for header values that indicate communications with a SharePoint document library or an Exchange WebStore folder. If communications are detected, Office performs additional communication to the server to enable the following Web collaboration features:
        Web discussion
        Task list updates
        Document check-out
        Document check-in
    The previous Web collaboration features are supported by certain Web-server types. To identify the Web-server type, Office looks for the following headers:
        MicrosoftSharePointTeamServices
        MicrosoftTahoeServer
        MicrosoftOfficeWebServer
        MS-WebStore

If the Web server requires authentication to successfully complete the OPTIONS request, you may be prompted for credentials to complete the call. After the call is completed, the information that is gathered is cached in your registry hive so that the call does not have to be repeated again for this folder. The Office Protocol Discovery Cache is located under the following registry key:
HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Common\Internet\Server Cache
The Server Cache contains sub-key entries for each Web folder that is opened and that has successfully returned an OPTIONS call. Each entry contains the following values set to the appropriate setting for that folder:

    Protocol

    This is a 32-bit DWORD value that contains the Web authoring protocol to use for the document. The currently-defined values follow:
        0 for read-only HTTP
        1 for WEC to an FPSE-enabled Web folder
        2 for DAV to a DAV-extended Web folder
    Type

    This is a DWORD value that indicates the type of Web document collaboration server that manages the folder. The currently-defined values follow:
        0 for no collaboration
        1 for SharePoint Team Server
        2 for Exchange 2000 Server
        3 for SharePoint Portal 2001 Server
        4 for SharePoint 2001 enhanced folder
        5 for Windows SharePoint Server and SharePoint Portal 2003 Server
    Expiration

    This is a 64-bit QWORD value that contains an expiration time. The value is a Win32 FILETIME structure that contains the expiration time in Universal Time Coordinate (UTC) format. After the expiration, Office re-queries the Web server with another OPTIONS call to make sure that the server configuration has not changed since the values were last cached. The length of the expiration time varies based on a random seed. The length of the expiration time is typically 2 weeks or longer.

    Important The registry key is provided for informational purposes only. Do not edit the registry key or values directly. Office clears the cache periodically. Therefore, saved information is temporary.

The maximum number of cache entries may be set by the MaxCount registry value under the same Server Cache key. Office removes old entries to make space if the maximum count is reached. If no space can be cleared, the results of the OPTIONS call are not cached.
Identifying known drawbacks that are caused by Office Protocol Discovery
Office Protocol Discovery resolves the most important drawback, and that is to determine if the document must be opened as a read-only document or as a read/write document on the server. However, Office Protocol Discovery has the potential for some new drawbacks. The following problems are known side-effects of the current design:

    Office Protocol Discovery uses a standard HTTP 1.1 OPTIONS command. Web servers that do not handle this command cannot support full read/write access in Office 2003. This is expected and is by design.
    You may be prompted for authentication when you open Office files. This behavior occurs if the Web server requires authentication to process an OPTIONS call to the URI of the folder. Changes to the server configuration can typically be made to avoid this problem by giving anonymous users browse permissions to the folder. Browse permissions are also know as list permissions. The prompt for authentication is expected if the server requires authentication.
    You may be prompted to select a client certificate or to select a trust-a-server certificate on open. This behavior may occur even if this certificate information is previously provided to Internet Explorer for the same navigation. Because Office makes a new request for its own process space to the server, a new session is created every time. This new session may produce additional security warnings or additional prompts to complete the OPTIONS call successfully.
    Cookie information that is used for gathering the document is not used in the OPTIONS request. If the server does not permit direct calls to the folder URL without this cookie information, the OPTIONS call may not be successful. If this problem occurs, the user may be prompted repeatedly for authentication, but the user may not be able to provide authentication. This is not because of missing authentication. This problem occurs because of missing session cookies for the Web server. This problem is specific to certain Web-server designs that depend on cookie information instead of authentication information or that depend on cookie information plus authentication information.
    There is a known problem with network configurations that use a Cisco Content Server Switch (CSS) load balancer with layer 5 filtering in their intranet environment. The CSS software does not correctly handle the HTTP 1.1 OPTIONS command. The CSS software does not forward the call to the Web server. Also, the CSS software does not return a response to the client that indicates an error and then closes the TCP connection.

    Because the TCP packet is never acknowledged by the server, the client believes that the server has not received the message. Therefore, the client resends the message. Office continues sending this message and waiting for a response until the TCP connection eventually times out. This can cause a client to stop responding when opening an Office file. The Office application waits for the server response. The server response is never received because the CSS load balancer drops the TCP packet.

    Cisco knows about this problem. Cisco is working on an update to resolve the issue. To work around this problem without the update, you can lower the CSS filtering to level 3 rules or to level 4 rules. You can also bypass the load balancer by changing the URL that is opened so that the URL points directly to the Web server that holds the content.

Back to the top
The benefits that are gained by Office Protocol Discovery outweigh the currently known drawbacks. We believe these issues will decrease over time. We will continue to follow the last two problems to make sure that solutions are available if the existing network design cannot be adjusted. We believe the choice to use Office Protocol Discovery is the correct long-term strategy for Web collaboration.
Understanding HTTP conversion for UNC redirector files
Clients that are running Windows XP Professional can create Network Places to DAV Web folders by using the Web Client service. The Web Client service is also known as the WebDAV mini-redirector. This Web Client service lets DAV-enabled folders appear as UNC shares.

An application can open the file, edit the file, and save to the file because the application typically saves to a UNC path. However, document collaboration requires more functions than are provided by the Web Client service. Therefore, Office 2003 has added code to determine if a file is opened by the Web Client service. If a file is opened by the Web Client service, Office 2003 re-maps the path back to a full URL and then opens the file separately by using the protocol that is appropriate for the server type. This lets an Office 2003 application perform full-document collaboration features, as if the file is opened directly from the URL in Office. The information that is provided previously, including Office Protocol Discovery, applies to documents that are opened from a Web Client-enabled UNC share.
Understanding Hyperlink zone security and security prompts
Office 2003 uses enhanced-security measures for Internet hyperlinking from links in the Office document. This includes passing security credential information under a more restrictive security zone policy so that Internet Explorer can permit or can deny passing credentials to the server. Permission or denial is based on the zone settings that are set for the user.

Also, Office 2003 makes sure that when navigation is under user control, WININET has a correct window handle. This means that WININET can raise security prompts to the user if prompts are required to perform an action. This enhances Web security in Office. However, tighter restrictions for Internet Explorer security zones may cause alerts to appear that did not appear in older versions of Office. The alerts appear during hyperlink navigation.

Additionally, Office 2003 adds an additional warning prompt under the following circumstances:

    A user clicks a hyperlink in an Office document
    A document contains content that is based on a URL resource that may perform navigation

The additional warning prompt makes sure that the user wants to move to the Web site, and that the site is trusted. You can control this prompt behavior through a registry setting.

For more information, click the following article number to view the article in the Microsoft Knowledge Base:
829072  How to disable hyperlink warning messages in Office 2003

source: http://support.microsoft.com/kb/838028/en-us

Wednesday, 27 July 2011

Changing default content type in a Document Library in Sharepoint

Changing default content type in a Document Library in Sharepoint

In Document library settings, look at content types. there is a link to change order of the new button. It's just below content types that your have selected.

Monday, 25 July 2011

Word 2007: How to hide document properties panel from SharePoint server

Here’s a screenshot of the default word behavior:

ms-word07-docinfopanel1

Hiding the Document Information Panel by default

  1. Select the Settings menu of the document library
  2. Under Content Types, click the name of the content type you want to change.
    Important:  If you don’t have content types enabled, you will not be able to change the settings for the document information panel. If you have them enabled, skip to step 4.
  3. To enable content types, go to Advanced Settings of the library and set the radio button for Allow manage content types? to yes.
  4.  Under Settings, click on the title of the content type you want to modify.
  5. On the content type’s Settings screen, click Document Information Panel settings. 
    Content type settings page
    Content type settings page
  6. On the Document Information Panel settings page, clear the checkbox for “Always show Document Information Panel on document open…”
    document info panel checkbox
    document info panel checkbox
Voilà! No more property  info when  by default when you open the document.
To make the Document Info Panel visible again for the current document in Word, select Prepare>Properties from the Office button:
show document info panel from Prepare menu
show document info panel from Prepare menu

Unknown error occurred in Sharepoint 2007

Get exception and underlying call stack on SharePoint error "Unknown error occurred" message 
  • Turn the call stack on by searching for and change it to CallStack="true".
  • Turn off the SharePoint error pages by turning off custom error pages: change to mode="Off".

A Portfolio Approach to Developing Workflows and Processes

One of the common pitfalls I see with process optimization projects is that they tend to focus on a specific process at a time.  This may be ok when you are just starting out, or working with informal processes, but as the number of complex processes improves it is important to try and take a step back and look at things from an overall portfolio perspective.  In many cases processes overlap or are interrelated.  I most often see this in finance processes because they are so common in all organizations.  Something like a Check Request process should be a pretty standard, well defined process but it is often part of a number of other process flows.  It is easy to ignore the fact that the same steps and activities are followed elsewhere, but that leads to a lot of extra work for the process designers and administrators as well as non-standard activities for your process workers to follow.
To overcome this, it is important to consider the following points when analyzing and designing the process:
  • Is there a natural collection of steps or activities?
  • Are these steps also done to support another process?
  • Is a different group or department responsible for those steps?
While performing the process analysis and design, some activities may form a natural grouping.  It could be a set of steps that are referred to under a particular label and they are likely to be assigned to or processed by a specific group of users.  For large complex workflows, it may be a good idea to make that a sub-process that can be referred to as a set unit.  It is important to talk to the stakeholders that perform those tasks and understand if those same tasks or processes are are also performed to support another process.  If they are, then it would be better to design a standard sub-process that is called from the other processes than to build in the specific steps into each process.
The Check Request example I mentioned before is one that I have seen come up in more than one organization.  There is a set of common steps where requests have to be approved, logged, and then processed.  Standard compliance activities are another example of a common central process that may be leveraged by a number of other processes.  Some times these opportunities present themselves early, but other times you have to dig to identify these sub-processes.  In cases where there are multiple groups involved the main process owner or stakeholder may not fully understand the details of how every step is executed so it is important to interview the actual project participants to understand what they are doing and other processes that may use those steps.  Within the Check Request example, it is unlikely that a process owner in Operations understands all of the various corporate activities that may generate a check request, they only understand that it is part of their one process.  By talking to the process workers in Finance, the other perspective can be considered.
By taking a Portfolio Approach in this case, you can potentially make real improvements that extend the process design and automation benefits not just to the one process, but to multiple processes across the entire organization.  Those processes will also get easier to expand and manage as they can leverage common sub-processes and existing functionality.

Source: http://www.mikeoryszak.com/sharepoint/a-portfolio-approach-to-developing-workflows-and-processes

Sharepoint Databases

Sharepoint stores everything in a database (except customised files)...
  • The database that ends with _Config_db: database stores the configuration for the whole SharePoint server / farm. Anything pertaining to the global configuration and set through the SharePoint Central Administration is stored in this database.
  • Finish _SITE database: stores all the contents of a specific portal. Contains files, web pages, websites, sites, and all things related to SharePoint infrastructure.
  • Finish _PROF database: stores all information about user profiles, but also holds the details of what information we collect on different user profiles.
  • Ending _SERV database: Stores data for searching, reporting, and indexing. It stores the gatherer log information as well as text indexes content that is crawled. In fact it can be easily controlled by the right mouse button on any of the databases and choosing Properties. In fact, this could be one way of knowing how much space each function or activity on your site, you are assuming.

How Web Part interact with SharePoint ?

Source: http://www.how2sharepoint.com/2010/05/how-web-part-interact-with-sharepoint.html

Help build reusable components that can be personalized and customized according to business user. We make our own webpart or we can reuse the existing one from SharePoint itself.
  1. Data View Web Part - Displays data with rich design support through Microsoft SharePoint Designer.
  2. List View Web Part - Helps us to display list content for any list in the SharePoint site.
  3. Image Web Part - Helps us to display image files.
  4. Members Web Part - Helps us to display members of the site.
  5. Page Viewer Web Part - Displays web page in an Iframe.
WebPart is just a simple class that inherits from System.Web.UI.WebControls.WebParts. In other words one can say a kind of WebPart is WebControl that can be implemented in a WebPartZoneControl.
Sharepointwebpart
WebPart control is like driver manager keeps cases WebPart. Add WebPartZone WebParts to get ASP.NET pages when initialized.

sharepointwebpart1

Sharepoint solution deployment and configuration guide

Stsadm can be found here: C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\BIN

Step 1: Installing SharePoint solution (.WSP)
Installation command syntax: STSADM.EXE -o addsolution -filename %SOL_FILE%
Installation command: STSADM.EXE -o addsolution -filename ABCSol.wsp

Step 2: Activating SharePoint solution (.WSP) in portal STSADM.EXE -o deploysolution -name ABCSol.wsp
-url http://Number-Research:9999 -immediate –allowcaspolicies –force

Display SharePoint Metadata in Word 2003

So I had to find a generic solution shows the SharePoint metadata in Word 2003 templates. I have found different solutions to achieve this goal, but none of them solved all my problems. The most common problem ist updating their fields at the right time.

Getting Started / Limitations:
* SharePoint Metadata in Word 2003 is assigned more than Document Properties
* Only fields of type "Text" can be assigned (If you need to display the values of other text fields, you must add a text field to your type of content and use an EventHandler to copy the value to the desired the text field and the map as Doument this property to your Word template. A common scenario might be "version" or author of a document that are not text fields OOB)
* Properties OOB document updates Print only (This is a Word option that is set by default)
How:
* Link to your Word template for ContentType corresponding DocLib
* Add the following code, which updates the fields when the document is opened, such as Macro (Macro in the current document, not as module) for the Word template:

  1. Private Sub Document_New()
  2.         ActiveDocument.Fields.Update()
  3.     End Sub
  4.     Private Sub Document_Open()
  5.         ActiveDocument.Fields.Update()
  6. OStory As Object
  7. OTOC As Object
  8.         'exit if no document is open
  9.         If Documents.Count = 0 Then Exit Sub
  10.         Application.ScreenUpdating = False
  11.         For Each oStory In ActiveDocument.StoryRanges
  12.             oStory.Fields.Update() 'update the fields in all stories
  13.         Next oStory
  14.         For Each OTOC In ActiveDocument.TablesOfContents
  15.             oToc.Update() 'update TOC
  16. OTOC Next
  17.             Application.ScreenUpdating = True
  18.     End Sub
  19.     Private Sub Document_Close()
  20.         ActiveDocument.Fields.Update()
  21.     End Sub
  22. Document_Sync Private Sub (ByVal SyncEventType As Office.MsoSyncEventType)
  23. End Sub

This code updates all sections of the document, including header and footer, not only the content section.
Save the template and create your first document of this template. 

Using Excel (Excel 2003) Data Source to Retrieve Data from SharePoint List

Using Excel 2003, you can create a data source to retrieve data from a SharePoint list. This method also has the added benefit of displaying columns that are not usually displayed in a traditional export to Excel. For example, in the fault database, 'Assigned to' and 'ownership' columns are not shown when the list is exported to Excel using Excel 2003.
* Open Microsoft Excel 2003
* Select Data > XML > XML Source from the menu. The 'XML Source' window is displayed to the right
* Click 'XML Maps'
* Click 'Add' in the XML Maps window
* Select 'New Source' in the 'Select XML Source' window. This displays the 'Data Connection Wizard' window
* Select 'Microsoft SharePoint Services lists' from the list and click the 'Next' button
* Enter the location of the data that is to be retrieved and click 'Next'
* Select the object or list that contains the data you need. Click 'Next'. 'Select Fields' window is displayed
* Select the columns required from the 'Available Columns' region and click 'Add'. Click 'Next'
* Specify 'Sort Criteria' and click 'Next'
* Specify 'Filter Criteria' to filter the displayed data and click 'Next'
* Specify whether you would like the number of rows to be retrieved and click 'Next'
* Enter a 'File Name' and 'Description' and click the 'Finish' button to complete.
* Note that the file name is displayed in the 'Select XML Source' window. Click 'Open'
* Click 'OK' in the 'XML Maps' window. Note that all the selected rows are displayed in the 'XML Source' region on the right side
* Map the elements by dragging the required rows to the Worksheet. What we have is the report with the header rows displayed; time to get the data
* Select Data > XML > Refresh XML Data from the menu to import the data
* Format the columns as required. Formatting may be required to align the cell display. Macros can be put to good use here


Note:
If the original list for data collection in rich text format, they would realize that the imported data is displayed with the html tags and not pleasant to read. You may want to change the input data in a column of text (in the SharePoint list) to resolve these.

Adding link to a document's properties (or linking 2 documents together)

Adding links to a document's properties is not bult into Sharepoint but there are several workarounds.
  • If all documents are in the same library, you could add a multi-choice lookup field referencing the library itself and let the users select the documents they want to link to. Unfortunately, the UI for multi-choice lookup columns doesn;t work well for a large number of items. You can't rename the links either.
  • You can create your own custom lookup field with the UI you want, if your project's time and budget constraints allow it.
  • You can add an HTML text field and have the users copy and paste the links to the documents they want in there. It is ugly, it creates the possibility of broken links, but it is another option to consider if the other options are not suitable.

10 things you should know: Microsoft's SharePoint Services

SharePointServices leverages Microsoft's Web-friendly product philosophy alongsideits affinity for desktop apps, and does so in a way (as so many Microsoftproducts do) that just lulls you into going with the flow. Security ispiggybacked on infrastructure already in place; the product's ancillaryfeatures are simply more convenient and (despite shortcomings) in many casesmore economical to just use, since they're there anyway, than more capablealternatives.
We'reinclined not to quibble. SharePoint Services gives you a lot of things you may havefound yourself wishing for, things you couldn't have because you'd have to goto the trouble of rolling your own or fiddling with your infrastructure inorder to achieve them. And some of them might not be immediately apparent:SharePoint Services is touted as a document management system, and there's abuilt-in problem with that concept, because we all have a pretty fixed andmundane idea of what a document management system is. SharePoint's Web-centricorientation, however, gives it some unexpected punch, and may change your thinking.Here are some points to consider.

1. SharePoint extends Exchange Server


If you'reusing Exchange Server to handle your email traffic, SharePointcan greatly simplify distribution. You can create a SharePoint site as asingular point for receiving Exchange traffic and, at a stroke, have de factodistribution of that traffic to a particular group or groups, with all thesecurity and membership built-in. By setting up a public folder for SharePointin Exchange, Exchange's work is done—SharePoint pulls from the folder and doesthe work.

2. SharePoint collaboration solutions are scalable


It'swell-publicized by Microsoft that SharePoint Services is essentially acollaborative solution toolkit. Creating sites for team interaction, sharingand management of project-specific documents and files, testing, and othercollaborative functions are a natural application of SharePoint.
A lesshyped aspect of SharePoint is that this collaborative utility is highlyscalable. What begins as a resource library shared by a team can be readilytelescoped out to accommodate the entire organization or an even broadercustomer community—SharePoint Services can be readily deployed across multiple serversin a server farm, enabling the creation of massive data stores.

3. SharePoint sites are highly customizable


SharePointServices comes fully integrated with FrontPage2003, so all of FrontPage's WYSIWYG Web editing tools are available for usein crafting SharePoint sites. (If your organization swims in the deep end,development-wise, all of this comes with ASP.NETas well.)
ViaFrontPage, you can leverage the utility of Web Parts, modular chunks of codeyou can re-use in SharePoint sites, to grab live data from a broad range ofpossible sources (Also see #8). You can allow users to control these modules ofcode by inserting Web Part zones in your sites, enabling sophisticateddrag-and-drop controls. You have complete control over style through XSLT,which you can manipulate either directly or through FrontPage—and you canemploy conditional formatting if it desired.

4. SharePoint extends InfoPath


InfoPath2003 is Microsoft's desktop application technology for integrated formsmanagement and data transport. InfoPath is a powerful and underrated technologyin itself, and both its XML backbone and forms-friendliness mesh well withSharePoint.
Specifically,you’ll find it useful to publish InfoPath forms directly to a SharePointlibrary. In such a library, forms can be stored and (more importantly) shared, andaccessible to working teams leveraging SharePoint as a collaborative tool. (Thebase form is stored in the library header; populated XML result sets make upthe library itself.)
And withSharePoint Portal, you can leverage SharePoint Portal Web services to enhancethe utility of InfoPath forms for your desktop community, by accessinginformation in other systems within your organization (or from outside, forthat matter) and populating forms with it as needed.

5. Metadata can be used to create dynamically parsed storage systems


Metadata iscritical to the SharePoint Server concept, and comes in several flavors. Withmetadata you can effectively create customized search arguments that permit youto organize information dynamically, and to use search criteria from onedocument library to retrieve information from another.
Put anotherway, you can forego the traditional hierarchical folders in organizing yourdocument libraries, if it's appropriate. Instead, you can create metadatalookups that can not only be used as organizational keys for documents in onelibrary, but can be used as search arguments to locate documents in otherlibraries. In this way, you can create searchable document pools witheffectively dynamic organization, not only searchable but re-organizablewithout any physical manipulation of the documents themselves.

6. SharePoint can be a data transport mechanism


SharePoint'sprimary features include the ability to set up shared distribution points fordata from a wide range of sources, moved by different modes of transport (see#1, #4). But its data transport role doesn't end there. Depending on what yourorganization's sites contain, content-wise, and the role(s) the sites areplaying in your system, you can actually distribute data from server to serverby means of SharePoint's site-moving utilities (see #10).
Forinstance, if you have SharePoint sites deployed internally to represent data indifferent workflow stages, the SharePoint content databases of those sites canbe rotated in a de facto batch process using these utilities (which are CommandLine programs and therefore scriptable).

7. Use the Task Pane to turn Word libraries into collaborative systems withbuilt-in administration


SharePointServices is primarily about document management. Saving Word documents toSharePoint, placing documents in libraries, and checking them in and out areSharePoint's most obvious functions.
But theextension of those functions into shared workspaces is where those featuresbecome really empowering, rather than simply utilitarian. You have a Task Panethat ties documents to libraries, and within it lie anumber of important features that take you from the simple management ofdocuments to real collaboration and administration. Through the Task Pane, youcan:
  • track status and versioning of documents
  • define and track who has site/document access
  • do task monitoring
  • create alerts
You can, ofcourse, save from all Office applications—not just Word—to SharePoint.

8. SharePoint can pull data from external databases and other data sources


Web Partsand Web Part architecture (available to your SharePoint development by way ofFrontPage 2003 or ASP.NET) can become a powerful component of your SharePointsites. In particular, Data View Web Parts allow you to add views to your sitesfrom a variety of data sources. You can create views specific to yourSharePoint sites and link views together. Data sources can be databases, Webservices, or any XML source (InfoPath documents, etc.).

9. Leverage Excel for data management


Exportingdata to Excel is well-supported in SharePoint and makes graphingand printing convenient (via the Print with Excel and Chart with Excel options).But it's also possible (and may often be desirable) to export data to Exceljust for the sake of manageability. The Excel Export function creates an Excel Webquery linking to the original data. In this way, you can create spreadsheetsthat will accept data, and then push that data to SharePoint.
This can bedone by generating an Excel spreadsheet, then linking the spreadsheet toSharePoint (by using Export and Link to Excel from a Datasheet Task Pane). Oncethis is done, data can be entered into the spreadsheet and pushed from thespreadsheet to Excel with the Synchronize List option.

10. Sites and entire site collections can be backed up in a singleoperation


The abilityto move a site, lock-stock-and-barrel (and even more so a site collection,which includes primary site, sub-sites and all their contents), should not beunder-appreciated. Anyone who's migrated sites the hard way knows it can bemaddeningly frustrating. SharePoint Services includes two utilities that willgreatly reduce the frustration: STSADM and SMIGRATE.
SMIGRATE began life as an upgrade utility,shepherding data from old SharePoint to new. Now it's for backup/restore andfor moving sites wholesale. It's a command line utility, so it's tailor-madefor scripting, and can simplify the process of moving a site and its contentsto the point that it can conceivably be a content distribution tool in somescenarios.
Itsweakness is that when a site is moved with the SMIGRATE utility, its security settings don't all move with it.Remember to check your settings after a move or restore.
And while SMIGRATE will not preserve your securitysettings, STSADM will. This utility will move notonly a site but a site collection, and does far more: you can use it to createsites, delete site collections, import templates, and move data (see #6).

Source: http://www.techrepublic.com/article/10-things-you-should-know-microsofts-sharepoint-services/5807000

Case study - DTEK Ukraine Energy Firm Puts Documents and Workflows in Single Portal for Faster Access


DTEK is a fast-growing Ukrainian energy firm that needed to gain control of its sprawling information stores. After acquiring more than 20 energy companies, DTEK found itself with dozens of file-share servers that were difficult to search and no easy way to share information between divisions. DTEK built a single companywide portal using Microsoft SharePoint Server 2010, which today provides a central place for 11 terabytes worth of data. Business groups are automating business processes using SharePoint workflows, and the IT staff is linking SAP and other applications to the portal so that employees can access everything from one place. The company’s 5,000 information workers now have faster access to documents and business processes. DTEK saved U.S.$93,000 by eliminating file-share servers and third-party services, and can now better meet compliance deadlines.

Situation
DTEK is a privately owned, vertically integrated energy company in Ukraine. It extracts coal from the ground, converts it to electricity, and distributes that electricity to millions of customers in Donetsk, Dnipropetrovsk, Luhansk, Zaporizhzhya, Kiev, and surrounding regions. DTEK is based in Kiev and Donetsk and employs about 63,000 people: 58,000 field workers and 5,000 information workers. For the last five years, DTEK has been growing rapidly, primarily through acquisition. By 2010, it had acquired more than 20 companies, each of which brought its own intranet, document stores, company directory, and information management culture. Employees struggled to locate and make sense of approximately 7 terabytes of information scattered across dozens of file-share servers and individual company intranets. “Once an acquisition becomes a division of DTEK, employees there need to exchange information and have conversations with other divisions,” says Sergey Detyuk, Chief Information Officer of DTEK. “The inability to do this was preventing our business from moving as quickly as we wanted.”
Employees primarily stored documents in file-share servers, but these were neither easy to search nor available outside divisions. They were also not secure enough to please management. Employees sent flurries of email messages to colleagues to locate documents; if a document was finally located, it was dispatched as an email attachment.
In addition to slowing down information access and decisions, the decentralized information structure was expensive. DTEK had dozens of file-share servers across the company that it had to refresh every three to five years. Additionally, DTEK was spending about U.S.$35,000 annually on outside consultants that conducted surveys of DTEK employees.
DTEK has to comply with environmental and financial regulations, but gathering the needed data became increasingly difficult as the company grew. “It took weeks for our compliance team to track down data from all the various divisions, which made it difficult for us to submit compliance reports on time,” says Sergey Bondarenko, Deputy Chief Information Officer at DTEK.

*
* Information sharing across the whole company and automated workflows have been crucial enablers supporting our dynamic growth. *

Sergey Detyuk
Chief Information Officer, DTEK

*
DTEK management wanted all corporate information in one place that employees could access with a convenient web-based interface. “We are continuing to grow and knew that the problem was going to get worse,” Detyuk says.Solution
In early 2010, the DTEK Information Management Systems group began considering its options for building a single corporate portal. It evaluated leading commercial portal solutions, including one from SAP, but it found that most were exceedingly expensive and required extensive customization work to meet DTEK needs. Some groups within DTEK used Microsoft Office SharePoint Server 2007 for information sharing and reporting, so the company looked at that program’s successor, Microsoft SharePoint Server 2010. “We had already standardized on Microsoft software throughout much of our data center, so we liked the idea of using SharePoint Server 2010,” Detyuk says. ”Another reason to go with SharePoint Server was its deep integration with Microsoft products and services that we had already deployed, which would lead to a more painless deployment and integration of SharePoint Server into our environment.”
Close Work Between IT and Business Teams
With the selection decision made, DTEK spent 18 months creating its new corporate portal and migrating information to it from company file servers and other sources. The IT team used Microsoft SharePoint Designer 2010 to design individual SharePoint pages and Microsoft Visual Studio 2010 Professional to develop custom business processes in SharePoint Server. “Mostly we used built-in SharePoint Server workflows because we did not want a lot of customization,” Bondarenko says. “Working with SharePoint Server was very easy for our Microsoft-trained development team.” To ensure that the portal matched the needs of the business, the IT team worked closely with business teams to determine the portal architecture and needed sites, document libraries, and workspaces. DTEK defines workspaces as team sites used by specific business groups. Once the portal structure was defined and authorizations assigned, individual business teams migrated their own documents to the portal. This avoided migrating outdated or unnecessary documents.
The DTEK IT staff offered a variety of classroom and online training options to teach employees how to use the new portal, workspaces, and workflows. The staff offered face-to-face training for executives and business group administrators who support other employees. For all other information workers, it provided extensive online resources through the portal: video-based lessons, presentations, articles, and frequently asked questions.
The portal solution runs in a virtualized infrastructure of five virtual machines running on a six-node Hyper-V cluster. On the cluster are two web servers, two application servers, and one search/index server. A separate two-node database cluster runs Microsoft SQL Server 2008 data management software. All servers run the Windows Server 2008 R2 Enterprise operating system.
Companywide Portal
In December 2010, DTEK launched its new portal, which serves as both a company intranet and a central place for business groups to store and share documents and perform common business processes. The intranet portion of the portal provides general company news, an electronic corporate magazine, policies and procedures, general services such as business card ordering, and an employee directory. Employees can also find personalized reports on their earnings, taxes, benefits, and mobile phone usage. Completing expense reports, ordering business cards, and making travel plans are all handled by SharePoint workflows. The employee surveys that used to be performed by expensive third-party firms are now handled on the intranet. The intranet contains a document and people search box where employees can search for documents and colleagues by entering a search term such as “Donetsk market.” The built-in search capability in SharePoint Server goes through several terabytes of documents to locate all search results, both documents and people, related to the energy market in Donetsk. DTEK took advantage of the SharePoint Server multilingual interface to present the portal interface and search functionality in both Russian and English.
DTEK is working to link SAP and other business software, such as human resources applications, to the portal so that employees have centralized access to needed applications.
Team Workspaces and Workflows
The portal contains access to workspaces, or mini-portals, that serve the needs of specific DTEK divisions and business units. In their workspaces, teams store documents used by team members every day and also share calendars, lists, and discussions. Financial specialists created a workspace for storing and sharing tax, earnings, and expense reports. Teams acquiring new companies or opening new mines can share project plans and drawings on workspaces. Workspace owners can define access rules and selectively grant access to employees outside their team or division. Divisions and business units have also created workflows in their workspaces for automating routine business processes. For example, one DTEK Supervisory Board workflow polls member calendars for availability and schedules meetings. Another workflow enables board members to check off milestones on various tasks and creates performance dashboards so all board members can quickly see the status of key projects. The board also votes through a SharePoint workflow that sends email reminders and tabulates votes.

*
* Working with SharePoint Server was very easy for our Microsoft-trained development team. *

Sergey Bondarenko
Deputy Chief Information Officer, DTEK

*
The DTEK compliance team uses its workspace for collecting compliance data from business units and storing historical compliance reports. The compliance team gathers needed data from the various business units by sending email messages that link to the compliance team’s SharePoint workspace. Business units submit their data to the site, where the automated workflow tabulates it. “These workflows provide transparency to our business processes and save staff time,” Detyuk says. Benefits
By creating a single company portal using Microsoft SharePoint Server 2010, DTEK has given its 5,000 information workers instant, targeted access to needed documents and expertise, which helps them make decisions and execute business faster. DTEK has also reduced expenses by eliminating file servers, and has accelerated its compliance reporting process.

Faster Access to Needed Resources
With a single place to go to locate needed documents, DTEK employees can more easily and quickly find what they need. “Information sharing across the whole company and automated workflows have been crucial enablers supporting our dynamic growth,” Detyuk says. “Plus, we have had very positive feedback from our employees. Information is more accessible and more structured so that they can find documents more easily. There is no longer a need to send documents through email.” As an example, the legal department saves about 120 hours each month by exchanging documents electronically rather than manually with paper.
Savings of $93,000
By centralizing all document storage in its new portal, DTEK has been able to eliminate about six file servers across the company to date, a savings of about $58,000, with more savings anticipated. DTEK also eliminated the $35,000 annually that it paid to the third-party survey firms.
It also saved on development costs. “We did not do an exact comparison, but I believe that using other commercial portal products would have cost ten times more than SharePoint cost, thanks to the deep integration with other Microsoft software that we have already deployed,” Detyuk says.
Faster Regulatory Compliance
DTEK has been able to make compliance reporting more convenient and faster, both for end users and the Compliance Management Department by replacing paper forms and manual compliance management procedures with automated workflows in SharePoint Server 2010.


Source: http://www.microsoft.com/casestudies/Microsoft-Sharepoint-Designer-2010/DTEK/Ukraine-Energy-Firm-Puts-Documents-and-Workflows-in-Single-Portal-for-Faster-Access/4000010797