+ All Categories
Home > Documents > Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47.

Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47.

Date post: 24-Dec-2015
Category:
Upload: gwenda-hampton
View: 214 times
Download: 0 times
Share this document with a friend
Popular Tags:
28
Asynchronous Messaging With SharePoint Workflows Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47
Transcript
Page 1: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47.

Asynchronous Messaging With SharePoint Workflows

Alexander MalekLead Program ManagerSharePointMicrosoft Corporation

BB47

Page 2: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47.

Agenda

SharePoint in the Microsoft Workflow Ecosystem

Async Messaging in SharePoint Overview Using WCF and Azure Services Platform

Scenario Overview Demo!

Page 3: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47.

SharePoint Workflow

Part of Microsoft Workflow Ecosystem Office SharePoint Server for IW document-

process applications Windows Server (Dublin) for custom

business applications BizTalk Server for data orchestration

applications

SharePoint Scenarios:

Document Approval, Content Publishing, Document Assembly, Change Tracking

Page 4: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47.

Secured, Well-Managed Infrastructure

Overall SharePoint Platform

BusinessIntelligence

Enterprise ContentManagement

Workflow SearchBusinessDataCatalog

ExtensibleUI

OpenXML FileFormats

WebsiteAndSecurityFramework

UnifiedCommunicationsAnd Collaboration

Page 5: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47.

Asynchronous Human WF Scenarios

Tasks are the core building block of human workflow

Tasks in SharePoint Item in a SharePoint tasks list Acts as a proxy for the actual work Change events to the item are correlated

back into the correct workflow instance for evaluation

Page 6: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47.

Asynchronous Messaging With External Systems

Characteristics of the SharePoint 2007 workflow host .net 3.0-based – no support for .net 3.5

Send/Receive activities EDES-based messaging not extensible

Recommendation: Use “Business Task” pattern Create an item in “business tasks” list Pass ID of item to external system

as callback function Wait on changes to item Build a WCF service to receive the callback

Page 7: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47.

Business Task Pattern

Create Business Task

Start

Call Web Service (with task ID for

callback)

Wait for task to change

End

Page 8: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47.

Using WCF In SharePoint

Possible to host a WCF service in the SharePoint application Requires asp.net compatibility mode Good post on the topic by Michael Washam

Recommendation: Create a separate asp.net application for the service Cleaner separation for your custom code Downside… no context web

Page 9: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47.

Creating B2B Applications using Azure Services Platform

As part of .net Services, there is a new Service Bus offering Makes it easy to connect applications together

over the Internet Services register on the “bus”, and can then

be easily discovered and accessed, across any network topology

Page 10: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47.

Employee Onboarding

Alexander MalekLead Program ManagerSharePoint Designer

demo

Page 11: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47.

Scenario Walkthrough

Contoso Consulting – Remote Employee Onboarding

Onboarding workflow: Assign a task Once approved Submit to external business system Wait for completion message before

completing workflow

Page 12: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47.

Employee Onboarding – Process Diagram

Request Approval Send Task to Approver

Decision

Request changeRevise proposal

PO Rejected

Approver Delegates

Submit Data to Backend System

Log ResultsPO ApprovedUpdate

BizTask

Page 13: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47.

Dev Machine

Single machine Three web applications

SharePoint for approval workflow Windows App Server for back-end process Windows App Server for SharePoint

proxy service

Page 14: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47.

Development Overview

Build SharePoint approval workflow Create and bind InfoPath forms

Build WCF Service for Remote System Connect workflow to service

Build WCF Service for SharePoint, published to Azure-based Service Bus

Connect remote system service to SharePoint service via cloud

Page 15: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47.

Add set of activities to represent approval

Part 1: Assign a Human Task

Request Approval Send Task to Approver

Decision

Request changeRevise proposal

PO Rejected

Approver Delegates

Submit Data to Backend System

Log ResultsPO ApprovedUpdate

BizTask

Page 16: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47.

Use CreateTask, OnTaskChanged, and CompleteTask Activities to define a human task

Hints: Correlation is defined by Correlation

Token and TaskID Guid CompleteTask Activity required to

update task list status

Part 1 Summary

Page 17: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47.

Show using workflow to represent a service

Part 2: Create Remote WCF Endpoint

Request Approval Send Task to Approver

Decision

Request changeRevise proposal

PO Rejected

Approver Delegates

Submit Data to Backend System

Log ResultsPO ApprovedUpdate

BizTask

Page 18: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47.

Demonstrated using a workflow to model a web service

Hints: Update getters/setters to

match service contract

Part 2 Summary

Page 19: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47.

Add business task and code call-out to web service

Part 3: Assign a Business Task

Request Approval Send Task to Approver

Decision

Request changeRevise proposal

PO Rejected

Approver Delegates

Submit Data to Backend System

Log ResultsPO ApprovedUpdate

BizTask

Page 20: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47.

Demonstrated calling a WCF service from a SharePoint workflow, and using a business task to coordinate the work

Hints: Make sure to add end-point

reference in web.config

Part 3 Summary

Page 21: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47.

Create a local service, accessible via the Internet

Part 4: Create Local WCF Endpoint

Request Approval Send Task to Approver

Decision

Request changeRevise proposal

PO Rejected

Approver Delegates

Submit Data to Backend System

Log ResultsPO ApprovedUpdate

BizTask

Page 22: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47.

Demonstrated creating a WCF service published to the Azure-based Service Bus

Hints: Make sure to add end-point

reference in web.config

Part 4 Summary

Page 23: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47.

Use Tasks for Human and System messaging Host WCF services as a separate

app from SharePoint Azure Service Bus for cross-enterprise

communication

Reference: Building Workflow Forms

Summary

Page 24: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47.

APPENDIX

Page 25: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47.

Evals & Recordings

Please fill

out your

evaluation for

this session at:

This session will be available as a recording at:

www.microsoftpdc.com

Page 26: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47.

Please use the microphones provided

Q&A

Page 27: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47.

© 2008 Microsoft Corporation. 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.

Page 28: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47.

Recommended