module 8: creating a biztalk orchestration. overview lesson 1: introduction to biztalk orchestration...

22
Module 8: Creating a BizTalk Orchestration

Upload: dylan-hamilton

Post on 15-Dec-2015

243 views

Category:

Documents


0 download

TRANSCRIPT

Module 8:Creating a BizTalk

Orchestration

Overview

Lesson 1: Introduction to BizTalk Orchestration

Lesson 2: Building an Orchestration

Lesson 3: Monitoring Orchestrations

Lesson 1: Introduction to BizTalk Orchestration

Modeling a Business Process

What Is an Orchestration?

How the BizTalk Orchestration Engine Works

Orchestrating a Business Process

Stages of Orchestration Development

Importing and Exporting BPEL

Modeling a Business ProcessB

uyer

Org

aniz

atio

nVendor O

rganization

ProcurementApp

FinanceApp

User POApprover

InvoiceApprover

Purchase requestPurchase request

PO request approvalPO request approval

Purchase orderPurchase order

Purchase order acknowledgementPurchase order acknowledgement

Shipping orderShipping order

InvoiceInvoice

PaymentPaymentInvoice approvalInvoice approval

Invoice request approvalInvoice request approval

PO approvalPO approval

Request acknowledgementRequest acknowledgement

Vendor Warehouse

Modeling a Business ProcessB

uyer

Org

aniz

atio

nVendor O

rganization

ProcurementApp

FinanceApp

User POApprover

InvoiceApprover

Purchase requestPurchase request

PO request approvalPO request approval

Purchase orderPurchase order

Purchase order acknowledgementPurchase order acknowledgement

Shipping orderShipping order

InvoiceInvoiceInvoice request approvalInvoice request approval

PO approvalPO approval

Request acknowledgementRequest acknowledgement

Vendor Warehouse

Cancel Purchase requestCancel Purchase request

PO Canceled

PO Canceled

BizTalk Server

What Is an Orchestration?

Port Surface << >> Port Surface

ReceivePOPortOperation_1-> Request

Check Quantity

Denied Else

Denied Msg

Transform

SendDeniedPortOperation_1 <- Request

SendApprvPort Operation_1

-> Request

Receive PO

Send_Denied

Orchestration DesignerOrchestration Designer

Is a visual design environment

Provides implementation shapes for modeling automated business processes

Saves business process model for later compilation

Is a visual design environment

Provides implementation shapes for modeling automated business processes

Saves business process model for later compilation

BizTalk OrchestrationBizTalk Orchestration

Is a run-time engine

Executes business processes

Is a run-time engine

Executes business processes

Compile and Deploy

Send_Approve

Orchestration EngineOrchestration Engine

How the BizTalk Orchestration Engine Works

Orchestration engineOrchestration engine

Creates orchestration instances

Maintains state of orchestrations

Performs resource optimizations

Provides reliable shutdown and recovery

Creates orchestration instances

Maintains state of orchestrations

Performs resource optimizations

Provides reliable shutdown and recovery

MessageBox

Rehydrate

Dehydrate

Orchestrating a Business ProcessB

uyer

Org

aniz

atio

nVendor O

rganization

ProcurementApp

FinanceApp

User POApprover

InvoiceApprover

PO request approvalPO request approval

Shipping orderShipping order

InvoiceInvoice

Vendor WarehouseBizTalk

Request acknowledgementRequest acknowledgement

Purchase requestPurchase request

PO approvalPO approval

Purchase order acknowledgementPurchase order acknowledgement

Invoice request approvalInvoice request approval

Purchase orderPurchase order

Invoice approvalInvoice approval

PaymentPayment

Test the orchestrationTest the orchestration88

Configure bindings, enlist and start the orchestrationConfigure bindings, enlist and start the orchestration77

Build and deploy the orchestrationBuild and deploy the orchestration66

Assign or transform dataAssign or transform data55

Add orchestration shapesAdd orchestration shapes44

Define send and receive portsDefine send and receive ports33

Define orchestration variables and typesDefine orchestration variables and types22

Define schemasDefine schemas11

Stages of Orchestration Development

Importing BPELImporting BPEL

Use to create an orchestration from BPEL

Select BPEL import project type

Run BPEL Import Wizard to select BPEL, WSDL, and XSD files

Use to create an orchestration from BPEL

Select BPEL import project type

Run BPEL Import Wizard to select BPEL, WSDL, and XSD files

Importing and Exporting BPEL

Exporting BPELExporting BPEL

Use to export an orchestration to BPEL

Review export restrictions (restricted shapes)

Modify orchestration properties for export

Export to BPEL from Solution Explorer

Use to export an orchestration to BPEL

Review export restrictions (restricted shapes)

Modify orchestration properties for export

Export to BPEL from Solution Explorer

Lesson 2: Building an Orchestration

What Is the Orchestration Designer?

Using Message and Data-Handling Shapes

Working with Messages in an Orchestration

Logical vs. Physical Ports

Creating and Configuring Orchestration Ports

Demonstration: Creating an Orchestration

What Is the Orchestration Designer?

Process AreaProcess AreaPortSurface

PortSurface

ToolboxToolbox

PortSurface

PortSurface

Orchestration View

Orchestration View

PropertiesProperties

Using Message and Data-Handling Shapes

Shape Use

ReceiveUse to receive a message from a portMust specify message variableCan apply a filter expression

SendUse to send a message to a portMust specify a message variable

Construct Message

Use to construct a new message instanceMust always contain a Transform shape or Message Assignment shape

Message Assignment

Use to assign one message to anotherUses Expression Editor to assign values

TransformUse to move data between two messagesMust specify input and output messages and a map

Orchestration MessagesOrchestration Messages

Messages are variables

Messages are immutable

You must define a message forevery message instance used inan orchestration

Messages are variables

Messages are immutable

You must define a message forevery message instance used inan orchestration

Working with Messages in an Orchestration

Use Orchestration View to define:Use Orchestration View to define:Variables

Ports and port types

Correlation sets and correlation types

Messages and multi-part message types

Variables

Ports and port types

Correlation sets and correlation types

Messages and multi-part message types

Logical vs. Physical Ports

Messages

MessageBox

Receive PortReceive Port

Receive Location(Physical Address)Receive Location(Physical Address)

Subscriptions

Bind/Enlist

11

66

33

55

44

OrchestrationOrchestration

Logical Send Port

Logical Receive Port

Send Port(Physical Address)

Send Port(Physical Address)

22

Creating and Configuring Orchestration Ports

Orchestration Port TypesOrchestration Port Types

Identifier

Communication pattern

One-way or Request-Response

Modifier (internal, private, or public)

Operations

Message Types

Identifier

Communication pattern

One-way or Request-Response

Modifier (internal, private, or public)

Operations

Message Types Port BindingPort Binding

Specify now

Specify later

Direct

Dynamic

Specify now

Specify later

Direct

Dynamic

Demonstration: Creating an Orchestration

In this demonstration, you will see how to:

Create message variables

Create and configure a receive shape

Create and configure a transform shape

Create and configure a send shape

Create a logical receive port

Create a logical send port

Lesson 3: Monitoring Orchestrations

Using the Group Hub to View Orchestrations

Using the Orchestration Debugger

Demonstration: Tracking an Orchestration Instance

Message Instance StatesMessage Instance States

Consumed

Delivered (not consumed)

Suspended, resumable

Suspended, non-resumable

Undelivered

Undelivered (retrying)

Undelivered (scheduled)

Consumed

Delivered (not consumed)

Suspended, resumable

Suspended, non-resumable

Undelivered

Undelivered (retrying)

Undelivered (scheduled)

Using the Group Hub to View Orchestrations

Service Instance StatesService Instance States

Ready to run

Scheduled

Retrying

Dehydrated

Suspended, resumable

Suspended, non-resumable

Active

In breakpoint

Completed with discarded messages

Ready to run

Scheduled

Retrying

Dehydrated

Suspended, resumable

Suspended, non-resumable

Active

In breakpoint

Completed with discarded messages

Using the Orchestration Debugger

Orchestration DebuggerOrchestration Debugger

View a rendered orchestration

Set breakpoints

View specific variables and message data

Continue and resume debugging

View a rendered orchestration

Set breakpoints

View specific variables and message data

Continue and resume debugging

Demonstration: Tracking an Orchestration Instance

In this demonstration, you will see how to:

Use the BizTalk Group Hub to track message activity through an orchestration

Lab: Creating a BizTalk Orchestration

Exercise 1: Import an Existing Schema and Map

Exercise 2: Create a New Project and Orchestration

Exercise 3: Create Orchestration Ports

Exercise 4: Build, Deploy, and Test the Solution