Creating Maps

advertisement
Module 3:
Creating Maps
Overview
Lesson 1: Creating a BizTalk Map
Lesson 2: Configuring Basic Functoids
Lesson 3: Configuring Advanced Functoids
Lesson 1: Creating a BizTalk Map
What Is a BizTalk Map?
Creating a Map by Using the BizTalk Mapper
Creating Links
Basic and Complex Map Links
Validating, Testing and Debugging a Map
Demonstration: Creating and Testing a BizTalk Map
What Is a BizTalk Map?
A map defines the correspondence between records and
fields in two different schemas
Data Transformation
Perform computational and
other data operations
Copy the data from one
message to another
Data Translation
Change the format of data
between messages
Example: translate between
a flat file and an XML file
Source Schema
PO
Map
Destination Schema
PurchaseOrder
PO
PO_Number
Status
Date
ItemID
Item_No
Qty
Quantity
UnitPrice
Date
Order_Status
Creating a Map by Using the BizTalk Mapper
BizTalk Mapper
Integrated within
Visual Studio
Starts when a map is
opened or added to
a project
Source and destination
schemas must be part
of the project or
contained in a
referenced assembly
Source
Schema
Map Grid
Destination
Schema
Creating Links
Link Type
Usage
Record
Order
PO
PO No
Status
Date
ItemID
Item No
Create a single link by dragging and dropping
Can be made between nodes or records
Simple link (one-to-one)
Record
Order
PO
PO No
Status
Status Flag
ItemID
Item No
Structure link (multiple)
Record
PO
Status
Item
Order
Status
Item
PO
Name-matching link (multiple)
Create multiple links simultaneously
Relevant schema structures must be the same
Use when node names are different but order
is the same (or similar)
Create multiple links simultaneously
Record or field names must match
Similar but not identical schema structures
Basic and Complex Map Links
Mapping Operation
Record
Order
PO
PO_Number
Status
Date
ItemID
Item_No
Qty
Quantity
UnitPrice
Order_Status
Date
Usage
Most common type of mapping
Values simply copied from input message to
output message
Supports most types of transformations and
translations
Basic
PO
Order
ID
PO_Num
Status
Date
Items
Detail
Item
Field1
Field2
Complex
FieldA
FieldB
Records can occur multiple times for a single
message (looping)
Source schema must specify repeating
element
Compiler will automatically generate an
XSLT for-each loop
Validating, Testing and Debugging a Map
Demonstration: Creating and Testing a BizTalk Map
In this demonstration, you will see how to:
Use the BizTalk Mapper
Add source and destination schemas to
the map
Create a simple link
Automate multiple links
Test and validate a map
Lesson 2: Configuring Basic Functoids
Data Manipulation with Functoids
Using Basic Functoids
Adding Functoids to a Map
Using Map Grid Pages
Demonstration: Adding Functoids to a Map
Data Manipulation with Functoids
Functoids
Use to manipulate
mapped data
Can use predefined
functoids or create
custom functoids
Custom functoids can
call scripts
Source Schema
Record
PO
Map
(..)
Destination Schema
Order
PO Number
Status
Date
ItemID
Item No
Quantity
Qty
UnitPrice
Date
X
Order Status
Total Price
Using Basic Functoids
Category
Usage
Conversion
To convert to and from ASCII and between numeric bases,
such as hexadecimal and octal
Cumulative
To perform mathematical operations in looping records, such
as averages and concatenation
Date and Time
To retrieve the current date and time, and to calculate
delta times
Logical
To perform a variety of logical operations, such as greater
than and logical existence
Mathematical
To perform a variety of mathematical operations, such as
addition and multiplication
Scientific
To perform a variety of scientific operations, such as
logarithms and trigonometry
String
To perform a variety of string functions, such as trimming and
concatenation
Adding Functoids to a Map
2
1
Link functoids
to fields
Drag functoid from
Toolbox to map
3
Configure
functoid inputs
Using Map Grid Pages
Use pages to reduce complexity of a map
Grid Pages
Create up to 20
different pages
Isolate different parts
of a map
Work with different parts of
a map separately
Must create connected
functoids on the same layer
Record
PO
Find and work with a portion
of a large map
(..)
Status
Qty
UnitPrice
Order
PO Number
Date
Item No
ItemID
Date
Grid Preview
Destination Schema
Source Schema
X
Quantity
Order Status
Total Price
Page 1 Page 2 Page 3 Page 4
Demonstration: Adding Functoids to a Map
In this demonstration, you will see how to:
Create multiple map pages
Add basic functoids to a map
Lesson 3: Configuring Advanced Functoids
Using Advanced Functoids
Using Looping Functoids
Using Database Functoids
Using a Scripting Functoid
Demonstration: Configuring Advanced Functoids
Using Advanced Functoids
Use Advanced functoids to:
Manage looping records
Define conditional mapping
Define custom scripts
Copy the entire elements of data
Using Looping Functoids
Looping functoids include:
Looping functoid
Index functoid
Record Count functoid
Table-driven functoids:
Table Looping functoid
Table Extractor functoid
Using Database Functoids
Database functoids
Used to extract data from a database
Uses ADO datasets
Database functoids include:
Database Lookup
Error Return
Format Message
Value Extractor
Using a Scripting Functoid
Scripting functoid
Use when standard functoids do not provide
required results
Can call an external .NET assembly
Supported languages
Visual Basic
C#
JScript
XSLT
XSLT Call Template
Demonstration: Configuring Advanced Functoids
In this demonstration, you will see how to:
Use a Looping functoid
Use a Record Count functoid
Lab: Creating a BizTalk Map
Exercise 1: Creating a Map
Exercise 2: Adding Basic Functoids to a
Map
Exercise 3: Adding Database Functoids
to a Map
Download