22 February, 2013

Cannot Publish Access Database to Sharepoint 2010 Server

Happy Friday to all of you :)

Worked for almost 10 hours to resolve this issue that I am going to explained in detail manner.

Okay, here we go…

Problem Description: We have published an Access 2010 database to SharePoint 2010 site. The publish was successful but received an error

Error Messages:
Exception message: Exception from HRESULT: 0x80131904

The server was unable to process the request due to an internal error. For more information about the error, either turns on IncludeExceptionDetailInFaults (either from ServiceBehaviorAttribute or from the <serviceDebug> configuration behavior) on the server in order to send the exception information back to the client, or turn on tracing as per the Microsoft .NET Framework 3.0 SDK documentation and inspect the server trace logs.

I get this error in the event viewer:
Log Name:      Application
Source:        Microsoft-SharePoint Products-Access Services
Date:          22/2/2013 10:03:43 AM
Event ID:      3
Task Category: Data Layer

An error has occurred. Please try again.

If I review the series of error message then it’s not completely clear where its dragging out and in which direction.

Troubleshooting done on this issue:
1.    Manage Services on Server – Access Database Service is started

2.    Manage Services Applications – Review the access Settings

3.    Manage Web Applications – Make sure application is associated with the Access Service

4.    Make sure all the features are activated
o   Central Admin --- System Settings --- Manage Farm Features --- Access Services Farm Feature
o   Central Admin --- Manage Web Applications --- Select Web Application hosting the Access Services Site --- Manage Web Application Features --- SharePoint Server Enterprise Web application features
o   Site Collection --- Site Settings -> SharePoint Server Enterprise Site Collection features
o   Site Collection --- manage Site Settings --- SharePoint Server Enterprise Site features

Microsoft Theory:
If Access Services is activated on an Application Server, then you will also need to turn on the Microsoft SharePoint Foundation Web application Service, thus turning that machine into a WFE/APP server. Problem with this approach is that it could affect your licensing agreement because licensing depends on the number of WFE’s your farm has. Hence, the workaround for this issue is to enable the Microsoft SharePoint Foundation Web Application service on the server running Access Database Services.

As per this, we have made the changes and started the access service on the same server where Microsoft SharePoint Foundation Web application Service is running.

5.    Make the changes in web.config file so that the error should be more clear and accurate one.  Changes includes: callstack=True and customerror=off
6.    Re-provision the access, session state, security token service applications

We have provided access to the account associated with Access Services the dbo permission for the content database in SQL Server for the particular site collection for which I was trying to add a Web Database.

If you have any queries/questions regarding the above mentioned information then please let me know.

Thank you.

Upgrade Best Practices SharePoint Server 2010

I was in a process of giving the details about migration to a organisation from 2007 to 2010 and found this useful article on Technet .


To ensure a smooth upgrade from Microsoft Office SharePoint Server 2007 to Microsoft SharePoint Server 2010, follow these best practices

  • Update your servers to Service Pack 2 (SP2) of Microsoft Office SharePoint Server 2007 or later.
Your environment must be updated to Service Pack 2 of Office SharePoint Server 2007 to run the upgrade process, either for an in-place or database attach upgrade. We recommend that you install the October 2009 Cumulative Update because it includes improvements to the pre-upgrade checker tool. Ensure that the environment is fully functioning before you perform an upgrade.

  •  An upgrade does not solve any problems that might already exist in your environment. Therefore, ensure that the environment is fully functioning before you perform an upgrade. For example, if you have Web applications that are no longer being used, unextend them before you upgrade. If you want to delete a Web application in Internet Information Services (IIS), unextend the Web application before you delete it; otherwise, SharePoint Server 2010 will try to upgrade the Web application even though it does not exist, and the upgrade will fail. If you find and solve problems beforehand, you are more likely to meet the upgrade schedule that you have estimated.

  • Before you try an in-place upgrade, migrate to 64-bit servers. Upgrade your operating system to a 64-bit version of Windows Server 2008 R2 or Windows Server 2008 with Service Pack 2 (SP2). If you are using SQL Server, upgrade or migrate to a 64-bit version of Microsoft SQL Server 2008 R2, SQL Server 2008 with Service Pack 1 (SP1) and Cumulative Update 2, or SQL Server 2005 with SP3 and Cumulative Update 3.

  • Do not try to combine these operations with your upgrade process. You cannot perform an in-place upgrade unless your system already runs on a supported operating system and platform.

  • Run the pre-upgrade checker to look for potential issues.

The pre-upgrade checker reports missing customizations and issues with orphaned sites, and more, so that you can address these issues before you perform your upgrade.

 For more information, see Run the pre-upgrade checker (SharePoint Server 2010).
  • Perform a trial upgrade on a test farm first.

Back up the live farm, restore to test servers, and then perform the upgrade. Examine the results to set expectations for what the live upgraded sites will look like, to determine how much post-upgrade customization will have to be done, and to estimate how long the upgrade will take. Try a full search indexing crawl. For more information, see Use a trial upgrade to find potential issues (SharePoint Server 2010).
  • Plan for capacity.
Ensure that you have disk, processor, and memory capacity sufficient to handle upgrade requirements. For more information about system requirements, see Review system requirements for upgrade (SharePoint Server 2010). For more information about how to plan the disk space that is required for upgrade, see Estimate how long the upgrade process will take and the space that you need (SharePoint Server 2010). For more information about how to plan for capacity, see Performance and capacity management (SharePoint Server 2010).
  • Back up your environment.
Perform a full backup of your environment before upgrading. That way, you can recover your environment if you must roll back from an upgrade. For more information, see Back up environment before an in-place upgrade (SharePoint Server 2010).
  • Optimize your environment before upgrade.
A few key limits have changed in SharePoint Server 2010, such as query throttling on large lists and lower limits on the number of site collections allowed per content database (from 5,000 warning and 15,000 limit to 2,000 warning and 5,000 limit). Be sure to optimize your Office SharePoint Server 2007 environment to meet these limits or restrictions before upgrade to mitigate errors during the upgrade process or broken lists or sites after upgrade. For more information about the site collection limit, see SharePoint Server 2010 capacity management: Software boundaries and limits. For more information about large lists and addressing the lower limit on site collections, see Clean up an environment before upgrade (SharePoint Server 2010).
  • (Optional) If you are using the database attach upgrade method, set the original databases to read-only.
If you expect a long outage window while you perform a database attach upgrade, you can set the databases in the original environment to be read-only so that users can continue to access their data without changing it. For more information, see Attach databases and upgrade to SharePoint Server 2010.
  • Do not add any servers to your server farm after you begin the upgrade process.
Running the SharePoint Products Configuration Wizard upgrades the configuration database. The configuration database contains the list of servers in the farm. Servers added to the farm after the configuration wizard has been run are not included in the database. Therefore, servers added after the wizard runs do not appear in the upgraded version topology. If you need to add servers to your farm, do so either before you start the upgrade or after you have completed the upgrade process.
  • After upgrade, review the Upgrade Status page and upgrade logs to determine whether there are issues that must be addressed. Then review the upgraded sites.
The Upgrade Status page reports on the upgrade progress, and the upgrade logs list any errors or warnings that occurred during the upgrade process. You should verify all of the sites and test them before you consider the upgrade complete. For more information, see Verify upgrade and review upgraded sites (SharePoint Server 2010).

Workflows are not available after we upgrade from 2007 to 2010 using database attach method

This is a very critical issue that most of the users have faced after the migration from SharePoint 2007 to 2010

After upgrading the SharePoint 2007 Database via database attach method to SharePoint 2010, You might find that the 2007 Approval workflows are no longer available for users to create new workflows.
In SharePoint 2010 the 2007 workflows are there to allow any running workflows to complete, but by default creating new instances of the workflows is disabled as the expectations are that you will want to move forward to the SharePoint 2010 workflows.

The following steps must be taken to enable 2007 workflows after upgrading to SharePoint 2010:
·         Go to Site Actions ->Site Settings->Site Collection Administration->Site collection features

·         Activate SharePoint 2007 Workflows 

·         Remove ‘none’ from none

·         14-templatefeaturesReviewWorkflowsReviewapproval.xml
 Associate Workflow

·         Go to Shared Documents, Library Settings, Add a Workflow
 Select legacy Workflow.

Note: Please take a back up of Reviewapproval.xml,ReviewFeedback.xml,Signatures.xml before doing the modification, the above solution is not verfied after we install any new update. chances are there that these files might get replaced in future update. please have a backup of working files as well.
Reference -

21 February, 2013

The super reader account utilized by the cache does not have sufficient permissions to SharePoint databases

Let me brief some details as what exactly happened in reference to following error message:
Object Cache: The super reader account utilized by the cache does not have sufficient permissions to SharePoint databases.

We have moved one web application from Development to staging environment. Movement was successful and we started facing the above mentioned error while browsing the web application.

After viewing the error message, thought process started to resolve around permissions.
Okay, but which permissions, account, sections where we need to specify and so many things…

Opened central administration—manage web applications—click on the specific web application to check the permissions –three accounts were listed there: nt authority, two more accounts and all are in Read Only mode.

Checked the IIS settings for that web application and cross checked the same account listed or not (which we have seen in the CA-user policy for that application)
Checked the account permissions in reference to SQL Databases and its perfectly fine (already listed in the users and roles in SQL)

As per Microsoft recommendations, there should be a Portal Super User account that must be an account with Full Control access to the Web application and The Portal Super Reader account that must be an account with Full Read access to the Web application.

While doing some research, I came across with an excellent article, written by Andras Gaal
The above article resolves my issue and works perfectly fine for us.

I would like to put some stress on one point from the same article:
 If you are in claims mode, you will need to use the claims user name(i:0#.w|domain\user).

Make sure you make a note it as it will creates new exceptions…

Thank you.

Code Blocks are not allowed in this file error in sharepoint 2010

Hello Everybody,
Today I worked on one critical issue which belongs to our development environment. We have migrated one web application from production environment to development for testing purpose. Migration has been successful but we were facing an exception while browsing the web application.

Error Message:
An error occurred during the processing.
Code blocks are not allowed
Troubleshoot issues with Microsoft SharePoint Foundation.

Server Configuration:
·         2 SharePoint Servers
·         SQL server 2008 R 2
·         Windows Server 2008 R2
·         SharePoint Version: SP2010

Troubleshooting done:
1.    Tried accessing the system pages i.e. settings.aspx, viewlsts.aspx etc. every system was opening fine without any issues. So the issue is with the home page only…
2.    Tried accessing the web part maintenance page, it opened without any issues. We closed the webparts which are present on the home page-just to make sure that there is no problem with the existing webparts. Checked the home page again but same issue.
3.    Tried changing the master page as were able to open the system pages (by appending _layouts/changesitemasterpage.aspx). We changed to different one as we are using custom master page. Checked the results again but same problem.
4.    Opened the site in SharePoint Designer 2010 and checked the status of master page as well as the home page. It was fine and without customization too.

Note: if you see any of these pages in customizable state then I would suggest you to take the backup and try ‘reset to site definition” option.

Obviously, next question will arise- what exactly it will do? Yes, it will reset your page to default state. It means you will lose your customizations. But issue will be resolved and you can customize the page again as per your requirements.

5.    Checked the windows application as well as SP logs (Location: \14\Logs). I would suggest you to analyze these logs before continuing your troubleshooting.

What is my observation\Understanding?
·         Code blocks are only processed for custom pages deployed in the root virtual directory of a site if the code it considered safe.
·         This code is considered safe only if the page is served directly from the file system. As soon as it becomes unghosted for any reason, the code is no longer considered safe and the error shown in the symptom occurs.

As our production web application was working without any issues so I compared the web.config of both the applications. Analyze the code line by line with the production web.config and that’s it. I found the one which was missing in the web.config that belongs to my development web application.

Note: I would suggest you to take a proper backup before making any changes in the web.config file.

What I did? What kind of entries I added in the web.config file?

Here we go:-
In you web.config, you need to search the tag name as “<PageParserPaths>”
Once you find that then make the following  entry:
    <PageParserPath VirtualPath="/apps/*" CompilationMode="Always"
              AllowServerSideScript="true" IncludeSubFolders="true" />
After adding this entry then IISRESET is mandatory.

Tried accessing the site and the issue has been resolved.

Happy SharePoint once again…

If you have any queries/questions regarding the above mentioned information then please let me know, Thank you.

20 February, 2013

Hide column on Newform.aspx. In SharePoint

Issue: Client reported that on newform.aspx page, there is one column which appear for awhile and then disappears.
-          Checked if the column is custom created.
-          Checked if the column has its value hidden in the content type column setting.
-          Marked the column value to be required.
-          Saving the list as template without content and worked fine on the other site, gives issue on the same site.
-          Tried deleting the problem column form the problem list, its still disappears from the newform.aspx page.
-          Checked the list in SharePoint Designer to check if the newform.aspx page is customized. No customizations were implemented.

On further troubleshooting, we edited the new.aspx page and found two ‘content editor webpart’ each containing a Java script code.
Out these two codes one was like given below:
Where nth-Child is used as an argument to pass to the table and function to perform is hiding.
The 8th number is the column number in the newform.aspx page. Editing the page and changing the number equivalent to the number of the column would hide that column from the page.
Either changing the number to something to not equal to the column number or removing the code had resolved the issue.
Applies to:
-          SharePoint 2007
-          SharePoint 2010.
-          SharePoint Designer.  

Disk space mismatch than the actual size allocated on disk.

Issue: Today while doing our regular BAU of monitoring the server space. I have got a Tivoli alert which is configured to alarm you when there is low disk space. 
Issue was while looking at the drive space the total of 199 GB was showing as used space and total storage space occupied by files and folder was 58 GB on the drive.  Where is the rest of the space occupied. Strange….???
-          Unhide the system hidden files. Not occupying the space.
-          Checked the file size of the files and folder stored. Not occupying the space.
-          Checked the Volume shadow copies of the all the drives. No disk is mounted to be used as Shadow copies. All drive status is set to ‘Disabled’.
Came across a very nice article which talks about the various ways to check if there is a mismatch in the drive space.
Step 6 from the above article was the resolution for my problem.
-          Running VSSADMIN LIST SHADOWSTORAGE to find out, which drive is having the total used space as a volume shadow copy.

-          132 GB of storage space was occupied by C Drive.
-          Limiting Maximum size of the storage area in Shadow copies had releases the space allocated.

Applies to:
Windows Server 2008
Windows Server 2003.