Showing posts with label Office 365 Grid. Show all posts
Showing posts with label Office 365 Grid. Show all posts

Tuesday, June 16, 2015

Group membership in SharePoint Online

Yesterday, one of my customers asked me to provide her a list of groups and its members for her main SharePoint site. An internal technician used to provide her that information every month by manually going to the site and copying/pasting screenshots of each group.
I decided to use PowerShell for that. I have never used PS cmdlets for SharePoint Online before, so this is my first try. I hope it is useful for you.


$cred = Get-Credential
$adminSite = "https://contoso-admin.sharepoint.com/"
$rootSite =  "https://contoso.sharepoint.com/"
Connect-SPOService -Url $adminSite -Credential $cred

$groups = Get-SPOSiteGroup -Site $rootSite


$objectCollection = $groups |

    ForEach-Object {
        $groupName = $_.LoginName
        $_.Users | ForEach-Object {
            $user = Get-SPOUser -Site $rootSite -LoginName $_
            $properties = @{
                GroupName = $groupName;
                UserName = $user.DisplayName;
                LoginName = $_
            }
            New-Object -TypeName PSObject -Property $properties
        }
    }

Disconnect-SPOService


$objectCollection



Let me know in the comments if there is something that can be done to make it run faster (it takes about 80 second to complete for this specific tenant).

Wednesday, January 16, 2013

Enable Mailbox’s UM features with Lync On-Premises

I have a call today from a customer that has Lync on-premises already deployed. He moved from Exchange on-premises to Exchange Online a while ago and had the UM integration between Lync and Exchange Online already configured. He finally moved his users from a E1 plan to E3 plan and wanted to know how to enable VM and other UM features. I wrote the following instructions for him that I want to share with all of you:

I.                   Enable UM in the mailbox:

1.       On Exchange Online: Manage My Organization/User & Groups/Mailboxes, open the user's mailbox
2.       Expand Phone & Voice Features
3.       Click on Unified Messaging and then click on Enable
4.       On Enable UM Mailbox (Step 1 of 2), click Browse and select a UM Dial Plan Policy
5.       On Enable UM Mailbox (Step 2 of 2), leave the default values (or change the extension if necessary)
6.       Click Ok to save

II.                 Assign a Hosted UM Policy to the users:

1.       Connect to the Lync pool using Power Shell:
$cred = get-credential
$session = New-PSSession -ConnectionUri https://lyncpool.domain.com/ocspowershell -Credential $cred
Import-PSSession $session
2.       Run the following PowerShell commands:
Grant-csHostedVoiceMailPolicy -identity <user> -PolicyName "Exchange Online"
Set-csUser -identity <user> - HostedVoicemail $true

Very straight forward steps. I hope this post is helpful to you.

Wednesday, January 9, 2013

A Managed Document Center – Part IV

This is the fourth and last of a series of post about creating a Managed Document Center in SharePoint Online. The purpose is to create a document center that it is able to route and rename uploaded documents to their respective folder based on metadata associated with it. To see a full description of the resultant product, click here.

As mentioned on the previous posts, I have divided the job in the following steps:
  1. Create the necessary Term Sets in the Term Store. 
  2. Create a new site using the Document Center template. 
  3. Enable and set up the Content Organizer. 
  4. Create a site Content Type using Document as Parent Content Type. 
  5. Edit the default Documents library with the columns and views needed. 
  6. Create a workflow to rename the documents. 
  7. Save the Documents library as template and create a new document library for each facility. 
  8. Create Content Organizing rules to route the documents to his final location. 
  9. Redirect the default “Upload a Document” button to the Drop Off Library. 
To see step 1 click here. To see steps 2 to 5, click here. To see step 6, click here.

7. Save the Documents library as template and create a new document library for each facility.

Go to the Documents library and click on the Library Settings icon in the ribbon. Then under Permissions and Management click on Save document library as template. Type a name for the file and a template name, in this case I will named it Managed Document Center. A description is optional, but it is a good idea to provide one, so it will show up in the right part when you create a new library. Leave the Include content check box unchecked.

Once you click OK, SharePoint will show you the following screen:
Click OK to continue. Then let’s start creating the document libraries for our different facilities.
On the navigation pane at the left of the screen, click on All Site Content. Then, click on the Create button at the top.

Within the new window, filter by library type in the left side, then choose the newly created template Managed Document Center. Note that the description will be displayed in the right side. Type the name of our first facility and click on Create.

Repeat this last process to create a document library for all the facilities. At this point you can hide the Documents library from the navigation pane, by going to its settings page, clicking in Title, description and navigation and selecting No on the Display this document library at the Quick Launch? question.

8. Create Content Organizing rules to route the documents to his final location.

We have activated the Content Organizer in step 3. Now, we are going to define rules to route documents to their respective libraries based on the entered metadata.

Go to the site settings and under Site Administration, click on Content Organizer Rules. Then, click on Add new item.

In the Content Organizer Rules: New Rule window, type a name for the first rule, in our case, I will use the name of the first facility. Leave the rule status and priority with their default values. Under Content Type Group select Custom Content Types and select Managed Document for the content type.  In the Conditions section, select the property Facility, operator is equal to and choose the name of the first facility for the value. Finally, select the facility’s document library as the Target Location.

Repeat this process to create rules for all the facilities.

You can test the rules by going to the Drop Off Library and uploading a document there. After the document has been uploaded, you’ll be asked to fill out the metadata we configured and the document will be routed based on the facility field:

9. Redirect the default “Upload a Document” button to the Drop Off Library.

When we created the site using the Document Center template, the initial page includes a welcome message with a button to upload a document.

This button saves the document in the Documents library, which is currently hidden in our managed document center.  In this step, we are going to change the target of that button to save the documents in the Drop Off Library, so the rules of the content organizer can be applied.
To do this, click on the Edit Page icon that is in the Page tab in the ribbon.

Note that the button is part of a Content Web Part. Click on it and click on the HTML button in the ribbon and then select Edit HTML Source.

On the HTML Source windows replace the following code:
<div class="ms-uploadbtnlink"><button onclick="javascript:OpenNewFormUrl(&#39;Documents/Forms/upload.aspx&#39;);return false;" type="submit"><nobr><img alt="Upload a Document" src="/_layouts/Images/uploaddoc.png"/>&#160;<span>Upload a Document</span></nobr></button> </div>

With this one:
<div class="ms-uploadbtnlink"><button onclick="javascript:OpenNewFormUrl(&#39;DropOffLibrary/Forms/upload.aspx&#39;);return false;" type="submit"><nobr><img alt="Upload a Document" src="/_layouts/Images/uploaddoc.png"/>&#160;<span>Upload a Document</span></nobr></button> </div>

Note that I just changed the word Documents by DropOffLibrary.
Now, users can upload documents directly from the hope page of our Managed Document Center.

Summarizing

In this series of post we have configured an automated solution that allows users to upload document from a centralized location. The document will be routed and renamed based on the metadata attached to them.
I recommend to use the Metadata navigation settings on the document libraries to have an easy way for users to filter and located the content documents. I didn’t included that feature on the template, because these option are not saved as part of the template.

Hope your enjoyed this series of posts! 

Sunday, December 30, 2012

A Managed Document Center – Part III


This is the third of a series of posts about creating a Managed Document Center in SharePoint Online. The purpose is to create a document center that is able to route and rename uploaded documents to their respective folders based on metadata associated with them. To see a full description of the resultant product, click here.

As mentioned on the previous posts, I have divided the job in the following steps:
  1. Create the necessary Term Sets in the Term Store. 
  2. Create a new site using the Document Center template. 
  3. Enable and set up the Content Organizer. 
  4. Create a site Content Type using Document as Parent Content Type. 
  5. Edit the default Documents library with the columns and views needed. 
  6. Create a workflow to rename the documents. 
  7. Save the Documents library as template and create a new document library for each facility. 
  8. Create Content Organizing rules to route the documents to his final location. 
  9. Redirect the default “Upload a Document” button to the Drop Off Library.
To see step 1 click here. To see steps 2 to 5, click here. In this post I will cover step 6.

5. Create a workflow to rename the documents

The managed metadata columns in SharePoint have some limitation as listed by Michael Pisarek in this post. One of these limitations is that we cannot use them in formulas and they also need to be trimmed in order to get the correct string to be used as the name of the document.

My first initial though was to develop custom code in order to get this operation to work, but custom code is always our “last resource”, because our idea on each solution we provide is to be easily replicable. So I came out with a solution using a workflow.

We are going to need SharePoint Designer to create this workflow. Click on Site Settings > Edit in SharePoint Designer in order to open SharePoint Designer. If you don’t have it already installed, you’ll be prompted to download it and install it.

Once in the SharePoint Designer main page, click on List and Libraries on Site Objects panel the left, and the open Documents on the right panel.

On the Documents page, under the Workflows section, click on New...

Name the workflow as Rename Documents. A new workflow in edit mode will be showed with an empty Step 1. Click on it and click on Action in the ribbon, select Update List Item. Click on this list field and in the Update List Item dialog, leave List as Current Item. Click in the Add button and select the values as the following image:

Click OK twice to close the open dialogs and click the Save button. Next, on the navigation bar at the top of the workflow editor, click on Rename Documents to see the properties of the workflow, then, under Start Options check the options to start automatically the workflow when an item is created and when an item is changed.

 Click on the Save and then the Publish button in the ribbon.

Now, let’s go back to our Documents library in SharePoint and let’s upload a document. If you take a look to the Rename Documents column in the library right after uploading the document, you’ll see that it says that an error has occurred. If you click on the error, you will find that the information provided by SharePoint is not clear. So, as a matter of test, let’s go back to SharePoint Designer and edit the workflow to update the Title instead of the Path and Name to see what the outcome would be. Save and publish the workflow and upload a new document.

The workflow now has completed successfully  but if we check its properties, we will see that the title has the product name, the pipe character and the GUID of the managed metadata tag. The pipe character is not allowed as a file name, that’s why the workflow errors out. We also don’t want to include that GUID as part of the document name.

We need to trim the product and the document type columns, but unfortunately SharePoint Designed doesn't include support for common string functions. We could do it directly in SharePoint using a calculated column, but calculated columns don’t work with managed metadata. The approach we will use is to create a set of temporary columns where to put that data and work around these limitations.

Back in SharePoint, go to the Library Settings of the Documents library. Under Columns, create two single text columns called tempProduct_raw and tempDocumentType_raw with any string as default value. Don’t add them to the content types and or the default view.


These two columns will be used by the workflow to store the raw string composed by the product name or document type plus the pipe character plus the GUID.

Now, create a new calculated column called tempProduct_name with the following text as formula:
=LEFT(tempProduct_raw,FIND("|",tempProduct_raw)-1)
Don’t add it to the content types or default view.

Create another calculated column called tempDocumentType_name similar to the previous one with the following formula:
=LEFT(tempDocumentType_raw,FIND("|",tempDocumentType_raw)-1)

These two new calculated columns will remove the pipe character and the GUID from the product and document type respectively.

Let's go back to SharePoint Designer and edit our workflow. The first step will update the tempProduct_raw and tempDocumentType_raw columns with the values of the product and document type columns respectively. You may need to refresh SharePoint Designer in order to see the recently created columns.

Now, add a new step after Step 1 and select the Pause for Duration action in the ribbon. Edit it to pause for 0.5 minutes. This step is necessary to give SharePoint enough time to calculate the value of the calculated columns.

Next add a third step after Step 2 and select Update List Item from the action in the ribbon. Edit the Path and Name field with the following string:

The final workflow will look similar to this:

Save it and publish it. Back in SharePoint, upload a new document to test it. Right after uploading the document, the Rename Documents column will indicate that the workflow is still in progress, wait a few seconds and refresh the screen to see that the name of the document has actually changed.


I hope you enjoyed this post!

Wednesday, December 19, 2012

A Managed Document Center – Part II


In my previous post I explained the approach I will take to respond to a very interesting request about configured an automatically managed document center. I divided the job in the following steps:

  1. Create the necessary Term Sets in the Term Store.
  2. Create a new site using the Document Center template.
  3. Enable and set up the Content Organizer.
  4. Create a site Content Type using Document as Parent Content Type.
  5. Edit the default Documents library with the columns and views needed.
  6. Create a workflow to rename the documents.
  7. Save the Documents library as template and create a new document library for each facility.
  8. Create Content Organizing rules to route the documents to his final location.
  9. Redirect the default “Upload a Document” button to the Drop Off Library.

You can check more about the request and how the first step in this link.

In this post I will cover steps 2 to 5. Let's get started.

2. Create a new site using the Document Center template

This step is very straightforward and I am sure more than one has already created a site. On the site where you want to create the subsite, click on All Site Content. On the All Site Content page, click on Create. On the left side, under Filter By, select Site and the click on the Document Center template. Type a name for the document center, a URL, and then click on Create.

3. Enable and set up the Content Organizer

The Content Organizer is a feature of the SharePoint sites that creates rules based on metadata to move content to the correct library or folder.

To enable the Content Organizer, click on the Site Actions menu of the newly created document center, and click on Site Settings. Under Site Actions, click on Manage site features.
 The Content Organizer is the first option in the Site Features page. Click on its Activate button. Wait until the Active labels shows up next to it.

 4. Create a site Content Type using Document as Parent Content Type

Since each document that we are going to upload to this document center needs to be associated with the metadata we created in the previous post, we are going to create a site content type that inherits from the document type.

Click on the Site Actions menu of the document site and click on Site Settings. Under Galleries, click on Site content types.

On the Site Content Types, click on the Create button. Type “Managed Document” as the name of the content type. Select Document Content Type on the Select parent content type from drop down list, and Document as Parent Content Type. Click OK when done.

After clicking ok, the Set Content Type Information page appears. Is in this page when we can set up the columns with the metadata that our content type will have. To do this, at the bottom of the screen, click on Add from new site column. Type “Facility” on the column name and select Managed Metadata for the column type. On the Term Set Settings section, expand the taxonomy root and expand also the Document Center group; then click on the Facility term set. Also, on the Allow Fill-in section select Yes.  Leave the rest of the parameters with their default values.

Repeat he same process to create a managed metadata column for Document Type and Product. At the end you should have a content type similar to this picture:

As a separate note, while in the Site Content Type Information page, if you click on Information management policy settings you will see a series of option to define auditing, compliance and other settings. I will write later in a future post about all these policy settings.

5. Edit the default Documents library with the columns and views needed

When we created the site using the Document Center template, SharePoint will create a document library named “Documents”. Click on its name located in the navigation bar at the left of the screen. Once in the Documents library, look for the Library Settings icon in the ribbon located in the Library tab.

First, make sure the management of content types is allowed in the site. Click in Advanced Settings and verify that Allow management of content types? is set to Yes.

Next, under Content Types click Add from existing content types. Select “Managed Document” and add it to the list on the right. Click OK when done. Remove the current document types clicking on their names and then clicking on Delete this content type link. At the end, the Managed Document should be the only document type associated with this library.

In order to view the documents attributes, edit the All Documents view and add the products and document type columns. You could also set up grouping.

Finally, in order to provide a easy way to filtering, let’s enable the navigation hierarchies. Within the Document Library Settings page, click on Metadata navigation settings. On the Configure Navigation Hierarchies section, remove Folders and add Document Type and Products. Click OK when done.

Our model library is now ready, let’s test it uploading a document from the Upload a Document button in the home page of the document center. Immediately the document has been uploaded, it ask to complete the metadata requested:

The next step will be to create a workflow to rename automatically the documents. I will cover it on my next post. Keep posted!

A Managed Document Center – Part I


I was challenged last week by a very interesting request. A potential Office 365 user wanted an application where he can upload scanned documents in PDF format to a Web site. The documents will be automatically renamed based on three attributes: Facility, Document Type, and Product. The number of facilities is static, but he needs to be able to add more Document Types and Products. Each facility has one or more users that need read-only access to the documents on their own facility only; and they need to filter documents by document type or product easily. The application needs to be secure and available 99% of the time.

After a brief discussion with my team, we decided that SharePoint in Office 365 was the best an easy solution compared with developing and coding a new application. This is how we would use SharePoint Online to meet the customer requirements:

  • Users need to access the document on their own facility only: A document library with unique permissions for each facility.
  • Upload documents to a central place: A drop-off library with content rules to move the documents to other libraries.
  • Be able to add Document Types and Products: Use managed metadata as document attributes.
  • Rename documents based on their attributes: Workflow rules to rename documents.
  • Be able to filter documents easily: Metadata Navigation Hierarchies.
  • Security and availability: SharePoint Online meets this requirements.

In order to accomplish this mission, I will divide the job in the following steps:

  1. Create the necessary Term Sets in the Term Store.
  2. Create a new site using the Document Center template.
  3. Enable and set up the Content Organizer.
  4. Create a site Content Type using Document as Parent Content Type.
  5. Edit the default Documents library with the columns and views needed.
  6. Create a workflow to rename the documents.
  7. Save the Documents library as template and create a new document library for each facility.
  8. Create Content Organizing rules to route the documents to his final location.
  9. Redirect the default “Upload a Document” button to the Drop Off Library.

In this series of posts, I will go over all those steps, so you can create a totally managed document center from the ground up.

Let’s start with the first step!

Create the necessary Term Sets in the Term Store

As the SharePoint Administration Center mentions, the Term Store “contains a set of related keywords (called managed terms) organized into a hierarchy of information, such as a well-defined product category or materials list, that you can then use to control the entry of list values. A Term Store helps improve the consistency, reliability, and discoverability of information within a site collection.” The reason we are going to use managed metadata instead of site columns is because managed metadata allows user to add more terms in the fly. With site columns, users need to go to the site settings or library settings every time they need to add new items. Also managed metadata allows easy filtering using Navigation Hierarchies.

In order to access the Term Store, you need to login into the Office 365 Portal with admin credentials. Then, in the Admin tab, click on Manage under Microsoft Office 365 > SharePoint; this will open the SharePoint Online Administration Center. Click on Manage Term Store.

In the Term Store, you will see a hierarchy that has the word Taxonomy followed by a series of characters as the root. If this is the first time you use the Term Store, you need to add Term Store Administrators on the right side. Make sure you add the account you are currently using. Then, click on Save. Only the Term Store Administrators can add new groups and new term sets.

Next, right click on the root of the hierarchy (Taxonomy_xxxxxxxxxx) and click on New Group. Name the new group as “Document Center”. Now, right click on the newly created group and click on New Term Set.


Name the new term set as “Document Type”. In the right panel, type a description for your term set. Under the Stakeholders field, add all the accounts that will have permissions to add new items to this term set. Make sure also that Submission Policy is Open.


Save the Term Set and then you can enter some initial terms. To do this, right click on the newly created term set and click on Create Term.

Press enter after creating a new term and a SharePoint will add a blank line, so you can create new terms easily.

Repeat this whole process to create two new term sets called “Facility” and “Product”.
At the end your structure should look similar to this:

 You could also create a hierarchy inside the term sets, as the following example:

This way, you can organize your products and document types by category, or your facilities by region. For the simplicity of this demo, I will use only first level terms in each term set.

In my next posts, I will cover how to use this metadata on content types to achieve the goal of a totally managed document center. Keep posted!





Thursday, November 29, 2012

Adding Signatures and Disclaimers to Email in Exchange Online

Hello all. It took me a couple of weeks to post again because my little daughter was just born and I have been enjoying my time with her.

Today, I will show you how to add signatures and a disclaimer to email messages in Exchange Online. Users can create their own signature and/or disclaimer using Outlook, but signatures created in this way are not centralized and may be not  applied or need to be recreated in OWA or in the mobile devices. Exchange Online has a feature out-of-the-box to manage signatures and disclaimers in a centralized way.

There is a handful of good applications out there that also do this (Exclaimer Signature Manager is one of my favorites); but most of the time, especially in small and medium businesses, managers just want to add a disclaimer or a common signature to all their users without buying third party applications. To accomplish this request, we will use Exchange transport rules.

Transport rules are organization wide and they are applied after messages are created by the end user and before they are delivered to the next email server.

Let’s get started!

The first step is to design and create the HTML code for the signature. You can use any HTML editor for this. If your signature includes CSS, make sure it is included inline with the HTML tags and not as a reference on the top of the page. In this example, I will create the HTML code for the following signature and disclaimer:

In order to replace the user’s name and other information, we can use “predicatives”, which are tags that are replaced by the values of the different Exchange user attributes values. In Exchange Online, the following attributes are allowed:
DisplayName
FirstName
Initials
LastName
Office
PhoneNumber
OtherPhoneNumber
Email
Street
POBox
City
State
ZipCode
Country
UserLogonName
HomePhoneNumber
OtherHomePhoneNumber
PagerNumber
MobileNumber
FaxNumber
OtherFaxNumber
Notes
Title
Department
Company
Manager
CustomAttribute1 toCutomAttribute15

In order to replace them by the subjacent value, we enclose them with %%. Thus, to get a signature for the previous example, the following HTML code is generated:

<table border="0" cellspacing="0" cellpadding="2" width="300px">
    <tr>
      <td colspan="2" style="font-family:'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif;font-size:16pt;color:#F55200;" >
            Carpio Consulting Co.
      </td>
    </tr>
    <tr>
      <td style="width:150px;font-family:'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif;font-size:10pt;color:gray;vertical-align:top;">
            %%DisplayName%%<br/>
                  %%Title%%<br/>
                  <br/>
                  %%Email%%<br/>
                  www.carpio.us
            </td>
      <td style="width:150px;font-family:'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif;font-size:10pt;color:gray;vertical-align:top;">
            %%Street%%<br/>
                  %%City%%, %%State%% %%ZipCode%%<br/>
                  <br/>
                  ph.%%PhoneNumber%%<br/>
                  fax %%FaxNumber%%
            </td>
    </tr>
</table>
<p style="font-size:8pt; line-height:10pt; font-family:Arial, Helvetica, sans-serif,'times roman',serif;">This message contains confidential information and is intended only for the individual(s) addressed in the message. If you are not the named addressee, you should not disseminate, distribute, or copy this e-mail. If you are not the intended recipient, you are notified that disclosing, distributing, or copying this e-mail is strictly prohibited.  </p>

Now that we have the HTML code, the next step is to create the actual transport rule. You can do this by going to the Exchange online Control Panel, then clicking on Mail Control on the left. Click on Rules and then click on New...


On the following screen, under the If field, click on the drop down list and select “The sender is…” Select the users you want to apply the rule on.

In the “Do the following” drop down list, select “Add a disclaimer to the message…” Click on “Enter text” and paste the HTML code here.

Under the fallback action, click on “Select one…” and select one action. For this example, I recommend to use “Wrap”. In case the disclaimer cannot be added to the message, the message is wrapped into a new message and the disclaimer is added to this new message. Other options are Ignore (no action) or Reject (message is not delivered and the sender receives a NDR).

The resultant rule will look like the following image:


Finally, you need to enable the rule. To do this, just check the box that is next to the rule name in the rules page:


Now, all messages sent by those users, will have the signature and attachment appended to them, no matter if they are sent by Outlook, OWA or a mobile device.

Tip. You can create groups and assign users to them. Then you can create different rules and apply them to the groups (use the “If the sender is a member of…” option). Thus, you can create different disclaimer and signatures for different departments for instance. Be aware that if a user is member of more than one of those groups, more than one disclaimer will be applied to his messages in the order the rules are shown.

Tip. You can create disclaimer rules for campaigns or holidays and disable them when the camping or holiday is over.

I hope you enjoyed this post!




Tuesday, November 13, 2012

A Bilingual Document Library in SharePoint (Part 2)

I showed in my yesterday’s post how to change the interface of SharePoint, so users that speak a language other than English would be able to see in their own language.

Today, I will focus on how to create a bilingual library, so every time a document needs to be created in the library, a set of two documents are actually created. These are the steps we will follow up:
  1. Verify Document Sets is active at the Site Collection level.
  2. Create a Document Type for each version of the document.
  3. Create a template for each version of the documents.
  4. Create the Document Set.
  5. Create the Document Library.

Verify Document Sets is active at the Site Collection level

Let’s start the activating the Document Sets feature as the Site Collection Level. This feature is enabled by default in SharePoint Online, so we just need to verify it in the Site Collection Settings. Under Site Collection Administration, click on Site collection features:

Then verify that Document Sets is marked as Active. Click on Active if not.

Create a Document Type for each version of the document

Go to the Site Collection Settings and under Galleries, click on Site Content types:

Next, Click on Create at the top of the list and create the first Content Type with the following information:
Name: Document (English Version)
Select parent content type from: Document Content Types
Parent Content Type: Document

Leave the new Content Type under the Custom Content Types group or create your own group.

Next, we need to add the column Language to the newly created Content Type. To do this, in the Document (English Version) Content Type Edit page, under Columns, click on Add from existing site columns:


On the Select columns from drop-down-list, select Base Columns; then add the column Language to the Columns to add list. Leave the Update all content types inheriting from this type? As Yes.

Thus, we have defined our first Content Type for the English version of each document. Repeat the same procedures, for the Spanish version, changing only the name of the Content Type. When finishing this step, you should have two Document Types:

Create a template for each version of the documents

For this step, we will use Microsoft Word. I’m using version 2013, but I assume that you are able to do the same in Microsoft Word 2010 or 2007.
Create a template for the each version of the document, use the margins, header, footer and other elements as necessary. Make sure you set up the proofing language of each document to the correct one. In this example, the documents look like this:

Save both documents with a name that mention the version. For this example, I saved them as Document (English Version).docx and Document (Spanish Version).docx. This name will be added to the name of the actual document automatically in SharePoint.
Finally, go to the properties of each document (File / Properties / Advanced Properties in Microsoft Word 2013)

In the document’s properties window, go to the Custom tab and Add the Language property with the word “English” or “Spanish” as Value depending which document are you editing. Save both documents locally in your hard drive.

Create the Document Set

Back in SharePoint, create a new Content Type with the following information:
Name: Bilingual Documents
Select parent content type from: Document Set Content Types
Parent Content Type: Document Set

After creating it, on the Bilingual Docs Content Type edit page, under Settings, click on Document Set settings

On the next screen, remove Document from the Content types allowed in the Document Set list and add the two Content Types you recently created: Document (English Version) and Document (Spanish Version)

Under Default Content, add two content types and select both, one on each row. Then, click on Choose File and select the document templates according with each content type:

Click OK to save the Document Type.

Create and configure the Document Library

The last step is to create the actual document library that will hold the documents in the two languages. o do this go to the site where you want to create the library on and create a new Document Library. Then from with the Library, click on the Library Tab in the ribbon and click on Library Settings to configure it to accept the created content types.
Inside the Document Library Settings, click on Advanced Settings under General Settings:

Then, Under Content Types, in the question Allow management of content types? click Yes and then OK to save.

The Content Types section will appear right before Columns in the Document Library Settings page. Click on Add from existing content types:


Add the Bilingual Docs Content Type and press OK:

Back on the Document Library Settings page, click on Document under Content Types and remove it.

Now, your Document Library is ready for creating new documents. You will see that if you click the New Document in the ribbon, there is a button that says Bilingual Documents.

If you click on it, the New Document Set: Bilingual Docs will show up. After you enter a Name and a Description (optional), you’ll have a couple of documents in the two languages selected created from the templates we uploaded before.


There is much more that can be done with this approach, like creating templates for Web pages or another Microsoft Office documents. I just wanted to show you that it is possible to have Multilingual libraries using out-of-the-box SharePoint features.

I hope you enjoy this post!