0
Create a Business Solution,
Step by Step, with No
Managed Code
Christian Ståhl & Marc D Anderson
Who Is Christian?
• Senior SharePoint Consultant, Humandata.
• Web designer and Web developer since mid 90s, before art
st...
Who Is Marc?
• Co-Founder and President of Sympraxis Consulting LLC, located
in the Boston suburb of Newton, MA, USA. Symp...
About this shared session
• We have collaborated and discussed different kinds of SharePoint
solutions using client coding...
Tutorial Overview
• In this session, you will learn how you can devise
powerful solutions from beginning to end without
de...
What Are the Available Tools?
SharePoint
2010
SharePoint
2013
Cascading Stylesheets (CSS)
Extensible Stylesheet Language (...
Cascading Stylesheets (CSS)
• Usually not seen as part of the
coder's toolset
• Modern Web development relies
on a firm un...
Extensible Stylesheet Language (XSL)
• Used in Data View Web Parts,
Content Query Web Parts
• Not most people's favorite d...
JavaScript / jQuery
• SharePoint has always used JavaScript
• jQuery is "supported"
• Taken Web development by storm
• Mos...
Data View Web Parts (DVWPs)
• Processed on the server
• XSL-driven
• Can "join" multiple data sources
• Useful not only fo...
Content Query Web Parts (CQWPs)
• Processed on the server
• XSL-driven
• Long-time workhorse of Web Parts
• Enables rollup...
Workflows
• Right up front: neither of us are big fans
• Great for frequent, repetitive tasks; information work
tends to b...
Display Templates
• New in SharePoint 2013
• JavaScript-driven
• Might be the new DVWP?
• Documentation is not great
Content Search Web Parts (CSWPs)
• New in SharePoint 2013
• "Soon" available on Office365
• Display Template driven
• Depe...
What Can’t [Shouldn't] You Do Without
Managed Code?
• Deploy files to the server’s file system
• Event Receivers
• Timer J...
Client Side vs. Server Side
• Contrary to some reports, client side development
is not always a good thing
• Be careful wh...
Development Must Also Follow Good
Governance Practices
• Coding practices
• Deployment mechanisms
• Testing methods
• Docu...
To our Demo
• Let’s take a look at concrete business problem.
– A employee award nomination system
– Let’s say that our go...
Employee Award Nominations
• First thought… Maybe we can use a SharePoint list and create a submission form
using InfoPath...
WE LIKE SIMPLE SOLUTIONS!
Contact Information
eMail christian@humandata.se
Blog http://chrisstahl.wordpress.com
Twitter @Cstahl
LinkedIn christianst...
Upcoming SlideShare
Loading in...5
×

SEF2013 - Create a Business Solution, Step by Step, with No Managed Code

1,325

Published on

with Christian Ståhl
In this session, you will learn how you can devise powerful solutions from beginning to end without deploying any managed code with two of the biggest proponents of this approach. We’ll take a business problem and go through the actual solution in SharePoint 2013, but we’ll dip into SharePoint 2010 as well to see how the solution might work there and discuss how we might approach things differently. You’ll get the solution in a WSP as well as the underlying code.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,325
On Slideshare
0
From Embeds
0
Number of Embeds
16
Actions
Shares
0
Downloads
32
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "SEF2013 - Create a Business Solution, Step by Step, with No Managed Code"

  1. 1. Create a Business Solution, Step by Step, with No Managed Code Christian Ståhl & Marc D Anderson
  2. 2. Who Is Christian? • Senior SharePoint Consultant, Humandata. • Web designer and Web developer since mid 90s, before art student. Wide-ranging career in SharePoint since the early days, consulting and training. • Three-time awardee of the Microsoft MVP award for SharePoint Server (2011, 2012, 2013).
  3. 3. 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).
  4. 4. About this shared session • We have collaborated and discussed different kinds of SharePoint solutions using client coding through the years and share the same deep passion for data view web parts and jQuery solutions in SharePoint. • For this SEF, we thought it would be fun to set up a typical business problem and see how we could solve this with no managed code and how we could tackle this from our different perspectives.
  5. 5. Tutorial Overview • In this session, you will learn how you can devise powerful solutions from beginning to end without deploying any managed code with two of the biggest proponents of this approach. We’ll take a business problem and go through the actual solution in SharePoint 2013
  6. 6. What Are the Available Tools? SharePoint 2010 SharePoint 2013 Cascading Stylesheets (CSS) Extensible Stylesheet Language (XSL) JavaScript / jQuery Data View Web Parts (DVWPs) Content Query Web Parts (CQWPs) Workflows (SharePoint Designer) Display Templates Content Search Web Parts (CSWPs)
  7. 7. Cascading Stylesheets (CSS) • Usually not seen as part of the coder's toolset • Modern Web development relies on a firm understanding of CSS • Necessary to add animations and useful client side behaviors • Used in tandem with scripting and DOM manipulation
  8. 8. Extensible Stylesheet Language (XSL) • Used in Data View Web Parts, Content Query Web Parts • Not most people's favorite data formatting tool • Might be considered outdated • Moving away from XSL toward client side rendering (jQuery, Knockout, many more)
  9. 9. JavaScript / jQuery • SharePoint has always used JavaScript • jQuery is "supported" • Taken Web development by storm • Most modern Web sites rely heavily on scripting • More and more integration with SharePoint, especially in SharePoint 2013
  10. 10. Data View Web Parts (DVWPs) • Processed on the server • XSL-driven • Can "join" multiple data sources • Useful not only for displaying data, but also for building forms • Can roll up content across the Site Collection using DataSourceMode="CrossList" • Much harder to work with in SharePoint 2013 (SharePoint Designer missing Display View)
  11. 11. Content Query Web Parts (CQWPs) • Processed on the server • XSL-driven • Long-time workhorse of Web Parts • Enables rollup of content across the Site Collection • Predefined formats can be extended but somewhat cumbersome to do so • A lot of filter options; for example on content type, metadata and audience targeting
  12. 12. Workflows • Right up front: neither of us are big fans • Great for frequent, repetitive tasks; information work tends to be highly exception-driven • Often used to get around things that are seen as SharePoint limitations • Sometimes can use script to accomplish similar things • Can be unreliable
  13. 13. Display Templates • New in SharePoint 2013 • JavaScript-driven • Might be the new DVWP? • Documentation is not great
  14. 14. Content Search Web Parts (CSWPs) • New in SharePoint 2013 • "Soon" available on Office365 • Display Template driven • Depends on indexing schedule • Continuous crawling helps, but not a panacea
  15. 15. What Can’t [Shouldn't] You Do Without Managed Code? • Deploy files to the server’s file system • Event Receivers • Timer Jobs • Elevate Permissions • Deployment of a large number of sites or other objects
  16. 16. Client Side vs. Server Side • Contrary to some reports, client side development is not always a good thing • Be careful when you have large data volume, mathematical processing, etc. • You must know the "Lowest Common Denominator"
  17. 17. Development Must Also Follow Good Governance Practices • Coding practices • Deployment mechanisms • Testing methods • Documentation • Training • Maintenance planning
  18. 18. To our Demo • Let’s take a look at concrete business problem. – A employee award nomination system – Let’s say that our goal is to find an easy way to store, submit and report on nominations submitted by various users – how can we do that?
  19. 19. Employee Award Nominations • First thought… Maybe we can use a SharePoint list and create a submission form using InfoPath. Exporting the list to Excel would allow the admins the necessary level of reporting they should be looking for. • The team’s requirements is in this example are fairly basic. Automatically populating a few fields using user profile services is necessary but should not be any problem. There is one requirement that held us up. If the fictive customer wants to limit how many submissions any one user can do AND provide a current count of how many submissions that user had made on the form. • We could use another list with users and a count of their nominations combined with a workflow to either add a new user to the list or add 1 to the current count for an existing user on the list. The form would reference this secondary list to provide the count display on the form. • But wait: there has got to be an easier way, right?
  20. 20. WE LIKE SIMPLE SOLUTIONS!
  21. 21. Contact Information eMail christian@humandata.se Blog http://chrisstahl.wordpress.com Twitter @Cstahl LinkedIn christianstahl eMail marc.anderson@sympraxisconsulting.com Blog http://sympmarc.com SPServices http://spservices.codeplex.com SPXSLT http://spxslt.codeplex.com Books http://sympmarc.com/books
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×