SlideShare a Scribd company logo
Thinking SharePoint? Think Jornata.




Creating Custom Actions in
     SharePoint 2010
                       Geoff Varosky
Prepared for
          Director, Development & Evangelism
Prepared by
                           Jornata
                    Jornata
                 gvarosky@jornata.com
                    61-63 Chatham Street
                    Fourth Floor
              Follow me on Twitter @gvaro
                 Boston, MA 02109
Submitted on     April 25, 2012
About Me
• Geoff Varosky
  – Jornata
     • Director, Development & Evangelism
     • BASPUG Co-Founder
     • SPS Boston Co-Organizer
  – Blog : www.sharepointyankee.com
  – Email: gvarosky@jornata.com
  – Twitter: @gvaro
  – LinkedIn & Facebook


              Thinking SharePoint? Think Jornata.
Agenda
• What are Custom Actions?
• Demonstrations
  – Using SharePoint Designer
  – Importing into Visual Studio
  – Finding Custom Actions
  – Building & Deployment in Visual Studio
• References
• Q&A


           Thinking SharePoint? Think Jornata.
What are Custom Actions?
• Bits of XML
  <CustomAction
        Id=“MyCustomAction”
        Location=“Microsoft.SharePoint.SiteSettings
        … />


• Links
  <CustomAction …>
        <UrlAction Url=“http://www.foo.com” />
  </CustomAction>


• JavaScript (optional)
  <CustomAction …>
        <UrlAction Url=“javascript:DoSomething();” />
  </CustomAction>


• Code Behind (optional)
  <CustomAction
        …
        ControlAssembly=“MyCode, Version=1.0.0.0, Culture=neutral,
  PublicKeyToken=63316a326e123aec"
        ControlClass=“MyCode.Class“ />



                   Thinking SharePoint? Think Jornata.
What are Custom Actions?
  • Controls
    – Button                                    – Menu
    – Checkbox                                  – Menu Section
    – Color Picker                              – MRU Split Button
    – Combo Box                                    • Most Recently Used

    – Drop Down                                 – Spinner
    – Flyout Anchor                             – Split Button
    – Insert Table                              – Text Box
    – Label                                     – Toggle Button


          Thinking SharePoint? Think Jornata.
(CustomAction) Anatomy 101
 <CustomAction
       ContentTypeId = "Text"
       ControlAssembly = "Text"
       ControlClass = "Text"
       ControlSrc = "Text"
       Description = "Text"
       GroupId = "Text"
       Id = "Text"
       ImageUrl = "Text"
       Location = "Text"
       RegistrationId = "Text"
       RegistrationType = "Text"
       RequireSiteAdministrator = "TRUE" | "FALSE"
       Rights = "Text"
       Sequence = "Integer"
       ShowInLists = "TRUE" | "FALSE"
       ShowInReadOnlyContentTypes = "TRUE" | "FALSE"
       ShowInSealedContentTypes = "TRUE" | "FALSE"
       Title = "Text">
       <URLAction URL=“” />
       <CommandUI></CommandUI>
 </CustomAction>
                 Thinking SharePoint? Think Jornata.
(CustomAction) Anatomy 101
• Id (optional)
   – Specifies a unique identifier for custom action
   – May be a GUID or a unique term
   – Example: DeleteWeb

• GroupID (optional)
   – Identifies the unique group that this element is
     contained in
   – Example: SiteTasks


            Thinking SharePoint? Think Jornata.
(CustomAction) Anatomy 101
• Location (optional)
  – Specifies the location for this custom action
  – Example: Microsoft.SharePoint.SiteSettings


• RegistrationType (optional)
  – Specifies the list, item content type, file type, or
    programmatic identifier that this action is
    associated with
  – Example: List


            Thinking SharePoint? Think Jornata.
(CustomAction) Anatomy 101
• RegistrationId (optional)
   – Specifies the registration attachment for a per-
     item action
   – Example (List Identifier – Task List): 107
      • {$ListId:Lists/Tasks;}
      • (http://snipurl.com/ntd5g)

• Title (required)
   – Specifies the name of your action
   – Example: DeleteWeb


            Thinking SharePoint? Think Jornata.
(CustomAction) Anatomy 101
• Description (optional)
   – Longer description for action which is shown as a
     tooltip or sub-description (where applicable) for
     the action


– Sequence (optional)
   – The order in which your action will appear.
   – If not specified, displayed in the order it is read by
     SharePoint by Feature and by order in element
     listing (XML).

             Thinking SharePoint? Think Jornata.
(CustomAction) Anatomy 101
• UrlAction Tokens
  – ~site
      – References the current SPWeb context
  – ~sitecollection
      – References the current SPSite context
  – {ItemId}
      – GUID of the item action is called from
  – {ItemUrl}
      – URL of the item the action is called from




             Thinking SharePoint? Think Jornata.
(CustomAction) Anatomy 101
• UrlAction Tokens
  – {ListId}
     • GUID representation of the list
  – {SiteUrl}
     • References the URL of the SPWeb context the action is
       called from
  – {RecurrenceId}
     • Unsupported in context menus
         – http://go.gvaro.net/bHaqaQ




               Thinking SharePoint? Think Jornata.
What are Custom Actions?
• Can be bound to…
  – Lists
     • Tasks, Document Libraries, Custom, etc.




            Thinking SharePoint? Think Jornata.
What are Custom Actions?
• Can be bound to…
  – File Types
     • By Extension - .docx, .pl, .foo, .bar




             Thinking SharePoint? Think Jornata.
What are Custom Actions?
• Can be bound to…
  – Content Types
     • Tasks, Documents, Custom
     • All (0x)
        – http://go.gvaro.net/bbYxRy


  – Programmatic Identifiers
     • Tasks List (107)
     • Content Types (0x)




            Thinking SharePoint? Think Jornata.
Building Custom Actions
• SharePoint Designer 2010
• Visual Studio 2010
• CKS:DEV
  – Adds Custom Action Item Templates
  – http://cksdev.codeplex.com




• NotePad?

         Thinking SharePoint? Think Jornata.
Building Custom Actions
• SharePoint Designer 2010
  – Build Custom Actions
     • List Item Menu
     • List View, Edit, Display Forms
• Visual Studio 2010
  – Import from WSP file
  – Package
  – Add Functionality
  – Deploy


            Thinking SharePoint? Think Jornata.
DEMOS!
Building Custom Actions in SharePoint Designer 2010
 Importing Custom Actions into Visual Studio 2010
              Listing All Custom Actions
                    Using CKS:DEV
                Custom Action Groups
                Hiding Custom Actions
                     Maybe more?




        Thinking SharePoint? Think Jornata.
Bonus Round!
• Referencing JavaScript Files
  – Jan Tielens on EUSP
  – http://go.gvaro.net/dvCSS6
  – Can Add JavaScript into the HEAD of a page using a
    Custom Action
  – Location references “/_layouts/” always




           Thinking SharePoint? Think Jornata.
References
• Eric Kraus
  – Listing all Custom Actions in the Farm with
    PowerShell
  – http://go.gvaro.net/bD7OHm
• MSDN
  – Custom Action Definition Schema
     • CommandUI Defintions, Extensions, Handlers
     • CustomAction, CustomActionGroup, HideCustomAction
     • Default Locations and IDs
        – http://go.gvaro.net/9q0QV2


            Thinking SharePoint? Think Jornata.
References
• Wictor Wilén
  – Creating Custom Ribbon Extensions
  – Part 1 - http://go.gvaro.net/aFUwBW
  – Part 2 - http://go.gvaro.net/aGlydC
• Using JavaScript + Custom Actions to navigate
  Document Libraries
  – http://go.gvaro.net/h2w8mN




          Thinking SharePoint? Think Jornata.
References
• My Blog
  – www.sharepointyankee.com
    •   Search for “Custom Action”
    •   Creating Custom Actions with SharePoint Designer
    •   Default List Type IDs
    •   Deploying Custom Actions Across All List Types
    •   Custom Actions in SharePoint 2007
    •   SPBasePermissions Enumeration (Rights)
    •   Creating Custom Actions using SPD
    •   “Delete This Site”
    •   More…

             Thinking SharePoint? Think Jornata.
•   Meets 2nd Wednesday/Month
•   6P – 8PM
•   Microsoft N.E.R.D. Center
•   http://www.bostonsharepointug.org
•   Twitter: @BASPUG / #BASPUG


        Thinking SharePoint? Think Jornata.
•   April 28th
•   Waltham, MA
•   http://biy.ly/SPSBos
•   Twitter: @SPSBoston / #SPSBos


        Thinking SharePoint? Think Jornata.
Q&A
About Me
• Geoff Varosky
  – Jornata
     • Director, Development & Evangelism
     • BASPUG Co-Founder
     • SPS Boston Co-Organizer
  – Blog : www.sharepointyankee.com
  – Email: gvarosky@jornata.com
  – Twitter: @gvaro
  – LinkedIn & Facebook


              Thinking SharePoint? Think Jornata.

More Related Content

Similar to Creating Custom Actions in SharePoint 2010

Chris O'Brien - Customizing the SharePoint/Office 365 UI with JavaScript (ESP...
Chris O'Brien - Customizing the SharePoint/Office 365 UI with JavaScript (ESP...Chris O'Brien - Customizing the SharePoint/Office 365 UI with JavaScript (ESP...
Chris O'Brien - Customizing the SharePoint/Office 365 UI with JavaScript (ESP...
Chris O'Brien
 
Best Practices in SharePoint Development - Just Freakin Work! Overcoming Hurd...
Best Practices in SharePoint Development - Just Freakin Work! Overcoming Hurd...Best Practices in SharePoint Development - Just Freakin Work! Overcoming Hurd...
Best Practices in SharePoint Development - Just Freakin Work! Overcoming Hurd...
Geoff Varosky
 
CUST-1 Share Document Library Extension Points
CUST-1 Share Document Library Extension PointsCUST-1 Share Document Library Extension Points
CUST-1 Share Document Library Extension Points
Alfresco Software
 
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
Mark Rackley
 
SharePoint NYC search presentation
SharePoint NYC search presentationSharePoint NYC search presentation
SharePoint NYC search presentation
jtbarrera
 
The Ribbon UI and Custom Actions in SharePoint 2010
The Ribbon UI and Custom Actions in SharePoint 2010The Ribbon UI and Custom Actions in SharePoint 2010
The Ribbon UI and Custom Actions in SharePoint 2010
Geoff Varosky
 
SharePoint goes Microsoft Graph
SharePoint goes Microsoft GraphSharePoint goes Microsoft Graph
SharePoint goes Microsoft Graph
Markus Moeller
 
SharePoint and jQuery Essentials
SharePoint and jQuery EssentialsSharePoint and jQuery Essentials
SharePoint and jQuery Essentials
Mark Rackley
 
Advanced guide to develop ajax applications using dojo
Advanced guide to develop ajax applications using dojoAdvanced guide to develop ajax applications using dojo
Advanced guide to develop ajax applications using dojo
Fu Cheng
 
Darwin web standards
Darwin web standardsDarwin web standards
Darwin web standards
Justin Avery
 
Creating an FAQ for end users, An evolution of an idea - SharePoint Saturday ...
Creating an FAQ for end users, An evolution of an idea - SharePoint Saturday ...Creating an FAQ for end users, An evolution of an idea - SharePoint Saturday ...
Creating an FAQ for end users, An evolution of an idea - SharePoint Saturday ...
Paul Hunt
 
Tom Critchlow - Data Feed SEO & Advanced Site Architecture
Tom Critchlow - Data Feed SEO & Advanced Site ArchitectureTom Critchlow - Data Feed SEO & Advanced Site Architecture
Tom Critchlow - Data Feed SEO & Advanced Site Architecture
auexpo Conference
 
Jornata llc sps baltimore 2012 - share point branding
Jornata llc   sps baltimore 2012 - share point brandingJornata llc   sps baltimore 2012 - share point branding
Jornata llc sps baltimore 2012 - share point branding
jcsturges
 
2/15/2012 - Wrapping Your Head Around the SharePoint Beast
2/15/2012 - Wrapping Your Head Around the SharePoint Beast2/15/2012 - Wrapping Your Head Around the SharePoint Beast
2/15/2012 - Wrapping Your Head Around the SharePoint Beast
Mark Rackley
 
SPTechCon Boston 2015 - Utilizing jQuery in SharePoint
SPTechCon Boston 2015 - Utilizing jQuery in SharePointSPTechCon Boston 2015 - Utilizing jQuery in SharePoint
SPTechCon Boston 2015 - Utilizing jQuery in SharePoint
Mark Rackley
 
SPSTC - SharePoint & jQuery Essentials
SPSTC - SharePoint & jQuery EssentialsSPSTC - SharePoint & jQuery Essentials
SPSTC - SharePoint & jQuery Essentials
Mark Rackley
 
SPTechCon DevDays - SharePoint & jQuery
SPTechCon DevDays - SharePoint & jQuerySPTechCon DevDays - SharePoint & jQuery
SPTechCon DevDays - SharePoint & jQuery
Mark Rackley
 
Maintainable Sitecore Solutions
Maintainable Sitecore SolutionsMaintainable Sitecore Solutions
Maintainable Sitecore Solutions
Thomas Eldblom
 
Building a SharePoint Platform that Scales
Building a SharePoint Platform that ScalesBuilding a SharePoint Platform that Scales
Building a SharePoint Platform that Scales
Dan Usher
 
Building a SharePoint Platform That Scales
Building a SharePoint Platform That ScalesBuilding a SharePoint Platform That Scales
Building a SharePoint Platform That Scales
Scott Hoag
 

Similar to Creating Custom Actions in SharePoint 2010 (20)

Chris O'Brien - Customizing the SharePoint/Office 365 UI with JavaScript (ESP...
Chris O'Brien - Customizing the SharePoint/Office 365 UI with JavaScript (ESP...Chris O'Brien - Customizing the SharePoint/Office 365 UI with JavaScript (ESP...
Chris O'Brien - Customizing the SharePoint/Office 365 UI with JavaScript (ESP...
 
Best Practices in SharePoint Development - Just Freakin Work! Overcoming Hurd...
Best Practices in SharePoint Development - Just Freakin Work! Overcoming Hurd...Best Practices in SharePoint Development - Just Freakin Work! Overcoming Hurd...
Best Practices in SharePoint Development - Just Freakin Work! Overcoming Hurd...
 
CUST-1 Share Document Library Extension Points
CUST-1 Share Document Library Extension PointsCUST-1 Share Document Library Extension Points
CUST-1 Share Document Library Extension Points
 
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
 
SharePoint NYC search presentation
SharePoint NYC search presentationSharePoint NYC search presentation
SharePoint NYC search presentation
 
The Ribbon UI and Custom Actions in SharePoint 2010
The Ribbon UI and Custom Actions in SharePoint 2010The Ribbon UI and Custom Actions in SharePoint 2010
The Ribbon UI and Custom Actions in SharePoint 2010
 
SharePoint goes Microsoft Graph
SharePoint goes Microsoft GraphSharePoint goes Microsoft Graph
SharePoint goes Microsoft Graph
 
SharePoint and jQuery Essentials
SharePoint and jQuery EssentialsSharePoint and jQuery Essentials
SharePoint and jQuery Essentials
 
Advanced guide to develop ajax applications using dojo
Advanced guide to develop ajax applications using dojoAdvanced guide to develop ajax applications using dojo
Advanced guide to develop ajax applications using dojo
 
Darwin web standards
Darwin web standardsDarwin web standards
Darwin web standards
 
Creating an FAQ for end users, An evolution of an idea - SharePoint Saturday ...
Creating an FAQ for end users, An evolution of an idea - SharePoint Saturday ...Creating an FAQ for end users, An evolution of an idea - SharePoint Saturday ...
Creating an FAQ for end users, An evolution of an idea - SharePoint Saturday ...
 
Tom Critchlow - Data Feed SEO & Advanced Site Architecture
Tom Critchlow - Data Feed SEO & Advanced Site ArchitectureTom Critchlow - Data Feed SEO & Advanced Site Architecture
Tom Critchlow - Data Feed SEO & Advanced Site Architecture
 
Jornata llc sps baltimore 2012 - share point branding
Jornata llc   sps baltimore 2012 - share point brandingJornata llc   sps baltimore 2012 - share point branding
Jornata llc sps baltimore 2012 - share point branding
 
2/15/2012 - Wrapping Your Head Around the SharePoint Beast
2/15/2012 - Wrapping Your Head Around the SharePoint Beast2/15/2012 - Wrapping Your Head Around the SharePoint Beast
2/15/2012 - Wrapping Your Head Around the SharePoint Beast
 
SPTechCon Boston 2015 - Utilizing jQuery in SharePoint
SPTechCon Boston 2015 - Utilizing jQuery in SharePointSPTechCon Boston 2015 - Utilizing jQuery in SharePoint
SPTechCon Boston 2015 - Utilizing jQuery in SharePoint
 
SPSTC - SharePoint & jQuery Essentials
SPSTC - SharePoint & jQuery EssentialsSPSTC - SharePoint & jQuery Essentials
SPSTC - SharePoint & jQuery Essentials
 
SPTechCon DevDays - SharePoint & jQuery
SPTechCon DevDays - SharePoint & jQuerySPTechCon DevDays - SharePoint & jQuery
SPTechCon DevDays - SharePoint & jQuery
 
Maintainable Sitecore Solutions
Maintainable Sitecore SolutionsMaintainable Sitecore Solutions
Maintainable Sitecore Solutions
 
Building a SharePoint Platform that Scales
Building a SharePoint Platform that ScalesBuilding a SharePoint Platform that Scales
Building a SharePoint Platform that Scales
 
Building a SharePoint Platform That Scales
Building a SharePoint Platform That ScalesBuilding a SharePoint Platform That Scales
Building a SharePoint Platform That Scales
 

More from Geoff Varosky

Using Azure Runbooks and Microsoft Flow to Automate SharePoint Tasks
Using Azure Runbooks and Microsoft Flow to Automate SharePoint TasksUsing Azure Runbooks and Microsoft Flow to Automate SharePoint Tasks
Using Azure Runbooks and Microsoft Flow to Automate SharePoint Tasks
Geoff Varosky
 
Automating Enterprise Application Deployments with PowerShell
Automating Enterprise Application Deployments with PowerShellAutomating Enterprise Application Deployments with PowerShell
Automating Enterprise Application Deployments with PowerShell
Geoff Varosky
 
Automating Your Enterprise Application Deployments with PowerShell
Automating Your Enterprise Application Deployments with PowerShellAutomating Your Enterprise Application Deployments with PowerShell
Automating Your Enterprise Application Deployments with PowerShell
Geoff Varosky
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010
Geoff Varosky
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010
Geoff Varosky
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010
Geoff Varosky
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010
Geoff Varosky
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010
Geoff Varosky
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010
Geoff Varosky
 
Who? What? Where? Searching in SharePoint
Who? What? Where? Searching in SharePointWho? What? Where? Searching in SharePoint
Who? What? Where? Searching in SharePoint
Geoff Varosky
 
Planning and Configuring Extranets in SharePoint 2010 @ SharePoint Saturday N...
Planning and Configuring Extranets in SharePoint 2010 @ SharePoint Saturday N...Planning and Configuring Extranets in SharePoint 2010 @ SharePoint Saturday N...
Planning and Configuring Extranets in SharePoint 2010 @ SharePoint Saturday N...
Geoff Varosky
 
Spsnh geoff varosky - jornata - planning and configuring extranets in share...
Spsnh   geoff varosky - jornata - planning and configuring extranets in share...Spsnh   geoff varosky - jornata - planning and configuring extranets in share...
Spsnh geoff varosky - jornata - planning and configuring extranets in share...
Geoff Varosky
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010
Geoff Varosky
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010
Geoff Varosky
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010
Geoff Varosky
 
SharePoint Saturday Hartford - 01/29/11 - Creating Custom Actions in SharePoi...
SharePoint Saturday Hartford - 01/29/11 - Creating Custom Actions in SharePoi...SharePoint Saturday Hartford - 01/29/11 - Creating Custom Actions in SharePoi...
SharePoint Saturday Hartford - 01/29/11 - Creating Custom Actions in SharePoi...
Geoff Varosky
 
SharePoint Saturday EMEA - The Ribbon UI and Custom Actions in SharePoint 2010
SharePoint Saturday EMEA - The Ribbon UI and Custom Actions in SharePoint 2010SharePoint Saturday EMEA - The Ribbon UI and Custom Actions in SharePoint 2010
SharePoint Saturday EMEA - The Ribbon UI and Custom Actions in SharePoint 2010
Geoff Varosky
 
Creating Custom Actions in SharePoint 2010
Creating Custom Actions in SharePoint 2010Creating Custom Actions in SharePoint 2010
Creating Custom Actions in SharePoint 2010
Geoff Varosky
 
Just Freakin' Work - Overcoming Hurdles and Avoiding Pain
Just Freakin' Work - Overcoming Hurdles and Avoiding PainJust Freakin' Work - Overcoming Hurdles and Avoiding Pain
Just Freakin' Work - Overcoming Hurdles and Avoiding Pain
Geoff Varosky
 
Creating Custom Actions in SharePoint 2010
Creating Custom Actions in SharePoint 2010Creating Custom Actions in SharePoint 2010
Creating Custom Actions in SharePoint 2010
Geoff Varosky
 

More from Geoff Varosky (20)

Using Azure Runbooks and Microsoft Flow to Automate SharePoint Tasks
Using Azure Runbooks and Microsoft Flow to Automate SharePoint TasksUsing Azure Runbooks and Microsoft Flow to Automate SharePoint Tasks
Using Azure Runbooks and Microsoft Flow to Automate SharePoint Tasks
 
Automating Enterprise Application Deployments with PowerShell
Automating Enterprise Application Deployments with PowerShellAutomating Enterprise Application Deployments with PowerShell
Automating Enterprise Application Deployments with PowerShell
 
Automating Your Enterprise Application Deployments with PowerShell
Automating Your Enterprise Application Deployments with PowerShellAutomating Your Enterprise Application Deployments with PowerShell
Automating Your Enterprise Application Deployments with PowerShell
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010
 
Who? What? Where? Searching in SharePoint
Who? What? Where? Searching in SharePointWho? What? Where? Searching in SharePoint
Who? What? Where? Searching in SharePoint
 
Planning and Configuring Extranets in SharePoint 2010 @ SharePoint Saturday N...
Planning and Configuring Extranets in SharePoint 2010 @ SharePoint Saturday N...Planning and Configuring Extranets in SharePoint 2010 @ SharePoint Saturday N...
Planning and Configuring Extranets in SharePoint 2010 @ SharePoint Saturday N...
 
Spsnh geoff varosky - jornata - planning and configuring extranets in share...
Spsnh   geoff varosky - jornata - planning and configuring extranets in share...Spsnh   geoff varosky - jornata - planning and configuring extranets in share...
Spsnh geoff varosky - jornata - planning and configuring extranets in share...
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010
 
SharePoint Saturday Hartford - 01/29/11 - Creating Custom Actions in SharePoi...
SharePoint Saturday Hartford - 01/29/11 - Creating Custom Actions in SharePoi...SharePoint Saturday Hartford - 01/29/11 - Creating Custom Actions in SharePoi...
SharePoint Saturday Hartford - 01/29/11 - Creating Custom Actions in SharePoi...
 
SharePoint Saturday EMEA - The Ribbon UI and Custom Actions in SharePoint 2010
SharePoint Saturday EMEA - The Ribbon UI and Custom Actions in SharePoint 2010SharePoint Saturday EMEA - The Ribbon UI and Custom Actions in SharePoint 2010
SharePoint Saturday EMEA - The Ribbon UI and Custom Actions in SharePoint 2010
 
Creating Custom Actions in SharePoint 2010
Creating Custom Actions in SharePoint 2010Creating Custom Actions in SharePoint 2010
Creating Custom Actions in SharePoint 2010
 
Just Freakin' Work - Overcoming Hurdles and Avoiding Pain
Just Freakin' Work - Overcoming Hurdles and Avoiding PainJust Freakin' Work - Overcoming Hurdles and Avoiding Pain
Just Freakin' Work - Overcoming Hurdles and Avoiding Pain
 
Creating Custom Actions in SharePoint 2010
Creating Custom Actions in SharePoint 2010Creating Custom Actions in SharePoint 2010
Creating Custom Actions in SharePoint 2010
 

Recently uploaded

9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
saastr
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
Tatiana Kojar
 
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
Alex Pruden
 
Session 1 - Intro to Robotic Process Automation.pdf
Session 1 - Intro to Robotic Process Automation.pdfSession 1 - Intro to Robotic Process Automation.pdf
Session 1 - Intro to Robotic Process Automation.pdf
UiPathCommunity
 
Leveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and StandardsLeveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and Standards
Neo4j
 
Northern Engraving | Nameplate Manufacturing Process - 2024
Northern Engraving | Nameplate Manufacturing Process - 2024Northern Engraving | Nameplate Manufacturing Process - 2024
Northern Engraving | Nameplate Manufacturing Process - 2024
Northern Engraving
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
Brandon Minnick, MBA
 
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
Edge AI and Vision Alliance
 
"Scaling RAG Applications to serve millions of users", Kevin Goedecke
"Scaling RAG Applications to serve millions of users",  Kevin Goedecke"Scaling RAG Applications to serve millions of users",  Kevin Goedecke
"Scaling RAG Applications to serve millions of users", Kevin Goedecke
Fwdays
 
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Pitangent Analytics & Technology Solutions Pvt. Ltd
 
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
Jason Yip
 
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectorsConnector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
DianaGray10
 
What is an RPA CoE? Session 1 – CoE Vision
What is an RPA CoE?  Session 1 – CoE VisionWhat is an RPA CoE?  Session 1 – CoE Vision
What is an RPA CoE? Session 1 – CoE Vision
DianaGray10
 
Essentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation ParametersEssentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation Parameters
Safe Software
 
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
saastr
 
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge GraphGraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
Neo4j
 
A Deep Dive into ScyllaDB's Architecture
A Deep Dive into ScyllaDB's ArchitectureA Deep Dive into ScyllaDB's Architecture
A Deep Dive into ScyllaDB's Architecture
ScyllaDB
 
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
Fwdays
 
Northern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving | Modern Metal Trim, Nameplates and Appliance PanelsNorthern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving
 
inQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
inQuba Webinar Mastering Customer Journey Management with Dr Graham HillinQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
inQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
LizaNolte
 

Recently uploaded (20)

9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
 
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
 
Session 1 - Intro to Robotic Process Automation.pdf
Session 1 - Intro to Robotic Process Automation.pdfSession 1 - Intro to Robotic Process Automation.pdf
Session 1 - Intro to Robotic Process Automation.pdf
 
Leveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and StandardsLeveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and Standards
 
Northern Engraving | Nameplate Manufacturing Process - 2024
Northern Engraving | Nameplate Manufacturing Process - 2024Northern Engraving | Nameplate Manufacturing Process - 2024
Northern Engraving | Nameplate Manufacturing Process - 2024
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
 
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
 
"Scaling RAG Applications to serve millions of users", Kevin Goedecke
"Scaling RAG Applications to serve millions of users",  Kevin Goedecke"Scaling RAG Applications to serve millions of users",  Kevin Goedecke
"Scaling RAG Applications to serve millions of users", Kevin Goedecke
 
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
 
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
 
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectorsConnector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
 
What is an RPA CoE? Session 1 – CoE Vision
What is an RPA CoE?  Session 1 – CoE VisionWhat is an RPA CoE?  Session 1 – CoE Vision
What is an RPA CoE? Session 1 – CoE Vision
 
Essentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation ParametersEssentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation Parameters
 
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
 
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge GraphGraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
 
A Deep Dive into ScyllaDB's Architecture
A Deep Dive into ScyllaDB's ArchitectureA Deep Dive into ScyllaDB's Architecture
A Deep Dive into ScyllaDB's Architecture
 
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
 
Northern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving | Modern Metal Trim, Nameplates and Appliance PanelsNorthern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
 
inQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
inQuba Webinar Mastering Customer Journey Management with Dr Graham HillinQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
inQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
 

Creating Custom Actions in SharePoint 2010

  • 1. Thinking SharePoint? Think Jornata. Creating Custom Actions in SharePoint 2010 Geoff Varosky Prepared for Director, Development & Evangelism Prepared by Jornata Jornata gvarosky@jornata.com 61-63 Chatham Street Fourth Floor Follow me on Twitter @gvaro Boston, MA 02109 Submitted on April 25, 2012
  • 2. About Me • Geoff Varosky – Jornata • Director, Development & Evangelism • BASPUG Co-Founder • SPS Boston Co-Organizer – Blog : www.sharepointyankee.com – Email: gvarosky@jornata.com – Twitter: @gvaro – LinkedIn & Facebook Thinking SharePoint? Think Jornata.
  • 3. Agenda • What are Custom Actions? • Demonstrations – Using SharePoint Designer – Importing into Visual Studio – Finding Custom Actions – Building & Deployment in Visual Studio • References • Q&A Thinking SharePoint? Think Jornata.
  • 4. What are Custom Actions? • Bits of XML <CustomAction Id=“MyCustomAction” Location=“Microsoft.SharePoint.SiteSettings … /> • Links <CustomAction …> <UrlAction Url=“http://www.foo.com” /> </CustomAction> • JavaScript (optional) <CustomAction …> <UrlAction Url=“javascript:DoSomething();” /> </CustomAction> • Code Behind (optional) <CustomAction … ControlAssembly=“MyCode, Version=1.0.0.0, Culture=neutral, PublicKeyToken=63316a326e123aec" ControlClass=“MyCode.Class“ /> Thinking SharePoint? Think Jornata.
  • 5. What are Custom Actions? • Controls – Button – Menu – Checkbox – Menu Section – Color Picker – MRU Split Button – Combo Box • Most Recently Used – Drop Down – Spinner – Flyout Anchor – Split Button – Insert Table – Text Box – Label – Toggle Button Thinking SharePoint? Think Jornata.
  • 6. (CustomAction) Anatomy 101 <CustomAction ContentTypeId = "Text" ControlAssembly = "Text" ControlClass = "Text" ControlSrc = "Text" Description = "Text" GroupId = "Text" Id = "Text" ImageUrl = "Text" Location = "Text" RegistrationId = "Text" RegistrationType = "Text" RequireSiteAdministrator = "TRUE" | "FALSE" Rights = "Text" Sequence = "Integer" ShowInLists = "TRUE" | "FALSE" ShowInReadOnlyContentTypes = "TRUE" | "FALSE" ShowInSealedContentTypes = "TRUE" | "FALSE" Title = "Text"> <URLAction URL=“” /> <CommandUI></CommandUI> </CustomAction> Thinking SharePoint? Think Jornata.
  • 7. (CustomAction) Anatomy 101 • Id (optional) – Specifies a unique identifier for custom action – May be a GUID or a unique term – Example: DeleteWeb • GroupID (optional) – Identifies the unique group that this element is contained in – Example: SiteTasks Thinking SharePoint? Think Jornata.
  • 8. (CustomAction) Anatomy 101 • Location (optional) – Specifies the location for this custom action – Example: Microsoft.SharePoint.SiteSettings • RegistrationType (optional) – Specifies the list, item content type, file type, or programmatic identifier that this action is associated with – Example: List Thinking SharePoint? Think Jornata.
  • 9. (CustomAction) Anatomy 101 • RegistrationId (optional) – Specifies the registration attachment for a per- item action – Example (List Identifier – Task List): 107 • {$ListId:Lists/Tasks;} • (http://snipurl.com/ntd5g) • Title (required) – Specifies the name of your action – Example: DeleteWeb Thinking SharePoint? Think Jornata.
  • 10. (CustomAction) Anatomy 101 • Description (optional) – Longer description for action which is shown as a tooltip or sub-description (where applicable) for the action – Sequence (optional) – The order in which your action will appear. – If not specified, displayed in the order it is read by SharePoint by Feature and by order in element listing (XML). Thinking SharePoint? Think Jornata.
  • 11. (CustomAction) Anatomy 101 • UrlAction Tokens – ~site – References the current SPWeb context – ~sitecollection – References the current SPSite context – {ItemId} – GUID of the item action is called from – {ItemUrl} – URL of the item the action is called from Thinking SharePoint? Think Jornata.
  • 12. (CustomAction) Anatomy 101 • UrlAction Tokens – {ListId} • GUID representation of the list – {SiteUrl} • References the URL of the SPWeb context the action is called from – {RecurrenceId} • Unsupported in context menus – http://go.gvaro.net/bHaqaQ Thinking SharePoint? Think Jornata.
  • 13. What are Custom Actions? • Can be bound to… – Lists • Tasks, Document Libraries, Custom, etc. Thinking SharePoint? Think Jornata.
  • 14. What are Custom Actions? • Can be bound to… – File Types • By Extension - .docx, .pl, .foo, .bar Thinking SharePoint? Think Jornata.
  • 15. What are Custom Actions? • Can be bound to… – Content Types • Tasks, Documents, Custom • All (0x) – http://go.gvaro.net/bbYxRy – Programmatic Identifiers • Tasks List (107) • Content Types (0x) Thinking SharePoint? Think Jornata.
  • 16. Building Custom Actions • SharePoint Designer 2010 • Visual Studio 2010 • CKS:DEV – Adds Custom Action Item Templates – http://cksdev.codeplex.com • NotePad? Thinking SharePoint? Think Jornata.
  • 17. Building Custom Actions • SharePoint Designer 2010 – Build Custom Actions • List Item Menu • List View, Edit, Display Forms • Visual Studio 2010 – Import from WSP file – Package – Add Functionality – Deploy Thinking SharePoint? Think Jornata.
  • 18. DEMOS! Building Custom Actions in SharePoint Designer 2010 Importing Custom Actions into Visual Studio 2010 Listing All Custom Actions Using CKS:DEV Custom Action Groups Hiding Custom Actions Maybe more? Thinking SharePoint? Think Jornata.
  • 19. Bonus Round! • Referencing JavaScript Files – Jan Tielens on EUSP – http://go.gvaro.net/dvCSS6 – Can Add JavaScript into the HEAD of a page using a Custom Action – Location references “/_layouts/” always Thinking SharePoint? Think Jornata.
  • 20. References • Eric Kraus – Listing all Custom Actions in the Farm with PowerShell – http://go.gvaro.net/bD7OHm • MSDN – Custom Action Definition Schema • CommandUI Defintions, Extensions, Handlers • CustomAction, CustomActionGroup, HideCustomAction • Default Locations and IDs – http://go.gvaro.net/9q0QV2 Thinking SharePoint? Think Jornata.
  • 21. References • Wictor Wilén – Creating Custom Ribbon Extensions – Part 1 - http://go.gvaro.net/aFUwBW – Part 2 - http://go.gvaro.net/aGlydC • Using JavaScript + Custom Actions to navigate Document Libraries – http://go.gvaro.net/h2w8mN Thinking SharePoint? Think Jornata.
  • 22. References • My Blog – www.sharepointyankee.com • Search for “Custom Action” • Creating Custom Actions with SharePoint Designer • Default List Type IDs • Deploying Custom Actions Across All List Types • Custom Actions in SharePoint 2007 • SPBasePermissions Enumeration (Rights) • Creating Custom Actions using SPD • “Delete This Site” • More… Thinking SharePoint? Think Jornata.
  • 23.
  • 24. Meets 2nd Wednesday/Month • 6P – 8PM • Microsoft N.E.R.D. Center • http://www.bostonsharepointug.org • Twitter: @BASPUG / #BASPUG Thinking SharePoint? Think Jornata.
  • 25. April 28th • Waltham, MA • http://biy.ly/SPSBos • Twitter: @SPSBoston / #SPSBos Thinking SharePoint? Think Jornata.
  • 26. Q&A
  • 27. About Me • Geoff Varosky – Jornata • Director, Development & Evangelism • BASPUG Co-Founder • SPS Boston Co-Organizer – Blog : www.sharepointyankee.com – Email: gvarosky@jornata.com – Twitter: @gvaro – LinkedIn & Facebook Thinking SharePoint? Think Jornata.