Showing posts with label office 365. Show all posts
Showing posts with label office 365. Show all posts

Wednesday, December 19, 2012

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!

















Monday, November 12, 2012

A Bilingual Document Library in SharePoint (Part 1)

There are scenarios of companies that grow up  expanding to other countries where English is not the primary language, or companies here in the US that have a growing number of employees that speak a language other than English. On these scenarios, the ability of creating bilingual documents is a must have.
In this post I am going to show you a way to accomplish this by using a Document Library in SharePoint. I will divide the job in two phases:
  1.  Make the SharePoint interface bilingual using out-of-the-box SharePoint Multilingual User Interface (MUI).
  2. Create two versions of each document using Document Sets and Content Types.
Let’s star then with the Phase 1.

The first thing you need to do is to enable MUI in SharePoint; this will allow users to change their default language of the main SharePoint interface. To do this, just open the Site Settings of the site that you want to provide multilingual support. Click on the Site Actions link at the top right of any page of the site, and click on Site Settings:

On the Site Settings page, under Site Administration, click on Language Settings:

In the Language Settings page, under Alternate Languages, click those languages that you want to incorporate in your site:

Select No on Overwrite Translations and click in OK.
Now, your users can easily change the language of the SharePoint interface clicking in the menu that is next to their names in the top right corner:


 SharePoint will show the ribbon, the settings pages, help, menus, top link bar and other controls in the selected language. The next two images show the ribbon of Shared Documents  in English and Spanish:


In the second part of this post I will show you how to create two version of each document using Documents Sets and Content Types. 

Stay tuned!

Tuesday, November 6, 2012

Sharing free/busy information between two Office 365 tenants

Recently, I was asked for one my customers, which is an Office 365 tenant, to share its free/busy information of Exchange Online with one of its partners ( another Office 365 tenant).

I looked for information about how to accomplish this, and my findings were out of the budget (some guys suggested to create an hybrid deployment on one of the sites). I even asked the question in the Office 365 community and the first answer was that it wasn't possible. The same MS representative replied days later with the solution: create organization relationships (aka Federated Delegation).

Long story short, in order for two Office 365 tenants to share free/busy information, you need to use Power Shell to connect to Exchange Online and then run the following command:

Get-FederationInformation -DomainName <the other cloud-based organization> | New-OrganizationRelationship -Name <the other tenant domain> -FreeBusyAccessEnabled $true -FreeBusyAccessLevel LimitedDetails

The full sequence of commands is:

Remember to do this command in both tenants if you want to have a both sides relationship.

Next, instruct your users to share their calendars with users in the other tenancy:



Finally, users on the other tenancy will be able to see free/busy information when creating a meeting request: