design studio
DESCRIPTION
wtx design studioTRANSCRIPT
Design StudioWindows-based design components used to model and test business integration solutions
Windows-based applications for:
Defining and importing data objects
Defining transformation and routing rules
Mapping data between and among sources and targets
Adapting solutions to messaging systems, databases, platforms and other resources
Defining integration timing requirements
Testing solutions
Modeling integration scenarios
Modeling the transformation process
TYPE TREE
• Graphically defines data properties, structure, and validation rules in a type tree
– Standard type trees for business integration definitions
– Importers for generating type trees based on existing metadata
What is a type tree?
• Collection of data definition properties and characteristics
– Defined in hierarchical view of data types, subtypes
– Listed in alphabetical order (by default)
• Stored on disk with a file extension of .mtt
FlowEventsTiming
Analyze and define the data
Interfaces Resources
Apply integration rules to models
Deploy and manage processes
PropertiesStructureValidation rules
StructureFormatsSemantics
CommunicationStorageServices
Type DesignerType tree importersDatabase Interface Designer
Map Designer
Integration FlowDesigner or otherWebSphere applications
Type tree importers
Some of the type tree importers are
• Type tree maker
• XML DTD
• XML schema(.XSD FILE)
• Application specific importers for SAP, PeopleSoft and Siebel
• COBOL Copybook
Database Interface Designer
• Automatically generates type trees from:
– Database tables and views
– SQL queries
– Stored procedures
• Identifies characteristics of database objects to meet mapping and runtime requirements
– Update keys
– Database triggers
Map Designer
• Create and test maps that specify logic necessary to transform input data to required output data
– Identify source and target data objects
– Identify source and target type trees or XML schemas that define syntax and structure of data objects
– Apply business rules
– View run results
What is a map?
• Complete definition of data objects and rules for their transformation
• Responsible for all inputs and outputs
• Uses connectivity adapters to connect to data sources and targets
Connectivity adapters
Databases– DB2– Informix– ODBC – Oracle– Microsoft SQL Server– Sybase SQL Server– OLE DB
Messaging – IBM WebSphere MQ– BEA (MessageQ, Tuxedo)– Candle ROMA– Microsoft MSMQ– Oracle AQ– TIBCO Rendezvous
Packaged applications– SAP– PeopleSoft– Siebel
Web Services and Internet connectivity– FTP– E-mail– SNMP– HTTP– SOAP– JMS– JCA Gateway– JNDI– MIME and SMIME
WebSphere – E-mail– FTP– PeopleSoft– SAP QISS – Siebel
Integration Flow Designer
• Defines systems of maps that graphically organize transformation workflows into logical collections based on requirements
• Generates system control information from system definitions for real-time processing
• For use with Transformation Extender Launcher
What is a system?
Collection of map is called system. Set of logically related maps triggered by an event or time and run by WebSphere
Transformation Extender Launcher
Command Server
• Can be run on variety of platforms and operating systems
• Platform-specific
• Runs one map at a time using a command line interface
Launcher
• Can be run on variety of platforms and operating systems
• Platform-specific
• Manages systems of maps based on triggers defined in the Integration Flow Designer
– Message events
– Time events
– File state changes
• Can run multiple instances of the same map at one time
Objects as types• Objects become types in a type tree
• Icons indicate type class
Group type is a complex object made up of other groups or items such as a record, row or file
Item type is a simple data object such as a field or column
Category type is a complex object for logically organizing other types
Inheritance• New types inherit properties, components and restrictions from their supertypes • Categories have both item and group properties and pass appropriate properties to
subtypes
• The Order item type is a subtype of the Date category type.
• Order inherited the item properties of Date upon creation.
Propagating type properties
• Once created, properties of supertype and subtype are independent
• Use the Propagate option to synchronize type properties of supertype to its subtypes
Item types are simple objects
Simple objects, such as fields and columns, do not contain other objects Denoted in type trees and maps by icon
Group types are complex objects
• Complex objects such as files, records, and rows, contain other objects • Component is part of composition, structure or layout of a group
• Denoted in type trees and maps by icon
H Another Co. 00-492-11345 19970406 19970417 AX
D 001 ABT1-800-S01Q 0500 0045.26 EA
Order Number Order Date Want DateCompany Name
UnitPrice
Ship To Code
Line ItemCatalog Number
Quantity Ordered
UnitOfMeasure
Category types are organizers
• Denoted by icon
• Does not define specific object in data
– Organizes types in a type tree (similar to subdirectories in a file system)
– Takes advantage of inheritance when creating and maintaining type tree objects
Object subclass properties
Item property definition options
HAnother Co. 00-492-11345 19970406 19970417AX
D001ABT1-800-S01Q05000045.26EA
D002ARX3-900-S09X10000022.12CS
HSumCust Inc. 00-492-11346 19970406 19970407QR
D001QLA9-700-XXXX00990033.33EA10% discount
Header Record Detail RecordOrderFile
Subclass Properties
Category
Group
Item
Implicit
Explicit
Date & Time
Text
Number
Binary
Character
BinaryCharacter
Binary
IntegerFloatPackedBCDIntegerDecimalZoned
Packed
DelimitedFixedDelimitedNo Syntax
Choice
Sequence
Unordered Implicit
BCDCharacter
WhiteSpaceDelimitedNo SyntaxWhiteSpace
No SyntaxWhiteSpace
Syntax
Presentation
Item Subclass properties
• NumberAny number excluding active syntax objects
• TextAny character excluding active syntax objects
• Date & TimeValid date and time format based on data
• SyntaxSyntax objects used as separators between portions of data
Properties based on Item Subclass
Item
Date & Time
Text
Number
Syntax
Binary
Character
Binary
Character
Binary
Character
Integer
Float
Packed
BCDInteger
Decimal
Zoned
Packed
BCD
Subclass
Interpret as
Interpret as options
• CharacterData presented as series of bytes belonging to standard character set
• BinaryData presented in series of bytes where pattern of bits does not map to standard character set
• Available for Text, Number, and Date & Time properties
Defining size of text item
• Each object can be defined by minimum and maximum sizes in bytes, characters, or both
Number Text
Date & TimeSyntax
– When size is in bytes only, size and validation are calculated according to size limits set for bytes
– When size is in characters only, size and validation are calculated according to size limits set for characters
– When size is in both bytes and characters, object size is determined by characters; bytes are used to verify that the size of data did not exceed any byte constraints
• Excludes initiator, terminator, release, and pad characters
• If no maximum size, leave Max setting blank
Defining pad properties
• Pad property– Yes
Item may contain both content and pad characters
– No All data is assumed to be content
– Value property– One byte pad character– Use Symbols dialog to select
non-printable characters– Sized As property specifies pad
length as bytes or characters
Special symbols
• Insert Symbols dialog contains most common non-printable characters
• Select one or more symbols from list• Enter custom symbols as hex value
enclosed in double angle brackets (<< >>)
Padding to a fixed size
• Set Padded To property to Fixed Size• Must have value for Max Size• Specify Length for padding
– Must be greater than or equal to Max Size
– Default is Max Size• Specify the method of measurement in
bytes or characters
Padding to minimum content
• Set Padded to property to Min Content• Padded to size determined by
Min and Sized As settings• CountsTowardMinContent
set to Yes when pad character is counted as content when validating for minimum content
Defining number items
• Defined in terms of minimum and maximum number of digits, not value
• Size does not include sign or separators
• If no maximum size, leave Max setting blank
Anatomy of a number
Defining separator properties
• Supported for integers and decimals• If number has a separator
1. Set Separators to Yes2. Select Format from drop-down
list3. Define separator values
Defining sign properties
1000s syntax
SignSeparators
-56,456.09
Whole number places
Decimal number places
Fraction syntax
• Select pre-defined or specify Custom value for leading and trailing signs
• Custom settings for positive, negative and zero values
Defining implicit decimal formats
• When decimal number has no separator, use Places > Implied property to specify number of implied decimal places
Defining number of decimal places
Defining date and time items
• Format property defines date and time syntax
• Object size inferred from selected Format
Property options determined by Separators and Format values -56,456.09
Whole# places
Decimal places
1. Select Date or Time as first component
2. Check when second component is optional
3. (Optional) Specify separator between date components
5. Select pre-defined format string or Custom
4. (Optional) Select Date or Time as second component
3. Define custom date format
1. Select Custom from Datedrop-down list
2. Click browse button to display Date Format window
2. Click browse button to display Time format dialog
1. Select Custom
from Time drop-down list
3. Define custom time format
Group examples
Group subclass options
• Sequence groups
– Partially-ordered or sequenced group of data objects
– Denoted by icon
• Choice groups
– Provide ability to define selection from set of components
– Denoted by icon
Group Implicit
ExplicitDelimitedFixedDelimitedNo SyntaxChoice
SequenceSubclass
Format Syntax
Unordered WhiteSpace
• Unordered groups
– Allow components to appear in any order
– Denoted by icon
Sequence group formats
• Describes how to distinguish one component from another component
• To determine format, ask: “How do I distinguish one component from the next?”
• Group Format settings
– Explicit: Components distinguishable because of delimiter or position
– Implicit: Components distinguishable because of their own definitions
Sequence explicit groups
Delimited syntax• Components separated by delimiter• Delimiter appears as placeholder even
when component has no content
Fixed syntax• Object is always same number of bytes
Explicit groups: fixed component syntax
• One component is distinguished from next by fixed size of each component
• Made up of fixed length objects
– Where size (in bytes) of each object is always the same (same Min and Max settings)
– Ultimately composed of items padded to fixed size
Group
ExplicitDelimitedFixed
Sequence
Format Syntax
Implicit
Delimited
No Syntax
WhiteSpace
Explicit groups: delimited syntax
• One component in the group is distinguished from the next by physical separator (delimiter)
• Delimiter appears as placeholder even when component has no content
Delimiter syntax properties
• Delimiter value– Set to Literal when delimiter
character value is known and constant
– Set to Variable when delimiter character is variable and defined by a type tree item
– Delimiter location– Prefix delimiter appears
before each object (^A^B^C)– Infix delimiter appears
between objects (A^B^C)– Postfix delimiter appears after
each object (A^B^C^)
One component in the group is distinguished from the next by physical separator (delimiter)Delimiter appears as placeholder even when component has no content
Dockens,Charles,07-02-1812,UK
Delimiter of record components
Smith,John,,AU
Delimiter of record components
Delimiter is keeping place open for optional date component
Implicit group: no syntax
• Components not separated by delimiter
• Group object not fixed size
• Component properties distinguish one component from another
Implicit format groups
• Components of group are distinguishable because of their pattern
• If group is not fixed and not delimited, it is implicit with no syntax (Component Syntax = None)
Implicit group: delimited syntax
• Components separated by delimiter• Delimiter does not appear as
placeholder when component has no content
No syntaxImplicit Delimited
WhiteSpace
HAnother Co. 00-492-11345 19970406 19970417AX
D001ABT1-800-S01Q05000045.26EA
D002ARX3-900-S09X10000022.12CS
File Order
No syntax
Implicit DelimitedWhiteSpace
Group format and syntax
Group examples
Initiator properties
• Initiator is syntax that appears at beginning of a data object
• Defined in type tree properties under Type Syntax > Initiator
Is group always
the same size?
Does group have
delimiter?
Explicit, Fixed
Implicit, No Syntax
Does delimiter appear when
content missing?
Explicit, Delimited
Implicit, Delimited
YES
NO
NO
YES
NO*
YES
Record: Explicit, Delimited (infix)File: Implicit, None
Interchange, Functional Group, Transaction Set, Loops: Implicit, NoneSegments: Explicit, Delimited (prefix)
Record ID HDRAnother Co. 00-492-DTL001ABT1-800-S01Q05000045.26EA
Initiator
Terminator properties
• Terminator is syntax that appears at the end of data object
• Defined in type tree in Type Syntax > Terminator property
Symbols dialog
• Contains symbols for most common Hex values• Contains special symbols
<SP> Space<WSP> White space<OWSP> Optional white space<NL> New line
• Can select more than one symbol – Double-click symbol in dialog
or – Type symbol with angle brackets (< >)
or Select symbol and click Insert
• New line: <NL>– Provides platform independence– Viewed as CR/LF, LF or HEX15 as required by platform
• White space: <WSP>– Input: any combination of <SP>, <HT> and <NL>
New line character is terminator of each
recordPENCIL,#2,500,EA<NL>FILE FOLDERS,COLORED,35,BX<NL>
– Output: built as one space– Maximum size: 256 bytes
• Enter hex values in double angle bracketsExample: <<00>> indicates a Hex null value <<09>> indicates a Hex hard tab
Release character properties
• Indicates characters that follow should be interpreted as data, not as another syntax
Example:
Release character = Ampersand (&) Delimiter = Comma (,)
Miller&, MD,Harkin Hospital,2006
Data of component 1 = Miller, MDData of component 2 = Harkin HospitalData of component 3 = 2006
Guidelines for using release characters
• Applied to character data, not binary data
• Releases the characters making up the entire delimiter or terminator even if the delimiter or terminator is more than one character
• Does not release characters used as pad characters
• Release characters that are not followed by an associated active syntax object are ignored
Miller&, MD,Harkin Hospital,1996