Showing posts with label SharePoint 2016. Show all posts
Showing posts with label SharePoint 2016. Show all posts

Monday, November 20, 2017

Deploy JavaScript to a Site Collection or Web in Office 365 or On Premises + Dynamic Navigation Link

Scenario
  • You have some JavaScript you'd like to inject into a page and want the simplest method of deploying it to all pages within a Site Collection or Web.
Issue
  • You can do this via custom master pages, but then you break any future upgrades from Microsoft
  • You can also do this via a Sandbox code solution, SharePoint Framework, or a SharePoint Add-In, but these are all overly complex for this simple task and may not work in some environments due to incorrect environment configurations
Resolution
  • The simplest, fully supported way to do this is via a User Custom Action ScriptLink
  • John Liu has a nice UI tool to simplify registering your code with each site/site collection
Example
  • The following code example injects simple Javascript into each page to add a dynamic link to the left navigation menu (quick launch)
  • I like to put these in Site Assets at the Site Collection root.  If you don't have a Site Assets library, you can create one by opening the site in SharePoint Designer and double clicking the Site Assets link.  You can also do this by enabling any feature that utilizes the Site Assets library.  Otherwise, you can use a different library that everyone can read from.
  • You will need the following 3 files.  These should be saved into the Site Assets library at the site collection root site.
$(document).ready(function(){ 
 //Fixes Chrome Scrolling problem and load of ECMAScript 
 if (typeof(_spBodyOnLoadWrapper) !== 'undefined'){
     _spBodyOnLoadWrapper(); 
     
    console.log('test');
 MenuLastLI = $('#zz14_RootAspMenu li:last');
 MenuLastLI.before('
<li class="static"><a class="static menu-item ms-core-listMenu-item ms-displayInline ms-navedit-linkNode" href="http://www.votematrix.com/"><span class="additional-background ms-navedit-flyoutArrow"><span class="menu-item-text">CUSTOM LINK</span></span></a></li>
');
 }; });
  • Click to open John Liu's configuration page (configure-page.aspx)
  • Configure jQuery as Sequence 900 (so it loads first).  Install Site Collection.
  • Configure JSTest.js as Sequence 2000 (Loads after jQuery)
  • That's it.  The link should show on the left nav.

Tuesday, April 18, 2017

SharePoint 2016 Topology Planning

Scenario
  • You are architecting an on-premises SharePoint 2016 Server Farm infrastructure deployment.
Steps
  • If this is an upgrade, make sure you know what features were depricated
  • Determine your server license requirements
  • Determine if you need a scripted install or wizard install
    • Scripted
      • Utilize AutoSPInstaller (open source project) to create reusable installation scripts for easier re-provisioning of servers for multiple environments and disaster recovery scenarios
      • More time to setup and initially more error-prone with greater possibility of misconfiguration and typos
    • Wizard
      • Simplified interface and best support from MS
      • You should document in OneNote all settings chosen so you can reproduce exactly
  • Determine if you can use MinRoles and decide which roles to use for which servers and how many servers you need
    • MinRoles provide best practice configurations, are better supported by Microsoft, and are easier to redeploy using the wizard
    • MinRoles cannot be used in certain large and specialized farm configurations
    • Decide how many servers you need based on projected load and high availability requirements
    • Decide which roles to use by reviewing them here: Technet - MinRole Planning
  • Design SharePoint server topology using the roles and number of servers decided earlier
  • Design SQL, Workflow Manager, and Office Online (previously Office Web Apps) server configurations

Monday, May 4, 2015

My MS Ignite 2015

Day 1 - Monday
  • Keynote (~23,000 attendees)
    • SharePoint 2016 release not mentioned in the keynote!
    • No mention of the SharePoint brand even though several new Office 365 SharePoint features were demoed
      • Does this mean MS is splitting off the SharePoint brand into its cloud use-cases: Office 365, Sites, OneDrive, Search, Delve, etc.?
        • Will SharePoint end up being rebranded as "Office 365 On-Prem"?
      • Or possibly an indicator of a lack-luster SharePoint 2016 release?
    • Best newly demoed SharePoint/Outlook feature is the new email integration with attach file links integrated into Azure groups and SharePoint security
    • Best Windows 10 demos were the Cortana Power BI demo and the facial recognition login demo
    • Other stuff:
      • Skye for Business, Threat Analytics, Ops Management Suite, Azure Stack On-Premises, Windows Update changes, and the Surface Hub
  • Evolution of SharePoint: Overview and Roadmap (over-capacity including overflow room)
    • SharePoint 2016 = Office 365 On Premises
      • Basically most of what is already on or is coming to Office 365 SharePoint will now be made available on premises
    • Deployment wizard will allow deployment by Role
      • WFE, App, Search, etc.
    • Delve will be made available to SharePoint 2013 on-prem (soon?) 
Day 2 - Tuesday
  • Power BI
    • Live Dashboards
      • Drill into data
      • Ad-hoc BI
    • Power BI Designer (client app)
      • Preview release version
    • On-Prem Data Sources
      • Scheduled Refresh or Analysis Services Live Query
    • API for data pushes / live monitoring
      • Demoed mobile phone accelerometer data live reporting
        • App used API to send data directly to dashboard
  • Transforming your SharePoint Full Trust Code to the Office App Model
    • Branding
      • Why brand collab sites?
      • Leverage Office 365 Themes
      • SharePoint Themes
      • CDM instead of Site Assets to avoid caching/blob cache issues
      • Use alternate CSS and javascript instead of modifying master pages when possible
    • Provisioning
      • App/add-ins
      • Scripting
      • PnP Provisioning Engine
        • Security
        • Fields
        • TermGroups
        • Lists
        • Pages
        • Files
        • ComposedLook
        • Apply-SPOProvisioningTemplate
          • Will provision new items only, no updates
    • Sandboxed Solutions
      • Still deprecated, should continue to n bb  work in 2016
    • Script parts
      • Embedded javascript (node/jquery)
    • Office 365 App Model
      • Mail, contacts, lists, libraries, and other Office 365 features
      • Standalone apps interface for ez app launch
Day 3 - Wednesday
  • NanoServer
    • Preview bits available
    • No UI at all
    • Remote Powershell and Managemen Console support
      • Limited cmdlet support, no local workflows
    • Clustering and HyperV supported
    • Fast boot, minimal services running
    • Graphical remote management web based tool demoed
      • Works on all versions of Windows server
      • Process Manager
      • PowerShell window
      • System Settings
      • Device Manager
      • Event Viewer
    • ServerCore will be renamed to Server
    • Full Server/Server with a GUI will be renamed to Client
      • Not allowed in containers
    • Visual studio server apps targeted to either Server or Nano, not Client
    • Nano is simply a subset of Server, full compatibility for all features that are in both
      • You select features and drivers at deployment
    • Demo of Chef deployment to Nano with Ruby, Python, and C# components
    • More videos on channel 9
    • Reduces attack surface and maintenance requirements
      • Fewer services, memory usage, patches, reboots
      • .4GB footprint compared to 4.84GB
    • No MSI support
      • Nano Server installer in the works
  • CRM Online and Office 365: What's New
    • Integration Points
      • Outlook/Exchange
        • Email folder mapping of metadata
        • Create entities from email
      • Excel
      • Power BI
      • OneNote
      • Office 365
        • Groups integration
      • OneDrive
      • SharePoint
      • Yammer
      • Skype
      • Skype for Business
  • Office 365 Groups -Eric Zenz
    • Office 365 Group = SharePoint Site Collection
    • Outlook and Office App integrations
    • Groups include
      • Files
      • Group Notebook
      • Shared with us feed
      • Recycle Bin
      • Pages
    • Delve provides insights into groups
    • Future planned feature: Link groups to existing SharePoint sites
    • Discovery works across group mail and group viles
    • Coming in 2015
      • Guests membership
      • Dynamic membership
      • Data Leakage Prevention (DLP)
      • Quota management
      • Soft-delete
    • Graph REST endpoint
  • Line of Business Dev on Dynamics CRM (small room)
    • Dynamics CRM
      • Line of business and Customer Engagement
      • Solution development
        • Relationship
        • Process
        • Interaction
        • LOB
      • Giving campaign demo
        • Theme
        • Personalized
        • Navigation
        • Office 365 Integration
        • Configurable
        • Social and Collaborative
        • Mobile Ready
        • Customizable Search
        • Secured
        • Analytical
    • Build, Integrate, Manage
Day 4 - Thursday
  • Best Practices for Design and Performance in SharePoint Online
    • Branding Impact
      • Low Impact
      • High Impact
    • Responsive Web Design
      • Limited support for some common collaboration site features
        • Ex: Gantt charts
    • Composed Looks (Themes)
    • Design Manager
      • Converts HMTL to Masterpage automatically
    • Custom Branding
      • Use a starter masterpage
      • Layout with html css and imagers
      • Add SP Controls
    • Performance considerations
      • Image sizes
      • SharePoint Online caching less reliable due to number of servers
      • Demo of custom rollup nav delaying page load
    • Custom Masterpages will continue to be supported
      • Make sure to stay up to date with MS improvements
  • Deploying Yammer
    • Levi Strauss+
    • Yammer Embed
    • My Feed
    • Group Feeds
    • Liking
    • Sharing
    • Following
Day 5 - Friday
  • BCS to SQL hybrid
    • OData service on-prem exposes SQL data
  • Search hybrid
    • Search center on-prem or online
  • Security
    • AD sync
    • DirSync server
      • Claims from User Profile Sync Service
      • Config steps
        • Add on prem domain to tenant
        • Activate DirSync in your tenant
        • Update DNS records
        • Run DirSync wizard and start sync
        • Check users and groups in Tenant Admin
        • Activate and License users
      • Validate synchronization
        • DirSync Troubleshooter App
    • Azure AD Proxy on-prem manages ACS (Access Control Services) Trust
    • ADFS + ADFS Proxy for single sign-on
    • Configuring S2S
      • Replace STS Cert on all farms
      • Install S Sign in assistant and azure PowerShell
      • Register on-prem STS as Service Principle in 0365
      • Add SPN for on-prem domain
      • Register 0365 app principal as trusted provider
      • Set the auth realm on prem
    • Validate User Profile Service App
    • Search Validation
      • Result Source
        • ECB menu, click test source
      • Query builder
        • From Query Rules
      • Investigation
        • Partitioned search service or proxy not supported in hybrid
          • Fix: IgnoreTenatization
        • 400, 401, 403, 500 errors
    • BCS Validation