Extending Esri Maps for SharePoint with the Esri Maps ... · Extending Esri Maps for SharePoint...

Post on 02-Sep-2019

12 views 0 download

transcript

Extending Esri Maps for SharePoint with the Esri Maps Extensibility API

Tony Howser, Sentha Sivabalan, Heiko Heijenga, Elitsa Baklova

Microsoft SharePoint

What is SharePoint?

SharePoint in Defense

SharePoint in Big Pharma

SharePoint in Oil and Gas

SharePoint in Architecture, Engineering & Construction

What is SharePoint?

A Portal to Your LOB Data

• Enterprise Resource Planning (ERP)

• Supply Chain Management (SCM)

• Product Lifecycle Management (PLM)

• Customer Relationship Management (CRM)

• Enterprise Content Management (ECM)

• Business Intelligence (BI)

e.g. Documentum, IBM FileNet, OpenText, SharePoint, HP, Oracle & lots of niche solutions

e.g. SAP, Oracle, Lawson

e.g. IBM, Infor, Sage, SAP, Oracle

e.g. Siemens, PTC, SAP, Oracle

e.g. Salesforce.com, Dynamics, SAP, Oracle

e.g. SAP, IBM, MicroStrategy, Oracle

Esri Maps for SharePoint in a Nutshell

If you can create or edit a SharePoint Site Page, you can author, customize and publish an interactive web map with Esri Maps for SharePoint

Color-coded mapping

Geographic data enrichment

Publish and share web maps and feature services

JavaScript-based architecture

World geocoding and place name lookup

Geo-statistical hot spot analysis

Point-to-point routing

Map-enable data in SQL Server Tables through BCS support

Polygon and Polyline feature support

Setups in 22 languages

Create Rich Interactive Web Maps

• JavaScript-based • Create, edit and publish with

simple dialog-driven control • Mash up your data from

SharePoint Lists, SQL Server Tables, your published MXDs and the global content on Esri’s platform

Spatial Analytics Out of the Box

Demographics

Consumer Spending

Market Potential

Supply & Demand

Market Segmentation

Natural Hazards

Landscape Info

Occupation

Labor Force

Media Habits

Traffic

Crime Weather

Growth Trends

Lifestyles

GeoEnrichment

• Quickly analyze any location or area of arbitrary shape or size

InfoGraphics

Reports Maps & Layers

Data Enrichment

Share and Collaborate with Maps Inside and Outside of SharePoint

Implement custom tools and behaviors beyond what’s supported out of the box.

Announcing Esri’s New SharePoint Developer Option

2009 2012 Enterprise Penetration 66%3

Users 100,000,0001 135,000,0002 • Client Access Licenses (CALs)

Microsoft Revenue $1,300,000,0001 $2,000,000,0002

Market $6,500,000,0003

• Estimate includes market for ecosystem vendors, consultants, integrators, developers

• 700,000 developers4 • 4,000 Microsoft Partners4

.

As a developer, why should you extend Esri Maps for SharePoint?

2009 2012 Enterprise Penetration 66%3

Users 100,000,0001 135,000,0002 • Client Access Licenses (CALs)

Microsoft Revenue $1,300,000,0001 $2,000,000,0002

Market $6,500,000,0003

• Estimate includes market for ecosystem vendors, consultants, integrators, developers

• 700,000 developers4 • 4,000 Microsoft Partners4

As a developer, why should you extend Esri Maps for SharePoint?

Creating Extensions with the Esri Maps Extensibility API

Esri Maps Apps: Architecture

Esri Maps Framework

Platform

Applications

ArcGIS JavaScript API

ArcGIS Online and Portal

Esri Maps Integration API

Insi

ghts

Mic

roSt

rate

gy

Offi

ce

Dyn

amic

s C

RM

SAP

Bus

ines

s O

bjec

ts

Sale

sfor

ce

Cog

nos

Shar

ePoi

nt

Cus

tom

BAO

Esri Maps Extensibility API

Extensibility Technology

• Familiar & Non-Disruptive - Dojo - ArcGIS JavaScript API

ArcGIS JavaScript API

Dojo

Esri Maps Integration API Esri Maps Extensibility API

Extension Points

• Tools - User-driven - Functionality initiated by user action - E.g. when a button on a tool bar is clicked

• Behaviors - Event-driven - Functionality triggered by events - E.g. when a layer is added to the map

• Packaged in an Extension Pack

Extension Pack

Manifest

Measure Tool

Route Tool

Track Sales

Show Mouse Coordinates

Restrict Map Extent

Show Current Location on App Init

What Are You Extending?

What Are You Extending?

0 *

0 *0 *

0 *

App

Layout

Tool Map

Tool Container

Tool Map Item _Tool

Extension Pack

_Behavior

0

*

0

*

0

*

• Functionality associated with a button on a toolbar/menu

Tools

_Tool

execute()

enabled

description

iconClasslabel

showTooltiptooltip

visible

Tool appearance

Tool availability at run time

What happens when the tool is invoked

Properties

Methods

Creating a Tool

• Dojo Class Inheriting from _Tool

_Tool

MyTool

Behaviors

• Functionality invoked when an event occurs

_LayerBehaviorlayer_MapBehaviorlayerId

_MapMixinmap

_Behavior

execute()

eventNamedescriptionlabel

target

Appearance

What happens when the behavior is invoked

Properties

MethodsThe event on the target to execute on

Creating a Behavior

• Dojo Class Inheriting from _Behavior or a Subclass

_Behavior

MyBehavior

Empowering Extensions with Mixins

• Mixins - Allow for multiple inheritance of implemented properties and methods

_Tool

_LayoutMixin

layout

_MapMixin

map

MyTool

Extensibility Mixins

• Provide Access to - Map - Selected Layer - Current Graphic in Popup - Layout - Popup - ArcGIS Portal

• Make Tools and Behaviors - Toggle Between Checked/Unchecked States - Configurable at Design Time

_ConfigureMixin

_PortalMixin

_ToggleMixin_GraphicMixin

_MapMixin

_SelectedLayerMixin

_PopupMixin

_LayoutMixin

isConfigurableconfigure()

graphic

layout

map

popup

portalselectedLayer

checked

Mixin can be used in a BehaviorMixin can be used in a Tool

Empowering Extensions: Working with SharePoint Data

• Bislayer - Data from SharePoint in the Map - Is a Feature Collection Based Feature Layer

FeatureLayer

Bislayer

Creating Extension Packs

• For Packaging Your Extensions • Extension Packs

- Tools - Behaviors - Manifest

- List of tools and behaviors

• Extension Pack Archive - For Sharing - Zip of Extension Pack

Extension Pack

Manifest

Zip and Share Extension Pack

Archive

Measure Tool

Route Tool

Track Sales

Show Mouse Coordinates

Restrict Map Extent

Show Current Location on App Init

Extension Developer

Creating the Manifest

• List of Tools and Behaviors in the Extension Pack - Name - Path to Implementation

Using Extensions in SharePoint

Deploying Extension Packs

Extension Pack 3

Extension Pack 2

Extension Pack 1

Extension Packs List

Extension packs

Deploy

Extension Pack Archive

Admin

Extension Developer

Adding Extensions at Design Time Author

0 *

0 *0 *

0 *

App

Layout

Tool Map

Tool Container

Tool Map Item _Tool

Extension Pack

_Behavior

0

*

0

*

0

*

Configuring Extensions to the Default App

The list of tools used by the application

The list of extension packs used in the application

The list of behaviors used by the application

Admin

Heiko Heijenga Elitsa Baklova

Demo

Releases and Roadmap

Releases • 3.0.1 - current release

(download today from the list of Location Analytics apps at www.arcgis.com) • 4.0 Beta 1 - current beta

(join today at betacommunity.esri.com)

Coming Soon • 4.0 Beta 2 – Spring (with Extensibility support, Beta Community) • 4.0 Final - Summer/Fall (Extensibility and SharePoint Online for Office 365)

Please fill out the session survey. Your feedback is important to us!

Q&A