Showing posts with label Sharepoint. Show all posts
Showing posts with label Sharepoint. Show all posts

Thursday, July 12, 2018

SharePoint 2010 – Unable to edit cell in Datasheet view – “This cell is read only”


When I try to edit the excel in SharePoint 2010 list in Datasheet view, I see an error saying that “The Selected Cells are Read-only” as shown the image below.


  • I have verified user Permissions to the list. User Having Full control permissions to the list
  • Checked-out by any one (It is not document library)
  • Any Attachments having read-only – NO
  • Is current column is default system column? (Like Created, Modified Etc..) – NO
After checking all these details, I found Microsoft Support article about the fix. We have Content Approval enabled in the list and that is blocking DataSheet View edit. By Turning Off the Content Approval, We can fix the error.

Here are the steps to turn off content approvals,
  • In the List select Settings
  • Select List Settings
  • Select Versioning Settings
  • In the Content Approval section select No for "Require content approval for submitted items"

Now we can able to edit the items in DataSheet view.
Hope this helps.

Thursday, June 14, 2018

SharePoint 2013 security patch issue – AccessKey too long, cannot be more than one character


After installing SharePoint 2013 march updates, when I try to configure User Profile Service Application I got an error saying that - AccessKey too long, cannot be more than one character. By seeing the SharePoint logs, I found an error saying that

Application error when access /_layouts/15/ProfileSynchronizationServiceProvisionPage.aspx, Error=AccessKey too long, cannot be more than one character. Parameter name: value
 at System.Web.UI.WebControls.WebControl.set_AccessKey(String value)
 at Microsoft.SharePoint.Portal.WebControls.InputFormButtonAtBottom.set_AccessKeyLocId(LocStringId value)
 at ASP._layouts_15_profilesynchronizationserviceprovisionpage_aspx.__BuildControl__control11()
 at ASP._layouts_15_profilesynchronizationserviceprovisionpage_aspx.__BuildControlProfileSyncProvisionSettingsForm()
 at ASP._layouts_15_profilesynchronizationserviceprovisionpage_aspx.__BuildControl__control4(Control __ctrl)
 at System.Web.UI.MasterPage.InstantiateInContentPlaceHolder(Control contentPlaceHolder, ITemplate template)
 at ASP._admin_admin_master.__BuildControlDeltaPlaceHolderMain()
 at ASP._admin_admin_master.__BuildControl__control27()
 at ASP._admin_admin_master.__BuildControlSPHtmlTag()
 at ASP._admin_admin_master.__BuildControlTree(_admin_admin_master __ctrl)
 at System.Web.UI.MasterPage.CreateMaster(TemplateControl owner, HttpContext context, VirtualPath masterPageFile, IDictionary contentTemplateCollection)
 at System.Web.UI.Page.ApplyMasterPage()
 at System.Web.UI.Page.PerformPreInit()
 at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

I have verified the details about the issue I don’t see any clues about the issue. Some suggested to replace the /_layouts/15/ProfileSynchronizationServiceProvisionPage.aspx file from Stage/Dev. But I cannot risk that with my production environment. I have seen same issue few other people and they have the same error after installing March 2018 updates as the TechNet forum.

After two days Stefan Goßner posted the fix for the issue.  Here are the steps to fix the issue,
  1. Delete the content of the following folder:
    C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files
  2. Restart IIS . This will allow aspx pages to recompile.




Saturday, July 29, 2017

SharePoint list Nintex form error – “The app Nintex Forms for Office 365 is out of date. Please update the app.”

While working with Nintex form in office 365 site I got an error saying that “The app Nintex Forms for Office 365 is out of date. Please update the app.” as shown the image below.



As I am new to Nintex forms, thought this is update news from Nintex team and tried to verify the option to update the Nintex forms by clicking on the Nintex forms in site contents. But I am unable find any update link on the app.

Going through few blog posts, I got the reason for the error. We got the error because of the script in the form. I wrote alet(‘hi’) instead alert(‘hi’). Silly right? Yes sometimes happens.

After fixing the error I am able to open the form without errors. 

Saturday, June 20, 2015

SharePoint 2013 error – Site stuck up in Read-only mode after interrupted backup

While working with SharePoint 2013 restore and backup I got interesting error in one of my host named site collection (I hope this is generic issue, not specific to host named site collection) saying as shown the image below.



When I try to fix this issue from SharePoint central administration quotas, all the options are disabled and unable to change anything as shown the image below.


By going through some of the blogs, I got the issue. In SharePoint 2013, we are having Manintanence Mode property for SPSite makes SharePoint site is undergoing a Maintenance & is read only. We can set this SharePoint site when content DB is in read only state, or when SharePoint site upgrade, moving SharePoint site in process.
We can fix this error by clearing ClearMaintenanceMode method in SpSiteAdministration object. We can do this by running following command,
$Site = new-object Microsoft.SharePoint.Administration.SPSiteAdministration(SITE URL)  $Site.ClearMaintenanceMode()
This fixed my issue. Hope this helps.



Friday, May 8, 2015

Prevent users to create the my sites in SharePoint

In one of my SharePoint environment, we had issue with my sites. When users click on about us, it automatically creates my site for all the user. All these my sites are created as a site collections in the web application.



We have 2000 people accessing the site and every user creating new my site. So it will be 2000 site collection in one web application. SharePoint can handle that, but we not using any my site features in our environment.
For this we just need to prevent the users to create my sites. We can do that from central admin site User profile service settings as shown below.

Open SharePoint central admin site User profile Service application. Select manage user Permissions.



We can see a popup as shown below. Select Authenticated users and uncheck “Create personal sites” option as shown the image below.
Click on Ok to save the settings.



Hope this will helps.


Monday, April 27, 2015

SharePoint – Back to basics – SPLongOperation for lengthy operations

We have many hidden features in SharePoint in look and feel in Out of Box as well as custom. SPLongOperation One of the hidden feature in custom coding side. This feature exists from SharePoint but many of the users may not be aware of this. SPLongOpearation allows us to inform end users on processing screen while operating lengthy operations like moving documents from one site other, deleting sites etc... And at the end we can have options to close/ redirect the page.

Here is the sample code on usage of SPLongOperation,

               try{
                              using (SPLongOperation longOpearation = new SPLongOperation(this.Page))
                              {
                                             longOpearation.LeadingHTML = "Title of the long operation";//title message
                                             longOpearation.TrailingHTML = "this will take few sec”//sub message
                                              longOpearation.Begin();
                                             //Code start
                                             //Write the code that to be processed in long operation
                                             //code ends
                                               HttpContext context = HttpContext.Current;
                                             if (context.Request.QueryString["IsDlg"] != null)
                                             {
                                                            context.Response.Write("<script type='text/javascript'>window.frameElement.commitPopup();</script>");
                                                            context.Response.Flush();
                                                            context.Response.End();
                                              }
                                              else
                                              {
                                                             string url = SPContext.Current.Web.Url;
 longOpearation.End(url, SPRedirectFlags.CheckUrl, context, string.Empty);
                                             }

                              }
               }
               catch (Exception ex)
              {
                              SPUtility.TransferToErrorPage(ex.ToString());//transfores us to the error page with error message
               }

In the Begin and End methods for long operation we can have different overloaded methods. By using SPLongOperation.Begin method (String, String, SPLongOperation.BeginOperation) method we can pass title and sub message. Here in the script end method, iam passing redirection URL and checking flags and current context. For more details, here is the full description in msdn.