Jean Paul's Blog

There are 2 types of People in the World, One who Likes SharePoint and..

    Advertisements
  • Microsoft MVP

  • MindCracker MVP

  • CodeProject MVP

  • eBook on SharePoint 2010

  • eBook on Design Patterns

  • eBook on Windows Azure

  • NLayers Framework @ CodePlex

  • MSDN Forums

  • .Net vs. Java

    Due to Public Demand
  • Advertisements

Archive for January, 2015

Create an IIS Certificate

Posted by Paul on January 30, 2015

In this article we can explore how to create an IIS Certificate.

Certificates

Certificates are used to confirm the Identity of Servers. To create a certificate in IIS opens the INETMGR. You can see the Server Certificates icon highlighted.

image

Click on the Create Self-Signed Certificate link from the right pane. (For development purposes this is the easiest option. For production systems we need to purchase from an external provider like VeriSign)

image

Exporting

For development purposes we need to export the certificate. Right click on the certificate to choose the option Export.

image

Enter the path & a password.

image

Click the OK button and the Certificate is created as shown below.

image

References

https://technet.microsoft.com/en-us/library/cc732230(v=ws.10).aspx

Summary

In this article we have explored how to create & export an IIS Certificate. For development purposes we can use this certificate to trust the server.

Advertisements

Posted in SharePoint, SharePoint 2013 | Tagged: , , | Leave a Comment »

Editing an Excel file using Excel Web Access web part

Posted by Paul on January 29, 2015

In this article we can explore how to edit an excel file using the Excel Web Access web part.

Add Excel Web Access Web Part

Create a sample excel file like below & upload to a document library.

image

Create a new page and add the Excel Web Access web part to it.

image

Then select the excel file

image

In the appearing tool pane select the excel work which was uploaded to a document library

image

Change the following property of the web part. This is the important step.

· Typing and formula entry

image

Once the property is changes, Save the web part to see the excel view as shown below. You can try typing in the cells & the view will accept changes.

image

image

The changes can be downloaded using the File > Download option.

Summary

In this article we have explored how to enable edit in an excel web access web part.

Posted in SharePoint, SharePoint 2013 | Tagged: , , | Leave a Comment »

Future of SharePoint Development

Posted by Paul on January 25, 2015

Following are the insights I got from Microsoft’s Session regarding future of SharePoint Development.

  1. App Model is the preferred development model for future.  There is no near future replacement for App Model.
  2. Provider Hosted App Investments will be more focused.  Already Cloud Hosted Apps is dead.
  3. SPCAF is the preferred code analysis tool for Apps.
  4. Farm Solutions will be supported in Future versions of SharePoint.  SharePoint Components are built using Farm Solutions.
  5. Sandboxed Solutions are deprecated.  But no current plan to prevent upload of sandboxed solutions.
  6. No-Code Sandboxed Solutions too not preferred
  7. O365 won’t support Farm Solutions in future.  There are multiple clients sharing the same platform.  Server Side Execution can impact them.
  8. Custom master pages would be least preferred.  Maximize usage of Composed Looks.

What we can make out from this?

If you are a Developer & Looking forward for a Career Up Move:

  1. Focus on Apps Development.  Add a Certification there.
  2. CSOM is preferred for PHA apps
  3. JSOM is preferred for SHA apps
  4. REST/ODATA services are good for managing list/library CRUD operations
  5. Farm Solutions are preferred only for special scenarios like Application Page, Timer Jobs etc.

image

Posted in SharePoint, SharePoint 2013 | Tagged: , , | Leave a Comment »

Hiding Download Option of Excel Web Access Web Part

Posted by Paul on January 19, 2015

In this article we can explore how to hide the download options of an excel web access web part.

In the previous article we have observed how to use an excel web access web part.

http://www.jeanpaulva.com/index.php/2015/01/17/using-excel-web-access-web-part/

Advantages of Hiding

Following are the advantages of hiding:

· Prevent users from procuring your proprietary formulas & calculations

· Show a read-only view to the user

Download Options

Following are the download options available:

image

Download option allows downloading of entire file. In this way the entire excel workbook can be protected.

Download a Snapshot allows downloading of only values & formatting. In this way the proprietary formulas and calculations can be protected.

Prevent Download

Open the page in edit mode & choose the Edit Web Part option of the excel web access web part. Uncheck the option Open in Excel, Download, Download a Snapshot.

image

Save changes & Refresh the page. You should be seeing the Download options are hidden now.

image

References

https://technet.microsoft.com/en-us/library/ee424405(v=office.15).aspx

Summary

In this article we have explored how to hide the download options of an excel web access web part.

Posted in SharePoint, SharePoint 2013 | Tagged: , , , | Leave a Comment »

Using Excel Web Access Web Part

Posted by Paul on January 17, 2015

In this article we can explore how to use the Excel Web Access Web Part.

Excel Web Access Web Part

Following are the properties of Excel Web Access Web Part

· Used to display an Excel workbook in browser

· No need of Excel client application

· Excel workbook appearance can be customized

· Part of Excel Services

Using Excel Web Access Web Part

Please follow the steps below to use an Excel Web Access Web Part.

Step 1: Create a Page

Open your site & create a new page and name it as Excel.

image

Step 2: Add Web Part

Edit the page & choose insert a web part option. From the Business Data group choose the Excel Web Access web part.

image

Step 3: Select File

Click on the link highlighted below.

image

In the appearing tool pane select the excel work which was uploaded to a document library

image

For the time being I am using a sample excel file as shown below.

image  

Step 4: Test Page

Click Ok to the tool pane & save changes to the page. You should be able to see the excel file within SharePoint page as shown below.

image

Please note the sheets as well. For downloading the file you can use the File > Save menu.

Please note that you don’t require MS Excel to be installed in the machine. The entire excel cells rendered through Excel Services application & browser.

References

https://technet.microsoft.com/en-us/library/ee424405(v=office.15).aspx

Summary

In this article we have explored how to use the Excel Web Access Web Part.

Posted in SharePoint, SharePoint 2013 | Tagged: , | Leave a Comment »

High Trust and Low Trust Apps

Posted by Paul on January 14, 2015

In this article we can explore difference between High Trust and Low Trust Apps.

Provider Hosted Apps

High Trust & Low Trust Apps appears in the scenario of Provider Hosted Apps.

Provider Hosted App (PHA) will be hosted in a Server external to SharePoint Server.

PHA requires Server-to-Server Trust through digital certificates and High Trust & Low Trust evolved.

1. SharePoint Server

2. App Server

High Trust App is not same as Full Trust Apps.

image

High Trust Apps

High Trust App can get the Identity of the user.

Following are the features of a High Trust App:

1. Only available in On-Premise deployment

2. SharePoint Online (O365) does not supports it

3. Additional configuration required on Server to support High Trust Apps

Low Trust Apps

Low Trust App needs another Trust Broker to get the Identity of the user.

Following are the features of a High Trust App:

1. Available in both On-Premise and Online Installations

2. App Manifest will be used to set permissions

image

Apart from High Trust & Low Trust you will encounter with Full Trust which refers to our Farm Solutions where the application will be given full trust.

image

References

http://msdn.microsoft.com/en-us/library/office/fp179901(v=office.15).aspx

Summary

In this article we have explored difference between High Trust and Low Trust Apps.

Posted in SharePoint, SharePoint 2013 | Tagged: , , | Leave a Comment »

Choosing between Responsive Web Design, Device Channels or Both

Posted by Paul on January 12, 2015

In this article we can examine choosing between Responsive Web Design & Device Channels.

image

Responsive Web Design

Following are the properties of Responsive Web Design:

1. Same URL for all devices

2. Same HTML rendered for all devices

3. Device View Port is the key factor (Resolution)

4. Overhead: Browser should support CSS3

5. Overhead: Only 70-80% devices supports

Device Channels

Following are the properties of Device Channels:

1. Newly introduce to SharePoint 2013

2. Same URL for all devices

3. Different HTML rendered for different devices

4. Device user agent string used to differentiate devices (eg: Windows, iPhone, S4 etc.)

5. Custom Master Pages possible each device-channel is possible

6. Image Rendition for each device-channel is possible (Image Rendition)

7. Shrinking of data-size possible for low-bandwidth devices

8. Overhead: Additional configuration is required

Choosing One

In most cases we require to use only one of the following:

1. Responsive Web Design

2. Device Channels

Choosing Both

You can read from the above that, sometimes we require both Responsive Web Design & Device Channels. For example, following is such a case:

1. Your company have a public web site targeted for all devices:

a. Responsive Web Design can be implemented for all devices (Desktop, Tablet, Mobile etc.)

2. Field Workers using Black Berry with incompatible browsers need to login to the web site:

a. Device Channels can be configured for Black Berry devices with custom master pages

3. Field Workers using iPhone/S4 with low-bandwidth connections need to login to the web site:

a. Device Channels can be configured for iPhone/S4 with strip down version of pages

Please note that multiple user agent strings can be configured for a single device channels. This enables multiple devices of same screen size / work location targeted against a single device channel.

References

http://bit.ly/1AXwsr7

http://gabesumner.com/how-many-web-browsers-support-responsive-design

Summary

In this article we have explored choosing between Responsive Web Design, Device Channels or Both.

Posted in SharePoint, SharePoint 2013 | Tagged: , , | Leave a Comment »

SharePoint & REST

Posted by Paul on January 10, 2015

SharePoint 2013 supports REST enabled web services.

REST

REST is Representational State Transfer. REST is an architectural style and uses HTTP protocol.

REST provides more interoperability than SOAP (web services).

REST is supposed to be the right way of using HTTP verbs for CRUD operation. (Create – POST, Read – GET, Update – Put, Delete – DELETE) as per protocol definition in RFC 2616.

image

Example

Following are few examples of REST.

image

Advantages

Following are the advantages of going with REST:

1. REST web requests are easier to work with

2. No overheads of WSDL creation

3. No overheads of tying up with Service Reference

4. Direct Calls for fetch, insert, update, delete, find operations

5. Better Interoperability supporting different clients on different platforms, programming models

SharePoint & REST

SharePoint 2013 supports REST. This feature requires some inner tweaking of the existing web services.

In SharePoint the usage of HTTP Verbs as per REST is given below:

1. POST for Create

2. GET for Read

3. PUT for Update

4. DELETE for Delete

Operations

Following are the subset of operations we can perform using SharePoint & REST:

1. Create a Site Collection

2. Create a List

3. Create a Content Type

4. Add, Edit, Delete items from a List

5. Get an Item

X-HTTP-Method

Sometimes network firewalls block certain HTTP Verbs like PUT and DELETE. In this case we have to rely on X-HTTP-Method which is actually a header.

Syntax is:

XHTTPMethod = “X-HTTP-Method: ”

(“PUT”

/ “MERGE”

/ “PATCH”

/ “DELETE”)

CRLF

REST services of SharePoint are comparable with Client Side Object Models. We can use REST services as an alternative to CSOM or JSOM code.

References

http://msdn.microsoft.com/en-us/library/office/fp142380(v=office.15).aspx

Summary

In this article we have explored SharePoint & REST.

Posted in SharePoint, SharePoint 2013 | Tagged: , | Leave a Comment »

Development Options for SharePoint 2013

Posted by Paul on January 8, 2015

In this article we can explore how to choose the right Development Option in SharePoint 2013. Development Option means the type of solution like Sandboxed Solution, Apps etc.

Depending upon the Quality Level of your organization, the selection of development option will be crucial.

Development Options

Following are the development options we are using:

1. OOTB Solution

2. Third Party Solution

3. Lite Customization

4. Heavy Customization

5. Sandboxed Solution

6. SharePoint Hosted App

7. Provider Hosted App

8. Farm Solution

image

image

Auto Hosted Apps are not supported going forward, hence excluded it.

OOTB Solution

In this type of solution, we will be using Out of the Box SharePoint features. For example, a department can raise a request for document management site. We can resolve it through creation of new site instance & configuration of a library.

Here, there are no deployment items involved.

Third Party Solution

In this type of solution, we are purchasing ready-made software from outside. For example, a project management site template from XYZ Software. A Print Management App can be another example.

Here, a purchase cost is involved but faster requirement accomplishment is realized than other options. The deployment will be done by Administrator or User.

Customizations

Customization involves lite or heavy customizations like:

1. Site Collection / Site creation

2. List / Library creation

3. Content Type creation

4. Metadata usage

5. Page editing

6. Script inclusion

7. Quick Launch hiding

8. Master Page change

Sandboxed Solution

Sandboxed Solution is a deployable, reusable package containing features, site definitions etc. It is useful if application level items need to be combined and packaged as a single WSP. Sandboxed Solutions can be restricted on resource usage through Quotas.

Deployment of Sandboxed Solution can be user managed.

image

Sandboxed Solutions are deprecated in SharePoint 2013 but Declarative Sandboxed Solutions are not. Declarative Sandboxed Solutions are those with declarative markups and javascripts.

SharePoint Hosted App

Apps provide Discoverability from Corporate Catalog. In a SharePoint Hosted App the App is hosted within the SharePoint Farm.

JavaScript Object Model will be used to render the App. Hence, App is executed from client side.

Provider Hosted App

In Provider Hosted App the App is hosted in an external server. This enables protection of business logic without exposing to client side & remote event receivers.

As there are 2 web servers involved, we need to configure Trust Certificates between these servers.

C# will be used to render the App using CSOM (Client Side Object Model).

Farm Solution

Farm Solution provides Full Trust code and resides in the SharePoint Server. Custom solutions which require advanced object management, central administration component creation, custom site templates, coded workflows etc. can be deployed through a Farm Solution.

Server Object Model is used for development and hence code gets executed in the server. Security challenges, Server Risks arise.

Comparison Table

Let us summarize the comparison table here.

Category

Properties

Remark

OOTB Solution

Site Collection Creation, HTML Pages, JS Files, Images, Content Types, List, Library etc. specified through an XML file & deployed using SRT.

Most Preferred

Third Party Solution

Ready-made, Fastest deployment.

Customizations

Lite or Heavy customizations. Maintenance overheads.

Sandboxed Solution

Resource Metered. Deprecated.

SharePoint Hosted App

App discoverability, Corporate Catalog, Multiple App Instance creation across different client site collection, JavaScript Object Model

 

Provider Hosted App

App discoverability, Corporate Catalog, Multiple App Instance creation across different client site collection. C# Code, Remote Event Receivers, Low/High Trust configurable.

 

Farm Solutions

Full Trust Code, Advanced Solutions.

Preferred Last

References

http://msdn.microsoft.com/en-us/library/office/jj163114(v=office.15).aspx

Summary

In this article we have explored different development options in SharePoint 2013.

Posted in SharePoint, SharePoint 2013 | Tagged: , , , | Leave a Comment »

SHA vs. PHA

Posted by Paul on January 6, 2015

In this article we can explore when we have to choose SHA & PHA.

1. SHA – SharePoint Hosted App

2. PHA – Provider Hosted App

image

Apps Overview

As we all know, Apps are the preferred programming model for SharePoint 2013. Microsoft introduced App Model in SharePoint 2013.

Apps provide the following advantages:

1. Code outside Server

2. Discoverability

3. App Store Eco System

4. Easy Installation

5. Easy Uninstallation

Advantages of SHA

SharePoint Hosted Apps are those in which code is hosted in the SharePoint server. Since the App is containing JSOM (JavaScript Object Model) the execution happens in the client side.

Pure HTML/JavaScript based application can be built using this approach.

Advantages of PHA

Provider Hosted Apps are those in which code is hosted outside the SharePoint server. Since the App can contain both JSOM & CSOM the execution is happens in another server or in the client side.

Remote Event Receivers, Custom WCF Services, Protected Business Logic can be achieved using this approach.

Since PHA is hosted in an external server, there requires a server-to-server trust through certificates. The trust can be Low Trust or High Trust depending on your requirement. This certificate configuration would be an additional configuration overhead going with PHA.

When to choose SHA?

Following are the reasons to go with SHA:

1. If you wanted to publish in Office App Store, then go with SHA

2. If you have just HTML/JavaScript code, then go with SHA

When to choose PHA?

Following are the reasons to go with PHA:

1. If you have proprietary business logic, then go with PHA

2. If you have custom services to be created, then go with PHA

3. If you have custom event receivers, then go with PHA

4. If you wanted to integrate existing ASP.NET application, then go with PHA

5. If you have difficulty in finding JSOM resources, then go with PHA

We are not discussing CHA (Cloud Hosted App) here as it has been deprecated.

References

http://msdn.microsoft.com/library/office/dn268593.aspx

Summary

In this article we have explored SHA vs. PHA.

Posted in SharePoint, SharePoint 2013 | Tagged: , , | Leave a Comment »