SlideShare a Scribd company logo
Highs, lows & random rants on
SharePoint 2013
IMPLEMENTING A GOVERNANCE AND QUALITY MANAGEMENT IN
SHAREPOINT 2013
NORWEGIAN SHAREPOINT COMMUNITY – 2013-06-17
Brought to you by
Mikael
@MIKAELSVENSON
TECHMIKAEL.BLOGSPOT.COM
Harald
@CMDRTCHORT
WWW.FIANBAKKEN.COM
Processes and Diagrams
AKA THE IMPORT
File share, I loveth thee!
• Data stored in external system
• Exported as static HTML files to remote server, along with Diagrams (images)
• Exposing metadata as <META>
• Clickable <img> tags (image maps).
• Synced (RoboCopy) to server from static html files on a file share
• Imported to SharePoint and transformed
• Custom import job
• Publishing pages
Publishing Page
Library
Document
Library
SPSite
GIMS
Frontend
Pages GIMSDocs
Integration Architecture Legend
Timer Job
SharePoint 2013
Taxonomy
(Managed
Metadata)
QLM Generated HTML PagesQLM
Qualiware
Importer
Timer Job
Taxonomy
(Managed
Metadata)
DiagramLibrary
Flow, or pull as we call it
Scrape, scrape, baby
• Processes and parses a set of files
• Generic processing and parsing
• Reading <META> template
• Determines what SPContentType the type and constructs typed objects.
• Specific parsing for certain objects
• E.g. Selecting a WorkflowDiagramProcessor
• Uses reflection
• Parses meta data values
• Maps META headers to properties by convention
• Specific mapping
• Cleans HTML
• Remove javascript
• Remove onclicks, table headers++
Object model cat walk
• POCO’s
• Puzzle Framework
• SharePointations
• Annotations
• Auto-generate stuff
Workflows & Workflow
Manager
AKA THE DONKEY
Where is it?
Sites based on a blank template does not work out of the box – Won’t let you
create 2013 based workflows.
Enable-SPFeature -Identity WorkflowServiceStore –Url $yourUrl
Why don’t you love me?
At random times, workflows are getting cancelled
Details: System.ApplicationException: HTTP 401…
• User Profile Synchronization has to be started
• User Profile must exist for the user kicking of the workflow
You can’t handle the truth!
Workflow is suspended
Details: An unhandled exception occurred during the
execution of the workflow instance. Exception details:
System.ArgumentNullException: Value cannot be null
• Typically sending an e-mail fails as the user does not have e-mail address
• User is not synched to SiteUserInfoList with e-mail address
I don’t want to be approved!
• You want custom task outcomes
• No matter what the user picks as a result, the default outcome is returned in the
workflow, meaning option one - Approve.
You want an upgrade? – We’re all about SPD
• Remember to hit Publish before exporting
• Add a comment at the top for versioning
• Each export gives a new solution id, so no real version upgrade
• Deactivate the old feature, activate the new feature
2013 Workflow’s – Yes, we do love you!
• Overall, much better design experience compared to 2010
• It is v1, we know it will be killer in v3, just don’t tell the customer
• Nintex anyone?
Office Web Apps
AKA THE COMPANION (WAC)
• Customer: We want CHARTS!
• Mikael: I’m NOT coding charts in ASP.NET!
• Mikael: How about the Excel Viewer Web Part?
• Customer: No, we only have Standard License.
• Mikael: CRAP!
• WAC: Hey, I can help 
• Mikael: Of course! Because WAC in read-only mode is FREE, and
http://<ServerName>/_vti_bin/ExcelRest.aspx works just fine for
any SharePoint version (nothing needs to be enabled but WAC)
• Mikael: I’ll just whip up a custom web part for it!
Coming to a Codeplex site near you!
Click jacking anyone?
• SharePoint 2013 by default prevents pages from being click-jacked/ iframed
• SharePoint 2013 by default does not encourage you to use different domains for
parts of your solution
• http://intranet.contoso.com
• http://collaboration.contoso.com
• http://my.contoso.com
• http://qms.contoso.com
• http://search.contoso.com
Who iframed
Roger Rabbit?
Search previews did!
<webpartpages:allowframing runat="server" />
Social
AKA THE FORGETFUL
Users want to bookmark
• Feeds forgets when server runs out of memory – Veolocity Cache hooray!
• ..or when Velocity cache is reset
• Let’s follow the pages!
• Works just fine.. except…
• Our pages are on the format of E99829BB-70F3-4D72-980A-
E06D01FC1C83.aspx
• Feeds does not store the Title, but the Name field!
• JSOM to the rescue
• No default good grouping of what you have followed except
sites/documents/people/tags
JSOM is da shiznit!
• Rapid development and fun!
• At least three SP .js API’s who implement following
• Official API (sp.userprofiles.js)
• Page/list wrapper (followingcommon.js)
• Search wrapper (searchUI.js)
• OOB SharePoint does not check follow status on item load
Search
AKA MR KNOW IT ALL
Users want to see the world...
• A «360» view
• Automatically imported items (Processes)
• Documents
• Managed metadata
• Improvements (Relates to a process)
• Filter on «common» domain specific terms
• Business area or Region
The three leveled monster - Managed properties
• Site level, Site Collection level, SSA level
• Auto-generated properties
• Crawled
• Comes in «2»
• E.g. ows_q_DATE_ReportedDate, ows_ReportedDate
• Managed
• Always text!
• Don’t map to non-text columns
• Avoid auto-generation/mapping
• Script search setup
• Neat cmdlets
• *-SPEnterpriseSearchMetadataCrawledProperty , *-
SPEnterpriseSearchServiceApplication
Result sources
• Limit search to specific content
• Subset
• Content types +
• Easy administration from GUI
• Query transforms
• Preview
Result types and display templates
• Powerful feature
• Easy to get started
• Remember to press the button
Search result: Separatedifferent «artifacts»
Query rules and more
• The fun begins…
• Many ways to reach the goal
• Many errors in search along the way..
• 1 query rule to «rule them all»
• Promoted result blocks for each rs
• No good
• Global result source
• Distinct query rules
• One promoted block in each
Some quirks...
• Refiner on ContentType
• Application/xhtml [some newlines] MyContentType
• Not user friendly
• Use the builtin magic Managed property
• SPContentType
• Displaying a «User» field
• Shows the Claims identifier
• |Harald Fianbakken|8238229110120ACCE19192911;i0#;fianbakkenharald.fianbakken|harald.fianbakken@fianbakken.com|
• Fix by Javascript
• Check mapping order
• ows_Created_0x0020_by, Internal:105, Internal:3
…and we have more quirks…
• Managed properties not fetched
• Even when specified
• SPContentType is not returned in display template
• !retrievable
• Query rules not triggered
• But triggered when using the «preview».
• Result sources throwing exception, when used
• But working in preview
Lessons learnt...
• Avoid «complex» query rules
• 1 query rule per «result type»
• Create search schema on SSA
• If possible
• RAM
• Strange behaviors
• Crashes/query processing
• When in doubt; Reboot
Managed metadata
AKA THE ORACLE
More than just tagging documents..
Term based navigation
Custom properties on terms
Endless possibilities
• Requirement:
• «Our users need different forms for the Business area when submitting an item. The BA’s have
different fields required (and option) for when submitting an item, and different requirements when
editing the item».
• Solution:
• Use term store
• Add some custom coding
• Custom coding
• Dynamic populated dropdown lists and checkbox lists for the same SPField
• Add configurable options (properties) for each field
• Allowing a site collection admin (or term storeadmin) to customize the form
• Enforce «required» or hide fields in the different display modes.
• Automatically fill out values in form based on choices
• E.g. Selecting a «Improvement area» from a dropdown, sets another field by looking up the selected value
custom property
• Possible to port parts of code to delegate control.
Example – Dynamic term driven form
Annie - The orphaned site-collection group
• Removing a site collection yields a orphaned group
• Not visible from GUI
• Interfers
• Accessable through Powershell
• Remove the old termstore
HTML, CSS, BOOTSTRAP,
Script
AKA MR PERFECT
Get the right markup, get the markup right
• Twitter Bootstrap for SharePoint - http://bootstrapsharepoint.codeplex.com/
• Designers want to do HTML5/CSS3
• Customers want IE8
• Do NOT under-estimate the time needed to make your design fit in IE8 with
SharePoint overrides.
Mega menu script– out with the old
SP.SOD.executeFunc('sp.core.js', 'SP.UI.AspMenu', function() {
// Mega Menu
// Kill off SP's default menu hover script
SP.UI.AspMenu.prototype.showSubMenu = function () { };
});
Mega menu CSS
$(".pageNav").affix({ offset: { top: "270px" } });
$(".pageNav ul li").click(function () {
$(".pageNav li.active").removeClass("active");
$(this).addClass("active");
});
$(".root li.static.dynamic-children").hover(function () {
var browserWidth = $("#s4-bodyContainer").width();
var menuoffset = parseInt((browserWidth - 1200) / 2);
browserWidth -= menuoffset * 2;
$(this).find('>a').addClass('hover');
$(this).find('>ul.dynamic').css({ zindex: "200", width: browserWidth + "px", paddingRight: menuoffset
+ "px", paddingLeft: menuoffset + "px", left: "-" + menuoffset + "px" }).show();
}, function () {
$(this).find('>ul.dynamic').css("zindex", "100").hide();
$(this).find('>a').removeClass('hover');
});
$(".root.ms-core-listMenu-root .static ul.dynamic li.dynamic ul.dynamic li.dynamic-
children").hover(function () {
$(this).find(">ul.dynamic").show();
}, function () {
$(this).find(">ul.dynamic").hide();
});
Wrap-up
• Import data from file share to publishing pages
• Workflows 2013 style
• Office Web Apps (WAC) for charts
• Social following
• Search
• Managed meta data
• UI customizations
Resources
• http://www.fianbakken.com/
• http://nuget.org/packages/Fianbakken.SharePointations/
• http://techmikael.blogspot.com/
• http://anujabhojani.blogspot.in/
Questions?

More Related Content

What's hot

Dogfood slides 2012
Dogfood slides 2012Dogfood slides 2012
Dogfood slides 2012Ryan Dennis
 
Share point 2013 Building Websites
Share point 2013 Building WebsitesShare point 2013 Building Websites
Share point 2013 Building Websites
Suhas R Satish
 
Funnel your Info down a new Path
Funnel your Info down a new PathFunnel your Info down a new Path
Funnel your Info down a new Path
Ryan Dennis
 
The SharePoint & jQuery Guide
The SharePoint & jQuery GuideThe SharePoint & jQuery Guide
The SharePoint & jQuery Guide
Mark Rackley
 
Build your SharePoint Internet Presence with PowerShell
Build your SharePoint Internet Presence with PowerShellBuild your SharePoint Internet Presence with PowerShell
Build your SharePoint Internet Presence with PowerShellRyan Dennis
 
SharePoint 2016 Platform Adoption Lessons Learned and Advanced Troubleshooting
SharePoint 2016 Platform Adoption   Lessons Learned and Advanced TroubleshootingSharePoint 2016 Platform Adoption   Lessons Learned and Advanced Troubleshooting
SharePoint 2016 Platform Adoption Lessons Learned and Advanced Troubleshooting
John Calvert
 
Making your user happy – how to create a perfect profile
Making your user happy – how to create a perfect profileMaking your user happy – how to create a perfect profile
Making your user happy – how to create a perfect profile
LetsConnect
 
What is SharePoint Development??
What is SharePoint Development??What is SharePoint Development??
What is SharePoint Development??Mark Rackley
 
SharePoint 2016 Adoption - Lessons Learned and Advanced Troubleshooting
SharePoint 2016 Adoption - Lessons Learned and Advanced TroubleshootingSharePoint 2016 Adoption - Lessons Learned and Advanced Troubleshooting
SharePoint 2016 Adoption - Lessons Learned and Advanced Troubleshooting
John Calvert
 
Do's and don'ts for Office 365 development
Do's and don'ts for Office 365 developmentDo's and don'ts for Office 365 development
Do's and don'ts for Office 365 development
Chris O'Brien
 
Tutorial, Part 2: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 2: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...Tutorial, Part 2: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 2: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
SPTechCon
 
SharePoint Development with Visual Studio 2012
SharePoint Development with Visual Studio 2012SharePoint Development with Visual Studio 2012
SharePoint Development with Visual Studio 2012
Thuan Ng
 
Bringing Zest to SharePoint Sites Using Out-of-the-Box Technology
Bringing Zest to SharePoint Sites Using Out-of-the-Box TechnologyBringing Zest to SharePoint Sites Using Out-of-the-Box Technology
Bringing Zest to SharePoint Sites Using Out-of-the-Box Technologyjoelsef
 
Introduction to Client Side Dev in SharePoint Workshop
Introduction to Client Side Dev in SharePoint WorkshopIntroduction to Client Side Dev in SharePoint Workshop
Introduction to Client Side Dev in SharePoint Workshop
Mark Rackley
 
The future of web development write once, run everywhere with angular.js and ...
The future of web development write once, run everywhere with angular.js and ...The future of web development write once, run everywhere with angular.js and ...
The future of web development write once, run everywhere with angular.js and ...
Mark Roden
 
Building a SharePoint Platform That Scales
Building a SharePoint Platform That ScalesBuilding a SharePoint Platform That Scales
Building a SharePoint Platform That Scales
Scott Hoag
 
How to crack java script certification
How to crack java script certificationHow to crack java script certification
How to crack java script certification
KadharBashaJ
 
ITPro's taking the SharePoint 2013 Red Pill
ITPro's taking the SharePoint 2013 Red PillITPro's taking the SharePoint 2013 Red Pill
ITPro's taking the SharePoint 2013 Red Pill
Jason Himmelstein
 
SharePoint - Creating Beautiful Yet Powerful Dashboards Using jQuery
SharePoint - Creating Beautiful Yet Powerful Dashboards Using jQuerySharePoint - Creating Beautiful Yet Powerful Dashboards Using jQuery
SharePoint - Creating Beautiful Yet Powerful Dashboards Using jQueryKen Kuzdas
 
How to develop maintainable custom Workflows in Office365 SharePoint online 2...
How to develop maintainable custom Workflows in Office365 SharePoint online 2...How to develop maintainable custom Workflows in Office365 SharePoint online 2...
How to develop maintainable custom Workflows in Office365 SharePoint online 2...
Prashant G Bhoyar (Microsoft MVP)
 

What's hot (20)

Dogfood slides 2012
Dogfood slides 2012Dogfood slides 2012
Dogfood slides 2012
 
Share point 2013 Building Websites
Share point 2013 Building WebsitesShare point 2013 Building Websites
Share point 2013 Building Websites
 
Funnel your Info down a new Path
Funnel your Info down a new PathFunnel your Info down a new Path
Funnel your Info down a new Path
 
The SharePoint & jQuery Guide
The SharePoint & jQuery GuideThe SharePoint & jQuery Guide
The SharePoint & jQuery Guide
 
Build your SharePoint Internet Presence with PowerShell
Build your SharePoint Internet Presence with PowerShellBuild your SharePoint Internet Presence with PowerShell
Build your SharePoint Internet Presence with PowerShell
 
SharePoint 2016 Platform Adoption Lessons Learned and Advanced Troubleshooting
SharePoint 2016 Platform Adoption   Lessons Learned and Advanced TroubleshootingSharePoint 2016 Platform Adoption   Lessons Learned and Advanced Troubleshooting
SharePoint 2016 Platform Adoption Lessons Learned and Advanced Troubleshooting
 
Making your user happy – how to create a perfect profile
Making your user happy – how to create a perfect profileMaking your user happy – how to create a perfect profile
Making your user happy – how to create a perfect profile
 
What is SharePoint Development??
What is SharePoint Development??What is SharePoint Development??
What is SharePoint Development??
 
SharePoint 2016 Adoption - Lessons Learned and Advanced Troubleshooting
SharePoint 2016 Adoption - Lessons Learned and Advanced TroubleshootingSharePoint 2016 Adoption - Lessons Learned and Advanced Troubleshooting
SharePoint 2016 Adoption - Lessons Learned and Advanced Troubleshooting
 
Do's and don'ts for Office 365 development
Do's and don'ts for Office 365 developmentDo's and don'ts for Office 365 development
Do's and don'ts for Office 365 development
 
Tutorial, Part 2: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 2: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...Tutorial, Part 2: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 2: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
 
SharePoint Development with Visual Studio 2012
SharePoint Development with Visual Studio 2012SharePoint Development with Visual Studio 2012
SharePoint Development with Visual Studio 2012
 
Bringing Zest to SharePoint Sites Using Out-of-the-Box Technology
Bringing Zest to SharePoint Sites Using Out-of-the-Box TechnologyBringing Zest to SharePoint Sites Using Out-of-the-Box Technology
Bringing Zest to SharePoint Sites Using Out-of-the-Box Technology
 
Introduction to Client Side Dev in SharePoint Workshop
Introduction to Client Side Dev in SharePoint WorkshopIntroduction to Client Side Dev in SharePoint Workshop
Introduction to Client Side Dev in SharePoint Workshop
 
The future of web development write once, run everywhere with angular.js and ...
The future of web development write once, run everywhere with angular.js and ...The future of web development write once, run everywhere with angular.js and ...
The future of web development write once, run everywhere with angular.js and ...
 
Building a SharePoint Platform That Scales
Building a SharePoint Platform That ScalesBuilding a SharePoint Platform That Scales
Building a SharePoint Platform That Scales
 
How to crack java script certification
How to crack java script certificationHow to crack java script certification
How to crack java script certification
 
ITPro's taking the SharePoint 2013 Red Pill
ITPro's taking the SharePoint 2013 Red PillITPro's taking the SharePoint 2013 Red Pill
ITPro's taking the SharePoint 2013 Red Pill
 
SharePoint - Creating Beautiful Yet Powerful Dashboards Using jQuery
SharePoint - Creating Beautiful Yet Powerful Dashboards Using jQuerySharePoint - Creating Beautiful Yet Powerful Dashboards Using jQuery
SharePoint - Creating Beautiful Yet Powerful Dashboards Using jQuery
 
How to develop maintainable custom Workflows in Office365 SharePoint online 2...
How to develop maintainable custom Workflows in Office365 SharePoint online 2...How to develop maintainable custom Workflows in Office365 SharePoint online 2...
How to develop maintainable custom Workflows in Office365 SharePoint online 2...
 

Similar to Nsc 2013 06-17 - random rants on 2013

JSLink for ITPros - SharePoint Saturday Jersey
JSLink for ITPros - SharePoint Saturday JerseyJSLink for ITPros - SharePoint Saturday Jersey
JSLink for ITPros - SharePoint Saturday Jersey
Paul Hunt
 
SUGUK Cambridge - Display Templates & JSLink for IT Pros
SUGUK Cambridge - Display Templates & JSLink for IT ProsSUGUK Cambridge - Display Templates & JSLink for IT Pros
SUGUK Cambridge - Display Templates & JSLink for IT Pros
Paul Hunt
 
SharePoint Saturday Belgium 2014 - Using JSLink and Display Templates with th...
SharePoint Saturday Belgium 2014 - Using JSLink and Display Templates with th...SharePoint Saturday Belgium 2014 - Using JSLink and Display Templates with th...
SharePoint Saturday Belgium 2014 - Using JSLink and Display Templates with th...BIWUG
 
Spsbe using js-linkanddisplaytemplates
Spsbe   using js-linkanddisplaytemplatesSpsbe   using js-linkanddisplaytemplates
Spsbe using js-linkanddisplaytemplates
Paul Hunt
 
Features, Exportables & You
Features, Exportables & YouFeatures, Exportables & You
Features, Exportables & You
jskulski
 
#SPSLondon - Session 2 JSLink for IT Pros
#SPSLondon - Session 2 JSLink for IT Pros#SPSLondon - Session 2 JSLink for IT Pros
#SPSLondon - Session 2 JSLink for IT Pros
Paul Hunt
 
High-level Guide: Upgrading to SharePoint 2013
High-level Guide: Upgrading to SharePoint 2013High-level Guide: Upgrading to SharePoint 2013
High-level Guide: Upgrading to SharePoint 2013C5 Insight
 
Single Page Applications: Your Browser is the OS!
Single Page Applications: Your Browser is the OS!Single Page Applications: Your Browser is the OS!
Single Page Applications: Your Browser is the OS!
Jeremy Likness
 
[Pinto] Is my SharePoint Development team properly enlighted?
[Pinto] Is my SharePoint Development team properly enlighted?[Pinto] Is my SharePoint Development team properly enlighted?
[Pinto] Is my SharePoint Development team properly enlighted?
European Collaboration Summit
 
Where to save my data, for devs!
Where to save my data, for devs!Where to save my data, for devs!
Where to save my data, for devs!
SharePoint Saturday New Jersey
 
Drew madelung sp designer workflows - sp-biz
Drew madelung   sp designer workflows - sp-bizDrew madelung   sp designer workflows - sp-biz
Drew madelung sp designer workflows - sp-biz
Drew Madelung
 
CUST-2 New Client Configuration & Extension Points in Share
CUST-2 New Client Configuration & Extension Points in ShareCUST-2 New Client Configuration & Extension Points in Share
CUST-2 New Client Configuration & Extension Points in Share
Alfresco Software
 
5 Common Mistakes You are Making on your Website
 5 Common Mistakes You are Making on your Website 5 Common Mistakes You are Making on your Website
5 Common Mistakes You are Making on your WebsiteAcquia
 
SharePoint Saturday San Antonio: Workflow 2013
SharePoint Saturday San Antonio: Workflow 2013SharePoint Saturday San Antonio: Workflow 2013
SharePoint Saturday San Antonio: Workflow 2013
Sam Larko
 
Web Components
Web ComponentsWeb Components
Web Components
FITC
 
Masterin Large Scale Java Script Applications
Masterin Large Scale Java Script ApplicationsMasterin Large Scale Java Script Applications
Masterin Large Scale Java Script Applications
Fabian Jakobs
 
WordCamp Sheffield 2014 Theme Workflow Presentation
WordCamp Sheffield 2014 Theme Workflow PresentationWordCamp Sheffield 2014 Theme Workflow Presentation
WordCamp Sheffield 2014 Theme Workflow Presentation
Jonny Allbut
 
Lifecycle Management with SharePoint Apps and Solutions
Lifecycle Management with SharePoint Apps and SolutionsLifecycle Management with SharePoint Apps and Solutions
Lifecycle Management with SharePoint Apps and Solutions
SPC Adriatics
 
Himmelstein SP Connections HAD207 SharePoint Logging & Debugging
Himmelstein SP Connections HAD207 SharePoint Logging & DebuggingHimmelstein SP Connections HAD207 SharePoint Logging & Debugging
Himmelstein SP Connections HAD207 SharePoint Logging & Debugging
Sentri
 

Similar to Nsc 2013 06-17 - random rants on 2013 (20)

JSLink for ITPros - SharePoint Saturday Jersey
JSLink for ITPros - SharePoint Saturday JerseyJSLink for ITPros - SharePoint Saturday Jersey
JSLink for ITPros - SharePoint Saturday Jersey
 
SUGUK Cambridge - Display Templates & JSLink for IT Pros
SUGUK Cambridge - Display Templates & JSLink for IT ProsSUGUK Cambridge - Display Templates & JSLink for IT Pros
SUGUK Cambridge - Display Templates & JSLink for IT Pros
 
SharePoint Saturday Belgium 2014 - Using JSLink and Display Templates with th...
SharePoint Saturday Belgium 2014 - Using JSLink and Display Templates with th...SharePoint Saturday Belgium 2014 - Using JSLink and Display Templates with th...
SharePoint Saturday Belgium 2014 - Using JSLink and Display Templates with th...
 
Spsbe using js-linkanddisplaytemplates
Spsbe   using js-linkanddisplaytemplatesSpsbe   using js-linkanddisplaytemplates
Spsbe using js-linkanddisplaytemplates
 
Features, Exportables & You
Features, Exportables & YouFeatures, Exportables & You
Features, Exportables & You
 
#SPSLondon - Session 2 JSLink for IT Pros
#SPSLondon - Session 2 JSLink for IT Pros#SPSLondon - Session 2 JSLink for IT Pros
#SPSLondon - Session 2 JSLink for IT Pros
 
High-level Guide: Upgrading to SharePoint 2013
High-level Guide: Upgrading to SharePoint 2013High-level Guide: Upgrading to SharePoint 2013
High-level Guide: Upgrading to SharePoint 2013
 
Single Page Applications: Your Browser is the OS!
Single Page Applications: Your Browser is the OS!Single Page Applications: Your Browser is the OS!
Single Page Applications: Your Browser is the OS!
 
[Pinto] Is my SharePoint Development team properly enlighted?
[Pinto] Is my SharePoint Development team properly enlighted?[Pinto] Is my SharePoint Development team properly enlighted?
[Pinto] Is my SharePoint Development team properly enlighted?
 
Where to save my data, for devs!
Where to save my data, for devs!Where to save my data, for devs!
Where to save my data, for devs!
 
Drew madelung sp designer workflows - sp-biz
Drew madelung   sp designer workflows - sp-bizDrew madelung   sp designer workflows - sp-biz
Drew madelung sp designer workflows - sp-biz
 
CUST-2 New Client Configuration & Extension Points in Share
CUST-2 New Client Configuration & Extension Points in ShareCUST-2 New Client Configuration & Extension Points in Share
CUST-2 New Client Configuration & Extension Points in Share
 
5 Common Mistakes You are Making on your Website
 5 Common Mistakes You are Making on your Website 5 Common Mistakes You are Making on your Website
5 Common Mistakes You are Making on your Website
 
SharePoint Saturday San Antonio: Workflow 2013
SharePoint Saturday San Antonio: Workflow 2013SharePoint Saturday San Antonio: Workflow 2013
SharePoint Saturday San Antonio: Workflow 2013
 
Web Components
Web ComponentsWeb Components
Web Components
 
Masterin Large Scale Java Script Applications
Masterin Large Scale Java Script ApplicationsMasterin Large Scale Java Script Applications
Masterin Large Scale Java Script Applications
 
WordCamp Sheffield 2014 Theme Workflow Presentation
WordCamp Sheffield 2014 Theme Workflow PresentationWordCamp Sheffield 2014 Theme Workflow Presentation
WordCamp Sheffield 2014 Theme Workflow Presentation
 
Angular SEO
Angular SEO Angular SEO
Angular SEO
 
Lifecycle Management with SharePoint Apps and Solutions
Lifecycle Management with SharePoint Apps and SolutionsLifecycle Management with SharePoint Apps and Solutions
Lifecycle Management with SharePoint Apps and Solutions
 
Himmelstein SP Connections HAD207 SharePoint Logging & Debugging
Himmelstein SP Connections HAD207 SharePoint Logging & DebuggingHimmelstein SP Connections HAD207 SharePoint Logging & Debugging
Himmelstein SP Connections HAD207 SharePoint Logging & Debugging
 

More from Mikael Svenson

Nyheter i O365-porteføljen og Office 2016
Nyheter i O365-porteføljen og Office 2016Nyheter i O365-porteføljen og Office 2016
Nyheter i O365-porteføljen og Office 2016
Mikael Svenson
 
Office graph - Is it your cup of tea?
Office graph - Is it your cup of tea?Office graph - Is it your cup of tea?
Office graph - Is it your cup of tea?
Mikael Svenson
 
SharePoint - The hybrid story and beyond
SharePoint - The hybrid story and beyondSharePoint - The hybrid story and beyond
SharePoint - The hybrid story and beyond
Mikael Svenson
 
Norwegian SharePoint Community - What happened at Ignite
Norwegian SharePoint Community - What happened at IgniteNorwegian SharePoint Community - What happened at Ignite
Norwegian SharePoint Community - What happened at Ignite
Mikael Svenson
 
SharePoint Search Queries Explained - SPSSthlm 2015
SharePoint Search Queries Explained - SPSSthlm 2015SharePoint Search Queries Explained - SPSSthlm 2015
SharePoint Search Queries Explained - SPSSthlm 2015
Mikael Svenson
 
Techniques for Creating Social Refiners in SharePoint Search
Techniques for Creating Social Refiners in SharePoint SearchTechniques for Creating Social Refiners in SharePoint Search
Techniques for Creating Social Refiners in SharePoint Search
Mikael Svenson
 
Search Queries Explained – A Deep Dive into Query Rules, Query Variables and ...
Search Queries Explained – A Deep Dive into Query Rules, Query Variables and ...Search Queries Explained – A Deep Dive into Query Rules, Query Variables and ...
Search Queries Explained – A Deep Dive into Query Rules, Query Variables and ...
Mikael Svenson
 
SharePoint - Display Templates Overview
SharePoint - Display Templates OverviewSharePoint - Display Templates Overview
SharePoint - Display Templates Overview
Mikael Svenson
 
Share point – client search api’s
Share point – client search api’sShare point – client search api’s
Share point – client search api’s
Mikael Svenson
 
SharePoint Saturday Belgium - Contextual Search and More..
SharePoint Saturday Belgium - Contextual Search and More..SharePoint Saturday Belgium - Contextual Search and More..
SharePoint Saturday Belgium - Contextual Search and More..
Mikael Svenson
 
Nsc 2011 09-21 search 101
Nsc 2011 09-21 search 101Nsc 2011 09-21 search 101
Nsc 2011 09-21 search 101
Mikael Svenson
 
Er gratis søk egentlig noe tess
Er gratis søk egentlig noe tessEr gratis søk egentlig noe tess
Er gratis søk egentlig noe tess
Mikael Svenson
 

More from Mikael Svenson (12)

Nyheter i O365-porteføljen og Office 2016
Nyheter i O365-porteføljen og Office 2016Nyheter i O365-porteføljen og Office 2016
Nyheter i O365-porteføljen og Office 2016
 
Office graph - Is it your cup of tea?
Office graph - Is it your cup of tea?Office graph - Is it your cup of tea?
Office graph - Is it your cup of tea?
 
SharePoint - The hybrid story and beyond
SharePoint - The hybrid story and beyondSharePoint - The hybrid story and beyond
SharePoint - The hybrid story and beyond
 
Norwegian SharePoint Community - What happened at Ignite
Norwegian SharePoint Community - What happened at IgniteNorwegian SharePoint Community - What happened at Ignite
Norwegian SharePoint Community - What happened at Ignite
 
SharePoint Search Queries Explained - SPSSthlm 2015
SharePoint Search Queries Explained - SPSSthlm 2015SharePoint Search Queries Explained - SPSSthlm 2015
SharePoint Search Queries Explained - SPSSthlm 2015
 
Techniques for Creating Social Refiners in SharePoint Search
Techniques for Creating Social Refiners in SharePoint SearchTechniques for Creating Social Refiners in SharePoint Search
Techniques for Creating Social Refiners in SharePoint Search
 
Search Queries Explained – A Deep Dive into Query Rules, Query Variables and ...
Search Queries Explained – A Deep Dive into Query Rules, Query Variables and ...Search Queries Explained – A Deep Dive into Query Rules, Query Variables and ...
Search Queries Explained – A Deep Dive into Query Rules, Query Variables and ...
 
SharePoint - Display Templates Overview
SharePoint - Display Templates OverviewSharePoint - Display Templates Overview
SharePoint - Display Templates Overview
 
Share point – client search api’s
Share point – client search api’sShare point – client search api’s
Share point – client search api’s
 
SharePoint Saturday Belgium - Contextual Search and More..
SharePoint Saturday Belgium - Contextual Search and More..SharePoint Saturday Belgium - Contextual Search and More..
SharePoint Saturday Belgium - Contextual Search and More..
 
Nsc 2011 09-21 search 101
Nsc 2011 09-21 search 101Nsc 2011 09-21 search 101
Nsc 2011 09-21 search 101
 
Er gratis søk egentlig noe tess
Er gratis søk egentlig noe tessEr gratis søk egentlig noe tess
Er gratis søk egentlig noe tess
 

Recently uploaded

Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Aggregage
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
Rohit Gautam
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
RinaMondal9
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
ThomasParaiso2
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
名前 です男
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
nkrafacyberclub
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Nexer Digital
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
SOFTTECHHUB
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
Uni Systems S.M.S.A.
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
DianaGray10
 

Recently uploaded (20)

Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
 

Nsc 2013 06-17 - random rants on 2013

  • 1. Highs, lows & random rants on SharePoint 2013 IMPLEMENTING A GOVERNANCE AND QUALITY MANAGEMENT IN SHAREPOINT 2013 NORWEGIAN SHAREPOINT COMMUNITY – 2013-06-17
  • 6. File share, I loveth thee! • Data stored in external system • Exported as static HTML files to remote server, along with Diagrams (images) • Exposing metadata as <META> • Clickable <img> tags (image maps). • Synced (RoboCopy) to server from static html files on a file share • Imported to SharePoint and transformed • Custom import job • Publishing pages
  • 7. Publishing Page Library Document Library SPSite GIMS Frontend Pages GIMSDocs Integration Architecture Legend Timer Job SharePoint 2013 Taxonomy (Managed Metadata) QLM Generated HTML PagesQLM Qualiware Importer Timer Job Taxonomy (Managed Metadata) DiagramLibrary Flow, or pull as we call it
  • 8. Scrape, scrape, baby • Processes and parses a set of files • Generic processing and parsing • Reading <META> template • Determines what SPContentType the type and constructs typed objects. • Specific parsing for certain objects • E.g. Selecting a WorkflowDiagramProcessor • Uses reflection • Parses meta data values • Maps META headers to properties by convention • Specific mapping • Cleans HTML • Remove javascript • Remove onclicks, table headers++
  • 9. Object model cat walk • POCO’s • Puzzle Framework • SharePointations • Annotations • Auto-generate stuff
  • 11. Where is it? Sites based on a blank template does not work out of the box – Won’t let you create 2013 based workflows. Enable-SPFeature -Identity WorkflowServiceStore –Url $yourUrl
  • 12. Why don’t you love me? At random times, workflows are getting cancelled Details: System.ApplicationException: HTTP 401… • User Profile Synchronization has to be started • User Profile must exist for the user kicking of the workflow
  • 13. You can’t handle the truth! Workflow is suspended Details: An unhandled exception occurred during the execution of the workflow instance. Exception details: System.ArgumentNullException: Value cannot be null • Typically sending an e-mail fails as the user does not have e-mail address • User is not synched to SiteUserInfoList with e-mail address
  • 14. I don’t want to be approved! • You want custom task outcomes • No matter what the user picks as a result, the default outcome is returned in the workflow, meaning option one - Approve.
  • 15. You want an upgrade? – We’re all about SPD • Remember to hit Publish before exporting • Add a comment at the top for versioning • Each export gives a new solution id, so no real version upgrade • Deactivate the old feature, activate the new feature
  • 16. 2013 Workflow’s – Yes, we do love you! • Overall, much better design experience compared to 2010 • It is v1, we know it will be killer in v3, just don’t tell the customer • Nintex anyone?
  • 17. Office Web Apps AKA THE COMPANION (WAC)
  • 18. • Customer: We want CHARTS! • Mikael: I’m NOT coding charts in ASP.NET! • Mikael: How about the Excel Viewer Web Part? • Customer: No, we only have Standard License. • Mikael: CRAP! • WAC: Hey, I can help  • Mikael: Of course! Because WAC in read-only mode is FREE, and http://<ServerName>/_vti_bin/ExcelRest.aspx works just fine for any SharePoint version (nothing needs to be enabled but WAC) • Mikael: I’ll just whip up a custom web part for it!
  • 19. Coming to a Codeplex site near you!
  • 20. Click jacking anyone? • SharePoint 2013 by default prevents pages from being click-jacked/ iframed • SharePoint 2013 by default does not encourage you to use different domains for parts of your solution • http://intranet.contoso.com • http://collaboration.contoso.com • http://my.contoso.com • http://qms.contoso.com • http://search.contoso.com
  • 21. Who iframed Roger Rabbit? Search previews did! <webpartpages:allowframing runat="server" />
  • 23. Users want to bookmark • Feeds forgets when server runs out of memory – Veolocity Cache hooray! • ..or when Velocity cache is reset • Let’s follow the pages! • Works just fine.. except… • Our pages are on the format of E99829BB-70F3-4D72-980A- E06D01FC1C83.aspx • Feeds does not store the Title, but the Name field! • JSOM to the rescue • No default good grouping of what you have followed except sites/documents/people/tags
  • 24. JSOM is da shiznit! • Rapid development and fun! • At least three SP .js API’s who implement following • Official API (sp.userprofiles.js) • Page/list wrapper (followingcommon.js) • Search wrapper (searchUI.js) • OOB SharePoint does not check follow status on item load
  • 26. Users want to see the world... • A «360» view • Automatically imported items (Processes) • Documents • Managed metadata • Improvements (Relates to a process) • Filter on «common» domain specific terms • Business area or Region
  • 27. The three leveled monster - Managed properties • Site level, Site Collection level, SSA level • Auto-generated properties • Crawled • Comes in «2» • E.g. ows_q_DATE_ReportedDate, ows_ReportedDate • Managed • Always text! • Don’t map to non-text columns • Avoid auto-generation/mapping • Script search setup • Neat cmdlets • *-SPEnterpriseSearchMetadataCrawledProperty , *- SPEnterpriseSearchServiceApplication
  • 28. Result sources • Limit search to specific content • Subset • Content types + • Easy administration from GUI • Query transforms • Preview
  • 29. Result types and display templates • Powerful feature • Easy to get started • Remember to press the button
  • 31. Query rules and more • The fun begins… • Many ways to reach the goal • Many errors in search along the way.. • 1 query rule to «rule them all» • Promoted result blocks for each rs • No good • Global result source • Distinct query rules • One promoted block in each
  • 32. Some quirks... • Refiner on ContentType • Application/xhtml [some newlines] MyContentType • Not user friendly • Use the builtin magic Managed property • SPContentType • Displaying a «User» field • Shows the Claims identifier • |Harald Fianbakken|8238229110120ACCE19192911;i0#;fianbakkenharald.fianbakken|harald.fianbakken@fianbakken.com| • Fix by Javascript • Check mapping order • ows_Created_0x0020_by, Internal:105, Internal:3
  • 33. …and we have more quirks… • Managed properties not fetched • Even when specified • SPContentType is not returned in display template • !retrievable • Query rules not triggered • But triggered when using the «preview». • Result sources throwing exception, when used • But working in preview
  • 34. Lessons learnt... • Avoid «complex» query rules • 1 query rule per «result type» • Create search schema on SSA • If possible • RAM • Strange behaviors • Crashes/query processing • When in doubt; Reboot
  • 36. More than just tagging documents.. Term based navigation
  • 38. Endless possibilities • Requirement: • «Our users need different forms for the Business area when submitting an item. The BA’s have different fields required (and option) for when submitting an item, and different requirements when editing the item». • Solution: • Use term store • Add some custom coding • Custom coding • Dynamic populated dropdown lists and checkbox lists for the same SPField • Add configurable options (properties) for each field • Allowing a site collection admin (or term storeadmin) to customize the form • Enforce «required» or hide fields in the different display modes. • Automatically fill out values in form based on choices • E.g. Selecting a «Improvement area» from a dropdown, sets another field by looking up the selected value custom property • Possible to port parts of code to delegate control.
  • 39. Example – Dynamic term driven form
  • 40. Annie - The orphaned site-collection group • Removing a site collection yields a orphaned group • Not visible from GUI • Interfers • Accessable through Powershell • Remove the old termstore
  • 42. Get the right markup, get the markup right • Twitter Bootstrap for SharePoint - http://bootstrapsharepoint.codeplex.com/ • Designers want to do HTML5/CSS3 • Customers want IE8 • Do NOT under-estimate the time needed to make your design fit in IE8 with SharePoint overrides.
  • 43. Mega menu script– out with the old SP.SOD.executeFunc('sp.core.js', 'SP.UI.AspMenu', function() { // Mega Menu // Kill off SP's default menu hover script SP.UI.AspMenu.prototype.showSubMenu = function () { }; });
  • 44. Mega menu CSS $(".pageNav").affix({ offset: { top: "270px" } }); $(".pageNav ul li").click(function () { $(".pageNav li.active").removeClass("active"); $(this).addClass("active"); }); $(".root li.static.dynamic-children").hover(function () { var browserWidth = $("#s4-bodyContainer").width(); var menuoffset = parseInt((browserWidth - 1200) / 2); browserWidth -= menuoffset * 2; $(this).find('>a').addClass('hover'); $(this).find('>ul.dynamic').css({ zindex: "200", width: browserWidth + "px", paddingRight: menuoffset + "px", paddingLeft: menuoffset + "px", left: "-" + menuoffset + "px" }).show(); }, function () { $(this).find('>ul.dynamic').css("zindex", "100").hide(); $(this).find('>a').removeClass('hover'); }); $(".root.ms-core-listMenu-root .static ul.dynamic li.dynamic ul.dynamic li.dynamic- children").hover(function () { $(this).find(">ul.dynamic").show(); }, function () { $(this).find(">ul.dynamic").hide(); });
  • 45. Wrap-up • Import data from file share to publishing pages • Workflows 2013 style • Office Web Apps (WAC) for charts • Social following • Search • Managed meta data • UI customizations
  • 46. Resources • http://www.fianbakken.com/ • http://nuget.org/packages/Fianbakken.SharePointations/ • http://techmikael.blogspot.com/ • http://anujabhojani.blogspot.in/

Editor's Notes

  1. Create one global variable after the Assign task stepSet the global variable value to task outcome column explicitly.Mapped it with assigned task&apos;s TaskID variable.
  2. Web Applications Companion
  3. Nevnenoeomexplisitt loading a properties / strange behavior (lokalmaskin = working, server not loading properties unless explicitly specified..)
  4. Users want to display all related items...