alexander malek lead program manager sharepoint microsoft corporation bb47
TRANSCRIPT
![Page 1: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47](https://reader030.vdocument.in/reader030/viewer/2022032600/56649dbe5503460f94ab0bf4/html5/thumbnails/1.jpg)
Asynchronous Messaging With SharePoint Workflows
Alexander MalekLead Program ManagerSharePointMicrosoft Corporation
BB47
![Page 2: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47](https://reader030.vdocument.in/reader030/viewer/2022032600/56649dbe5503460f94ab0bf4/html5/thumbnails/2.jpg)
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](https://reader030.vdocument.in/reader030/viewer/2022032600/56649dbe5503460f94ab0bf4/html5/thumbnails/3.jpg)
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](https://reader030.vdocument.in/reader030/viewer/2022032600/56649dbe5503460f94ab0bf4/html5/thumbnails/4.jpg)
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](https://reader030.vdocument.in/reader030/viewer/2022032600/56649dbe5503460f94ab0bf4/html5/thumbnails/5.jpg)
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](https://reader030.vdocument.in/reader030/viewer/2022032600/56649dbe5503460f94ab0bf4/html5/thumbnails/6.jpg)
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](https://reader030.vdocument.in/reader030/viewer/2022032600/56649dbe5503460f94ab0bf4/html5/thumbnails/7.jpg)
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](https://reader030.vdocument.in/reader030/viewer/2022032600/56649dbe5503460f94ab0bf4/html5/thumbnails/8.jpg)
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](https://reader030.vdocument.in/reader030/viewer/2022032600/56649dbe5503460f94ab0bf4/html5/thumbnails/9.jpg)
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](https://reader030.vdocument.in/reader030/viewer/2022032600/56649dbe5503460f94ab0bf4/html5/thumbnails/10.jpg)
Employee Onboarding
Alexander MalekLead Program ManagerSharePoint Designer
demo
![Page 11: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47](https://reader030.vdocument.in/reader030/viewer/2022032600/56649dbe5503460f94ab0bf4/html5/thumbnails/11.jpg)
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](https://reader030.vdocument.in/reader030/viewer/2022032600/56649dbe5503460f94ab0bf4/html5/thumbnails/12.jpg)
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](https://reader030.vdocument.in/reader030/viewer/2022032600/56649dbe5503460f94ab0bf4/html5/thumbnails/13.jpg)
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](https://reader030.vdocument.in/reader030/viewer/2022032600/56649dbe5503460f94ab0bf4/html5/thumbnails/14.jpg)
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](https://reader030.vdocument.in/reader030/viewer/2022032600/56649dbe5503460f94ab0bf4/html5/thumbnails/15.jpg)
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](https://reader030.vdocument.in/reader030/viewer/2022032600/56649dbe5503460f94ab0bf4/html5/thumbnails/16.jpg)
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](https://reader030.vdocument.in/reader030/viewer/2022032600/56649dbe5503460f94ab0bf4/html5/thumbnails/17.jpg)
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](https://reader030.vdocument.in/reader030/viewer/2022032600/56649dbe5503460f94ab0bf4/html5/thumbnails/18.jpg)
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](https://reader030.vdocument.in/reader030/viewer/2022032600/56649dbe5503460f94ab0bf4/html5/thumbnails/19.jpg)
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](https://reader030.vdocument.in/reader030/viewer/2022032600/56649dbe5503460f94ab0bf4/html5/thumbnails/20.jpg)
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](https://reader030.vdocument.in/reader030/viewer/2022032600/56649dbe5503460f94ab0bf4/html5/thumbnails/21.jpg)
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](https://reader030.vdocument.in/reader030/viewer/2022032600/56649dbe5503460f94ab0bf4/html5/thumbnails/22.jpg)
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](https://reader030.vdocument.in/reader030/viewer/2022032600/56649dbe5503460f94ab0bf4/html5/thumbnails/23.jpg)
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](https://reader030.vdocument.in/reader030/viewer/2022032600/56649dbe5503460f94ab0bf4/html5/thumbnails/24.jpg)
APPENDIX
![Page 25: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47](https://reader030.vdocument.in/reader030/viewer/2022032600/56649dbe5503460f94ab0bf4/html5/thumbnails/25.jpg)
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](https://reader030.vdocument.in/reader030/viewer/2022032600/56649dbe5503460f94ab0bf4/html5/thumbnails/26.jpg)
Please use the microphones provided
Q&A
![Page 27: Alexander Malek Lead Program Manager SharePoint Microsoft Corporation BB47](https://reader030.vdocument.in/reader030/viewer/2022032600/56649dbe5503460f94ab0bf4/html5/thumbnails/27.jpg)
© 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](https://reader030.vdocument.in/reader030/viewer/2022032600/56649dbe5503460f94ab0bf4/html5/thumbnails/28.jpg)