Posts

Access List properties with REST APIs

Syntax to use REST API for List:                 <sharepoint web url>/_api//web/lists/GetByTitle('List Title')/<property name> Properties which can be retrieved: S. No Property Type 1 AllowContentTypes Boolean 2 BaseTemplate Int32 3 BaseType Int32 4 BrowserFileHandling Int32 5 ContentTypes SP.ContentTypeCollection 6 ContentTypesEnabled Boolean 7 Created DateTime 8 DataSource SP.ListDataSource 9 DefaultContentApprovalWorkflowId GUID 10 DefaultDisplayFormUrl String 11 DefaultEditFormUrl String 12 DefaultNewFormUrl String 13 DefaultView SP.View 14 DefaultViewUrl

Copy List Item Programmatically

public void CopyItem(SPListItem srcItem, SPListItem destItem) { foreach (SPField field in srcItem.Fields) { if (!field.ReadOnlyField && field.InternalName != "Attachments") { destItem[field.InternalName] = srcItem[field.InternalName]; } } foreach (string attachmentName in srcItem.Attachments) { SPFile file = srcItem.ParentList.ParentWeb.GetFile(srcItem.Attachments.UrlPrefix + attachmentName); byte[] data = file.OpenBinary(); destItem.Attachments.Add(attachmentName, data); } destItem.Update(); }

December 2014 Cumulative Updates For SharePoint 2010

The Cumulative Update (December 2014) for SharePoint 2010 has been released : SharePoint Foundation: http://support2.microsoft.com/kb/2899585 SharePoint Server 2010: http://support2.microsoft.com/kb/2899583 Project Server 2010: http://support2.microsoft.com/kb/2899587 Office 2010 : http://support2.microsoft.com/kb/3020815

Export ContentDataBase Name in csv file

<# Created by : Gaurav Goyal    Purpose : To Export Content Database Name in csv file.    Comments : Run With Admin Privileges \ Read operation. #> $csv="./CSV.csv" $i=1; SC $csv "ID,DBName,WebApplicationName,CurrentSiteCount" write-host "`nGetting WebApplication Names`n"; $WebApps = Get-SPWebApplication  foreach($WebAppUrl in $WebApps) { write-host "$i) Getting ContentDataBase name of WebApp" $WebAppUrl.Url "`n" ;$i++; $toCSV=Get-SPContentDatabase -site $WebAppUrl.Url; AC $csv "$($toCSV.Id),$($toCSV.Name),$($toCSV.WebApplication),$($toCSV.CurrentSiteCount)" } write-host "Exporting List of All DB.....`n" Get-SPDatabase | epcsv ".\AllDataBaseList.csv"

Configure ADFS, Claim-Based Authentication and IFD for MS CRM 2013

Limitation of Active Directory Federation Services (ADFS) 1.         ADFS requires default website & default port like port 80 & 443. On the server where you are going to install & configure ADFS, port no 80 & 443 should be available. 2.         When Claim is enabled HTTPS must be used both for internal & external. You need wild card certificate for Claim-Based Authentication & IFD DNS Configuration You need to create at least 5 host name in DC: Forward Lookup Zone (For DNS Resolution) 1.         ADFS 2.0 URL (External Domain :  adfs2. mydomain.com  : https://adfs2.contoso.com/FederationMetadata/2007-06/FederationMetadata.xml) 2.         CRM Server IFD URL (CRM IFD Federation endpoint, e.g.  crmauth.mydomain.com ) 3.         CRM Discovery Service endpoint ( crmdiscovery.mydomain.com ) 4.         CRM Org URL ( myOrg1.mydomain.com ) 5.         Internal URL to access the CRM (CRM Claims Federation endpoint,  internalCRM.mydomain.com ) Install ADFS on CRM server or

New Site Collection Through PowerShell

#Creates a SPSite in a new content database Add-PSSnapin Microsoft.SharePoint.Powershell - ErrorAction SilentlyContinue; $siteName = "IT"; $webAppUrl = "http://intranet2013.mydomain.com"; $template = "STS#0"; $ownerAlias = "mydomain\ggoyal"; $secondaryOwnerAlias = "mydomain\ggoyal"; $siteUrl = "$webAppUrl/sites/$siteName"; $databaseName = "SharePoint_Intranet_$siteName"; $databaseServer = "Test-Server"; New-SPContentDatabase -Name $databaseName -DatabaseServer $databaseServer -WebApplication $webAppUrl; New-SPSite -Url $siteUrl -OwnerAlias $ownerAlias -SecondaryOwnerAlias $secondaryOwnerAlias -ContentDatabase $databaseName -Template $template -Name $siteName; # New SPSite does not create the default groups $web = Get-SPWeb $siteUrl; $web.CreateDefaultAssociatedGroups("i:0#.w|$ownerAlias", "i:0#.w|$secondaryOwnerAlias", $siteName); $web.update();