It is important to remember that not all users will be familiar with Flow. As such, creating a Flow Resource Community requires forethought and organization to provide a self-service space where users can gather, find useful resources, and collaborate to create Flows that streamline processes and increase work efficiency. This space may contain internal training resources such as videos, blogs, and links to documentation. It may also contain links to external resources such as Microsoft with its vast library of documents, blogs, videos, and training resources. Creating a Flow Resource Community in SharePoint circumvents exposure of proprietary systems by keeping it within the organization.
As every licensed flow user will be able to create and export flows, creating work and process efficiency is a high priority. With the Flow Resource Community, users can review, choose, and implement existing flows quickly. The Community will allow users to share what they have created and by doing so, will help prevent the “re-inventing the wheel” cycle. More importantly, as a collaborative environment, users will not only share their creations, but they will receive tips on how to improve it from their peers. Automating and streamlining work-life has not been easier.
As with submitting flows to the public Microsoft Flow Template Gallery, users will be able to submit their creations to the SharePoint Flow Custom Gallery and have them either approved or rejected by your organization’s Flow Approval Team. Keeping the approval and rejection process within your organization underscores your organization’s ability to review, accept or reject Flows in order to provide the highest value to its users.
The Flow Resource Community is housed within SharePoint but requires Microsoft Flow to provide the solution. The Community is composed of a SharePoint Communications Site, Flow Template Gallery which uses news pages with an approval workflow for submissions, instructions on how to use the site and the integration of Flow and Yammer for collaborating and connecting with other users. An events calendar is also a critical piece as it provides the ability to create, invite, and schedule training sessions and live meetups.
The visual layout of the Flow Resource Community page is comprised of four hero images. These provide links to internal and external resources. The four heroes are:
Using a Communications Site provides the ability to associate it with a Hub Site, which in turn, provides the capability for the templates to bubble up to a Resource Community hub site. By doing so, these templates can be used and shared with other services within your organization. Not only does this streamline work processes but eliminates redundancy and increases efficiency while cutting costs.
In addition to the four hero images, there is a section called the Flow Catalogue. The news functionality is used to bring in the templates and the text, and images can be used to highlight the new or important templates.
Highlighted templates will appear as images in this Flow Catalogue section. Every Flow will provide the following information when it is opened:
Next to the highlighted Flow Template are images indicating where this Flow resides in the Custom Flow Template Gallery. Images for SharePoint, OnPrem, Outlook, or OneDrive amongst other applications will appear so that you can be sure you are using a Flow that is applicable to your application.
On the right-hand side of the page is a section called Useful Links and includes the following: Flow Gallery, Submit a New Flow Template, and Import A Flow. If you click on the Flow Gallery link, not only will you see the Flows highlighted on your homepage, but you will see all the flows in your gallery.
The voice of the community is the driving force to ensuring that this is a collaborative environment. Yammer has been integrated as the collaboration tool, the announcement platform, and the communications platform. With Yammer, users interact directly in the feed by adding posts or comments, responding to comments, or “liking” a comment. Users can ask questions and receive feedback on their flow templates.
To encourage continual learning, sharing, and creativity, the Events section is the space where personal meetups can be highlighted. These meetups provide in-person, interactive discussions about Flow. Discussions may focus on suggestions for improvement, training, lectures, invited expert guest speakers or perhaps web-meetings.
By providing a space for users to gather, discuss, learn, research, and support each other, they are now capable of going forward with creating new flow templates that can be submitted for approval in your Custom Flow Template Gallery in SharePoint.
As technology progresses, more and more companies are relying on automated business processes within SharePoint. Microsoft Flow connects with hundreds of services and with recent enhancements, it provides the capability not only to customize Flow Templates but to share them in the Microsoft Flow Template Gallery with the public (the world) by exporting them or keeping them private within your organization by importing them into your organization’s private Custom Flow Template Gallery. Through this type of worldwide and corporate collaboration, the extensive gallery helps to create and modify flows based on approved and contributed flows, thereby preventing the “re-inventing the wheel” cycle. They can also be used as a learning tool where the flow can be reviewed to see how it was created so that it can be modified to your organization’s needs.
The Office 365 Flow engine automates tasks between Office 365, SharePoint, and third-party services whether they are on-premises, in the cloud, and even if they are not part of Microsoft’s catalogue.
Who can create and edit Flows? If the Flow connects to a modern list or library, then anyone who can add or edit the modern list or library will have the ability to create Flows from the Flow drop-down menu.
The Microsoft Flow Template Gallery features hundreds of Flows that have been created by Microsoft that are available to be reviewed, used, or modified to create a customized flow for your organization. There are flows that have been created for SharePoint, OneDrive, Office365 Outlook, Twitter, Dropbox, Yammer, and more (in fact, a total of 226 unique services!).
The Gallery also features Flows that have been created by the public. These Flows are submitted to Microsoft and are then reviewed and are either approved prior to being added to the Gallery Collection or rejected and deleted from the pending for approval list. This is truly a global effort to collaborate by bringing, featuring, and sharing the most useful fluid Flows from around the world. There is bound to be one that you can use as the launching point for yours, or perhaps, you could use it as is.
There are many types of Flows that are grouped in collections, including flows for sales and marketing, receiving on-the-go information, improving productivity, streamlining and improving the HR process, easing software development, automating tasks that occur in the classroom, and more.
There are five types of Flows:
Each Flow is triggered by either an action or by a connection. There are eight SharePoint Triggers in Microsoft Flow including actions affecting an item or file, such as when it is created, deleted or modified, and when a file’s properties are created or modified. Examples of services that can act as triggers include emails, completion of forms, information entered in a table, or the use of a hashtag.
The templates in the Gallery will already contain the trigger (the connector) to trigger the workflow for one or more actions with optional conditional or transformational functions. Conditional functions will cause an action to occur only when something is true while the actions consist of the work that the flow performs. In SharePoint, there are 29 actions available within Microsoft Flow that allows you to create and update files, extract data, use this data, and more.
Because Microsoft Flow connects with hundreds of services, it is important to search for the SharePoint templates only. An image of all applicable application connectors will be visually displayed on the template page. In addition to the search function, there is the ability to refine the search further by employing the filter options to view flow templates of certain types such as notification flows, data collection flows, etc.
By integrating Microsoft Flow with SharePoint, the capability to schedule Flows to run at different time increments for each action allows greater customization for the flow. You can also action all the items at once and this is quite convenient when actions are based on a date field.
There are two options to sharing Flow templates that you create. How you want to share depends upon whether you want to share with the world-wide Microsoft Flow community in the template gallery or strictly within your organization in its own customized template gallery.
There are two scenarios for sharing flow templates. The first is to create, export, and submit the flow to Microsoft. If the flow is accepted after being reviewed, it will be uploaded and will be available to the public in the Microsoft Flow Template Gallery. If your goal is to share with the world, then this is where you want it to be featured.
The second is to create, export, and submit the flow to your organization’s Custom Flow Template Gallery. To maintain data security, or keep proprietary connections secure, flow templates in your organization’s Custom Flow Template Gallery are only accessible by users within your organization.
The Flow Template Gallery, whether publicly shared or shared internally, is part of the organization’s system to encourage collaboration and creativity with users investing their time to create innovative solutions. By integrating various applications, such as Yammer, users are able to provide and receive communications from other users, especially feedback on flows to help improve and streamline them.
In the next instalment, Building a Flow Resource Community, we will discuss the importance of creating and supporting a Flow Resource Community for the users in your organization. We will also look closely at the resources and layout that should be included in the Flow Resource Community. We will also delve deeper into the process of creating and submitting custom flow templates to the Microsoft Flow Template Gallery or to your organization’s Custom Flow Template Gallery.
Tagging and Metadata – An Overview
In a previous installment, Modern SharePoint Metadata, we discussed the importance of tagging a page with accurate metadata to curate the appropriate information to your targeted audience. Through the use of correct and accurate metadata, or tags or properties, on SharePoint modern pages, your audience will receive targeted, relevant, and important information in their news feed and when they do a search.
What is the Difference Between Tagging: Then and Now
Prior to this enhancement, tagging modern pages was cumbersome and not entirely intuitive. Once would have to add a custom property to a content type that was inherited from the Site Page. Not only cumbersome but from an end-user perspective, it was not easy to set up or configure. Additionally, the property on the page’s content could not be viewed. With this new enhancement, these issues have been addressed and solutions are being implemented to rectify them.
What can be Tagged in SharePoint Modern Pages?
SharePoint modern pages can be tagged based on categories that you would like to use, such as page type for specific end-user groups, business function, target audience, location, and other categories that would enable you to reach and group your end users distinctly from other groups.
How to Tag Modern Pages and Display Based on End-User
Adding the Page Property (or Tag)
The column on a Site Page houses the page properties. To define a new page with new properties, go to the Site Pages page and choose Add Column to the Site Pages Library. Provide a name for this column. The name of the column becomes the Page Property. From this page property column, you can then provide the Description, choose “Choice” as the Type of column, and then choose the “Definition” for the Choice column. The values in the side illustration use options like “News Release”, “Announcement”, or “President’s note” as the choices.
Adding the Page Property to a Page
Once the page properties have been added to the Site Pages library by adding a new column, all new site pages can be tagged with that value from that page property.
To tag a page, go into edit mode on the page by clicking Edit Page. Then click Page Details located on the top ribbon. This will then open up the page’s property panel. This is the property panel for the new site page that you have added to the Sites Pages library and this is the location where you can edit its property. In the below illustration, then this is where the property category was chosen to be blue. Once the property (column) has been added to the Sites Pages library, all new site pages can be tagged with the same value for that page property. Click Save when done.
Customizing the Page
By following the steps above, one can create more pages with the same properties. You can also customize the look of the page. For the example below, if the property is to group by category, such as announcement, then the header of the page can reflect blue.
If there is a need or desire to show the value of the property on the page, one can do so with the use of web parts. Simply add the web part Page Property, click the Add Properties button. Add the value that you want to be displayed on the page on the right hand sided pop-out panel.
Time Saving Tip
Once your page is set up with all the values and tags that you require, simply create a copy of the page to create a new page. Not only will the content be copied, but also the page property. You can update or change the content as needed.
Summary Page: Creating for Each Category Property
A summary page which displays links for news or pages under one category can provide detailed information of what your targeted audience is seeing and receiving in their news feed.
To create a summary page for each Category property:
1. Create a new Site Page with an appropriate title;
2. Add web part Highlighted Content;
3. Configure properties of Highlighted Content. A property panel will appear on the right-hand side displaying the properties;
4. Set the Source of the content to “The page library on this site”;
5. Choose the Type of source, either Pages or News;
6. If Pages is chosen, then Filter will provide an option for Page Properties;
7. Under Property Name, choose the page property from the drop-down menu; and
8. Options to Select Values will appear in another drop-down menu. Here you can choose the filter that you want the pages to be filtered by.
Once these filters are saved, the Highlighted Content web part will curate and display the results almost instantaneously even though the content has been retrieved based on tags and not solely on filters. The summary page will display thumbnails of the curated pages based on the tagging.
Getting Organized
By adding custom columns to your pages, you can now organize your pages by creating views and grouping them in the Site Pages library. Having the ability to group your Site Pages by a Page Property will provide you an overview as well as greater flexibility in organizing and grouping your pages.
As you can see, accurate metadata and tagging will provide not only appropriate and useful content to your audience, but will also provide the abilities to organize, plan, and scale SharePoint with corporate growth.
When a user requires access to a site that they do not have access to, what do they do? This is where the access request feature comes into play as it provides the user the option of requesting access to the site. How will the site owner know that someone is requesting access? As the site owner, one can configure the settings so that an email is sent once someone requests access to a site. Upon receipt of this email, the site owner or the delegate(s) will have the authority to approve or decline the request. In addition to approving the request, the delegate will have the opportunity to assign a specific level of permission for the user.
The access request feature also works with the Share command for sites. If someone who does not have full control for a site (a non-site owner) uses the Share command to invite other users to view the site, then an access request email will be generated and sent to the site owner. As with the access request feature, the site owner will then be able to approve or decline the request. If the site owner is approving the request, then he will have the opportunity to assign a specific level of permission to the user.
How to Change Access Request Settings
As the site owner, you will have to decide whether you would like members of your site groups to have the ability to invite non-members to access the site contents. These features can be enabled or disabled. If you choose to disable this option of sharing, then an error message will appear if a team member tries to Share the site as the Share option remains available on the menu.
To disable or enable sharing by team members with non-team members, follow these steps:
How to Set Up Access Requests
How will a site owner know if a user is requesting access to the site? Managing these requests can be accomplished by configuring the access request feature to send an email to the site owner when an access request is submitted.
It is simple to set this up:
Approving or Declining Access Requests in SharePoint Online
To approve or decline an access request in SharePoint Online, follow these steps:
If you want to see past access requests, click Show History.
One advantage of SharePoint Online is the ability to manage invitations to external guests who do not have an Office 365 subscription. As an Office 365 customer using SharePoint Online, the Access Requests page provides the resources to manage guest user invitations to Office 365 non-subscribers.
Managing Invitations to External Guest for SharePoint Online
If an invitation has been sent to an external user, but you would like to withdraw it before their acceptance, then follow these steps:
What happens if the guest has already accepted their invitation and you want to uninvite this guest? You will not be able to uninvite them, but you can remove them from the SharePoint permissions group that you assigned them. Another workaround is to request your Office 365 Admin or SharePoint Online Admin to remove the guest from the list of users for your environment.
Resending Invitations
All invitations sent to external users expire in 90 days. Within the 90 days, the invitation can be re-sent but the expiration date is not extended. Once the 90 days have lapsed, the invitation cannot be re-sent. A new invitation will have to be sent.
To resend an invitation, simply:
The external invitation has now been re-sent. Managing access requests in SharePoint Online is very straightforward and puts some control in the site user’s hands while providing full control to the site owner. Though site users have the capability to invite internal and external users to collaborate on sites, the site owner continues to maintain full control of who can access the site and at what level of security they are able to access the site at. The added flexibility of Office 365 and SharePoint Online is the capability to withdraw external invitations and to resend them when needed. By combining the features of the Share command and access request features, the process of managing who has access to a site and at what permission level has been greatly simplified for the site owner.
In our previous installment, The Basics of the Office 365 Communication Site, we discussed the basics of the Communication Site, including when to use it, the type of content that could be shared, what to expect when creating it, what devices are compatible and the different web parts for inclusion of images, video and such.
In this installment, we will look at what components comprise the communication site and delve into greater detail of each component.
Ease of Creating the Communication Site
The creation of a Communication Site is simple and straightforward. There are three site designs that you can choose from as the basis for your Communication Site. These are:
1. Topic: sharing of information including events, news, launches, and other content;
2. Showcase: featuring a product, team, or event with the use of photos or images; and
3. Blank: a blank page allows you the creative space to design and customize your own layout.
In each site design, you have the ability to add, remove, or reorder web parts. In addition, if you have permission to edit the site, at the top of the Communication Site is a link to add a new list, page, document library, news post, or web app to the site.
Preformatted site designs aid in the ease of designing the Communication Site and with three different layout styles, how you want to communicate is made easy.
Site Designs in Detail
1. Topic
When you want to share with your broad audience information regarding events, news, updates and other content, the Topic design would be the most ideal. When you create a Communication Site based on the Topic design, your homepage includes several web parts that are highly customizable. The default web parts included for the Topic design for a Communication Site include the Hero, News, Events, and Documents.
Hero
This web part brings visual interest and focus to your page. With the ability to display up to five items in the Hero web part, you can draw attention to each by adding compelling images, text, and links.
The default layout is five tiles: one large tile on the left and four smaller tiles forming a square on the right. The number of tiles can be changed and can range from one tile to five tiles.
News
With the News web part, you can engage your team with interesting stories and important information. Keep them informed of what is happening with status updates, eye-catching posts, announcements, and people news through graphics and rich formatting. The News web part has a default layout called Top Story which displays on the left with a large image space, and to the right, in list format, three additional stories. The second layout style is called Side-By-Side which lists stories in two columns. The final and third layout style is called the List which shows the news posts in a single column. With the News web part, you have the option of choosing the layout that best suits your needs.
Events
Upcoming events can be displayed in the Events web part. Information regarding the event such as date, time, location and the ability to add it to your calendar are all functions of the Events web part.
Documents
The beauty of Microsoft products is the usability of its products across platforms. In the Documents web part, you can insert documents created from Word, Excel, Visio, and PowerPoint. The starting page of the document is in a frame and allows the user to scroll through the pages or, if they choose, to download the document.
2. Showcase
The Showcase design is to bring focus and attention to your featured highlights through the use of attention-grabbing graphics. The default web parts included in the Showcase design in conjunction with the Communication Site are Hero and Image Gallery.
Hero
For the Showcase design, there are two Hero layout options. The first is the Tile layout and the second is the Layer layout. The default is a vertical layout with three layers but you have the option of changing the number of layers from one to five.
Image Gallery
A picture says a thousand words, so naturally, an Image Gallery could be used to convey many messages and ideas to your audience. The Image Gallery web part shares collections of images on a page. Create your gallery by drag and dropping your selected images, and then ordering them in the sequence that is preferred. Images can be viewed in a tile layout or as a carousel.
3. Blank
Unlike the previous two site designs, the Blank design allows you to choose your page layout. After you have chosen your page layout, you then add the web parts that you want.
The page layout can also be customized by rearranging the web parts, and by adding, removing, or changing columns on the page.
We have now reviewed each of the individual components that make up the whole of the Office 365 Communication Site. In our previous installment, Part 1: The Basics of the Office 365 Communication Site, the fundamentals for the Communication Site were addressed. In this second installment, we looked closer at the building blocks for the Communication Site. Now that we understand the different types of site designs, web parts and layouts, we are now ready to begin creating the Office 365 Communication Site, which is discussed in Part 3: Creating and Sharing an Office 365 Communication Site.
What is SharePoint Framework?
SharePoint Framework is a new page and web part model that provides full support for client-side SharePoint development with easy integration of SharePoint data and Microsoft Graph through open source tooling which enables the building of SharePoint customizations for mobile, on-prem, online and OneDrive for Business. With SharePoint Framework, modern web technologies and tools provide a development environment to build experiences and apps that are ready and mobile-ready from the start.
In the next 3 blog articles, I will be shedding some lights on the new Framework and how you can start preparing to adopt the new development platform.
SharePoint Framework is written in JavaScript which allows developers, both inside and outside of Microsoft, to use their preferred web developer tools to develop SharePoint and customized solutions. This is an incredible leap as this allows developers on any platform to extend SharePoint’s standard capabilities. In addition, SharePoint Framework accompanies the new SharePoint UX, which is designed for the world’s mobile-first, cloud-first communication era. By moving towards open source resources, not only has a new door for developers has been opened, but it is also creating a new relationship between developers and SharePoint, resulting in a complete win for the client.
By moving to open source, will SharePoint Framework solutions work on classic sites? The answer is simply this: eventually, on existing team sites, it will and on new modern team sites, yes it will. However, classic solutions will not work on the new modern team sites. Moving forward, it is highly advisable to become familiar with SharePoint Framework and the tools to prepare yourself when SharePoint Framework is released.
Let's talk Framework, Development and Scaffolding tools in my next article!
One of the great enhancements in SharePoint 2016 and in the SharePoint 2013 August 2015 CU, is the Hybrid Search using Cloud Search Service Application (CSSA). The new CSSA will allow organizations to take advantage of the new hybrid capabilities, in order to create a unique search experience with one index, with crawled content from Office 365 and On-Premises data. Having one Index is huge step to better enhance the end user experience and making it easier to find results from different sources.
In this article, I will be showing step-by-step how to set up your CSSA . It is a pretty simple process if you follow the steps in order.
First of all, let's review how the CSSA indexing and crawling works. Picture 1 shows that crawling is initiated from on-premises, but the index is stored on your Office 365 tenant.
Picture 1
Picture 2 describes the flow of the search queries and the possibilities to send a query from the cloud or on-premises.
Picture 2
The following are mandatory requirements to get your CSSA working:
1. SP2013 with August 2015 CU or SP 2016
2. O365 Subscription
3. Azure Subscription
4. Synchronize users and groups from on-premises to Office365 Azure Active Directory (DirSync, AADSync, or AADConnect)
5. Create cloud Search service application
6. Install onboarding pre-requisites
7. Execute onboarding script
First you must synchronize your On-Premises AD with AAD. Follow these steps to install and configure your AAD Connect: https://azure.microsoft.com/en-us/documentation/articles/active-directory-aadconnect/
You can either use Central Admin or PowerShell. If you are using Central Admin, then you will see a new checkbox for the cloud search option. You must check it to make sure you are creating a CSSA and not a regular SSA. If you are like me, who prefers to use PowerShell, then you will make a small change to your existing script. If you don’t have one, you can download any SSA script, but make sure you add the following variables to the New-SPEnterpriseSearchServiceApplication:
New-SPEnterpriseSearchServiceApplication -Name $SearchServiceAppName -ApplicationPool $appPool -DatabaseServer $DatabaseServerName -CloudIndex $true
Then you need to set your SSA Property to true by executing this command: $Searchapp.SetProperty(“IsHybrid”,1), before you set your Search Topology.
Your Powershell Script should like similar to this:
SSADB = "SharePoint_Demo_Search"
$SSAName = "Search Service Application SPS Baltimore"
$SVCAcct = "<search Service account>"
$SSI = get-spenterprisesearchserviceinstance -local
#1. Start the search services for SSI
Start-SPEnterpriseSearchServiceInstance -Identity $SSI
#2. Create the Application Pool
$AppPool = new-SPServiceApplicationPool -name $SSAName"-AppPool" -account $SVCAcct
#3. Create the search application and set it to a variable
$SearchApp = New-SPEnterpriseSearchServiceApplication -Name $SSAName -applicationpool $AppPool -databaseserver SQL2012 -databasename $SSADB –CloudIndex $true
#4. Create search service application proxy
$SSAProxy = new-SPEnterpriseSearchServiceApplicationProxy -name $SSAName" Application Proxy" -Uri $SearchApp.Uri.AbsoluteURI
#5. Provision Search Admin Component
Set-SPEnterpriseSearchAdministrationComponent -searchapplication $SearchApp -searchserviceinstance $SSI
#6. Create the topology
$Topology = New-SPEnterpriseSearchTopology -SearchApplication $SearchApp
#7. Assign server(s) to the topology
$hostApp1 = Get-SPEnterpriseSearchServiceInstance -Identity "SPWFE“
$Searchapp.SetProperty(“IsHybrid”,1)
New-SPEnterpriseSearchAdminComponent -SearchTopology $Topology -SearchServiceInstance $hostApp1
New-SPEnterpriseSearchCrawlComponent -SearchTopology $Topology -SearchServiceInstance $hostApp1
New-SPEnterpriseSearchContentProcessingComponent -SearchTopology $Topology -SearchServiceInstance $hostApp1
New-SPEnterpriseSearchAnalyticsProcessingComponent -SearchTopology $Topology -SearchServiceInstance $hostApp1
New-SPEnterpriseSearchQueryProcessingComponent -SearchTopology $Topology -SearchServiceInstance $hostApp1
New-SPEnterpriseSearchIndexComponent -SearchTopology $Topology -SearchServiceInstance $hostApp1 –IndexPartition 0
#8. Create the topology
$Topology | Set-SPEnterpriseSearchTopology
Run the following PowerShell script to validate that your SSA is cloud based.
Add-PSSnapin Microsoft.SharePoint.Powershell
$ssa = Get-SPEnterpriseSearchServiceApplication
Get-SPEnterpriseSearchTopology -Active -SearchApplication $ssa
Get-SPEnterpriseSearchStatus -SearchApplication $ssa -Text |ft Name, state,Partition,Host -AutoSize
$ssa.CloudIndex
This should return True.
You must install the following, in order, before you proceed with the On-Boarding script:
1. Microsoft Online Services Sign-In Assistant: https://www.microsoft.com/en-ca/download/details.aspx?id=28177
2. Reboot the Server
3. Microsoft Azure AD PowerShell: http://go.microsoft.com/fwlink/p/?linkid=236297
If you do not install the above, then the next step will not work as it is needed to establish the trust between your Farm/CSSA and your Online tenant.
The On-Boarding script is a PowerShell, provided by Microsoft, that you must run as your last step to complete your CSSA configuration. You can download the On-Boarding script from GitHub. When you run this script, you will be asked to enter your O365 tenant credentials. The user must be a tenant admin account to be able to execute the script.
Once you have completed, you can start adding you content sources to your CSSA. Your content sources can be any SharePoint portal (2010, 2013, 2016, etc.), any folders, exchange, etc. Basically, it is the same content sources you used to crawl with a regular SSA.
When you are completed, then you can navigate to your SharePoint Online, search for a keyword and results should appear from Online and On-Premises.
SharePoint Framework leverages commonly used developer tools and it does not dictate which JavaScript framework should be used to build the solutions. In the past, development of solutions was reserved to Visual Studio on Windows and developers primarily used C#. Communicating with SharePoint was done using SharePoint’s server API, or most recently, CSOM, JSOM or REST. The shift from a proprietary model requiring a significant amount of knowledge to a flexible and highly customizable framework was driven by huge customer demand for the need to customize SharePoint on-prem, online and in the Cloud. In addition, traditional farm based solution is incompatible with cloud based tools and technology. In order to continue moving forward with cloud based applications, a major change had to take place.
SharePoint Framework is highly customizable as it is entirely based on open source JavaScript. Its framework was developed in React as Microsoft chose to develop Delve and the new document library in React. Design and build is executed in the superset of JavaScript – TypeScript. TypeScript is then transpiled into JavaScript making development work more routine-based thus reducing coding errors. Though it is not mandatory that developers use TypeScript, though the investment of learning it will pay off in the long run, it should be noted that it is highly recommended that development of solutions should be done with TypeScript to ensure that customized solutions will be mobile friendly and looking great across all platforms during build and final release.
SharePoint Framework allows you to extend your existing tools and solutions while taking full advantage of exciting open source tools such as Yeoman, Gulp, Workbench, Node.js, GitHub and Angular while still maintaining the option to use Visual Studio, Visual Studio Code and Visual Studio Team Services.
Many open source tools have been available in the open source community for a number of years, but these tools are "new" in SharePoint Framework. Most notably are three products that are an integral part of SharePoint Framework and they each support the framework in the following capacities:
Yeoman is the scaffolding tool for web applications. With Yeoman, developers can create project structures that facilitate the use of custom functionality. This in turn allows developers to work faster.
Gulp makes development efficient through the leveraging of a wide variety of plug-ins to perform repetitive development tasks, automate minification and perform compression.
Workbench allows the developer to test new web parts and apps before migrating them to production environments by replicating SharePoint as a local and offline environment.
As a core component, the modern SharePoint Page has a notably developer friendly page structure. Pages can be constructed by using any client-side JavaScript templating framework and can be technologically independent. This page structure provides the ability to host web parts, add-ins and new opportunities.
The framework provides a page layout that is responsive and mobile-ready. Each page has a "Chrome" structure that surrounds the page body. This section contains the out of the box logic supplied by Microsoft plus additional developer logic that has been built on top of it. Simply put, it contains your business context. This Chrome layer manages the presentation of the page so that it displays appropriately on the device whether it be desktop, tablet or smartphone.
The Page Body becomes the canvas where web parts, apps, files, Delve components and other elements can be placed and arranged according to business needs. By layering this on top of the Chrome layer, there is no need to worry about proper display presentation on different devices. The Page Body is where the developer mostly lives, interacting with anything that has been built and placed here. The developer, regardless of skill level, is able to customize SharePoint pages by adding any build that has been placed on the canvas by clicking on a plus sign, selecting and placing the components.
Through this process, developers will be able to extend the capabilities of SharePoint more efficiently, reliably and quickly, and best of all, if you follow the rules, it will be mobile ready and responsive right from the start.
As SharePoint Framework has not yet been released, the question of how do we prepare for it begs to be asked. Stay tuned as I answer this question in the second installment of The New SharePoint Framework: Prepare Yourself!
On March 14, 2016, Microsoft announced the general availability for SharePoint 2016. We have been testing it, along with many companies for the past year or so, and it offers great features and enhancements to the previous versions. If you have done so, I encourage you to download the software, test it out, and start preparing to move to it.
In this article, we will review some of the great new and improved features in the new SharePoint 2016 release:
In SharePoint Server 2016, hybrid attributes are available to empower options for organizations:
SharePoint 2017 and Office 2013 are pretty much identical now with the enhanced UI changes to 2016 and the introduction of the AP Launcher.
You can now select the role for the server when you configure SharePoint. By selecting the role, it will only install what’s required for this role, and nothing else, but it does better than that, it will make sure that all servers that belong to that role are compliant. But if you change your mind later, you can convert the server to a new role if needed.
No more downtime when patching your farm, but it requires high availability of each role. The updated bits will be much smaller and faster to install to allow the support of zero downtime. Also, Microsoft will be moving into more Feature Packs rather than Service Packs, to make the on-premise version as close as possible to Office 365 when applicable. And no, you will not have an on-premise Delve J. Expect the first feature pack to be ready for us in 2017.
The 5,000 view threshold has been removed; kind of J. SharePoint has always supported 30,000,000 items, but there was a limit not to have more than 5,000 items in a view, to prevent SQL locking that can affect your entire farm.
The 5,000 limit is necessary, but now the index will automatically be created, so technically, the limit is still there, but you don’t have to worry about it.
Although I don’t recommend uploading large files for performance to store then in a SharePoint database, but the you can upload files beyond 2 GBs now.
You can now create site templates to be used to create site collections in less than 1 seconds (compared to about 60 seconds in some cases). Using a PowerShell command, you will enable this feature and will allow you to start using the Fast Site Creation feature.
With this particular new capability, you can: