SPTechCon BOS 2013 - SharePoint Solutions with SPServices

21
SharePoint Solutions with SPServices Marc D Anderson

description

SPServices is a widely used jQuery library that abstracts SharePoint's Web Services and makes them easier to use. It also includes functions that use the various Web Service operations to provide more useful (and cool) capabilities. It works entirely on the client and requires no server install. Using SharePoint’s Web Services client-side, you can provide your users a more “tactile” experience. In this class, you'll learn how to use SPServices to build a more compelling user experience on top of SharePoint. We'll look at the most popular "value-added" SPServices functions as well as how you can use SPServices as part of your own development toolkit.

Transcript of SPTechCon BOS 2013 - SharePoint Solutions with SPServices

Page 1: SPTechCon BOS 2013 - SharePoint Solutions with SPServices

SharePoint Solutions with SPServices

Marc D Anderson

Page 2: SPTechCon BOS 2013 - SharePoint Solutions with SPServices

Who Is Marc?• Co-Founder and President of Sympraxis

Consulting LLC, located in the Boston suburb of Newton, MA, USA. Sympraxis focuses on enabling collaboration throughout the enterprise using the SharePoint application platform.

• More than 30 years of experience in technology professional services and software development. Over a wide-ranging career in consulting as well as line manager positions, Marc has proven himself as a problem solver and leader who can solve difficult technology problems for organizations across a wide variety of industries and organization sizes.

• Three-time awardee of the Microsoft MVP award for SharePoint Server (2011, 2012, 2013).

Page 3: SPTechCon BOS 2013 - SharePoint Solutions with SPServices

What Is SPServices?

SPServices is a jQuery library which abstracts SharePoint's Web Services and makes them easier to use. It also includes functions which use the various Web Service operations to provide more useful (and cool) capabilities. It works entirely client side and requires no server install.

Page 4: SPTechCon BOS 2013 - SharePoint Solutions with SPServices

Where Does SPServices Work?

Page 5: SPTechCon BOS 2013 - SharePoint Solutions with SPServices

Where Do I Get SPServices?

http://spservices.codeplex.com/

Page 6: SPTechCon BOS 2013 - SharePoint Solutions with SPServices

What Else Do I Need?

http://jquery.com

Page 7: SPTechCon BOS 2013 - SharePoint Solutions with SPServices

How Does It All Fit Together?

Page 8: SPTechCon BOS 2013 - SharePoint Solutions with SPServices

Add More Plugins

?

Page 9: SPTechCon BOS 2013 - SharePoint Solutions with SPServices

Referencing Script Files

• Adding jQuery, SPServices, and jQueryUI

Referencing jQuery, jQueryUI, and SPServices from CDNs – Revisitedhttp://sympmarc.com/2013/02/07/referencing-jquery-jqueryui-and-spservices-from-cdns-revisited/

Note the protocol-less references

Page 10: SPTechCon BOS 2013 - SharePoint Solutions with SPServices

What Can You Do with SPServices?• SPServices Core:• Call SharePoint’s SOAP Web Services• Parse the returned XML to provide page content

or user feedback• Make changes to SharePoint objects

• Value-Added Functions• Enhance forms

Page 11: SPTechCon BOS 2013 - SharePoint Solutions with SPServices

SPServices’ Core Functions

Page 12: SPTechCon BOS 2013 - SharePoint Solutions with SPServices

Anatomy of an SPServices Call$().SPServices({ operation: "operationname",

});

[webURL: "/sitepath",] [option1: value1,] [option2: value2,] [async: false,]

completefunc: function (xData, Status) { ...do stuff...}

Page 13: SPTechCon BOS 2013 - SharePoint Solutions with SPServices

Anatomy of an SPServices Call using Promisesvar thisPromise = $().SPServices({ operation: "operationname", [webURL: "/sitepath",] [option1: value1,] [option2: value2]});

thisPromise.done(function() { ...do stuff...});

Page 14: SPTechCon BOS 2013 - SharePoint Solutions with SPServices

How Does an SPServices Call Work?

XML

Page 15: SPTechCon BOS 2013 - SharePoint Solutions with SPServices

Parsing Resultscompletefunc: function (xData, Status) { $(xData.responseXML).SPFilterNode("z:row").each(function() { var liHtml = "<li>" + $(this).attr("ows_Title") + "</li>"; $("#tasksUL").append(liHtml); });}

• Alabama•Hawaii• Texas•North Dakota

<ul id="tasksUL"/>

Page 16: SPTechCon BOS 2013 - SharePoint Solutions with SPServices

Value-Added Functions

• Combining multiple Web Services calls allows us to build cool functionality

• The value-added functions are useful and also can be used as prototypes for you to build your own functionality

Page 17: SPTechCon BOS 2013 - SharePoint Solutions with SPServices

SPCascadingDropdowns

Page 18: SPTechCon BOS 2013 - SharePoint Solutions with SPServices

SPDisplayRelatedInfo

Page 19: SPTechCon BOS 2013 - SharePoint Solutions with SPServices

SPSetMultiSelectSizes

Page 20: SPTechCon BOS 2013 - SharePoint Solutions with SPServices

Demos