SlideShare uma empresa Scribd logo
1 de 19
Intro to StratusForms Mark Rackley
mrackley@paitgroup.com
#SayNoToInfoPath
http://www.stratusforms.com
http://www.itunity.com/community/stratusforms
© 2015 PAIT Group PAITGroup.com
Mark Rackley / Partner & CTO
•20+ years software architecture and
development experience
•Office 365 MVP, SharePoint Junkie
since 2007
•Event Organizer (SharePointalooza.org)
•Blogger, Writer, Speaker
•Bacon aficionado
@mrackley
www.SharePointHillbilly.com
www.PaitGroup.com
www.SharePointaLooza.org
www.StratusForms.com
© 2015 PAIT Group PAITGroup.com
StratusForms
www.StratusForms.com
• A lightweight InfoPath alternative
• 100% Client Side Based
• Engine is 100% Free
• Build forms using standard HTML, CSS, and JavaScript
• They can look EXACTLY like you want
• You can write additional business logic using JavaScript to interact with other
systems
© 2015 PAIT Group PAITGroup.com
StratusForms
• Works in SharePoint 2007, 2010, 2013, & O365
• Stores all form fields in one object
• Can promote fields in the form to SharePoint list fields
• Supports many field types including People Pickers (2013 only)
• Other features
• Repeating content
• Parent / Child list relationships
• Reporting
• Form and Field encryption/password protection
© 2015 PAIT Group PAITGroup.com
StratusForms
•Available services
•Support
•Customizations
•Training
Contact StratusForms@PAITGroup.com for more information
© 2015 PAIT Group PAITGroup.com
StratusForms – Premium *Coming Soon*
• Will be available in the SharePoint Store
• Automated configuration
• Drag and Drop form designer
• Minimal cost compared to other 3rd party form solutions
• Uses JSOM for the data library
• Same engine as free tool
© 2015 PAIT Group PAITGroup.com
The Basics
• Include the needed scripts
<script type="text/javascript" src="//code.jquery.com/jquery-1.11.1.min.js"></script>
<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/jquery.SPServices/0.7.2/jquery.SPServices-
0.7.2.min.js"></script>
<script type="text/javascript" src="//www.stratusforms.com/scripts/stratus-forms-1.0.js"></script>
<script type="text/javascript" src="//www.stratusforms.com/scripts/stratus-forms-data-SPServices.js"></script>
<script type="text/javascript" src="//code.jquery.com/ui/1.11.2/jquery-ui.min.js"></script>
<link type="text/css" rel="stylesheet" href="//code.jquery.com/ui/1.11.2/themes/start/jquery-ui.css">
© 2015 PAIT Group PAITGroup.com
The Basics
• Create a Multi-Line Plain Text Field on your List/Library called
“StratusFormsData”
• Form Initialization (Load a form)
$("#SFForm").StratusFormsInitialize({
queryStringVar: “formID",
listName: “<list Name>"
});
© 2015 PAIT Group PAITGroup.com
The Basics
• Add/Update a form
$("#SFForm").StratusFormsSubmit({
listName: “<list name>",
completefunc: function(id) {
alert("Save was successful. ID = " + id);
window.location = window.location.pathname +
"?formID=" + id;
}
});
© 2015 PAIT Group PAITGroup.com
The Basics
• Use regular HTML with unique ID
<input type=“text” id=“Email”>
• Make a field required using a class
<input type=“text” id=“Email” class=“required”>
• Promote a field to a SharePoint List Field (use INTERNAL field
name)
<input type=“text” id=“Email” class=“required” listFieldName=“Title”>
© 2015 PAIT Group PAITGroup.com
The Basics
• Custom field validation
<input type=“text” id=“Email” class=“required” listFieldName=“Title” validate="validEmail">
• Built in validation functions
• Number
• Email
• Phone #
• Social Security Number
© 2015 PAIT Group PAITGroup.com
Demo: Form Builder
http://www.stratusforms.com/formbuilder.html
DEMO: Building your first Form
with StratusForms
InfoPath? We don’t need no stinking InfoPath!
© 2015 PAIT Group PAITGroup.com
Form / Field Encryption
• Use any 3rd party encryption library
• Tested with Crypto-JS https://code.google.com/p/crypto-js/
• Override encryption/decryption methods
• Assign a class of “SFEncrypt” to either entire Form or specific
fields
• Data is stored encrypted
• Key is never stored
• Don’t lose it
© 2015 PAIT Group PAITGroup.com
Form / Field Encryption
• Use any 3rd party encryption library
• Tested with Crypto-JS https://code.google.com/p/crypto-js/
• Override encryption/decryption methods
<script src="../SiteAssets/core-min.js"></script>
<script src="../SiteAssets/enc-utf16-min.js"></script>
<script src="../SiteAssets/enc-base64-min.js"></script>
<script src="../SiteAssets/aes.js"></script>
$.fn.StratusFormsDecrypt = function(formString,key)
{
result = CryptoJS.AES.decrypt(formString, key).toString(CryptoJS.enc.Utf8);
return result;
}
$.fn. StratusFormsEncrypt = function(formString,key)
{
result = CryptoJS.AES.encrypt(formString, key);
return result;
}
Demo: Data Encryption
Encrypt field(s) or an entire form
© 2015 PAIT Group PAITGroup.com
Reporting on Form Data
• Uses DataTables http://www.datatables.net
<script type="text/javascript" src="//cdn.datatables.net/1.10.3/js/jquery.dataTables.min.js"></script>
<link type="text/css" rel="stylesheet" href="//cdn.datatables.net/1.10.3/css/jquery.dataTables.min.css" />
//Create a List View of Stratus Forms data using DataTables.
//#reportTable is a Table element that will contain the report
//ensure all fields reported against contain data or DataTables
//will throw an error.
$("#reportingTable").StratusFormsReporting({
listName: "messages", //list to report against
sourceData: ["name","email","age"], //id's of the fields to report on
columnDisplay: ["Contact Name","Email Address","Age"] //column header for fields in "sourceData"
});
Demo: Form Reporting
You can’t do THAT with InfoPath
Thank you.
© 2015 PAIT Group June 29, 2015

Mais conteúdo relacionado

Mais procurados

SharePoint & jQuery Guide - SPSNashville 2014
SharePoint & jQuery Guide - SPSNashville 2014SharePoint & jQuery Guide - SPSNashville 2014
SharePoint & jQuery Guide - SPSNashville 2014
Mark Rackley
 
Getting The Most Out Of SP Search SPSTC
Getting The Most Out Of SP Search SPSTCGetting The Most Out Of SP Search SPSTC
Getting The Most Out Of SP Search SPSTC
John Ross
 
Content by query web part
Content by query web partContent by query web part
Content by query web part
IslamKhattab
 
SPTechCon - Share point and jquery essentials
SPTechCon - Share point and jquery essentialsSPTechCon - Share point and jquery essentials
SPTechCon - Share point and jquery essentials
Mark Rackley
 

Mais procurados (20)

(Updated) SharePoint & jQuery Guide
(Updated) SharePoint & jQuery Guide(Updated) SharePoint & jQuery Guide
(Updated) SharePoint & jQuery Guide
 
SPTechCon DevDays - SharePoint & jQuery
SPTechCon DevDays - SharePoint & jQuerySPTechCon DevDays - SharePoint & jQuery
SPTechCon DevDays - SharePoint & jQuery
 
The SharePoint & jQuery Guide - Updated 1/14/14
The SharePoint & jQuery Guide - Updated 1/14/14The SharePoint & jQuery Guide - Updated 1/14/14
The SharePoint & jQuery Guide - Updated 1/14/14
 
SharePoint & jQuery Guide - SPSNashville 2014
SharePoint & jQuery Guide - SPSNashville 2014SharePoint & jQuery Guide - SPSNashville 2014
SharePoint & jQuery Guide - SPSNashville 2014
 
SharePoint & jQuery Guide - SPSTC 5/18/2013
SharePoint & jQuery Guide - SPSTC 5/18/2013 SharePoint & jQuery Guide - SPSTC 5/18/2013
SharePoint & jQuery Guide - SPSTC 5/18/2013
 
SPTechCon 2014 How to develop and debug client side code in SharePoint
SPTechCon 2014 How to develop and debug client side code in SharePointSPTechCon 2014 How to develop and debug client side code in SharePoint
SPTechCon 2014 How to develop and debug client side code in SharePoint
 
SPSNH 2014 - The SharePoint & jQueryGuide
SPSNH 2014 - The SharePoint & jQueryGuideSPSNH 2014 - The SharePoint & jQueryGuide
SPSNH 2014 - The SharePoint & jQueryGuide
 
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
 
Introduction to using jQuery with SharePoint
Introduction to using jQuery with SharePointIntroduction to using jQuery with SharePoint
Introduction to using jQuery with SharePoint
 
SharePoint REST vs CSOM
SharePoint REST vs CSOMSharePoint REST vs CSOM
SharePoint REST vs CSOM
 
Transform SharePoint default list forms with HTML, CSS and JavaScript
Transform SharePoint default list forms with HTML, CSS and JavaScriptTransform SharePoint default list forms with HTML, CSS and JavaScript
Transform SharePoint default list forms with HTML, CSS and JavaScript
 
SPSDenver - SharePoint & jQuery - What I wish I would have known
SPSDenver - SharePoint & jQuery - What I wish I would have knownSPSDenver - SharePoint & jQuery - What I wish I would have known
SPSDenver - SharePoint & jQuery - What I wish I would have known
 
SEF2013 - Create a Business Solution, Step by Step, with No Managed Code
SEF2013 - Create a Business Solution, Step by Step, with No Managed CodeSEF2013 - Create a Business Solution, Step by Step, with No Managed Code
SEF2013 - Create a Business Solution, Step by Step, with No Managed Code
 
Getting The Most Out Of SP Search SPSTC
Getting The Most Out Of SP Search SPSTCGetting The Most Out Of SP Search SPSTC
Getting The Most Out Of SP Search SPSTC
 
The SharePoint & jQuery Guide
The SharePoint & jQuery GuideThe SharePoint & jQuery Guide
The SharePoint & jQuery Guide
 
A Power User's intro to jQuery awesomeness in SharePoint
A Power User's intro to jQuery awesomeness in SharePointA Power User's intro to jQuery awesomeness in SharePoint
A Power User's intro to jQuery awesomeness in SharePoint
 
SharePoint Saturday St. Louis - SharePoint & jQuery
SharePoint Saturday St. Louis - SharePoint & jQuerySharePoint Saturday St. Louis - SharePoint & jQuery
SharePoint Saturday St. Louis - SharePoint & jQuery
 
SEF2013 - A jQuery Primer for SharePoint
SEF2013 - A jQuery Primer for SharePointSEF2013 - A jQuery Primer for SharePoint
SEF2013 - A jQuery Primer for SharePoint
 
Content by query web part
Content by query web partContent by query web part
Content by query web part
 
SPTechCon - Share point and jquery essentials
SPTechCon - Share point and jquery essentialsSPTechCon - Share point and jquery essentials
SPTechCon - Share point and jquery essentials
 

Semelhante a Introduction to StratusForms #SayNoToInfoPath

Semelhante a Introduction to StratusForms #SayNoToInfoPath (20)

Quick & Easy SharePoint Forms with StratusForms
Quick & Easy SharePoint Forms with StratusFormsQuick & Easy SharePoint Forms with StratusForms
Quick & Easy SharePoint Forms with StratusForms
 
Utilizing jQuery in SharePoint: Get More Done Faster
Utilizing jQuery in SharePoint: Get More Done FasterUtilizing jQuery in SharePoint: Get More Done Faster
Utilizing jQuery in SharePoint: Get More Done Faster
 
PowerApps vs InfoPath - SPSVB 2019
PowerApps vs InfoPath - SPSVB 2019PowerApps vs InfoPath - SPSVB 2019
PowerApps vs InfoPath - SPSVB 2019
 
Connectors
ConnectorsConnectors
Connectors
 
Envision it SharePoint Extranet Webinar Series - Federation and SharePoint On...
Envision it SharePoint Extranet Webinar Series - Federation and SharePoint On...Envision it SharePoint Extranet Webinar Series - Federation and SharePoint On...
Envision it SharePoint Extranet Webinar Series - Federation and SharePoint On...
 
Training HTML5 CSS3 Ilkom IPB
Training HTML5 CSS3 Ilkom IPBTraining HTML5 CSS3 Ilkom IPB
Training HTML5 CSS3 Ilkom IPB
 
Leverage Search and Customize to your Brand within SharePoint 2010
Leverage Search and Customize to your Brand within SharePoint 2010Leverage Search and Customize to your Brand within SharePoint 2010
Leverage Search and Customize to your Brand within SharePoint 2010
 
Hybrid SharePoint Deployments
Hybrid SharePoint DeploymentsHybrid SharePoint Deployments
Hybrid SharePoint Deployments
 
Envision it SharePoint Extranet Webinar Series - Federation and Office 365
Envision it SharePoint Extranet Webinar Series - Federation and Office 365Envision it SharePoint Extranet Webinar Series - Federation and Office 365
Envision it SharePoint Extranet Webinar Series - Federation and Office 365
 
Envision it SharePoint Extranet Webinar Series - Extranet User Provisioning
Envision it SharePoint Extranet Webinar Series  - Extranet User ProvisioningEnvision it SharePoint Extranet Webinar Series  - Extranet User Provisioning
Envision it SharePoint Extranet Webinar Series - Extranet User Provisioning
 
Spunite17 Converting your CEWP Customisations
Spunite17 Converting your CEWP CustomisationsSpunite17 Converting your CEWP Customisations
Spunite17 Converting your CEWP Customisations
 
The SharePoint and jQuery Guide by Mark Rackley - SPTechCon
The SharePoint and jQuery Guide by Mark Rackley - SPTechConThe SharePoint and jQuery Guide by Mark Rackley - SPTechCon
The SharePoint and jQuery Guide by Mark Rackley - SPTechCon
 
SharePoint Hybrid Search - What is it really?
SharePoint Hybrid Search - What is it really?SharePoint Hybrid Search - What is it really?
SharePoint Hybrid Search - What is it really?
 
SharePoint MeetUp - hybrid search - 121016
SharePoint MeetUp - hybrid search - 121016SharePoint MeetUp - hybrid search - 121016
SharePoint MeetUp - hybrid search - 121016
 
Coexist or Integrate? How Add-ins Deliver an Integrated Environment to Manage...
Coexist or Integrate? How Add-ins Deliver an Integrated Environment to Manage...Coexist or Integrate? How Add-ins Deliver an Integrated Environment to Manage...
Coexist or Integrate? How Add-ins Deliver an Integrated Environment to Manage...
 
SPSNJ 2013 Building Business Solutions using InfoPath
SPSNJ 2013 Building Business Solutions using InfoPathSPSNJ 2013 Building Business Solutions using InfoPath
SPSNJ 2013 Building Business Solutions using InfoPath
 
HTML Basics by software development company india
HTML Basics by software development company indiaHTML Basics by software development company india
HTML Basics by software development company india
 
A Career in SharePoint
A Career in SharePointA Career in SharePoint
A Career in SharePoint
 
SuiteHelp 4.0: Latest Features in Enterprise Webhelp
SuiteHelp 4.0: Latest Features in Enterprise WebhelpSuiteHelp 4.0: Latest Features in Enterprise Webhelp
SuiteHelp 4.0: Latest Features in Enterprise Webhelp
 
Beyond Gravity Forms: Form Plugins for WordPress
Beyond Gravity Forms: Form Plugins for WordPressBeyond Gravity Forms: Form Plugins for WordPress
Beyond Gravity Forms: Form Plugins for WordPress
 

Mais de Mark Rackley

SharePoint Conference North America - Converting your JavaScript to SPFX
SharePoint Conference North America - Converting your JavaScript to SPFXSharePoint Conference North America - Converting your JavaScript to SPFX
SharePoint Conference North America - Converting your JavaScript to SPFX
Mark Rackley
 
What is SharePoint Development??
What is SharePoint Development??What is SharePoint Development??
What is SharePoint Development??
Mark Rackley
 
What IS SharePoint Development?
What IS SharePoint Development?What IS SharePoint Development?
What IS SharePoint Development?
Mark Rackley
 
SharePoint Cincy 2012 - jQuery essentials
SharePoint Cincy 2012 - jQuery essentialsSharePoint Cincy 2012 - jQuery essentials
SharePoint Cincy 2012 - jQuery essentials
Mark Rackley
 

Mais de Mark Rackley (11)

Column Formatter in SharePoint Online
Column Formatter in SharePoint OnlineColumn Formatter in SharePoint Online
Column Formatter in SharePoint Online
 
SharePoint Conference North America - Converting your JavaScript to SPFX
SharePoint Conference North America - Converting your JavaScript to SPFXSharePoint Conference North America - Converting your JavaScript to SPFX
SharePoint Conference North America - Converting your JavaScript to SPFX
 
A Power User's Introduction to jQuery Awesomeness in SharePoint
A Power User's Introduction to jQuery Awesomeness in SharePointA Power User's Introduction to jQuery Awesomeness in SharePoint
A Power User's Introduction to jQuery Awesomeness in SharePoint
 
Citizen Developers Intro to jQuery Customizations in SharePoint
Citizen Developers Intro to jQuery Customizations in SharePointCitizen Developers Intro to jQuery Customizations in SharePoint
Citizen Developers Intro to jQuery Customizations in SharePoint
 
NOW I Get it!! What SharePoint IS and why I need it
NOW I Get it!! What SharePoint IS and why I need itNOW I Get it!! What SharePoint IS and why I need it
NOW I Get it!! What SharePoint IS and why I need it
 
What is SharePoint Development??
What is SharePoint Development??What is SharePoint Development??
What is SharePoint Development??
 
SharePoint and jQuery Essentials
SharePoint and jQuery EssentialsSharePoint and jQuery Essentials
SharePoint and jQuery Essentials
 
Wrapping your head around the SharePoint Beast (For the rest of us)
Wrapping your head around the SharePoint Beast (For the rest of us)Wrapping your head around the SharePoint Beast (For the rest of us)
Wrapping your head around the SharePoint Beast (For the rest of us)
 
What IS SharePoint Development?
What IS SharePoint Development?What IS SharePoint Development?
What IS SharePoint Development?
 
SPSTC - SharePoint & jQuery Essentials
SPSTC - SharePoint & jQuery EssentialsSPSTC - SharePoint & jQuery Essentials
SPSTC - SharePoint & jQuery Essentials
 
SharePoint Cincy 2012 - jQuery essentials
SharePoint Cincy 2012 - jQuery essentialsSharePoint Cincy 2012 - jQuery essentials
SharePoint Cincy 2012 - jQuery essentials
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Último (20)

A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 

Introduction to StratusForms #SayNoToInfoPath

  • 1. Intro to StratusForms Mark Rackley mrackley@paitgroup.com #SayNoToInfoPath http://www.stratusforms.com http://www.itunity.com/community/stratusforms
  • 2. © 2015 PAIT Group PAITGroup.com Mark Rackley / Partner & CTO •20+ years software architecture and development experience •Office 365 MVP, SharePoint Junkie since 2007 •Event Organizer (SharePointalooza.org) •Blogger, Writer, Speaker •Bacon aficionado @mrackley www.SharePointHillbilly.com www.PaitGroup.com www.SharePointaLooza.org www.StratusForms.com
  • 3. © 2015 PAIT Group PAITGroup.com StratusForms www.StratusForms.com • A lightweight InfoPath alternative • 100% Client Side Based • Engine is 100% Free • Build forms using standard HTML, CSS, and JavaScript • They can look EXACTLY like you want • You can write additional business logic using JavaScript to interact with other systems
  • 4. © 2015 PAIT Group PAITGroup.com StratusForms • Works in SharePoint 2007, 2010, 2013, & O365 • Stores all form fields in one object • Can promote fields in the form to SharePoint list fields • Supports many field types including People Pickers (2013 only) • Other features • Repeating content • Parent / Child list relationships • Reporting • Form and Field encryption/password protection
  • 5. © 2015 PAIT Group PAITGroup.com StratusForms •Available services •Support •Customizations •Training Contact StratusForms@PAITGroup.com for more information
  • 6. © 2015 PAIT Group PAITGroup.com StratusForms – Premium *Coming Soon* • Will be available in the SharePoint Store • Automated configuration • Drag and Drop form designer • Minimal cost compared to other 3rd party form solutions • Uses JSOM for the data library • Same engine as free tool
  • 7. © 2015 PAIT Group PAITGroup.com The Basics • Include the needed scripts <script type="text/javascript" src="//code.jquery.com/jquery-1.11.1.min.js"></script> <script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/jquery.SPServices/0.7.2/jquery.SPServices- 0.7.2.min.js"></script> <script type="text/javascript" src="//www.stratusforms.com/scripts/stratus-forms-1.0.js"></script> <script type="text/javascript" src="//www.stratusforms.com/scripts/stratus-forms-data-SPServices.js"></script> <script type="text/javascript" src="//code.jquery.com/ui/1.11.2/jquery-ui.min.js"></script> <link type="text/css" rel="stylesheet" href="//code.jquery.com/ui/1.11.2/themes/start/jquery-ui.css">
  • 8. © 2015 PAIT Group PAITGroup.com The Basics • Create a Multi-Line Plain Text Field on your List/Library called “StratusFormsData” • Form Initialization (Load a form) $("#SFForm").StratusFormsInitialize({ queryStringVar: “formID", listName: “<list Name>" });
  • 9. © 2015 PAIT Group PAITGroup.com The Basics • Add/Update a form $("#SFForm").StratusFormsSubmit({ listName: “<list name>", completefunc: function(id) { alert("Save was successful. ID = " + id); window.location = window.location.pathname + "?formID=" + id; } });
  • 10. © 2015 PAIT Group PAITGroup.com The Basics • Use regular HTML with unique ID <input type=“text” id=“Email”> • Make a field required using a class <input type=“text” id=“Email” class=“required”> • Promote a field to a SharePoint List Field (use INTERNAL field name) <input type=“text” id=“Email” class=“required” listFieldName=“Title”>
  • 11. © 2015 PAIT Group PAITGroup.com The Basics • Custom field validation <input type=“text” id=“Email” class=“required” listFieldName=“Title” validate="validEmail"> • Built in validation functions • Number • Email • Phone # • Social Security Number
  • 12. © 2015 PAIT Group PAITGroup.com Demo: Form Builder http://www.stratusforms.com/formbuilder.html
  • 13. DEMO: Building your first Form with StratusForms InfoPath? We don’t need no stinking InfoPath!
  • 14. © 2015 PAIT Group PAITGroup.com Form / Field Encryption • Use any 3rd party encryption library • Tested with Crypto-JS https://code.google.com/p/crypto-js/ • Override encryption/decryption methods • Assign a class of “SFEncrypt” to either entire Form or specific fields • Data is stored encrypted • Key is never stored • Don’t lose it
  • 15. © 2015 PAIT Group PAITGroup.com Form / Field Encryption • Use any 3rd party encryption library • Tested with Crypto-JS https://code.google.com/p/crypto-js/ • Override encryption/decryption methods <script src="../SiteAssets/core-min.js"></script> <script src="../SiteAssets/enc-utf16-min.js"></script> <script src="../SiteAssets/enc-base64-min.js"></script> <script src="../SiteAssets/aes.js"></script> $.fn.StratusFormsDecrypt = function(formString,key) { result = CryptoJS.AES.decrypt(formString, key).toString(CryptoJS.enc.Utf8); return result; } $.fn. StratusFormsEncrypt = function(formString,key) { result = CryptoJS.AES.encrypt(formString, key); return result; }
  • 16. Demo: Data Encryption Encrypt field(s) or an entire form
  • 17. © 2015 PAIT Group PAITGroup.com Reporting on Form Data • Uses DataTables http://www.datatables.net <script type="text/javascript" src="//cdn.datatables.net/1.10.3/js/jquery.dataTables.min.js"></script> <link type="text/css" rel="stylesheet" href="//cdn.datatables.net/1.10.3/css/jquery.dataTables.min.css" /> //Create a List View of Stratus Forms data using DataTables. //#reportTable is a Table element that will contain the report //ensure all fields reported against contain data or DataTables //will throw an error. $("#reportingTable").StratusFormsReporting({ listName: "messages", //list to report against sourceData: ["name","email","age"], //id's of the fields to report on columnDisplay: ["Contact Name","Email Address","Age"] //column header for fields in "sourceData" });
  • 18. Demo: Form Reporting You can’t do THAT with InfoPath
  • 19. Thank you. © 2015 PAIT Group June 29, 2015