ACS Blogs

A blog site for Architecting Connected Systems staff to tell the world about their exploits in
SharePoint 2007/2010/2013, Windows Workflow Foundation (3.0/4.0) and other great technologies!
Welcome to ACS Blogs Sign in | Join | Help
in Search
MSPress

CJG

  • Nintex XChange Asset Review

    Nintex earlier this year unveiled a community portal for community members to provide helpful contributions to the Nintex user base called Nintex XChange.  It follows along with the "App marketplace" style of the Office 365 app store. 

    To date there are 80 contributions, here are my ratings (5 highest) on all of them with some extra data points at the end:

    AssetId Name Comment Rating DeploymentType AssetType Platform
    3686 Uber Price Estimate UDA Uber price estimate UDA...sweet! 5 Workflow Template;UDA UDA Nintex Workflow
    3947 Multi-Step form for Office 365 An example of how to make a Nintex Form that is multi stepped. This is pretty freakin awesome! 5 JavaScript JavaScript Nintex Forms
    3968 Data One 4 PowerShell Woah...running Server Side OM in a Nintex Action...Cool! Comes with intellsense and everything...dang! 5 SharePoint Solution Custom Action Nintex Workflow
    3949 Parsing XE.com data - UDA Currency convertor UDA, nice! 4 UDA UDA Nintex Workflows
    4210 How to Create Cascading Choice Controls – Nintex Forms A mix of CSS and JavaScript to implement cascading drop downs. Good Stuff! 4 CSS; JavaScript CSS; JavaScript Nintex Forms
    4237 Extract Lookup ID A regular expression to get the item ID from a lookup control. 4 JavaScript JavaScript Nintex Forms
    5896 Wunderlist UDAs for Nintex Workflow On-Prem A UDA that wraps Wunderlist API REST Calls. Actually made me go sign up so I could check it out...interesting! 4 UDA User Defined Action Nintex Workflow
    3894 Nintex Add-in for Outlook Nintex Add in for outlook. A simple app that looks for links in an email to notify a person that it is a Lazy Approval task. 4 Add-In Add-In Nintex Workflow
    3943 Visual Studio Post Deployment Script - ALCM A VisualStudio Post Deployment script for deploying your Nintex Artifacts to SharePoint from Visual Studio. Very handy! 4 PowerShell PowerShell Windows
    3896 Show Repeating Section as table in List View A script to show a repeating section as table in SharePoint View 4 JavaScript JavaScript Nintex Forms
    3897 Custom Validation for Nintex Forms An exmaple of how to write your own JavaScript custom validator. Very helpful! 4 JavaScript JavaScript Nintex Forms
    3903 Generate an HTML document with dynamic data Interseting take on generating a document from metadata in HTML format 4 Workflow Template Workflow Nintex Workflow
    3923 Iterate through documents in a Document Set Workflow that iterates through all the files in a document set. Coolness... 4 Workflow Template Workflow Nintex Workflow
    3925 Archiving a List Item with Workflow History A UDA that backs up workflow history from one instance to another. Interesting pattern. 4
    3936 Terminate Old Instances of a Workflow A UDA to terminate old workflow instances. Interesting... 4 UDA UDA Nintex Workflow
    3937 Business Days Validation for Forms Business day calculation JavaScript. 4 JavaScript JavaScript Nintex Forms
    3939 Convert Forms to PDF w/ Workflow Convert a form to a PDF using workflow. Pretty sweet use of out of box technology. 4 Workflow Template Workflow Nintex Workflow; Nintex Forms
    3706 Sending a TXT w/ Nintex Workflow How to send a SMS with Twilio via a web request - nice! 4 Guide Guide Nintex Workflow
    3723 Latitude and Longitude UDA How to get Latitude and Longitude via web request - nice solution 4 UDA UDA Nintex Workflow
    3607 Start Workflow with PowerShell Useful powershell script to start a nintex workflow 4 PowerShell PowerShell Nintex Workflow
    3729 Resetting Repeating Sections A custom action to reset the items in a repeating section. This is actually pretty darn handy! 4 SharePoint Solution Custom Action Nintex Workflow
    3841 Using the SharePoint REST service inside Nintex Forms An example of how to query SP REST endpoints using JavaScript 4 JavaScript JavaScript All
    3876 Tab-based Layout Solution How to make your forms tab based. Very helpful! 4 CSS CSS Nintex Forms
    3891 Embedding Signature Pad using JSignature.min.js An example of how to use JavaScript to embed a signature pad into your Nintex Forms. 4 JavaScript JavaScript Nintex Forms
    3892 Splitting Text - RegEx Example of a regex usage in Nintex Workflow 3 Guide Guide Nintex Workflow
    3858 Parsing Nintex Forms Repeating Section Solution - O365 A second type of master-child form using workflow to break out the items. This one is for Office 365. Similar to 3385. 3 Workflow Template Workflow Nintex O365
    3859 Get Recurring Events - UDA UDA to get recurring events...not bad... 3 Workflow Template Workflow Nintex Workflow
    3846 Dynamically Generated Hyperlinks JavaScript to generate hyperlinks to document in a Form and in O365 3 JavaScript JavaScript Nintex O365
    3847 Create Salesforce Lead via Nintex Workflow Creates a SalesForce lead via Nintex Workflow 3 Guide Guide Nintex Workflow
    3848 Dynamic approvers for douments Workflow for doing dynamic approvals on a document. Another basic pattern, but helpful if you haven't seen the pattern before. 3 Workflow Template Workflow Nintex Workflow
    3758 Nintex Form File Attachment Validation Settings Nintex form that only allows an upload of PDF files 3 Nintex Form Nintex Form Nintex Forms
    3385 Parent/Child Forms/Workflow Solution An example of how to use the repeating section of a nintex form to drive list item creation via workflow. Pretty basic pattern, but useful if you haven't done it before. 3 Nintex Forms
    3725 Set image based on location in Forms Set an image based on GeoLocation 3 JavaScript JavaScript Nintex Forms
    3726 Start a workflow & wait w/ Form JavaScript to start a workflow from Nintex Forms. Interesting implementation... 3 JavaScript JavaScript Nintex Forms
    3728 SAP Made Easy w/ Zimt SAP Actions from Zimt 3 SharePoint Solution Custom Actions Nintex Workflows
    3608 PowerShell Find All Workflows - Part 1 Shows how to get all the Nintex workflows via the NWAdmin tool. More for reporting than anything else. 3 PowerShell PowerShell Windows
    3613 Safely purge items from history list - PowerShell PowerShell script to purge the workflow history list. 3 PowerShell PowerShell Nintex Workflow
    3940 Add a Site Workflow Link in O365 A way to add a link to Nintex Site Workflows to quick nav 3 Other Other SharePoint
    3895 Replace Text - RegEx An example of using regex to do a replacement 3 RegEx RegEx Nintex Workflow
    4073 Layer2 Cloud Connector A data connector for Nintex Workflow. Doesn't really give any helpful patterns of why you should buy/use it. 3 SharePoint Solution Custom Action Nintex Workflow
    4137 Theobald Software - ERPConnect Services  Theobald Software - ERPConnect Services 3 SharePoint Solution Custom Actions Nintex Workflow
    4017 Delete Attachments - UDA UDA to delete attachments 3 UDA UDA Nintex Workflow
    4018 What Changed - UDA UDA for tracking what changed in an item 3 UDA UDA Nintex Workflow
    4019 Random Number - UDA A UDA that will generate a random number 3 UDA User Defined Action Nintex Workflow
    4060 Panels UI Magic with Nintex Forms for Office 365 Another example of how to do a "Stepped" or "Paneled" nintex Form 3 CSS CSS Nintex Forms
    4153 Action Task Reminder - Site Workflow Another pattern around task reminders. 3 Workflow Template Workflow Nintex Workflow
    4155 Dynamic button label Dynamic button label via calculated value and events 3 JavaScript JavaScript Nintex Forms
    4157 Remove Permissions UDA UDA to remove permission down to read only 3 UDA UDA Nintex Workflow
    4174 Set Manager in a Nintex Forms People Picker Control A javascript code snippet (must be paid for), to populate the manager of a people form control. I'm betting no one has really paid for this... 2 JavaScript JavaScript Nintex Forms
    4063 Simple email validation for forms Basic email reg ex. 2 Regular Expression Text Nintex Forms
    4147 Document Review and Approval (State Machine) Workflow An example of a workflow to do review and approvals. 2 Workflow Template Workflow Nintex Workflow
    3950 Document Review Reminder Process Basic reminder pattern. 2 Workflow Template Workflow Nintex Workflow
    5974 WYSIWYG Business Cards in Office 365  SharePoint  Online using @Nintex Forms and Workflow apps for @Office365 A video of how to build a business card application with preview capabilites 2 Video Video Nintex Forms
    6071 Trigger a Nintex Workflow from DropBox w/ Zapier Just a walkthrough of connecting your external start to Nintex Workflow for DropBox/Zapier. 2 Guide Guide Nintex Workflow
    6072 Trigger a Nintex Workflow from OneDrive w/ Zapier Just a walkthrough of connecting your external start to Nintex Workflow for OneDrive/Zapier 2 Guide Guide Nintex Workflow
    6073 Trigger a Nintex Workflow from Salesforce w/ Zapier Just a walkthrough of connecting your external start to Nintex Workflow for SalesForce/Zapier 2 Guide Guide Nintex Workflow
    6082 Trigger a Nintex Workflow from Zendesk w/ Zapier Just a walkthrough of connecting your external start to Nintex Workflow for Zendesk/Zapier. 2 Guide Guide Nintex Workflow
    3941 Upload ULS Logs to Doc Library - PowerShell A powershell script to upload ULS logs. Kinda odd, but I guess? 2 PowerShell PowerShell Windows
    3724 Hide Form Footer How to hide the Nintex Form footer 2 CSS CSS Nintex Forms
    3772 Birthday UDA A UDA that figures out the day of the week you were born on. Fun, but not very useful. 2 UDA UDA Nintex Workflow
    3797 Replace Empty String Variable A UDA that will replace an empty string with something else. Hmmm... 2 UDA UDA Nintex Workflow
    3798 Site Creation Workflow Workflow to create a site. 2 Workflow Template Workflow Nintex Workflow
    3820 Set Placeholder Text Hints for Text Box Controls Just some javascript to show sample text in a text box on your Nintex Form. Pretty basic. 2 JavaScript JavaScript Nintex Forms
    3853 Create user group in your SharePoint Site - UDA A user defined function (UDF) for Nintex 2010 that allows you to create a SharePoint groups 2 UDA User Defined Action Nintex Workflow
    3854 Remove user group from SharePoint Site - UDA A user defined function (UDF) for Nintex 2010 that allows you to removew users from SharePoint groups 2 UDA User Defined Action Nintex Workflow
    3855 Add user to a SharePoint group - UDA A user defined function (UDF) for Nintex 2010 that allows you to add users to SharePoint groups 2 UDA User Defined Action Nintex Workflow
    3856 Remove user from SharePoint group - UDA Remove a user from SP Group 2 UDA UDA Nintex Workflow
    3857 Math Power - UDA Math Power UDA...funny comments... 2 UDA UDA Nintex Workflow
    3893 Extract Text - RegEx An example of how to run a regular expressions against some text. Not very helpful. 2 Other Text Nintex Workflow
    3887 Sample Case Summary Template - Salesforce SalesForce case study doc...for DrawLoop stuff... 2 Guide Guide Drawloop
    3888 Sample Cover Letter Template - Drawloop SalesForce case study doc...for DrawLoop stuff... 2 Guide Guide Drawloop
    3889 Sample Quote Template - Drawloop SalesForce case study doc...for DrawLoop stuff... 2 Guide Guide Drawloop
    3590 Theobald SAP - Connector Theobald SAP - Connector - looks like it has absoltely nothing valuable to do... 1 ? ? ?
    3614 <Xchange Template - Delete this field and replace with your title> Hmm...nada here... 1 ? ? ?
    3948 Expense Report Solution - PointBeyond supposed to be an expense form, but nothing here :( 1 Other Other Nintex Forms
    3944 Build a Nintex form - pt 1 of 3 Simple tutorial - should probably not be in the XChange 1 Guide Guide Nintex Forms
    3945 Build a Nintex form - pt 2 of 3 Simple tutorial - should probably not be in the XChange 1 Guide Guide Nintex Forms
    3946 Build a Nintex form - pt 3 of 3 Simple tutorial - should probably not be in the XChange 1 Guide Guide Nintex Forms
    6111 SharePlus & Nintex Integrated Solution : Introduction Nothing but a 3rd party adverisement/marketing slick 1 Guide Guide Nintex Workflow;Nintex Forms
    4209 Nintextionary – Nintex Actions Dictionary Have no idea what this does or why it is posted. Doesn't seem to have any assets at all! 1 Other Other Nintex Workflow

    Platforms:

    • 44 Nintex Workflow
    • 25 Nintex Forms
    • 3 Drawloop
    • 3 Windows
    • 2 ?
    • 2 Nintex O365
    • 1 All
    • 1 SharePoint

    Deployment Types:

    • 15    UDA
    • 14    Guide
    • 13    JavaScript
    • 10    Workflow Template
    • 5    SharePoint Solution
    • 5    PowerShell
    • 4    Other
    • 3    CSS
    • 2    NULL
    • 2    ?
    • 1    Add-In
    • 1    CSS; JavaScript
    • 1    RegEx
    • 1    Regular Expression
    • 1    Nintex Form
    • 1    Video
    • 1    Workflow Template;UDA

    Top Views:

    • 3771 - Convert Forms to PDF w/ Workflow
    • 2330 - Terminate Old Instances of a Workflow
    • 2135 - Nintex Add-in for Outlook
    • 2055 - Parsing Nintex Forms Repeating Section Solution - O365
    • 2018 - Set Placeholder Text Hints for Text Box Controls
    • 2009 - PowerShell Find All Workflows - Part 1
    • 1915 - Document Review Reminder Process
    • 1906 - Build a Nintex form - pt 1 of 3
    • 1868 - Custom Validation for Nintex Forms
    • 1855 - Tab-based Layout Solution
    • 1810 - Iterate through documents in a Document Set
    • 1808 - Using the SharePoint REST service inside Nintex Forms
    • 1800 - Splitting Text - RegEx
    • 1800 - Parent/Child Forms/Workflow Solution
    • 1734 - Start Workflow with PowerShell 

    Top Likes:

    • 17 - Nintex Add-in for Outlook
    • 11 - Show Repeating Section as table in List View
    • 11 - Convert Forms to PDF w/ Workflow
    • 11 - Document Review Reminder Process
    • 11 - Simple email validation for forms
    • 11 - Tab-based Layout Solution
    • 10 - Set Placeholder Text Hints for Text Box Controls
    • 10 - Generate an HTML document with dynamic data
    • 10 - Iterate through documents in a Document Set
    • 9 - Business Days Validation for Forms
    • 9 - Using the SharePoint REST service inside Nintex Forms
    • 8 - Embedding Signature Pad using JSignature.min.js
    • 8 - Parent/Child Forms/Workflow Solution
    • 8 - Build a Nintex form - pt 1 of 3
    • 8 - Multi-Step form for Office 365 

    Top Contributors:

    • 54 Eric Harris
    • 5 Patrick Abel
    • 2 rbachmann
    • 2 Jesse McHargue
    • 2 Swetha Sankaran
    • 2 Brad Orluk
    • 2 Cassy Freeman
    • 1 Chris Sullivan
    • 1 Christian Tauchmann
    • 1 Dean Virag
    • 1 Frank Daske
    • 1 frankgr
    • 1 jackgelo
    • 1 Jan Eyres
    • 1 Jay Cheong
    • 1 Vadim Tabakman
    • 1 Andrew Glasser
    • 1 Samantha Pugh

     

  • Data Loss Prevention (DLP) Architecture - Deep Dive

    One of the hot features of Office 365 and "by inheritance" in SharePoint 2016 is Data Loss Prevention (DLP).  DLP allows you to execute search queries on your content to find possible "Sensitive Data Types".  You can find many blog post on how to setup DLP queries and how to find data, but that is at the high level.  In this blog post, I get into the nitty gritty of how it actually works under the covers.

    High Level Steps:

    • User\App uploads a document
    • Search gather runs (likely every 15 minutes)
    • Search content indexes the content
      • Ceres engine executes flows, one such Flow is called "Data Loss Prevention"
        • DLP Flow runs
        • DLP Flow looks for keywords
        • DLP Flow looks for regular expression matches
        • DLP excludes invalid "test" values
        • DLP Flow adds "SensitiveType" crawl property data
    • Ceres adds data to the index
    • User queries for DLP data using the "SensitiveType" managed proprerty

    Deep Level Steps:

    Most of the major work happens in the Ceres Flow.  It uses a "configuration" file of sorts from the "Microsoft.Ceres.DataLossPrevention" .NET Assembly in the GAC.  You will find a "defaultCLassificationRules" resource file in this assembly.  This file is called a "RulePackage" and contains Rule Packs. Currently for SharePoint 2016, there is only one rule pack, Office 365 may have more. Opening this file you will find the following:

    • Entities
      • High level container of a particular "end user" data type
        • US Driver's License Number - there are different in almost every state
        • Canada Driver's License Number - different in each of the provinces
      • Made up of patterns
    • Patterns
      • Made up of IDMatch'es, and Keyword Matches
      • Patterns have confidence levels.  Most expect a confidence level of 75% or higher.
      • Pattern can enforce minMatches (must have at least one keyword, etc)
    • RegEx Expressions
    • Keywords
      • Keywords may be case sensitive - most are not
    • Localization strings - these are used for the rendering and matching of keywords

    Patterns:

    • Credit Card Number
    • EU Debit Card Number
    • US Social Security Number
    • US Individual Taxpayer Id Number (ITIN)
    • Canada Social Insurance Number
    • UK NINO
    • UK Driver's License
    • German Driver's License Number
    • German Passport Number
    • UK NHS Number
    • France INSEE
    • France Driver's License
    • Canada Driver's License
    • US Driver's License
    • Japan Driver's License
    • Japan Resident Registration
    • Japan Social Insurance Number
    • Japan Passport Number
    • Japan Bank Account Number
    • France Passport Number
    • US/ UK Passport Number
    • SWIFT Code
    • US Bank Account Number
    • ABA Routing Number
    • DEA Number
    • Australia Medical Account Number
    • Australia Tax File Number
    • Israel National ID Number
    • New Zealand Health Number
    • Spain SSN
    • Sweden National ID
    • Australia Bank Account Number
    • Australia Passport Number
    • Canada Bank Account Number
    • Canada Passport Number
    • Canada PHIN
    • Canada Health Service Number
    • France CNI
    • IP Address
    • IBAN
    • Israel Bank Account Number
    • Italy Driver's license Number
    • Saudi Arabia National ID
    • Sweden Passport Number
    • U.K. Electoral Number
    • Finnish National ID
    • Taiwanese National ID
    • Poland National ID (PESEL)
    • Poland Identity Card
    • Poland Passport Number

    Regular Expressions:

    Here are some of the regular expressions that DLP flow is looking for:

    • <Regex id="Regex_france_cni">(^|\s)(\d{12})($|\s|\.\s)</Regex>
    • <Regex id="Regex_uk_electoral">(^|\s)([a-zA-Z]{2}\d{1,4})($|\s|\.\s)</Regex>
    • <Regex id="Regex_canada_health_service_number">(^|\s)(\d{10})($|\s|\.\s)</Regex>
    • <Regex id="Regex_canada_phin">(^|\s)(\d{9})($|\s|\.\s)</Regex>
    • <Regex id="Regex_canada_passport_number">(^|\s)(\D{2})(\d{6})($|\s|\.\s)</Regex>
    • <Regex id="Regex_canada_bank_account_number">(^|\s)(\d{7})($|\s|\.\s)</Regex>
    • <Regex id="Regex_australia_passport_number">(^|\s)([A-Za-z]\d{7})($|\s|\.\s)</Regex>
    • <Regex id="Regex_australia_drivers_license_number">(?ix)(?:^|\s)(?=(?:[A-Z\d]{2}\d{2}[A-Z\d]{5})(?:$|\s|.\s))(?=(?:[A-Z]{0,2}\d){4,9})(?!(?:\d{0,9}[A-Z]){3,9})[A-Z\d]{9}</Regex>
    • <Regex id="Regex_australia_bank_account_number">(^|\s)([0-9]{6,10})($|\s|\.\s)</Regex>
    • <Regex id="Regex_sweden_passport_number">(^|\s)(\d{8})($|\s|\.\s)</Regex>
    • <Regex id="Regex_italy_drivers_license_number">(^|\s)(\D{1}[^b-uw-zB-UW-Z])((\w{7})(\D))($|\s|\.\s)</Regex>
    • <Regex id="Regex_ipv4_address">(^|\s)((?:[0-9]\.)|(?:[0-9]))(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)(?!(?:\.[0-9])|(?:[0-9]))($|\s|\.\s)</Regex>
    • <Regex id="Regex_ipv6_address">(^|\s)((?:[A-F0-9]{1,4}:){7}[A-F0-9]{1,4})($|\s|\.\s)</Regex>
    • <Regex id="Regex_israel_bank_account_number">(^|\s)(\d{2}-\d{3}-\d{8}|\d{13})($|\s|\.\s)</Regex>
    • <Regex id="Regex_saudi_arabia_national_id">(^|\s)(\d{10})($|\s|\.\s)</Regex>
    • <Regex id="Regex_usa_bank_account_number">(^|\s)(\d{4,17})($|\s|\.\s)</Regex>

    Keywords:

    Keywords are important for deciding the confidence level of a particular pattern.  If a keyword is found, then the confidence goes up.  Here are some examples:

    •  UK Nino contains:
      • national insurance number,national insurance contributions,protection act,insurance,social security number,insurance application,medical application,social insurance,medical attention,social security,great britain,insurance
    • UK Driver's License:
      • DVLA,light vans,quadbikes,motor cars,125cc,sidecar,tricycles,motorcycles,photocard licence,learner drivers,licence holder,licence holders,driving licences,driving licence,dual control car

    Keep in mind that your SharePoint on-premises environment will always have a static rule pack unless you download and apply updates.  Office 365 will continually get updated rule packs to enhance the DLP engine features so you will be more protected against sensitive data "leaks".

    Enjoy!
    Chris

  • Introducing the Microsoft MVP Bot!

    At the #MVPSummit I sat in a couple of Microsoft Bot Framework sessions.  Cool stuff for sure!  So I decided to write a helpful program for the MVP Program that lets you look up MVP data from your favorite messaging platforms!  

    Check it out via Consumer Skype here:

    https://join.skype.com/bot/6f9b5f20-1a17-4b53-b7b9-f5072e0fe44e

    Microsoft Teams:

    https://teams.microsoft.com/l/chat/0/0?users=28:6f9b5f20-1a17-4b53-b7b9-f5072e0fe44e

    Kik:

    https://bots.kik.com/#/mvplookup 

    Phrases you can use:

    • "Hi", "Hello"
    • What MVP Categories are there? 
    • Is Chris Givens an MVP?
    • Contact Chris Givens
    • MVPs in Norway
    • What does vlad catrinescu look like?
    • Chris Givens Picture
    • Chris Givens Profile
    • Search michele
    • Oldest
    • Who are 5 year mvps?
    • Who are Microsoft Azure mvps?

    Enjoy!
    Chris 

     

     

  • Follow every Microsoft MVP on Twitter!

    Updated as of 11/20/2016 - Several MVPS updated their profiles to add their twitter handle or make it public. 

    Updated as of 11/5/2016 - Re-posted the list creation to keep list name under limit.  Added the ability for you to clear out old twitter accounts! 

    ***HEADSUP*** - this script may cause you to be throttled by Twitter.  I have added some checking in the Http layer that will let you know if you hit their circuit breaker.   If you hit the circuit breaker, just re-try in 24 hours.

    Here is a list of every twitter account for every current Microsoft MVP.  They fit into the following new MVP categories:

    • Business Solutions
    • Cloud and Datacenter Management
    • Data Platform
    • Enterprise Mobility
    • Excel
    • Microsoft Azure
    • Office Development
    • Office Servers and Services
    • OneNote
    • Outlook
    • PowerPoint
    • Project
    • Visual Studio and Development Technologies
    • Windows and Devices for IT
    • Windows Development

    The "MVPFollow.zip" file contains a TwitterFollow.ps1 PowerShell script.  Simply run it, enter your "username" and "password" and then tell it what MVP category you want to follow (or type "all") and whalla, you will follow all the Microsoft MVPs with twitter handles in their profiles!  

    If you were curious all the cool benefits of being an MVP : http://xavierdecoster.github.io/mvpperks/ 

    *update* - the script now supports creating twitter lists (private and public).  It will name the list as "mvp-*" and add the target MVP twitter user into that list.   Also added in some more elegant error handling and follow checking.  

    Enjoy!
    Chris 

    Posted Friday, October 14, 2016 5:06 PM by cjg | 1 Comments
    Filed under: ,

    Attachment(s): TwitterFollow.zip
  • Updates from Ignite 2016!

    Here's my list of all the announcements, updates and news worthy things from Ignite 2016!

    Summary:

    I made it to many more sessions at this Ignite.  With my busy schedule this past year it has been a bit tough to keep up with the ever changing Office 365 landscape.  My focus has changed to watching for the things they do in the cloud as many of these changes will trickle down to SharePoint on-premises at some point.  Of the sessions I went too, only two ended up being a waste of time (simply because I had already been aware of the things going on, but thought maybe something new might be revealed).

    Overall the venue was great, the buses were on time and timely.  The city was great, Uber was available and not expensive.  Lots of things to do in terms of entertainment and restaurants and the hotels were all fairly close together.  The venue was just as large as last year's in Chicago.  I'm thinking next time they should figure out a way to give an award to the person that walks the most, but since the Microsoft Band is now no more, might be difficult to track it!  I know my feet hurt at the end of every day!

    Food was bad as expected.  If you have ever done a large event (such as an SharePoint Saturday) and rented a large venue such as a convention center, you will know the painfulness that is contracting with the venue's food vendors. Like the Amtrak days with its kick your butt if you say anything unions, Its unfortunate that we still are forced to endure not so great food (and evidently not much of it).  I think it would be great is Microsoft offered a non-meal pass in the future so we can spare ourselves the disappointment and at least get a good meal on our own terms. Or even send us the link to the vendor's site so we can drop them lots of nasty notes rather than blame Microsoft!

    Expo Hall:

    I was able to find time to wonder the entire Expo hall.  I always try to do this just to see what people are marketing and "trying" to sell.  There was a very heavy theme on "Monitoring" and "Security". As in...at least half of the companies were promoting between those two themes.  In whole, the exhibitors seemed to fall into these major categories:

    • Monitoring
      • Aggregated views across all your cloud services (Azure, Amazon, Google, on-premises)
      • Specific Application monitoring (Office 365, Box, etc)
    • Security
      • Auditing
      • Governance
    • Hardware\Device companies
      • Lots of video hardware (phones, conf call cameras)
    • Skype for Business
      • Seemed to be less than last year, but still noticeable.  Lots of re-sellers of software and hardware add-ons.  Seems there is still a lot of help one must need to use Skype in an enterprise.
    • Training
    • Software

    Cool\Interesting booths from my standpoint:

    • Puppet - The original Desired State Configuration software!  DSC came from a lot of the work that Puppet started and the Puppet products span much more than just windows (per Jeffery Snover – MS Tech Fellow aka JSnover aka creator of PowerShell- was based on UNIX make).
    • Lansa - TypeScript for everything (not just javascript).  Code generation on steroids.  Generate code\apps across many different platforms (ultimate code reuse).
    • Normal 0 false false false EN-US X-NONE X-NONE /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-parent:""; mso-padding-alt:0in 5.4pt 0in 5.4pt; mso-para-margin-top:0in; mso-para-margin-right:0in; mso-para-margin-bottom:8.0pt; mso-para-margin-left:0in; line-height:107%; mso-pagination:widow-orphan; font-size:11.0pt; font-family:"Calibri",sans-serif; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin;} ConversationalGeek - new spin on books and marketing promotions.  Each book is sponsored by a company and then distributed for free!

    Sessions:

    Lots of great sessions this time around.  I couldn't really say that about last year, but as you might be able to figure out, many of the top SharePoint community members (Dan Holme, Chris McNulty, etc) have recently joined the Microsoft team and have been able to share their views from the outside with the product marketing and engineering teams.  Although not everyone has stayed in the Office group, it has been fun to watch them learn about the massive engine that is Microsoft and how difficult it is to move the mother ship!  I'm sure they have also gleaned the interesting side of taking "suggestions" from the community and who has a valuable opinion and who doesn't!  I'll still at some point find time to do my "famous" or "infamous" I suppose rating of all the sessions in the next few weeks.  I can say right now, the top session I attended was by Neil Hodgkinson (@nellymo).  His sessions are always filled with great data points, good\great demos and seem to leave you full-filled with something afterwards!  I highly suggest you watch any session he was in!

    It seemed that a lot of the sessions were not very in depth and super technical (which is the stuff I love). I would have preferred a lot more 400 level sessions and not so much of the 200 level sessions.

    You can download sessions from Channel9 or YouTube! You can also use this powershell script to download them!

    Parties:

    • AvePoint - Tongue and Groove - how can you say anything bad about how @JulieRLui finds and sets up these awesome parties?!?  She's the best!
    • Metalogix - Downtown - This was a joint venture and being that most people left around the 20 minute mark, I'm guessing that speaks for itself.  I actually had dinner at the "Commerce Club" and then took a small walk (<2 minutes to the Ritz for the BA Insight party).
    • Microsoft #SharePint - Westin Downtown - What a fun venue!  A rotating bar at the top of the Westin downtown.  Incredible views, nice classy atmosphere!  We even got the group to do a shout out and group picture to #LindaStrong!
    • BA Insight - Ritz Carlton - A very small get together at the Ritz Carlton.  Jeff Fried (@JeffFried) is a good guy and he always does his best to make everyone feel welcome!  Most of the who's who bailed on the Metalogix party and stopped by the BA Insight party.  Good times!
    • PixelMill - AirBnb House - Another small get together at a AirBnB a couple blocks away from the convention center.  Yours truly was the bartender and again, the who's who of our SharePoint land stopped in and said hi. 
    • Attendee Party - Centennial Park - Although we didn't go, we did have a nice vantage point from the sky bar at the Glenn Hotel.  After about an hour, most people started to head over our way as we were tweeting killer pics from high above the park!
    • @SPCPartyPatrol - oh man, where didn't we go!  Next year, if you really want to have a good time, be sure to follow @SPCPartyPatrol.  You won't be led to anything bad (well, I guess that's a matter of perspective).

    Announcements:

    Here is a list of the various announcements\updates\details that I was able to gather from Ignite 2016.

    • SharePoint - On-premises SharePoint 2016 is getting several of the new features released to Office 365.  The first of these changes will show up in Feature Pack 1 in Nov.  This is the update I have been waiting for and will be the catalyst for customers to get serious about the upgrade or install of SharePoint 2016!
      • Feature Pack 1
        • Min Roles changes - you can now implement smaller POC\Dev farms
        • Taxonomy Cloud Service Application - sync of your term groups\sets from on-premises to Cloud
        • Custom App Launcher - ability to customize the App Launcher
        • OneDrive UX and API - The /me endpoint that I loved so much on the OneDrive consumer side was moved to OneDrive for business and is now being delivered to on-premises!
      • Release Cadence - you can expect more changes to come after feature pack 1
        • Public Update monthly
        • Feature Pack 1 (Nov 2016)
        • Feature Pack 2 (second half of 2017)
    • Active Directory Federation Services (ADFS)
      • Check out @helloitsliam tweets from the @MrADFS session, you can also check out the session here
      • No longer need for On-premises Multi-factor server with ADFS - you can use Azure MFA
      • Conditional Access through ADFS
      • Policy templates
      • Better Certificate support via Claims
      • Per App login customization
      • Set-ADFSProperties changes
      • ADFS Rapid restore tool for Dev, Test and Prod scenarios
      • Domain Admin rights need to install ADFS
    • Azure AD (Std/Premium)
      • Bad Password Attempts reporting
      • Stat - 47.8% of Azure AD auths are via ADFS
      • Stat - every day they
        • Process 14B signins
        • Analyze 10TB of data
        • Deflect 1.5 million attacks
      • Replication error report with quick fixes
      • Group based license assignment
      • Azure AD Connect enables AD Group Synchronization with Office 365 Groups
      • Lift and Shift is new term (#BRK3252) - Azure AS Domain Services
      • Azure AD Pass-Through Auth (PTA) offers similar features as ADFS (#BRK3107)
      • Attribute quarantine vs object
      • Identity Protection - see hack and enforce user MFA
    • Azure
      • https://blogs.technet.microsoft.com/stbnewsbytes/2016/09/26/cloud-platform-release-announcements-for-september-26-2016/
      • Azure Monitor - Monitor cloud and on-premises HyperV and Vmware workloads
    • Microsoft Intune
      • Lots of improvements around Android management
      • More iOS and Mac support
    • Yammer - Not dead, Dead, not dead, dead, not dead again...we all are wondering what is going on here!
      • New - Yammer group creation causes AzureAD to create O365 group (#BRK2019)
      • Yammer notes moving to OneNote
      • Yammer Groups ~= Office 365 groups
        • Where created determines where feed data will go (Yammer vs Outlook)
      • Edit Yammer Posts
      • Seamless file sharing to Yammer from OneDrive (with permissions at group level)
      • Yammer translate built in (but no Klingon support) #BRK2018
    • SPFramework - You can get started by following the steps here
      • Tools you need:
        • npm (microsoft scope)
        • Typescript
        • gulp
        • react
        • yeoman
    • Skype for Business - wow, who would have thought "Skype" would have gone so far?  I was there the day the MS execs signed the deal with eBay to buy Skype.  Man it has come a long way!
      • iOS 10 update has more integration with Phone features
        • CallKit Support
      • Skype Broadcasting
      • MacOS client release (Oct)
      • Real-time transcription and translation by EOY
      • PSTN calling in Franch and Spain (Oct 2016)
      • Move users to regional data centers via PowerShell
      • Video Meeting with no plug in Office Web Apps (OWA)
      • No conversion from UCMA to Trusted Application API
      • Skype Teams - *shhhh* - the "slack" killer?!? You'll have to wait and see!
    • MS Flow
      • Create flow from mobile device
      • Flow connector (???)
    • Networking - this wasn't a part of Ignite, but it happened during it!
    • OneDrive
      • Offline and Online selective sync is back!
      • SharePoint Online and OneDrive folders sync'd
      • Activity Center (view status)
      • 20 new Browser based thumbnail previews
      • iOS and Android notification of files shared with you
      • View stats on file views
      • Multiple files downloaded as a ZIP
      • Stats
        • 10B new files each month
        • 150M mobile app downloads
        • 25 Petabytes of data each month
      • OneDrive API coming to SharePoint 2016 on-premises
      • API changes coming #BRK3082
        • Custom File Handlers
        • File Tags
        • Custom Metadata extensions
        • File versions
        • ":" notiation and "UploadSession" support
    • Delve
      • https://blogs.office.com/2016/09/26/connect-to-expertise-and-content-with-new-people-experiences-throughout-office-365/
      • Office Graph is now Microsoft Graph
      • Delve Analytics is now MyAnalytics
      • People Profile page is updated
      • People Hover is updated
    • Partnerships
    • Products
      • Windows Server 2016
        • Nano Server - headless HyperV feature
          • 400-500MB fast boot OS
        • Storage Spaces Direct (S2D)
          • 2 and 3-node support
        • Containers
          • Windows
          • Hyper-V
        • Key Storage Drive
          • Shielded VMs and Bitlocker protected VMs for older OSs
      • System Center 2016
        • Insights and Analytics (Azure SQL, MySQL, VMware)
        • Automation and Control (keep systems up to date)
        • Security and Compliance (threat detection)
        • Protection and Recovery (backup and restore with Linux and VMWare)
      • Microsoft StaffHub
    • Security
      • Windows 10 Security Features
      • Edge Browser Features
    • Office 365
      • New App Launcher
      • New Admin UI
      • Conditional Access - Access Policies (network, device)
        • https://blogs.office.com/2016/09/26/enhanced-conditional-access-controls-encryption-controls-and-site-classification-in-sharepoint-and-onedrive/
      • Customer controlled keys
      • Team site classification
      • hybrid auditing

    Other Ignite Reviews:

    Enjoy, see you in Orlando in 2017! You can pre-register here!

    Chris
    @givenscj

  • Unify and Modernize your ECM and Records Management System

    This is our recent email marketing release.  A lot of this is possible due to the PowerStreamECM tool I have built over the past year using my experience in all my previous SharePoint projects and migrations.  If you have questions about doing a complex ECM migration, let me know!

    <<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 

    Reduce Complexity and Cost

    To reduce system support cost, risk, and complexity, many organizations are seeking to consolidate and modernize Enterprise Content and Records Management Systems. Consolidation reduces the costs associated with licensing, support, training, and infrastructure.

    Migrating from legacy ECM systems to SharePoint enables organizations to manage collaboration-oriented content and records in a single, modern, repository. This improves the user experience and facilitates the use of a standardized taxonomy, which enhances findability, content lifecycle management, and the ability to respond to eDiscovery and public records requests.

    Our extensive experience in legacy ECM migrations includes migrations from FileNet, Oracle, OpenText, Documentum, Questys, and others, to SharePoint, which can typically be achieved for less than the annual maintenance cost for these systems.

    Services include:

    Taxonomy Development
    Metadata Clean-up
    TIF to Searchable PDF Conversion
    Enhanced search and Content Reorganization
    Implementation of Advanced Records Management Capabilities and Products

      Benefits of migrating to a unified, modern system:
    Reduce complexity and costs associated with licensing, support, training, and infrastructure
    Improved user experience, adoption, and compliance
    Mitigate risk and manage the lifecycle of content using uniform retention and disposition policies
    Better support for eDiscovery, transparency and regulatory requirements
    Enhanced findability and automation of business processes

  • Documentum to SharePoint - PowerStreamECM

    If you are looking to move off of Documentum to SharePoint, let me know!  PowerStreamECM supports migrating off of Documentum and to SharePoint 2013/2016/O365!

    Ref:http://blogs.architectingconnectedsystems.com/blogs/cjg/archive/2016/08/24/FileNet-to-SharePoint-_2D00_-PowerStreamECM.aspx

    Chris

    chris@sharesquared.com 

  • Questys to SharePoint - PowerStreamECM

    If you are looking to move off of Questys to SharePoint, let me know!  PowerStreamECM supports migrating off of Questys and to SharePoint 2013/2016/O365!

    Ref: http://blogs.architectingconnectedsystems.com/blogs/cjg/archive/2016/08/24/FileNet-to-SharePoint-_2D00_-PowerStreamECM.aspx

    Chris

    chris@sharesquared.com

  • FileNet to SharePoint - PowerStreamECM

    It has been a very busy last few months!  I have built two major products both of which I now get to blog about before Ignite!  I have always been interested in building cool stuff and over the years I have done some pretty awesome things.  One of which was to migrate Oracle Portal to SharePoint for General Atomics here in San Diego.  Since then I have done other migrations, but have not had the exposure to some of the more popular ECM products out in the wild.  That has all changed since the beginning of the year.  Since being at ShareSquared I have got to see two more major ECM products in action:

    FileNet was one of the more simple ones to figure out.  I can now use our PowerStreamECM product to migrate your old or new FileNet systems to SharePoint 2013/2016/O365 without any type of translation in-between. Just straight from the source to the target!

    If you have a FileNet system that you want migrated, let me know!  We have done this so many times now we have the design, management and implementation of all the pieces down to an art form!

    If you are interested in moving your old content to SharePoint, contact me at: chris@sharesquared.com

    Chris

      

  • Installing Service Bus 1.0 and Service Bus 1.1 in Azure VM - Exit code: 15010 - Error 1722 - Installation success or error status: 1603

    Have been doing a lot of Azure provisioning lately and ran across an interesting issue with the latest VMs in Azure.  Seems some registry keys are missing which will cause you to run across these errors:

    MSI (s) (44:CC) [21:33:14:551]: Note: 1: 1722 2: DoFabricSetup 3: C:\Program Files\Windows Fabric\bin\Fabric\Fabric.Code.1.0\MSIHiddenAppLauncher.exe 4: FabricSetup /operation:install /gac /trace:"C:\ProgramData\Windows Fabric\Fabric\log" /fabricDataRoot:"C:\ProgramData\Windows Fabric\\" /traceBufferSizeInKB:128 /traceFileSizeInMB:128 /fabricPrincipal:"contoso\s2admin" CustomAction DoFabricSetup returned actual error code 1 (note this may not be 100% accurate if translation happened inside sandbox)

    FabricSetup.EventLog,wevtutil failed to install manifest C:\Program Files\Windows Fabric\bin\Fabric\Fabric.Code.1.0\WF.man. Exit code: 15010 

    A partial solution was provided across a couple posts out there, but nothing that comprehensiving fixes it right away:

    • https://blogs.msdn.microsoft.com/distributedservices/2014/12/16/common-appfabric-1-1-installation-errors-with-and-without-sharepoint/ - Talks about various reasons why you might get these errors, none resolved my issue
    • http://sharepoint.stackexchange.com/questions/69320/error-installing-azure-workflow-server-during-2013-install - Talks about a service not being enabled, but in my case it was
    • http://blog.symprogress.com/tag/azure-worker-role/ - Shows that Channel "0" is missing in another instance
    • https://alasdaircs.wordpress.com/2014/08/15/azure-vm-agent-breaks-your-server- Shows that the Azure VM Agent causes an issue with installing and uninstalling things.  This partially fixes the problem, but was missing the "0" channel.  Adding it with the right values fixes the Service Bus install issue:

    Here is the full registry file to get Service Bus 1.0 and Service Bus 1.1 to install in Azure VMs:

    Windows Registry Editor Version 5.00

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WINEVT\Publishers\{9148c98f-152c-44d3-a496-26350c475d74}\ChannelReferences]
    "Count"=dword:00000004

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WINEVT\Publishers\{9148c98f-152c-44d3-a496-26350c475d74}\ChannelReferences]
    @="Microsoft-WindowsAzure-Diagnostics/GuestAgent"
    "Id"=dword:00000010
    "Flags"=dword:00000000

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WINEVT\Publishers\{9148c98f-152c-44d3-a496-26350c475d74}\ChannelReferences\0]
    @="Microsoft-WindowsAzure-Diagnostics/Diagnostic"
    "Id"=dword:00000010
    "Flags"=dword:00000000

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WINEVT\Publishers\{9148c98f-152c-44d3-a496-26350c475d74}\ChannelReferences\1]
    @="Microsoft-WindowsAzure-Diagnostics/Runtime"
    "Id"=dword:00000011
    "Flags"=dword:00000000

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WINEVT\Publishers\{9148c98f-152c-44d3-a496-26350c475d74}\ChannelReferences\2]
    @="Microsoft-WindowsAzure-Diagnostics/Heartbeat"
    "Id"=dword:00000012
    "Flags"=dword:00000000

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WINEVT\Publishers\{9148c98f-152c-44d3-a496-26350c475d74}\ChannelReferences\3]
    @="Microsoft-WindowsAzure-Diagnostics/Bootstrapper"
    "Id"=dword:00000013
    "Flags"=dword:00000000

    Enjoy!
    Chris

  • Videos - K2 vs Nintex - Want to know the real difference between the two? Here ya go!

    Now that I have access to just about every 3rd party ISV software for SharePoint (K2, Nintex, VisualSP, ConceptSearch, Ephesoft, KnowledgeLake, etc, etc, etc), I have been able to install and configure all of them. And in most cases, I have automated the install of all of them (more on that in a later blog post after our new site goes live).  Due to this ISV software exposure, I was asked by some individuals to do a K2 vs Nintex comparison video.  Well, it takes more than just one video to really show the differences between the two.  So, here are a set of videos that you can review to see what the real differences are.  This is the list of videos that I will be posting in the next few days:

    • Headsup Install ( Videos : K2 vs Nintex)
      • Winner - Nintex
      • Why?
        • Nintex install takes around 10 minutes total for all components
        • Nintex install is simple .NET installer that adds solutions to your farm (and with Nintex Live, two windows services)
        • Nintex doesn't need a license key to install and configure
        • K2 install takes over an hour, and in many cases, up to 3 to get install properly
        • K2 requires a license to install it
        • K2 install has multiple components, each requiring much more time to install than the respective Nintex parts
    • Headsup Configuration\Admin UI (Videos - K2 vs Nintex)
      • Winner - Nintex
      • Why?
        • Nintex is SharePoint feature based - simply activate the features - all changes are inherited - no real updating of anything
        • Nintex is integrated into SharePoint Central Administration
        • Nintex has its own category of links, all of which are simple and easy to maneuver around
        • K2 requires you to leave SharePoint to configure anything admin related.  You can always put a link to the K2 admin UI in Central Admin, but you still have to leave SharePoint to get to it
        • The K2 admin UI is a bit slow and its not very intuitive.
        • K2 utilizes the App Model, this means extra work to deploy the app across web application boundaries (multiple app catalogs), and you have to "add" the app to each web you want to use it on
        • You must also ensure that you can connect to the K2 server for the app to function properly (mean properly setting up the SSL bindings on the K2 server).
        • K2 app updates mean you have to redeploy the app to each web (no easy automation available for this unless you are an old school SharePoint person)
    • Headsup Designer(s) (Videos - K2 vs Nintex)
      • Winner - Tie
        • Nintex has a very simple web based Designer for both workflows and forms.  It is integrated into the browser, no separate applications, all via a rich web client.
        • K2 has many ways to design "processes" aka workflows.  You can do it via the browser, or you can do it via Designer tools like K2 Studio, Visual Studio or a web based designer.
        • K2 is a bit more complex to work with and understand the various UIs versus the simple-ness of Nintex
    • Headsup Site and List Workflow (Videos - K2 vs Nintex)
      • Winner - Tie
      • Why
        • TODO
    • Headsup Actions (Videos - K2 vs Nintex)
      • Winner Nintex
      • Why
        • TODO
    • Headsup Forms (Videos - K2 vs Nintex)
      • Winner Nintex
      • Why?
        • TODO
    • Headsup Extensability (Videos - K2 vs Nintex)
      • Winner - Nintex
      • Why
        • TODO
    • Headsup O365 versions (Videos - K2 vs Nintex)
      • Winner - Nintex
      • Why?
        • Nintex just works.  Period.  Install the O365 Workflow and Forms apps, your up and running with a 30 day trial.  Easy.  After the trial, call your Nintex Partner (ACS of course) and we can get you activated same day.  Easy.
        • K2 takes a very complicated process of working with them to setup a backend tenant tied to your O365 tenant.  You must also be given the AppIt app to install into your app catalog in order to use it (it is not in the SharePoint store).
        • K2 also requires that you continue to use it or the OAuth token will expire and the system won't be able to talk back to your O365 instance.  You'll get a ton of emails notifying you of this until you click the link to refresh it.

    Overall, I prefer Nintex over K2.  I'll get flak for that statement (but most of my friends have left K2 for various reasons I'm not at liberty to share at this point so maybe not).  Some will say, but have you seen the extensibliliy and architecture of K2 behind the scenes?  I'll simply say yes, but customers don't care about that.  They want something that is easy to install, easy to get started with and productive out of the box.  Nintex does that perfectly.

    Enjoy,
    Chris

  • SP2013 vs SP2016 RTM - Diff at assembly level

    Here is the latest diff on the SP2016 vs SP2013 code base.  From here you can explore what were some of the more deeper changes in the code.  Biggest changes:

    • All legacy Office Web Apps dlls are now removed
    • Previously I mentioned that silverlight dlls looked to be removed, they are in fact still around
    • Similarly, all the Ceres Search Flow resource dlls are still around
    • Same as last post - All Education dlls are finally removed
    • Still have dependencies on some 3rd party installed dlls:
      • Reporting Services 10.0+
      • Windows Azure Storage
      • Microsoft.Azure.GraphClient.FirstClient - still have no idea where to get this one
      • NewtonSoft.Json 6.0 - used in Search
      • System.Web.Http 5.2.2.0 - used in Search
      • Microsoft.Data (5.3 and 5.6) - seems some dlls have old 5.3 references that have not been updated
    • ChicagoIntegration is gone from RTM - *LOL* Big Smile
    • All new Ceres Push API code now exists:
      • Microsoft.Ceres.ContentEngine.ContentPush
      • Microsoft.Ceres.ContentEngine.Operators.ContentPush
      • Microsoft.Ceres.ContentEngine.Processing.ContentPush
      • Microsoft.ContentPushFlow
      • Microsoft.ContentPushHybridFlow
    • New Ceres Flows (for more information on what flows are - see my other post):
      • Microsoft.ContentPushFlow
      • Microsoft.ContentPushHybridFlow
      • Microsoft.ConversationalLatencyFlow
      • Microsoft.CrawlerPropertyReportingSubFlow
      • Microsoft.CrawlerSecurityInsertHybridSubFlow
      • Microsoft.DataLossPreventionSubFlow
      • Microsoft.DeleteTenantFromIndexSystemFlow
      • Microsoft.DocumentPreviewMetadataFeederFlow
      • Microsoft.ExplorerFlow
      • Microsoft.GraphSearchProviderFlow
      • Microsoft.IndexingSubFlow
      • Microsoft.PeopleSuggestionDictionaryDeploymentFlow
        Microsoft.PropertyRetrievalSearchFlow
        Microsoft.QueryCompletionPeopleOutputFlow
        Microsoft.QueryCompletionPersonalizedQueryLogsOutputFlow
        Microsoft.QueryCompletionPreFetchOutputFlow
        Microsoft.QueryCompletionQueryLogsInputFlow
        Microsoft.QueryCompletionQueryLogsOutputFlow
        Microsoft.QuerySuggestionsQueryLogsFlow
        Microsoft.SearchAnalyticsBuzzFeederFlow
        Microsoft.SearchAnalyticsBuzzImportFlow
        Microsoft.SearchAnalyticsBuzzInputFlow
        Microsoft.SearchAnalyticsBuzzOutputFlow
        Microsoft.SearchAnalyticsExternalContentMapFlow
        Microsoft.SearchAnalyticsExternalContentPushFlow
        Microsoft.SearchAnalyticsFollowsImportFlow
        Microsoft.SearchAnalyticsFollowsInputFlow
        Microsoft.SearchAnalyticsGraphIndexFeederFlow
        Microsoft.SearchAnalyticsInFeedInputFlow
        Microsoft.SearchAnalyticsTagsImportFlow
        Microsoft.SearchAnalyticsTagsInputFlow
      • Microsoft.SignalStoreInputFlow
      • Microsoft.UsageAnalyticsImportFlow
    • OfficeGraph API exists:
      • Microsoft.Ceres.External.ContentApi.GraphExtensions
      • Microsoft.Ceres.SearchCore.GraphModel
      • Microsoft.Ceres.SearchCore.GraphQueryModel
      • Microsoft.Ceres.SearchCore.GraphSeedingModel
      • Microsoft.Ceres.SearchCore.GraphServer.Managed
      • Microsoft.Ceres.SearchCore.GraphStatusModel
      • Microsoft.Ceres.SearchCore.Indexes.GraphServerIndex
    • Microsoft.SharePoint.Client.Directory
      • CSOM for the new UserProfile sync stuff
    • Interesting new dll - Microsoft.Office.BigData.DataLoader.*
      • Have no idea what this is, but it looks interesting...
    • New compliance assemblies:
      • Microsoft.Office.CompliancePolicy.Platform

    This supplements the following blog posts:

      Enjoy!
      Chris 

    • Introducing codename PowerStream!

      Well, I can't keep stuff under wraps too long.  Sooo, a small little announcement about something I built in the past few months.  A tool code-named called "PowerStream" that will be officially announced with the new ShareSquared site in a few weeks.  This tool allows for the migration from anything (literally) to SharePoint with very little effort.  So far, I have tested the tool with several ECM systems (Documentum, oracle, custom, blah) and everything works perfectly!  In addition this tool integrates with another tool which I can't announce at the moment, but if you do anything around file plans, this will integrate with tools like Gimmal very easily.

      A lot of code came from the design of my Oracle to SharePoint tool that was developed at General Atomics, but this version adds in some of the other code I had from ACS days and some new stuff including:

      • Dynamic property setting
      • Managed Metadata leveling
      • OCR of TIFF and any other image formats
      • TIFF page/file merge
      • TIFF to OCR'd PDF/A
      • Really true awesome redaction capabilities

      Want to move your old redundant no featured ECM to SharePoint (on-premises or O365, yeah its CSOM based!)?  Let me know, I'll do it really quickly!

      Chris

       

    • NEW SharePoint 2016 CSOM Rest EndPoints

      Here are the new end points segments and all new class methods and properties in SharePoint 2016:

      New endpoints:

      • /Me
        • /User
        • /Current
      • /GroupSiteManager
        • Create
        • GetSiteStatus
        • Notebook

      Out of the 529 new methods and properties available via CSOM/REST, here are some of the major changes I see:

      • Ability to interface with the new directory features (Microsoft.Office.Server.Directory.SharePoint.Provider.Remote)
      • A SharedWithMeDocument properties on the UserProfiles endpoint
      • TenantAdministration features for DeletedSiteProperties and SiteCreationProperties as well as SiteProperties; Tenant level methods for  (Microsoft.Online.SharePoint.Dedicated.TenantAdministration)
      • IRM properties - Microsoft.SharePoint.SPEffectiveInformationRightsManagementSettings and Microsoft.SharePoint.SPInformationRightsManagementFileSettings
      • Ability to get App Info - Microsoft.SharePoint.SPTenantAppInformation

      New clientcallable classes:

      • Microsoft.Office.Server.Directory.SharePoint.Provider.RemoteDirectoryObjectData
        Microsoft.Office.Server.Directory.SharePoint.Provider.RemotePropertyCollectionData
        Microsoft.Office.Server.Directory.SharePoint.Provider.RemotePropertyData
        Microsoft.Office.Server.Directory.SharePoint.Provider.RemoteRelationData
        Microsoft.Office.Server.Directory.SharePoint.Provider.RemoteRelationSetData
        Microsoft.Office.Server.Directory.SharePoint.Provider.RemoteResourceData
        Microsoft.Office.Server.Directory.SharePoint.Provider.RemoteSchemaData
        Microsoft.Office.Server.Directory.SharePoint.Provider.RemoteSharePointDirectoryProvider
        Microsoft.Office.Server.Directory.SharePoint.Provider.RemoteStateData
        Microsoft.Office.Server.Directory.SharePointInterfaceConversation
        Microsoft.Office.Server.Directory.SharePointInterfaceDirectorySession
        Microsoft.Office.Server.Directory.SharePointInterfaceGroup
        Microsoft.Office.Server.Directory.SharePointInterfaceGroupAndUserStatus
        Microsoft.Office.Server.Directory.SharePointInterfaceGroupCollection
        Microsoft.Office.Server.Directory.SharePointInterfaceLinkRequestSchema
        Microsoft.Office.Server.Directory.SharePointInterfaceMembershipResult
        Microsoft.Office.Server.Directory.SharePointInterfaceMembersInfo
        Microsoft.Office.Server.Directory.SharePointInterfaceMyGroupsResult
        Microsoft.Office.Server.Directory.SharePointInterfaceProperty
        Microsoft.Office.Server.Directory.SharePointInterfacePropertyDictionary
        Microsoft.Office.Server.Directory.SharePointInterfaceSPHelper
        Microsoft.Office.Server.Directory.SharePointInterfaceUser
        Microsoft.Office.Server.Directory.SharePointInterfaceUserCollection
        Microsoft.Office.Server.Directory.SharePointInterfaceUserRequestSchema
        Microsoft.Online.SharePoint.Dedicated.TenantAdministrationDeletedSiteProperties
        Microsoft.Online.SharePoint.Dedicated.TenantAdministrationSiteCreationProperties
        Microsoft.Online.SharePoint.Dedicated.TenantAdministrationSiteProperties
        Microsoft.Online.SharePoint.Dedicated.TenantAdministrationSpoOperation
        Microsoft.Online.SharePoint.Dedicated.TenantAdministrationSPOWebTemplate
        Microsoft.Online.SharePoint.Dedicated.TenantAdministrationTenant
        Microsoft.SharePoint.IdentityModel.OAuth2SPOAuthNativeClientAuthenticationService
        Microsoft.SharePoint.JSGridHierarchyTaskListSPFieldUserValue
        Microsoft.SharePoint.PackagingSPAppDetails
        Microsoft.SharePoint.PackagingSPAppIcon
        Microsoft.SharePoint.Portal.UserProfilesSharedWithGroupViewWorker
        Microsoft.SharePoint.Portal.UserProfilesSharedWithMeDocument
        Microsoft.SharePoint.Portal.UserProfilesSharedWithMeDocumentUser
        Microsoft.SharePoint.Portal.UserProfilesSharedWithPersonViewWorker
        Microsoft.SharePoint.Portal.WebControlsMruDocsData
        Microsoft.SharePoint.PortalGroupSiteInfo
        Microsoft.SharePoint.PortalGroupSiteManager
        Microsoft.SharePoint.PortalSuiteNavData
        Microsoft.SharePoint.SharingSPWebSharingManager
        Microsoft.SharePoint.UtilitiesSPWOPIHostUtility
        Microsoft.SharePoint.UtilitiesSPWOPIProperties
        Microsoft.SharePoint.WebControlsModuleLink
        Microsoft.SharePoint.WebControlsResourceManifestInformation
        Microsoft.SharePoint.WorkflowServicesWorkflowDefinitionCollection
        Microsoft.SharePoint.WorkflowServicesWorkflowSubscriptionCollection
        Microsoft.SharePointCreatableItemInfo
        Microsoft.SharePointCreatablesInfo
        Microsoft.SharePointIngestionTaskKey
        Microsoft.SharePointObjectSharingSettings
        Microsoft.SharePointPickerSettings
        Microsoft.SharePointSharePointSharingSettings
        Microsoft.SharePointSharingLinkInfo
        Microsoft.SharePointSharingPermissionInformation
        Microsoft.SharePointSharingResult
        Microsoft.SharePointSPAppTile
        Microsoft.SharePointSPAudit
        Microsoft.SharePointSPCommonListTile
        Microsoft.SharePointSPDataLeakagePreventionStatusInfo
        Microsoft.SharePointSPDlpPolicyTip
        Microsoft.SharePointSPDocLibTile
        Microsoft.SharePointSPDocumentLibraryInformation
        Microsoft.SharePointSPEffectiveInformationRightsManagementSettings
        Microsoft.SharePointSPFeatureAppTile
        Microsoft.SharePointSPFilePropertyValues
        Microsoft.SharePointSPInformationRightsManagementFileSettings
        Microsoft.SharePointSPInstanceAppTile
        Microsoft.SharePointSPInvitationCreationResult
        Microsoft.SharePointSPListTile
        Microsoft.SharePointSPMigrationJobStatus
        Microsoft.SharePointSPMountedFolderInfo
        Microsoft.SharePointSPMountPointClientApi
        Microsoft.SharePointSPMountPointInfo
        Microsoft.SharePointSPMoveCopyUtil
        Microsoft.SharePointSPRemoteWeb
        Microsoft.SharePointSPRenderListContextMenuDataParameters
        Microsoft.SharePointSPRenderListDataOverrideParameters
        Microsoft.SharePointSPRenderListDataParameters
        Microsoft.SharePointSPRenderListFilterDataParameters
        Microsoft.SharePointSPRequestUserContext
        Microsoft.SharePointSPStorageMetrics
        Microsoft.SharePointSPTenantAppInformation
        Microsoft.SharePointSPTenantAppInstance
        Microsoft.SharePointSPTenantAppTile
        Microsoft.SharePointSPUserResource
        Microsoft.SharePointTenantAppUtility
        Microsoft.SharePointTenantSettings

      The http://sprest.architectingconnectedsystems.com tool will be updated soon with a 2013/2016 mode so you can browse the new 2016 endpoints.

      Enjoy, 
      Chris 

    • Getting K2 System Key without using the installers

      Yeah, you know if you have ever done a K2 install, you know what I'm talking about.  Well, the days of waiting to get the system key to request the license is over.  You can run the following script to get your system keys for BlackPearl, BlackPoint and SmartForms:

      $scriptPath = "C:\temp\K2 for SharePoint 4.6.11 (4.13350.1734.1)\Installation"
      $scriptPath = "C:\Temp\K2 blackpearl 4.6.11 (4.12060.1731.1)\Installation"

      cd $scriptPath

      [System.Reflection.Assembly]::LoadFile("$scriptpath\SourceCode.Install.Logging.dll")
      [System.Reflection.Assembly]::LoadFile("$scriptpath\SourceCode.Install.Licensing.dll")
      [System.Reflection.Assembly]::LoadFile("$scriptpath\Licensing\x64\SourceCode.HostServerInterfaces.dll")

      [System.Environment]::CurrentDirectory = $scriptPath;
      $installpath = "M:\Program Files (x86)\K2 blackpearl";

      $license = new-object SourceCode.Install.Licensing.Licensing($installPath + "\host server\bin");
      "BlackPearl " + $license.MachineKey;

      $license = new-object SourceCode.Install.Licensing.Licensing($installPath);
      "SmartForms " + $license.MachineKey;

      Enjoy!
      Chris 

    More Posts Next page »

    This Blog

    Syndication

    Powered by Community Server, by Telligent Systems