4

I work for a local council and a particular content management system for Education Psychologists is no longer supported. We're considering using Sharepoint 2013 as an alternative.

It was very easy setting up a Metadata Taxonomy based upon the existing file structure; exported the existing structure into Excel and imported into Term Store. Basically there are only five content types containing virtual folders for all the schools in the area. However, each school has a great number of students whose files were stored in individual folders based upon required Metadata.

Content Organizer in SP 2013 works well for routing to a few folders or even sub-folders but setting up 850+ rules is a daunting prospect.

Each student's folder was named by a matching concatenate of a First Name+Surename+Individual Reference Number as provided by Required Fields when submitting, then routing the submitted document directly to that folder.

Is there any way to route to sub folders based upon Tagged Columns matching virtual folder names without setting up individual Content Organizer Rules?

  • 1
    Is it even necessary to place them in subfolder? If you don't need to use a subfolder as a security boundary for permissions, you could just use managed metadata to sort and filter so that having subfolders becomes irrelevant. – Robert Kaucher Apr 15 '14 at 15:14
1

You could also use PowerShell to read in from the file system and create folders with matching names to put folders into. Check out SPFileUpload Project on Codeplex.

For content manager you need to create the rules for it to work. You can script out the rules via PowerShell - the below snipped was taken from this posted article (which contains more detail on using managed metadata as well).

Configuring Content Organizer Rules with PowerShell

[Microsoft.Office.RecordsManagement.RecordsRepository.EcmDocumentRouterRule]$rule = New-Object Microsoft.Office.RecordsManagement.RecordsRepository.EcmDocumentRouterRule($web) 

    $rule.ConditionsString = "<Conditions><Condition Column='" + $regionField.Id + "|Region|Region' Operator='EqualsOrIsAChildOf' Value='" + $taxonomyFieldValue.ValidatedString +  "'></Condition></Conditions>" 
    $rule.Name = $region + " rule" 
    $rule.ContentTypeString = $web.AvailableContentTypes["My Content Type"] 
    $rule.RouteToExternalLocation = $true 
    $rule.Priority = "5" 
    $rule.TargetPath = $regionValue 
    $rule.Enabled = $true 
    $rule.Update()
| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.