Podcast #128: We chat with Kent C Dodds about why he loves React and discuss what life was like in the dark days before Git. Listen now.
15

How to create a Document Set using SharePoint REST Interface The following example demonstrates how to create a Document Set in SharePoint 2013: function getListUrl(webUrl,listName,success, error) { var headers = {}; $.ajax({ url: webUrl + "/_api/lists/getbytitle('" + listName + "')/rootFolder?$select=ServerRelativeUrl", ...


11

If the desired view is consistent across the Document Sets, you can configure it once when configuring your Document Set content type and all new instances of this Document Set will reflect this. The settings you're looking for are referred to as the "Welcome Page" settings. See: Create and configure a new Document Set content type Under the heading "...


10

The SharePoint "Append Changes to Existing Text" column is a HACK implemented by the SharePoint team, in reality it's just an ordinary text field, but where the rendering is grapping the text from previous versions and using these to create what appears to be a functioning append text field. So the field is very dependend on the prior versions to exist (you ...


8

Most probably the specified error occurs since you are trying to get site-level Content Type while web is not a root web. Quick fix Replace the line: var docsetContentType = web.get_contentTypes().getById(docSetContentTypeID); with: var docsetContentType = ctx.get_site().get_rootWeb().get_contentTypes().getById(docSetContentTypeID); How to create ...


7

Please verify below things Go to site setting and features and make sure that the DocumentSet Feature is activated. Go to library setting and navigate to Advance setting and make sure that Allow Managed Content Type is set to true. Go to list settings and then assign Document Set content type to the library. As per your question it seems that you missed ...


6

In a way yes - try using the "Link to a document" content type instead of the document. or use the "Send To" option which would create a syncronized copy of the document (multiple locations possible) which can be easily maintained. In the case of Send To, yes, i believe -which should also answer your 3rd question (but if not) Hope it helps, C:\Marius


6

this worked for me. var ctx = SP.ClientContext.get_current(); var list = ctx.get_web().get_lists().getByTitle('Calendar'); var item = list.getItemById(121); item.resetRoleInheritance(); ctx.executeQueryAsync(function(){alert('success')},function(s,a){alert(a.get_message())}); if you are opening the OOTB EditForm from a link on your custom CEWP, execute the ...


6

You can check if your item content type inherits from DocumentSet base content type that is 0x0120D520. Using C#: listItem.ContentTypeId.IsChildOf(new SPContentTypeId("0x0120D520")) or listItem.ContentTypeId.ToString().StartsWith("0x0120D520")


5

First of all there is no document set library in SharePoint. There is only a content type that is called "Document Set" and this can exists on certain document libraries. You need in to use in your declaration the RegistrationType="ContentType" and for the RegistrationId="0x0120D520". Last one is the id of the content Type "Document Set". The required ...


5

Link to document content type is what you want as Marius mentioned. You can extend the content type to include any metadata you need allowing you to have different sets of metadata for the same file in different locations.


5

In the settings for a Document Set you can choose what View to use. When you click on a Document Set content type in library settings, one of the options is "Document Set settings". The last option in this dialogue allows you to select a defined view on the library that will be used to show the contents of that Document Set.


5

Set the DocumentSet.Folder.Item.ProgId to "SharePoint.DocumentSet". Right now it will be empty. See this for more information: http://www.sharepointnadeem.com/2011/08/sharepoint-2010-document-sets.html UPDATE Here is the sample PowerShell code. I haven't however tested it: $web = Get-SPWeb http://yoursite $list = $web.Lists["YourList"] $docSetName = "...


5

Document management by metadata is the correct approach. I’ve worked both with Document Sets and without them. Document Sets have the benefit of storing documents that share one or more properties. They come in handy if you use a document library for storing multiple documents in an isolated environment. An example can be the use of marketing surveys records ...


5

You have to expand folder with $expand=Folder property and use ItemCount property of the folder like this: /_api/web/lists/getbytitle('your_list')/?items$select=ID,Title,Folder/ItemCount&$expand=Folder/ItemCount&$filter=FSObjType eq 1


5

I don't know how many projects will be created throughout the span of your application or the background of your requirement , but i would suggest an alternative plan of considering to make your Project as a sub site instead of Document Set, since you need a separate task list,risk list, site feed etc for each project. So alternative way would be : Create ...


5

Finally with the help of code given in this post I was able to achieve the task. The code which I used is: NetworkCredential creds = new NetworkCredential(userName, password, siteURL); ClientContext clientContext = new ClientContext(siteURL); clientContext.Credentials = creds; List list = clientContext.Web.Lists.GetByTitle("TestLibrary1"); ...


4

It looks like folders aren't offically supported by Microsoft within Document Sets. See the Document Sets planning (SharePoint Server 2010) From the document: Folders are not allowed in document sets, and metadata navigation cannot be used in a Document Set There may be an unsupported way, but it will likely cause problems.


4

This has to do with how SharePoint "builds" content types I think. It needs to know where to find the parent, or more specifically, the parent's original schema (XML). If Inherits is set to true, it will include the parent's fields directly in its own schema, when this is not the case. it will always require a schema to be based on, which can be found in the ...


4

The list of helper methods for working with Document Sets: How do I check if a document set already exists? private static bool IsDocumentSetExist(SPList list,string docSetName) { var folderUrl = SPUrlUtility.CombineUrl(list.RootFolder.ServerRelativeUrl, docSetName); var folder = list.ParentWeb.GetFolder(folderUrl); return ...


4

In 2013 (but not in 2010 as you say) you can nest Document Sets. So then the only differences is the fancy WelcomePage and the possibility to add Shared Metadata between the document set it self and all contained files. And as you write, the fact that you do not have version history on folders, but on Document Sets. More about document sets from TechNet ...


4

You can move document sets either by using "Manage Content and Structure". Make sure use "Move To" actions in that, don't use copy, it will move document sets to another library without changing its document id. Another way is to do programmatically, in that case consider document sets as folder to move into another library where Migrate1 is document set ...


4

Create a new custom Content Type with base as Document Set. Add the two Site columns Reference Number and Customer Name to that particular content type. In custom Document Set content Type , go to Document Set Settings and make the 2 columns as shared. Now all the documents inside the document set will share the value for that 2 columns. also go to the ...


4

Go back to Library Settings > Advanced and check "Allow management of Contemt types" and save. Back in Library Settings you can scroll down to Content Types and add a default Document Set Content Type (or a custom one). When you see the Document Set among Content Types in Library Settings - you will also see Document Set in the New button.


3

You need to keep in mind that Document Sets are just folders on steroids. I tried to make HashTable approach to work without any luck. But this code will do the job: using (var site = new SPSite("http://myultracooltestsite")) { using (var web = site.OpenWeb()) { SPList list = web.Lists["MyCoolDocLib"]; DocumentSet ds = DocumentSet....


3

Create a workflow that fires on the addition of a document set, and creates the default documents in the current document set.


3

I'm not sure if I'm answering the right question, but I used this method to check if Doc Set (folder) exists, and if not, create: [Microsoft.SharePoint.SPFolder]$targetFolder = $rootWeb.GetFolder($targetDocLib.RootFolder.ServerRelativeUrl + "/$docSetName") if (-not $targetFolder.Exists) { # create } This approach worked for me.


3

Here you have something quite similar (just few changes needed): How to Display a SharePoint Dialog from Ribbon Button and Get Selected Item Context Basically you need two things: Custom ribbon/button similar to one described in article. With usage of dialog framework you open custom page and pass selected items values as querystring (all described in ...


3

I just went through something similar but we were not using document sets. I made all the columns for the content type I was using optional but kept getting the same error message when I tried to edit a row in datasheet view. To fix the issue I set "Allow management of content types?" to "No" and saw that a number of columns on the document library were ...


3

It is possible, through code. However, putting folders inside Document Sets is unsupported by Microsoft, and can lead to strange results. Believe me, I have tried. One of the things I have noticed is that a folder inside a Document Set will block the metadata inheritance from the shared fields of the Document Set. Documents inside the sub-folder will ...


3

Edit the library web part and change Toolbar Type to 'No Toolbar' This may not work in all cases, particularly if there are aspects of the toolbar you would like to keep.


Only top voted, non community-wiki answers of a minimum length are eligible