An Introduction to Microsoft Office SharePoint Server 2007
David Gristwood
Application Architect
Developer & Platform Group
Microsoft Ltd
http://blogs.msdn.com/David_Gristwood/
Server Platform Investments
Office SharePoint Server 2007Excel Services
InfoPath Forms Services
Business Data catalog
Enterprise Search
Windows SharePoint ServicesASP.NET 2.0 integration
Workflow
Content types and meta data
Auditing
Feature & solution deployment
Office SharePoint
Server
Windows SharePoint Services
ASP.NETSQL
Tools for any skill level
Excel Services
Excel ServicesExcel has great calculation and charting engine
Can reuse logic & business models built in Excel
Browser based spreadsheet viewing & interactivity
Excel Web Part to build dashboards
Web Service programmatic access to Excel Services
Eliminate “multiple versions of the truth” caused by distributing copies of spreadsheets
Control access to spreadsheets for regulatory concerns or to protect proprietary information
Offload long-running calculations from desktop
Excel Services
Excel 2007
Design and author
Browser
High quality web rending
Zero-footprint
Interactive: Set parameters, sort, filter, explore
View and Interact
Customapplications
Set values, perform calculations, get updated values via web services
Retrieve full workbook file
Programmatic Access
Open in Excel for rich exploration and analysis
Open snapshots
Excel 2007
Export/Snapshot into Excel
Spreadsheets stored in doc libraries
Spreadsheet calculation and rendering
External data retrieval and caching
100% calculation fidelity
SharePoint platform and Excel services
Publish Spreadsheets
Excel Services Architecture
Limitations of Excel Services
Excel Services is NOT Excel on the Server
No authoring
– No data entry outside of parameters, no layout changes
No VBA, no non-database data sources
– many other features not supported
Does not Solve the problem of multi-user spreadsheet authoring
Excel Web Services
Open a spreadsheet file to start a session with Excel Services
Set values to cells and ranges
Process the session spreadsheet
Refresh data from external sources
Calculate spreadsheet or specific ranges
Get results
Values from cells and ranges
Entire calculated spreadsheet – live or snapshot
User Defined Functions
Extend calculation and data-import capabilities
Functions that are not built into Excel.
Custom implementations to built-in functions.
Custom data feeds for legacy or unsupported data sources
Call Web Services
Compiled Code based on .NETFx 2.0
Needs Reference to Excel Services UDF Framework
Excel Services
Excel Web Access Web Part
Web Service Calls
User Defined Functions
Business Data Catalog
Business Data Catalog• Not all data resides in SharePoint
• Middleware layer that bridges gap between the portal and business applications
• Surface business data from backend applications without coding
• Supported by web parts and API
BDC
MetadataStore
Architecture of the Business Data Catalog
SQL Server, Oracle, OLEDB, ODBC
Web Parts
Lists SearchUser
ProfilesCustom
Apps
BizTalk, SAP, Siebel, Legacy, …
List Store Index Profile Store
Business Data Catalog
WSS Proxy ADO.NET
Web Service
Development LifeCycle
Analyze the business
requirements
Build Web Services layer
for LOB system
(optional)
Model the system using application definition
Populate BDCMetadata
Store
Design solutions
using business data
features
Core Application Definition Elements
• Definition of a data source (SQL Server, SAP, Siebel, CRM, …)LobSystem
• Access to the system (connection details)LobSystemInstance
• A real-world thing in the system (e.g. customer, order, product, invoice, employee, …)Entity
• An operation on an entity (e.g. GetOrders, GetInvoicesForCustomer, …)Method
• A way to use a method (e.g. Finder, SpecificFinder, IDEnumerator)MethodInstance
• A relationship between two entitiesAssociation
Metadata Model
Application Definition Files
Declarative way of modelling a system
Initially no Microsoft designers to generate them
BDC Metadata Manager - www.bdcmetaman.com
bdcmetadata.xsd Visual Studio IntelliSense
Microsoft BDC Definition Editor
MOSS SDK August 2007
Application Definition Files are imported using the Shared Services Provider administration site
Business Data Web PartsWeb Part Description
Business Data List
Web Part
Displays a list of entity instances from a business application registered in
the Business Data Catalog. For example, you can use a Business Data List
Web Part to display all the customers or orders from the
AdventureWorksDW database.
Business Data Items
Web Part
Displays the details of an entity instance from a business application. For
example, you can use a Business Data Items Web Part to display the details
of a particular customer or order from the AdventureWorksDW database.
Business Data Related
List Web Part
Displays a list of related entity instances from a business application. For
example, you can use a Business Data Related List Web Part to display all
the orders for a particular customer from the AdventureWorksDW
database.
Business Data Actions
Web Part
Displays a list of actions associated with an entity as defined in the Business
Data Catalog. For example, you can use a Business Data Actions Web Part
to display all the actions that portal users can perform on the Customer
entity. Some examples of these actions are to send e-mail to a customer or
edit the address of a customer.
Surfacing Data via BDC
Custom Applications
Runtime Object Model
Applications for browsing the metadata repository and executing methods and filters on a line-of-business (LOB) application
BDC
BDC web parts
Custom BDC web part
Search
Search Challenges
User ExperienceChallenges
Multiple search interfaces, systems, and logons; no unified search results
Data and ExpertiseChallenges
Files and e-mail on desktops; structured and unstructured data silos; untapped expertise
Enterpriseand IT Challenges
Relevance and ranking; security, privacy and compliance; scalability, manageability and extensibility
Search Server 2008Updated and rebranded version of SharePoint Server 2007 for SearchKey investment areas and new features
Simplified Installation ExperienceEnhanced Administration InterfaceNew Federation CapabilitiesPerformance and Stability Enhancements
Available in two versionsSearch Server 2008 can be installed in a distributed topology to provide greater scale and redundancySearch Server 2008 Express can only be installed in single server mode and is FREE
Index and Search Architecture
Customize UI With XSLT
Appropriate for scenarios requiring
Change results layout, look and feel
Pivoting using the keyword syntax
Web Part Property
Power of XSLT Formatting
Logic
Math
Content Sources
OOB content source types
SharePoint Servers
Web Sites
File Shares
Exchange Public Folders
Business Data
Additional ones can be added if appropriate protocol handler is installed
IdEnumerator MethodInstance<Method Name="EmployeeIDEnumerator"><Properties>
<Property Name="RdbCommandType" Type="System.String">Text</Property><Property Name="RdbCommandText" Type="System.String">
Select EmployeeID from HumanResources.vEmployee</Property></Properties><Parameters>
<Parameter Direction="Return" Name="EmployeeIDs"><TypeDescriptor TypeName="System.Data.IDataReader, System.Data, Version=2.0.3600.0,
Culture=neutral, PublicKeyToken=b77a5c561934e089" Name="Employees" IsCollection="true"><TypeDescriptors>
<TypeDescriptor TypeName="System.Data.IDataRecord, System.Data, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" Name="Employee">
<TypeDescriptors><TypeDescriptor TypeName="System.Int32" IdentifierName="EmployeeID"
Name="EmployeeID" /></TypeDescriptors>
</TypeDescriptor></TypeDescriptors></TypeDescriptor>
</Parameter></Parameters><MethodInstances>
<MethodInstance Name="EmployeeIDEnumeratorInstance" Type="IdEnumerator" ReturnParameterName="EmployeeIDs" />
</MethodInstances></Method>
Search
Search BDC
Workflow
• Encapsulated logic for coordinating business processes Provides abstractions to model real world processes
Valuable for modeling long running and stateful behavior
What are workflows?
sequential workflow state machine workflow
Windows WorkFlow FoundationSingle workflow technology for Windows
Extensible framework & toolset
Base for Microsoft products and customer solutions
Transform workflow from niche to mainstream paradigm
Exposed to developers via .NET 3.0
Workflows in SharePoint
Workflows enforce a business process on all items in the SharePoint library or list
Windows Server 2003
Windows SharePoint Services
Site 1 Site 2 …
Web Browser
Site N
Microsoft Office
Applications
SQL Server
WF Runtime Engine
Internet Information Services
Workflow Instances
List
Item A
Item B
Item C. . .
Associations
Workflow
Templates
Document
Library
Starting a Workflow
Starting a Workflow
Interacting with a Workflow
Interaction between a person and a running workflow is modeled using the notion of tasks.
Office Integration
Office Integration
SharePoint Workflow Designer
Visual Studio 2008
Workflow
SharePoint Activities
InfoPath
InfoPath Form Services
Electronic forms are ubiquitous, so worth solving properly
And making easy to use, track, workflow, etc
InfoPath is rich client application InfoPath Forms Service offers server side generation and handling of forms
Users do not require InfoPath client
Design Once mantraShared controls, business logic, object model, Design Checker designs for the targeted environment and run compatibility checks
InfoPath
More Informationhttp://www.microsoft.com/sharepoint
http://blogs.msdn.com/sharepoint/
http://msdn2.microsoft.com/en-gb/office/
http://msdn2.microsoft.com/en-us/office/aa905382.aspx
© 2007 Microsoft Ltd. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market
conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation.
MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.