infa notes .doc

Upload: pradeep-kothakota

Post on 02-Jun-2018

228 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/10/2019 INFA Notes .doc

    1/161

    1. GETTING STARTED

    Metadata Extensions tab

    Execute SQL to create table

    The source qualifer represents the rows that the

    Integration Service reads rom the source when it

    runs a session

    session is a set o instructions that tells the

    Integration Service how to move data rom sources

    to targets!

    session is a tas"# similar to other tas"s available in

    the $or"%ow Manager!

    &ou create a session or each mapping that 'ou want

    the Integration Service to run!

    The Integration Service uses the instructions

    confgured in the session and mapping to move

    data rom sources to targets!

    wor"%ow is a set o instructions that tells the

    Integration Service how to execute tas"s# such assessions# email notifcations# and shell commands!

    &ou create a wor"%ow or sessions 'ou want the

    Integration Service to run!

    &ou can include multiple sessions in a wor"%ow to

    run sessions in parallel or sequentiall'!

    The Integration Service uses the instructions

    confgured in the wor"%ow to run sessions and

    other tas"s!

    ((Select a code page or the database connection

    )*+ ,onnection -b.ects/The source code page must be a subset o the target

    code page!

    The target code page must be a superset o the

    source code page!

    &ou can create reusable or non0reusable sessions in

    the $or"%ow Manager

    $hen 'ou create a wor"%ow# 'ou can include

    reusable tas"s that 'ou create in the Tas"

    *eveloper!&ou can also include non0reusable tas"s that 'ou

    create in the $or"%ow *esigner!

    +' deault# the wor"%ow is scheduled to run on

    demand! The Integration Service onl' runs the

    wor"%ow when 'ou manuall' start the wor"%ow!

    &ou can confgure wor"%ows to run on a schedule

    ll wor"%ows begin with the Start tas"# but 'ou ne

    to instruct the Integration Service which tas" to r

    next!

    To do this# 'ou lin" tas"s in the $or"%ow Manager

    $hen the 1ower,enter Integration Service runs

    wor"%ows# 'ou can monitor wor"%ow progress in

    the $or"%ow Monitor!

    &ou can view details about a wor"%ow or tas" in

    either a 2antt chart view or a Tas" view! &ou canstart# stop# and abort wor"%ows rom the $or"%o

    Monitor!

    The $or"%ow Monitor displa's wor"%ows that hav

    run at least once!

    transormation is a part o a mapping that

    generates or modifes data!

    Ever' mapping includes a Source Qualifer

    transormation# representing all data read rom a

    source and temporaril' stored b' the Integration

    Service!

    The dvanced Transormation toolbar contains

    transormations such as 3ava# SQL# and 4ML 1ars

    transormations

    ,reating Target 0

    &ou can also manuall' create a target defnition#

    import the defnition or an existing target rom a

    database# or create a relational target rom a

    transormation in the *esigner

    ,lic" the Indexes tab to add an index to the targe

    table!

    I the target database is -racle# s"ip to the fnal

    step! &ou cannot add an index to a column that

    alread' has the 15IM5& 6E& constraint added to

    ,lic" La'out 7 Lin" ,olumns!

    $hen 'ou drag ports rom one transormation to

    another# the *esigner copies the port description

    and lin"s the original port to its cop'!

    I 'ou clic" La'out 7 ,op' ,olumns# ever' port 'o

    drag is copied# but not lin"ed!

    Lin" ,olumns vs! ,op' columns88

    +' deault# the Loo"up transormation queries and

    stores the contents o the loo"up table beore the

    rest o the transormation runs# so it perorms the

    .oin through a local cop' o the table that it has

    cached

    I the data t'pes# including precision and scale# o

    these two columns do not match# the *esigner

    displa's a message and mar"s the mapping inva

    9

  • 8/10/2019 INFA Notes .doc

    2/161

    ((-verview window

    $hen 'ou run the wor"%ow# the Integration Service

    runs all sessions in the wor"%ow# either

    simultaneousl' or in sequence# depending on how

    'ou arrange the sessions in the wor"%ow!

    ,lic" the 2antt ,hart tab at the bottom o the Time

    window to veri' the $or"%ow Monitor is in 2antt

    ,hart view!

    :ote; &ou can also clic" the Tas"

  • 8/10/2019 INFA Notes .doc

    3/161

    2. INFA ADMIN GUIDE

    domain is a collection o nodes and services that

    'ou can group in olders based on administration

    ownership

    -ne node in the domain acts as a gatewa' to

    receive service requests rom clients and route

    them to the appropriate service and node!Services and processes run on nodes in a domain!

    Service Manager 0 service that manages all

    domain operations

    Application Services 0 Services that represent

    server0based unctionalit'# such as the Model

    5epositor' Service and the *ata Integration Service!

    The Service Manager and application services

    control securit'!

    The Service Manager manages users and groups

    that can log in to application clients andauthenticates the users who log in to the

    application clients!

    The Service Manager and application services

    authoriCe user requests rom application clients!

    Inormatica dministrator )the dministrator tool/#

    consolidates the administrative tas"s or domain

    ob.ects such as services# nodes# licenses# and grids!

    &ou manage the domain and the securit' o the

    domain through the dministrator tool

    Nodes -

    Each node in the domain runs a Service Manager

    that manages domain operations on that node

    The operations that the Service Manager perorms

    depend on the t'pe o node!

    node can be a gatewa' node or a wor"er node

    &ou can subscribe to alerts to receive notifcation

    about node events such as node ailure or a master

    gatewa' election!

    &ou can also generate and upload node diagnostics

    to the ,onfguration Support Manager and review

    inormation such as available E+=s and Inormat

    recommendations

    Gatea! Nodes -

    -ne node acts as the gatewa' at an' given time!

    That node is called the master gatewa'!

    gatewa' node can run application services# an

    can serve as a master gatewa' node!

    The master gatewa' node is the entr' point to

    domain

    &ou can confgure more than one node to serve a

    gatewa'!

    I the master gatewa' node becomes unavailab

    the Service Manager on other gatewa' nodes ele

    another master gatewa' node!

    I 'ou confgure one node to serve as the gatew

    and the node becomes unavailable# the dom

    cannot accept service requests

    "or#er Nodes - wor"er node is an' node not confgured to se

    as a gatewa'!

    Service Manager -

    It runs as a service on $indows and as a daemon

    ?:I4!

    $hen 'ou start Inormatica services# 'ou start t

    Service Manager!

    The Service Manager runs on each node!

    I the Service Manager is not running# the node

    not available!

    Application service s$pport -

    It starts and stops services and service proces

    based on requests rom clients!

    It also directs service requests to applicat

    services!

    The Service Manager uses T,1@I1 to communic

    with the application services

    Do%ain s$pport -

    The unctions that the Service Manager perorms

    a node depend on the t'pe o node!

    =or example# the Service Manager running on

    master gatewa' node perorms all dom

    unctions on that node!

    The Service Manager running on an' other no

    perorms some domain unctions on that node

    D

  • 8/10/2019 INFA Notes .doc

    4/161

    pplication services represent server0based

    unctionalit'! pplication services include the

    ollowing services;

    0 nal'st Service

    0 ,ontent Management Service

    0 *ata Integration Service

    0 Metadata Manager Service

    0 Model 5epositor' Service

    0 1ower,enter Integration Service

    0 1ower,enter 5epositor' Service

    0 1owerExchange Listener Service

    0 1owerExchange Logger Service0 5eporting Service

    0 S1 +$ Service

    0 $eb Services ub

    &ig' Availa(ilit!

    igh availabilit' consists o the ollowing

    components;

    Resilience - The abilit' o application services to

    tolerate transient networ" ailures until either the

    resilience timeout expires or the external s'stem

    ailure is fxed!Failover0 The migration o an application service or

    tas" to another node when the node running the

    service process becomes unavailable!

    Recover!0 The automatic completion o tas"s ater

    a service is interrupted! utomatic recover' is

    available or 1ower,enter Integration Service and

    1ower,enter 5epositor' Service tas"s! &ou can also

    manuall' recover 1ower,enter Integration Service

    wor"%ows and sessions! Manual recover' is not part

    o high availabilit'

    In)or%atica Ad%inistrator

    ?se the dministrator tool to complete the ollow

    t'pes o tas"s;

    Do%ain ad%inistrative tas#s0

    Manage logs# domain ob.ects# user permissions# a

    domain reports!

    2enerate and upload node diagnostics!

    Monitor .obs and applications that run on the *Integration Service!

    *omain ob.ects include application services# nod

    grids# olders# database connections# operat

    s'stem profles# and licenses!

    Sec$rit! ad%inistrative tas#s -

    Manage users# groups# roles# and privileges

    The dministrator tool has the ollowing tabs;

    Do%ain -

  • 8/10/2019 INFA Notes .doc

    5/161

    Do%ain Ad%inistrator -

    domain administrator can create and manage

    ob.ects in the domain# including user accounts#

    nodes# grids# licenses# and application services

    owever# b' deault# the domain administrator

    cannot log in to application clients!

    The deault administrator must explicitl' give a

    domain administrator ull permissions and

    privileges to the application services

    Application +lient Ad%inistrator -

    n application client administrator can create and

    manage ob.ects in an application client!

    &ou must create administrator accounts or the

    application clients

    +' deault# the application client administrator does

    not have permissions or privileges on the domain!

    User -

    user with an account in the Inormatica domain

    can perorm tas"s in the application clients!

    T'picall'# the deault administrator or a domain

    administrator creates and manages user accounts

    and assigns roles# permissions# and privileges in the

    Inormatica domain!

    owever# an' user with the required domain

    privileges and permissions can create a user

    account and assign roles# permissions# and

    privileges

    Understanding A$t'entication and Sec$rit!Do%ains -

    $hen a user logs in to an application client# the

    Service Manager authenticates the user account in

    the Inormatica domain and verifes that the user

    can use the application client!

    The Service Manager uses native and L*1

    authentication to authenticate users logging in to

    the Inormatica domain!

    &ou can use more than one t'pe o authentication in

    an Inormatica domain!

    +' deault# the Inormatica domain uses nativeauthentication!

    &ou can confgure the Inormatica domain to use

    L*1 authentication in addition to native

    authentication!

    ,rivileges

    Inormatica includes the ollowing privileges;

    Do%ain privileges 0 *etermine actions on the

    Inormatica domain that users can perorm using the

    dministrator tool and the inacmd and pm

    command line programs!

    Anal!st Service privilege 0 *etermines acti

    that users can perorm using Inormatica nal'st!

    Data Integration Service privilege 0 *etermi

    actions on applications that users can perorm us

    the

    Ad%inistrator tool and t'e in)ac%d co%%a

    line progra% 0 This privilege also determi

    whether users can drill down and export proresults!

    Metadata Manager Service privileges

    *etermine actions that users can perorm us

    Metadata Manager!

    Model Repositor! Service privilege 0 *etermi

    actions on pro.ects that users can perorm us

    Inormatica nal'st and Inormatica *eveloper!

    ,oer+enter Repositor! Service privilege

    *etermine 1ower,enter repositor' actions t

    users can perorm using the 5epositor' Manag

    *esigner# $or"%ow Manager# $or"%ow Monitor# a

    the pmrep and pmcmd command line programs!,oerEc'ange application service privilege

    *etermine actions that users can perorm on

    1owerExchange Listener Service a

    1owerExchange Logger Service using the inac

    pwx commands!

    Reporting Service privileges 0 *eterm

    reporting actions that users can perorm using *

    nal'Cer!

    &ou assign privileges to users and groups and

    application services! &ou assign privileges to users and groups on

    Securit' tab o the dministrator tool

    &ig' Availa(ilit!

    I 'ou have the high availabilit' option# 'ou c

    achieve ull high availabilit' o internal Inormat

    components!

    &ou can achieve high availabilit' with exter

    components based on the availabilit' o th

    components!

    If you do not have the high availability optio

    you can achieve some high availability

    internal components

    Example

    $hile 'ou are etching a mapping into

    1ower,enter *esigner wor"space# the 1ower,en

    5epositor' Service becomes unavailable# and

    request ails! The 1ower,enter 5epositor' Serv

    ails over to another node because it cannot rest

    on the same node!

    G

  • 8/10/2019 INFA Notes .doc

    6/161

    The 1ower,enter *esigner is resilient to temporar'

    ailures and tries to establish a connection to the

    1ower,enter 5epositor' Service!

    The 1ower,enter 5epositor' Service starts within

    the resilience timeout period# and the 1ower,enter

    *esigner reestablishes the connection!

    ter the 1ower,enter *esigner reestablishes the

    connection# the 1ower,enter 5epositor' Service

    recovers rom the ailed operation and etches the

    mapping into the 1ower,enter *esigner wor"space!

    Resilience -

    All clients of PowerCenter components are

    resilient to service failures!

    1ower,enter services ma' also be resilient to

    temporar' ailures o external s'stems# such as

    database s'stems# =T1 servers# and message

    queue sources!

    =or this t'pe o resilience to wor"# the external

    s'stems must be highl' available

    Internal Resilience

    &ou can confgure internal resilience at the ollowing

    levels;

    0 *omain

    0 pplication Services

    0 2atewa'

    The Model Repository, Data Integration

    ervice, and Analyst ervice do not have

    internal resilience!

    I the master gatewa' node becomes unavailable

    and ails over to another gatewa' node# 'ou mustrestart these services!

    ter the restart# the services do not restore the

    state o operation and do not recover rom the

    point o interruption!

    &ou must restart .obs that were previousl' running

    during the interruption

    &ig' Availa(ilit! in t'e ase ,rod$ct

    Inormatica provides some high availabilit'

    unctionalit' that does not require the high

    availabilit' option!The base product provides the ollowing high

    availabilit' unctionalit';

    Internal ,oer+enter resilience 0 The Service

    Manager# application services# 1ower,enter ,lient#

    and command line programs are resilient to

    temporar' unavailabilit' o other 1ower,enter

    internal components!

    ,oer+enter Repositor! data(ase resilience 0

    The 1ower,enter 5epositor' Service is resilient to

    temporar' unavailabilit' o the repositor' database!

    Restart services -The Service Manager can rest

    application services ater a ailure!

    Man$al recover! o) ,oer+enter or#/o

    and sessions 0 &ou can manuall' reco

    1ower,enter wor"%ows and sessions!

    M$ltiple gatea! nodes 0 &ou can confg

    multiple nodes as gatewa'!

    :ote; &ou must have the high availabilit' option

    ailover and automatic recover'

    &ou can confgure the ollowing resilience propert

    or the domain# application services# and comma

    line programs;

    Resilience ti%eo$t0 The amount o time a cli

    tries to connect or reconnect to a service! limit

    resilience timeouts can override the timeout!

    *i%it on resilience ti%eo$t 0 The amount o ti

    a service waits or a client to connect or reconn

    to the service! This limit can override the cli

    resilience timeouts confgured or a connect

    client! This is available or the domain a

    application services

    +on0g$ring Service Resilience )or t'e Do%a

    The domain resilience timeout determines how lo

    services tr' to connect as clients to other service

    The de)a$lt val$e is seconds.

    The limit on resilience timeout is the maxim

    amount o time that a service allows anot

    service to connect as a client!

    This limit overrides the resilience timeout or

    connecting service i the resilience timeout igreater value!

    The deault value is 9H seconds!

    The 1ower,enter ,lient resilience timeout is 9

    seconds and is not confgurable!

    This resilience timeout is bound b' the service li

    on resilience timeout!

    $hen 'ou use a command line program to conn

    to the domain or an application service#

    resilience timeout is determined b' one o ollowing values;

    +o%%and line option 0 &ou can determine

    resilience timeout or command line programs

    using a command line option# 0timeout or 0t# ea

    time 'ou run a command

    Environ%ent varia(le 0 I 'ou do not use

    timeout option in the command line s'ntax#

    command line program uses the value o

    environment varia

    J

  • 8/10/2019 INFA Notes .doc

    7/161

    I:=>,LIE:T>5ESILIE:,E>TIME-?T that is

    confgured on the client machine!

    De)a$lt val$e0 I 'ou do not use the command line

    option or the environment variable# the command

    line program uses the deault resilience timeout o

    9H seconds!

    *i%it on ti%eo$t0 I the limit on resilience timeout

    or the service is smaller than the command line

    resilience timeout# the command line program uses

    the limit as the resilience timeout

    ,oer+enter Integration Service

    1ower,enter Integration Service fles include run0

    time fles# state o operation fles# and session logfles!

    The 1ower,enter Integration Service creates fles to

    store the state o operations or the service!

    The state o operations includes inormation such as

    the active service requests# scheduled tas"s# and

    completed and running processes!

    I the service ails# the 1ower,enter Integration

    Service can restore the state and recover

    operations rom the point o interruption!

    To move data rom sources to targets#

    1ower,enter Integration Service uses the ollow

    components;

    ,oer+enter Integration Service process 0 T

    1ower,enter Integration Service starts one or m

    1ower,enter Integration Service processes to

    and monitor wor"%ows! $hen 'ou run a wor"%

    the 1ower,enter Integration Service process sta

    and loc"s the wor"%ow# runs the wor"%ow tas"s# a

    starts the process to run sessions!*oad alancer 0 The 1ower,enter Integrat

    Service uses the Load +alancer to dispatch tas

    The Load +alancer dispatches tas"s to achie

    optimal perormance! It ma' dispatch tas"s to

    single node or across the nodes in a grid!

    Data Trans)or%ation Manager 3DTM4 proces

    The 1ower,enter Integration Service starts a *

    process to run each Session and ,ommand t

    within a wor"%ow! The *TM process peror

    session validations# creates threads to initialiCe

    session# read# write# and transorm data# a

    handles pre0 and post0 session operations!

    1ower,enter Integration Service process acce

    requests rom the 1ower,enter ,lient and r

    pmcmd and perorms the ollowing tas"s;

    0 Manage wor"%ow scheduling!

    0 Loc" and read the wor"%ow!

    0 5ead the parameter fle!

    0 ,reate the wor"%ow log!

    0 5un wor"%ow tas"s and evaluates the conditio

    lin"s connecting tas"s!

    0 Start the *TM process or processes to run session!

    0 $rite historical run inormation to the repositor'!

    0 Send post0session email in the event o a *

    ailure!

    T'read T!pes

    The t'pes o threads the master thread crea

    depend on the pre0 and post0session properties#

    well as the t'pes o transormations in

    mapping!

    The master thread can create the ollowing t'pes

    threads;

    Mapping t'reads -

    The master thread creates one mapping thread

    each session!

    The mapping thread etches session and mapp

    inormation# compiles the mapping# and cleans

    ater session execution

    ,re- and post-session t'reads -

    K

  • 8/10/2019 INFA Notes .doc

    8/161

    The master thread creates one pre0session and one

    post0session thread to perorm pre0 and post0session

    operations!

    Reader t'reads

    Trans)or%ation t'reads

    The number o transormation threads depends on

    the partitioning inormation or each pipeline

    "riter t'reads

    Re5ect Files

    +' deault# the 1ower,enter Integration Service

    process creates a re.ect fle or each target in the

    session!

    The writer ma' re.ect a row in the ollowing

    circumstances;

    0 It is %agged or re.ect b' an ?pdate Strateg' or

    ,ustom transormation!

    0 It violates a database constraint such as primar'

    "e' constraint!

    0 feld in the row was truncated or over%owed# and

    the target database is confgured to re.ect truncatedor over%owed data!

    Note6 I 'ou enable row error logging# the

    1ower,enter Integration Service process does not

    create a re.ect fle!

    Recover! Ta(les Files

    The 1ower,enter Integration Service process creates

    recover' tables on the target database s'stem

    when it runs a session enabled or recover'!

    +ontrol File$hen 'ou run a session that uses an external

    loader# the 1ower,enter Integration Service process

    creates a control fle and a target %at fle!

    The control fle contains inormation about the

    target %at fle such as data ormat and loading

    instructions or the external loader!

    The control fle has an extension o !ctl!

    The 1ower,enter Integration Service process creates

    the control fle and the target %at fle in the

    1ower,enter Integration Service variable director'#

    1MTarget=ile*ir# b' deault!

    Indicator File

    I 'ou use a %at fle as a target# 'ou can confgure

    the 1ower,enter Integration Service to create an

    indicator fle or target row t'pe inormation!

    =or each target row# the indicator fle contains a

    number to indicate whether the row was mar"ed or

    insert# update# delete# or re.ect!

    The 1ower,enter Integration Service process names

    this fle target>name!ind and stores it in the

    1ower,enter Integration Service variable directo

    1MTarget=ile*ir# b' deault

    +ac'e Files

    $hen the 1ower,enter Integration Service proc

    creates memor' cache# it also creates cache fles

    The 1ower,enter Integration Service process crea

    cache fles or the ollowing mapping ob.ects;

    0 ggregator transormation

    0 3oiner transormation0 5an" transormation

    0 Loo"up transormation

    0 Sorter transormation

    0 4ML target

    +' deault# the *TM creates the index and data f

    or ggregator# 5an"# 3oiner# Loo

    transormations and 4ML targets in the direct

    confgured or the 1M,ache*ir service proc

    variable!

    The 1ower,enter Integration Service process nam

    the index fle 1M(!idx# and the data fle 1M(!dat!

    The 1ower,enter Integration Service process crea

    the cache fle or a Sorter transormation in

    1MTemp*ir service process variable director'!

    Incre%ental Aggregation Files

    I the session perorms incremental aggregation#

    1ower,enter Integration Service process sa

    index and data cache inormation to dis" when

    session fnished!

    The next time the session runs# the 1ower,en

    Integration Service process uses this historinormation to perorm the incremen

    aggregation!

    +' deault# the *TM creates the index and data f

    in the director' confgured or the 1M,ache

    service process variable

    ,ersistent *oo#$p +ac'e

    +' deault# the *TM creates the index and data f

    in the director' confgured or the 1M,ache

    service process variable

    *oad alancer

    &ou confgure the ollowing settings or the dom

    to determine how the Load +alancer dispatc

    tas"s;

    Dispatc' %ode 0 The dispatch mode determi

    how the Load +alancer dispatches tas"s! &ou

    confgure the Load +alancer to dispatch tas"s i

    simple round0robin ashion# in a round0robin ash

    using node load metrics# or to the node with t

    most available computing resources!

    H

  • 8/10/2019 INFA Notes .doc

    9/161

    Service level 0 Service levels establish dispatch

    priorit' among tas"s that are waiting to be

    dispatched! &ou can create dierent service levels

    that a wor"%ow developer can assign to wor"%ows

    &ou confgure the ollowing Load +alancer settings

    or each node;

    Reso$rces 0 $hen the 1ower,enter Integration

    Service runs on a grid# the Load +alancer can

    compare the resources required b' a tas" with theresources available on each node! The Load

    +alancer dispatches tas"s to nodes that have the

    required resources! &ou assign required resources in

    the tas" properties! &ou confgure available

    resources using the dministrator tool or inacmd!

    +,U pro0le0 In adaptive dispatch mode# the Load

    +alancer uses the ,1? profle to ran" the computing

    throughput o each ,1? and bus architecture in a

    grid! It uses this value to ensure that more powerul

    nodes get precedence or dispatch!

    Reso$rce provision t'res'olds 0 The Load

    +alancer chec"s one or more resource provisionthresholds to determine i it can dispatch a tas"! The

    Load +alancer chec"s dierent thresholds depending

    on the dispatch mode

    The Load +alancer uses the ollowing dispatch

    modes;

    Ro$nd-ro(in0 The Load +alancer dispatches tas"s

    to available nodes in a round0robin ashion! It chec"s

    the Maximum 1rocesses threshold on each available

    node and excludes a node i dispatching a tas"

    causes the threshold to be exceeded! This mode isthe least compute0intensive and is useul when the

    load on the grid is even and the tas"s to dispatch

    have similar computing requirements!

    Metric-(ased 0 The Load +alancer evaluates nodes

    in a round0robin ashion! It chec"s all resource

    provision thresholds on each available node and

    excludes a node i dispatching a tas" causes the

    thresholds to be exceeded! The Load +alancer

    continues to evaluate nodes until it fnds a node that

    can accept the tas"! This mode prevents overloading

    nodes when tas"s have uneven computing

    requirements!

    Adaptive 0 The Load +alancer ran"s nodes

    according to current ,1? availabilit'! It chec"s all

    resource provision thresholds on each available

    node and excludes a node i dispatching a tas"

    causes the thresholds to be exceeded! This mode

    prevents overloading nodes and ensures the best

    perormance on a grid that is not heavil' loaded!

    USING ,M+MD

    pmcmd is a program 'ou use to communicate w

    the Integration Service!

    $ith pmcmd# 'ou can perorm some o the ta

    that 'ou can also perorm in the $or"%ow Manag

    such as starting and stopping wor"%ows a

    sessions!

    ?se pmcmd in the ollowing modes;

    +o%%and line %ode 0 &ou invo"e and exit pmc

    each time 'ou issue a command! &ou can wscripts to schedule wor"%ows with the command l

    s'ntax! Each command 'ou write in command l

    mode must include connection inormation to

    Integration Service!

    Interactive %ode 0 &ou establish and maintain

    active connection to the Integration Service! T

    lets 'ou issue a series o commands!

    &ou can use environment variables or user nam

    and passwords with pmcmd!

    &ou can also use environment variables to custom

    the wa' pmcmd displa's the date and time on

    machine running the Integration Service process

    +eore 'ou use pmcmd# confgure these variables

    the machine running the Integration Serv

    process!

    The environment variables appl' to pmc

    commands that run on the node!

    Note6I the domain is a mixed0version domain#

    pmcmd rom the installation director' o

    Integration Service version

    N

  • 8/10/2019 INFA Notes .doc

    10/161

    5unning ,ommands in ,ommand Line Mode

    $hen 'ou run pmcmd in command line mode# 'ou

    enter connection inormation such as domain

    name# Integration Service name# user name and

    password in each command!

    =or example# to start the wor"%ow Ow>SalesvgP in

    older OSalesEast#P use the ollowing s'ntax;p%c%d startor#/o -sv M!IntService -d

    M!Do%ain -$ seller -p 5ac#son -) SalesEast

    )7SalesAvg

    5unning ,ommands in Interactive Mode

    ?se pmcmd in interactive mode to start and stop

    wor"%ows and sessions without writing a script!

    $hen 'ou use the interactive mode# 'ou enter

    connection inormation such as domain name#

    Integration Service name# user name# and

    password! &ou can run subsequent commands

    without entering the connection inormation or

    each command!

    =or example# the ollowing commands invo"e theinteractive mode# establish a connection to

    Integration Service OM'IntService#P and start

    wor"%ows Ow>SalesvgP and Ow>SalesTotalP in

    older OSalesEastP;

    pmcmd

    pmcmd7 connect 0sv M'IntService 0d M'*omain 0u

    sellerD 0p .ac"son

    pmcmd7 setolder SalesEast

    pmcmd7 startwor"%ow w>Salesvg

    pmcmd7 startwor"%ow w>SalesTotal

    USING ,MRE,

    pmrep is a command line program that 'ou use to

    update repositor' inormation and perorm

    repositor' unctions!

    pmrep is installed in the 1ower,enter ,lient and

    1ower,enter Services bin directories!

    ?se pmrep to perorm repositor' administration

    tas"s such as listing repositor' ob.ects# creating

    and editing groups# restoring and deleting

    repositories# and updating session0related

    parameters and securit' inormation in the

    1ower,enter repositor'!

    $hen 'ou use pmrep# 'ou can enter commands in

    the ollowing modes;

    +o%%and line %ode 0 &ou can issue pmrep

    commands directl' rom the s'stem command line!

    ?se command line mode to script pmrep commands!

    Interactive %ode 0 &ou can issue pm

    commands rom an interactive prompt! pmrep do

    not exit ater it completes a command!

    &ou can use environment variables to set u

    names and passwords or pmrep! +eore 'ou u

    pmrep# confgure these variables!

    The environment variables appl' to pm

    commands that run on the node!

    ll pmrep commands require a connection to

    repositor' except or the ollowing commands;

    0 elp

    0 Listll1rivileges

    ?se the pmrep ,onnect command to connect to t

    repositor' beore using other pmrep commands!

    Note6 I the domain is a mixed0version domain#

    pmrep rom the installation director' o

    5epositor' Service version!

    . DESIGNER GUIDE

    The *esigner provides the ollowing tools;

    So$rce Anal!8er - Import or create source defnitio

    or %at fle# 4ML# ,-+-L# pplication# and relational

    sources!

    Target Designer - Import or create target defnition

    Trans)or%ation Developer - ,reate reusable

    transormations!

    Mapplet Designer - ,reate mapplets!

    Mapping Designer - ,reate mappings!

    The *esigner consists o the ollowing windows;

    Navigator - ,onnect to multiple repositories and olders! &oucan also cop' and delete ob.ects and create shortcuts using t

    :avigator!"or#space -

  • 8/10/2019 INFA Notes .doc

    11/161

    ervie -

  • 8/10/2019 INFA Notes .doc

    12/161

    versions o a non0composite ob.ect in the

    wor"space

    verting to a 1revious -b.ect

  • 8/10/2019 INFA Notes .doc

    13/161

    ng +usiness :ames

    &ou can add business names to sources# targets# and

    columns!

    +usiness names are descriptive names that 'ou give

    to a source# target# or column!

    The' appear in the :avigator in the +usiness

    ,omponents source node and in the source and

    target nodes!

    +usiness names can also appear as column nameso the source and target defnition in the

    wor"space!

    &ou can also create source qualifers to displa'

    business names as column names in the Mapping

    and Mapplet *esigners!

    ng +usiness *ocumentation

    +usiness documentation provides details about a

    repositor' ob.ect or transormation expression!

    &ou can create and edit lin"s to business

    documentation that 'ou have developed or

    repositor' ob.ects through the *esigner!

    The documentation must reside on a local machine#

    networ" server# or compan' intranet or internet

    web site in a $indows environment!

    &ou can develop business documentation in TML#

    1*=# or an' text ormat# or the ollowing repositor'

    ob.ects;

    0 Source and target tables and table instances

    0 ll transormations and transormation instances

    0 Mapplets

    0 Mappings

    0 +usiness component directories

    To access business documentation# 'ou need to

    complete the ollowing tas"s;

    0 Speci' the documentation path in the *esigner!

    0 ,reate a lin" in the repositor' ob.ect!

    0 ,lic" the lin" to view the documentation

  • 8/10/2019 INFA Notes .doc

    14/161

    Metadata 1(change for Data Models /an add&

    on product/

    &ou can import sources that use multib'te character

    sets!

    Source code pages must be a superset o the target

    code pages!

    Source defnitions can be single0 or multi0group!

    single0group source has a single group in the

    source defnition!5elational sources use a single0group source

    defnition!

    multi0group source has multiple groups in the

    source defnition!

    :on0relational sources such as 4ML sources use

    multi0group source defnitions!

    ting 5elational Source *efnitions

    &ou might want to manuall' edit a source defnition

    to record properties that 'ou cannot import rom

    the source!&ou can edit a relational source defnition to create

    "e' columns and "e' relationships!

    These relationships can be logical relationships!

    The' do not have to exist in the database!

    or"ing with ,-+-L Sources

    To provide support or mainrame source data# 'ou

    can import a ,-+-L fle as a source defnition in

    the *esigner!

    ,-+-L fles are fxed0width fles that ma' contain

    text and binar' data!

    1ower,enter supports the ollowing code pages or

    ,-+-L fles;

    0 K0bit S,II

    0 E+,*I,0?S

    0 H0bit S,II

    0 H0bit E+,*I,

    0 S,II0based M+,S

    0 E+,*I,0based M+,S

    &ou can import shit0sensitive ,-+-L fles that do

    not contain shit "e's!

    *efne the shit states or each column in the ,-+-L

    source defnition!

    ,-+-L sources oten de0normaliCe data and

    compact the equivalent o separate table records

    into a single record!

    &ou use the :ormaliCer transormation to normaliCe

    these records in the mapping!

    ,-+-L fles oten represent the unctional

    equivalent o multiple source tables within the

    same set o records!

    $hen 'ou review the structure o the ,-+-L fle#

    'ou can ad.ust the description to identi' which

    groups o felds constitute a single pseudo0table

    $or"ing with ,-+-L ,op'boo"s

    The *esigner cannot recogniCe a ,-+-L cop'boo

    )!cp' fle/ as a ,-+-L fle )!cbl fle/ because it lac

    the proper ormat!

    To import a ,-+-L cop'boo" in the *esigner# 'ou

    can insert it into a ,-+-L fle template b' using ,-+-L statement Ocop'!P

    ter 'ou insert the cop'boo" fle into the ,-+-L

    template# 'ou can save the fle as a !cbl fle and

    import it in the *esigner!

    I the !cbl fle and the !cp' fle are not in the same

    local director'# the *esigner prompts or the

    location o the !cp' fle!

    $hen the ,-+-L cop'boo" fle contains tabs# the

    *esigner expands tabs into spaces!

    +' deault# the *esigner expands a tab character

    into eight spaces!

    &ou can change this deault setting in powrmart!in

    &ou can fnd powrmart!ini in the root director' o t

    1ower,enter ,lient installation!

    To change the deault setting# add the ollowing te

    to powrmart!ini;

    nal'Cer-ptionsR

    TabSiCen

    where n is the number o spaces the *esigner

    reads or ever' tab character!

    To appl' changes# restart the *esigner!

    =or example# the ,-+-L cop'boo" fle is called

    sample!cp'! The ,-+-L fle below shows how to

    use the cop' statement to insert the sample

    cop'boo" into a ,-+-L fle template;

    identifcation division!

    program0id! mead!

    environment division!

    select fle0one assign to name!

    data division!

    fle section!d =ILE0-:E!

    cop' Osample!cp'P!

    wor"ing0storage section!

    procedure division!

    stop run!

    ,omponents in a ,-+-L Source =ile

    $hen 'ou import a ,-+-L source# the *esigner

    scans the fle or the ollowing components;

    0 =* Section

    9F

  • 8/10/2019 INFA Notes .doc

    15/161

    0 =ields

    0 -,,?5S

    0 5E*E=I:ES

    =* Section

    The *esigner assumes that each =* entr' defnes

    the equivalent o a source table in a relational

    source and creates a dierent ,-+-L source

    defnition or each such entr'!

    =or example# i the ,-+-L fle has two =* entries#,?ST-ME5S and -5*E5S# the *esigner creates

    one ,-+-L source defnition containing the felds

    attributed to ,?ST-ME5S# and another with the

    felds that belong to -5*E5S

    lds

    The *esigner identifes each feld defnition# reads

    the datat'pe# and assigns it to the appropriate

    source defnition!

    ,?5S

    ,-+-L fles oten contain multiple instances o the

    same t'pe o data within the same record!

    =or example# a ,-+-L fle ma' include data about

    our dierent fnancial quarters# each stored in the

    same record!

    $hen the *esigner anal'Ces the fle# it creates a

    dierent column or each -,,?5S statement in the

    ,-+-L fle!

    These -,,?5S statements defne repeated

    inormation in the same record! ?se the :ormaliCer

    transormation to normaliCe this inormation!

    =or each -,,?5S statement# the *esigner creates

    the ollowing items;

    0 -ne target table when 'ou drag the ,-+-L source

    defnition into the Target *esigner!

    0 primar'0oreign "e' relationship

    0 generated column I* )2,I*/

    5E*E=I:ES

    ,-+-L uses 5E*E=I:ES statements to build the

    description o one record based on the defnition o

    another record!$hen 'ou import the ,-+-L source# the *esigner

    creates a single source that includes 5E*E=I:ES!

    The 5E*E=I:ES statement lets 'ou speci' multiple

    1I,T?5E clauses or the sample ph'sical data

    location!

    Thereore# 'ou need to use =ilter transormations to

    separate the data into the tables created b'

    5E*E=I:ES!

    =or each 5E*E=I:ES;

    0 The *esigner creates one target table when 'ou

    drag the ,-+-L source defnition into the Target

    *esigner!

    0 The *esigner creates one primar'0oreign "e'

    relationship!

    0 The *esigner creates a generated "e' )26/!

    0 &ou need a separate =ilter transormation in the

    mapping!

    5ules and 2uidelines or *elimited =ile Settings*elimited fles are character0oriented and line

    sequential! ?se the ollowing rules and guidelines wh

    'ou confgure delimited fles;

    0 The column and row delimiter character# quote

    character# and escape character must all be dieren

    or a source defnition! These properties must also be

    contained in the source or target fle code page!

    0 The escape character and delimiters must be valid

    the code page o the source or target fle! ?se the

    ollowing rules and guidelines when 'ou confgure

    delimited fle sources;

    0 In a quoted string# use the escape character toescape the quote character! I the escape character

    does not immediatel' precede a quote character# the

    Integration Service reads the escape character as an

    ordinar' character!

    0 ?se an escape character to escape the column

    delimiter! owever# in a quoted string# 'ou do not ne

    to use an escape character to escape the delimiter

    since the quotes serve this purpose! I the escape

    character does not immediatel' precede a delimiter

    character# the Integration Service reads the escape

    character as an ordinar' character!0 $hen two consecutive quote characters appear

    within a quoted string# the Integration Service reads

    them as one quote character! =or example# the

    Integration Service reads the ollowing quoted string

    IUm going tomorrow; BDGD#VIUUm going tomorrowUM*

    0 The Integration Service reads a string as a quoted

    string onl' i the quote character 'ou select is the fr

    character o the feld!

    0 I the feld length exceeds the column siCe defned

    the Source Qualifer transormation# the Integration

    Service truncates the feld!

    0 I the row o data exceeds the larger o the line

    sequential buer length or the total row siCe defned

    the Source Qualifer transormation# the Integration

    Service drops the row and writes it to the session log

    fle! To determine the row siCe defned in the Source

    Qualifer transormation# add the column precision a

    the delimiters# and then multipl' the total b' the

    maximum b'tes per character!

    $or"ing with =ile Lists

    9G

  • 8/10/2019 INFA Notes .doc

    16/161

    fle list is a fle that contains the names and

    directories o each source fle 'ou want the

    Integration Service to use!

    $hen 'ou confgure a session to read a fle list# the

    Integration Service reads rows o data rom the

    dierent source fles in the fle list!

    To con#gure the mapping to write the source

    #le name to each target row, add the

    CurrentlyProcessed'ile2ame port to the )at

    #le source de#nition!The Integration Service uses this port to return the

    source fle name!

    eating Target *efnitions

    &ou can create the ollowing t'pes o target

    defnitions in the Target *esigner;

    Relational -,reate a relational target or a

    particular database platorm! ,reate a relational

    target defnition when 'ou want to use an external

    loader to the target database!

    Flat 0le0 ,reate fxed0width and delimited %at fle

    target defnitions!

    :M* 0le -,reate an 4ML target defnition to

    output data to an 4ML fle!

    &ou can create target defnitions in the ollowing

    wa's;

    0 Import the defnition or an existing target! Import

    the target defnition rom a relational target or a

    %at fle! The Target *esigner uses a =lat =ile $iCard

    to import %at fles!

    0 ,reate a target defnition based on a source

    defnition! *rag a source defnition into the Target

    *esigner to ma"e a target defnition!0 ,reate a target defnition based on a

    transormation or mapplet! *rag a transormation

    into the Target *esigner to ma"e a target defnition!

    0 Manuall' create a target defnition! ,reate a

    target defnition in the Target *esigner!

    0 *esign several related target defnitions! ,reate

    several related target defnitions at the same time!

    &ou can create the overall relationship# called a

    schema# and the target defnitions# through wiCards

    in the *esigner!

    The ,ubes and *imensions $iCards ollow commonprinciples o data warehouse design to simpli' the

    process o designing related targets!

    eating a Target *efnition rom a Transormation

    To create a relational target defnition that closel'

    matches a transormation in the repositor'W 'ou can

    create the target rom the transormation!

    *rag a transormation rom the :avigator to the

    Target *esigner# or create a target rom a

    transormation in the Mapping *esigner wor"space!

    ,reate target defnitions rom the ollowing t'pes

    transormations;

    0 Single0group transormations! ,reate a single

    target defnition rom a transormation with one

    output group!

    0 Multiple0group transormations! ,reate multiple

    target defnitions rom a transormation with

    multiple output groups!

    0 :ormaliCer transormations! ,reate a target

    defnition rom a source qualifer or pipeline:ormaliCer transormation!

    0 Mapplets! ,reate one or more target defnitions

    rom a mapplet instance in a mapping!

    $hen 'ou create a target defnition rom a

    transormation# the target database t'pe is the

    same as the repositor' database b' deault!

    ter 'ou create the target defnition in the

    repositor'# 'ou can edit it! =or example# 'ou migh

    want to change the target t'pe!

    ,reating a Target rom a Transormation with -ne

    -utput 2roup

    $hen 'ou create a target rom a transormation w

    one output group# the *esigner creates one targe

    ll the output ports become input ports in the

    target! The name o the target is the same as the

    transormation name!

    ,reating a Target rom a Transormation with Multiple

    -utput 2roups

    $hen 'ou create targets rom a transormation wi

    more than one output group# the *esigner createone target or each output group in the

    transormation!

    $hen the transormation is a plug0in or ,ustom

    transormation# the *esigner retains the primar'

    "e'0oreign "e' relationships between the groups

    the target defnitions!

    ,reating a Target rom a :ormaliCer Transormation

    &ou can create a target rom a source qualifer or

    pipeline :ormaliCer transormation!

    .hen you create a target from a 2ormali$ertransformation, the Designer creates one

    target and includes all the columns from th

    2ormali$er!

    It does not create separate targets to represent th

    record hierarchies or multiple0occurring felds in t

    :ormaliCer transormation

    ,reating a Target rom a Mapplet

    &ou can create a target rom a mapplet that is und

    a mapping Transormation Instances node!

    9J

  • 8/10/2019 INFA Notes .doc

    17/161

    $hen 'ou drag the mapplet instance to the Target

    *esigner# the *esigner creates a target or each

    output group in the mapplet!

    2ote% "ou cannot create a target when you drag a

    transformation instance from a mapplet to the

    Target Designer

    Data Trans)or%ation So$rce and Target

    ?se a *ata Transormation source or target to

    process data in an' fle ormat such as Excel

    spreadsheets or 1*= documents!

    &ou can also transorm data in ormats such as LK#

    E*I049B# E*I=,T# S$I=T# :,# =I4+IB# and

    *T,,!

    *ata Transormation source or target calls a *ata

    Transormation service rom a 1ower,enter session!

    *ata transormation is the application that

    transorms the fle ormats!

    The *ata Transormation service is a *ata

    Transormation service that is deplo'ed to the *ata

    Transormation repositor' and is read' to run

    Data Trans)or%ation Service T!pes

    $hen 'ou create a pro.ect in *ata Transormation

    Studio# 'ou choose a *ata Transormation service

    t'pe to defne the pro.ect! *ata Transormation has

    the ollowing t'pes o services that transorm data;

    ,arser 0 ,onverts source documents to 4ML! The

    input can have an' ormat! The output o a parser

    is alwa's 4ML!

    Seriali8er0 ,onverts an 4ML fle to another

    document! The input is 4ML! The output can be an'

    ormat!Mapper - ,onverts an 4ML source document to

    another 4ML structure or schema! The input is 4ML!

    The output is 4ML !

    Trans)or%er0 Modifes the data in an' ormat!

    dds# removes# converts# or changes text! ?se

    transormers with a parser# mapper# or serialiCer!

    &ou can also run a transormer as standalone

    component!

    Strea%er -Splits large input documents# such as

    multiple gigab'te data streams# into segments! The

    Streamer splits documents that have multiple

    messages or multiple records in them!

    MA,,INGS -

    -b.ect *ependenc'

    Some ob.ects in a mapping are also stored as

    independent ob.ects in the repositor';

    0 Sources

    0 Targets

    0 5eusable transormations

    0 Mapplets

    The mapping is dependent on these ob.ects!

    $hen this metadata changes# the *esigner and

    other 1ower,enter ,lient applications trac" the

    eects o these changes on mappings!

    In these cases# 'ou ma' fnd that mappings becom

    invalid even though 'ou do not edit the mapping

    $hen a mapping becomes invalid# the Integration

    Service cannot run it properl'# and the $or"%ow

    Manager invalidates the session! The only ob3ects in a mapping that are not

    stored as independent repository ob3ects ar

    the non&reusable transformations that you

    build within the mapping!

    These non&reusable transformations are

    stored within the mapping only!

    Exporting and Importing a Mapping

    &ou export a mapping to an 4ML fle and import a

    mapping rom an 4ML fle through the *esigner!

    &ou might want to use the export and import eatu

    to cop' a mapping to the same repositor'# a

    connected repositor'# or a repositor' to which 'o

    cannot connect

    Invalidating Sessions

    $hen 'ou edit and save a mapping# some change

    cause the session to be invalid even though the

    mapping remains valid!

    The Integration Service does not run invalid

    sessions! I 'ou edit a mapping# the *esigner

    invalidates sessions when 'ou perorm the

    ollowing actions;

    0 dd or remove sources or targets!

    0 5emove mapplets or transormations!

    0 5eplace a source# target# mapplet# or

    transormation when importing or cop'ing ob.ect

    0 dd or remove Source Qualifers or ,-+-L

    :ormaliCers# or change the list o associated

    sources or these transormations!

    0 dd or remove a 3oiner or ?pdate Strateg'

    transormation!

    0 dd or remove transormations rom a mapplet

    the mapping!0 ,hange the database t'pe or a source or targe

    *eleting a Mapping

    &ou ma' delete mappings that 'ou no longer use!

    $hen 'ou delete a mapping# 'ou do not delete a

    sources# targets# mapplets# or reusable

    transormations defned outside the mapping!

    2ote% If you enable version control, deleted

    mapping remains chec4ed out until you che

    it in! To chec4 in a deleted mapping, clic4

    9K

  • 8/10/2019 INFA Notes .doc

    18/161

    5ersioning 6 'ind Chec4outs! elect the

    deleted mapping and clic4 Tools 6 Chec4 In.

    ewing Lin" 1aths to a 1ort

    $hen displa'ing both lin" paths# the *esigner traces

    the %ow o data rom one column in the source# in

    and out o each transormation# and into a single

    port in the target!

    For unconnected transormations the Designer does

    not display a link path"=or connected Loo"up transormations# the *esigner

    shows each output port dependent upon the input

    ports involved in the loo"up condition!

    For *ustom transormations the Designer sho!s

    that an output port depends on all input ports by

    deault" +o!ever i you defne port relationships in

    a *ustom transormation the Designer sho!s the

    dependent ports you defne"

    :ote; &ou can confgure the color the *esigner uses

    to displa' connectors in a lin" path! $hen

    confguring the ormat options# choose the Lin"

    Selection option!

    ewing Source ,olumn *ependencies

    To view column dependencies# right0clic" a target

    column in a mapping and choose Show =ield

    *ependencies!

    The *esigner displa's the =ield *ependencies dialog

    box which lists all source columns connected to the

    target column!

    $hen 'ou defne a port expression that perorms a

    calculation using multiple source columns# and then

    connect that port to a target column# the =ield*ependencies dialog box lists all source columns

    'ou use in the expression

    tions or Lin"ing 1orts

    $hen 'ou lin" transormations# 'ou can lin" with

    one o the ollowing options;

    0 -ne to one! Lin" one transormation or output

    group to one transormation# input group# or target

    onl'!

    0 -ne to man'!

    0 Lin" one port to multiple transormations# inputgroups# or targets!

    0 Lin" multiple ports in one transormation or

    output group to multiple transormations# input

    groups# or targets!

    0 Man' to one! Lin" man' transormations to one

    transormation# input group# or target!

    5ules and 2uidelines or ,onnecting Mapping

    -b.ects

    0 I the *esigner detects an error when 'ou tr' to

    lin" ports between two mapping ob.ects# it displa

    a s'mbol indicating that 'ou cannot lin" the port

    0 =ollow logic o data %ow in the mapping! &ou ca

    lin" the ollowing t'pes o ports;

    0 The receiving port must be an input or

    input@output port!

    0 The originating port must be an output or

    input@output port!

    0 &ou cannot lin" input ports to input ports or outports to output ports!

    & "ou must lin4 at least one port of an input

    group to an upstream transformation!

    & "ou must lin4 at least one port of an outpu

    group to a downstream transformation.

    0 &ou can lin" ports rom one active transormatio

    or one output group o an active transormation t

    an input group o another transormation!

    - "ou cannot connect an active

    transformation and a passive transformatio

    to the same downstream transformation or

    transformation input group.- "ou cannot connect more than one active

    transformation to the same downstream

    transformation or transformation input

    group.

    - "ou can connect any number of passive

    transformations to the same downstream

    transformation, transformation input group

    or target

    & "ou can lin4 ports from two output groups

    the same transformation to one 7oiner

    transformation con#gured for sorted data ithe data from both output groups is sorted

    - "ou can only lin4 ports with compatible

    datatypes.The *esigner verifes that it can ma

    between the two datat'pes beore lin"ing them!

    The Integration Service cannot transorm data

    between ports with incompatible datat'pes! .hi

    the datatypes do not have to be identical,

    they do have to be compatible, such as Cha

    and 5archar!

    0 &ou must connect a source defnition to a sourc

    qualifer onl'! &ou then lin" the source qualifer to

    targets or other transormations!

    & "ou can lin4 columns to a target de#nition

    in a mapping, but you cannot copy columns

    into a target de#nition in a mapping! 8se th

    Target Designer to add columns to a target

    de#nition!

    0 The *esigner mar"s some mappings invalid i th

    mapping violates data %ow validation!

    1ropagating 1orts and attributes

    9H

  • 8/10/2019 INFA Notes .doc

    19/161

    e *esigner does not propagate changes to the

    owing mapping ob.ects;

    nconnected transormations

    eusable transormations

    applets

    ource and target instances

    *6 Source Qualifer

    les and 2uidelines or 1ropagating 1orts and

    ributeshe *esigner does not propagate to implicit

    pendencies within the same transormation!

    $hen 'ou propagate a port description# the *esigner

    erwrites the description or the port in the other

    nsormations in the mapping

    When you propagate back!ard along the link path

    riy that the change does not cause the Integration

    rvice to ail the session! =or example# i 'ou

    opagate changes to a source qualifer# the

    egration Service might generate invalid SQL when it

    ns the session! I 'ou change the port name

    ?ST>I*P to O,?ST-ME5>I*#P the Integration Serviceght generate SQL to select the wrong column name

    he source table uses O,?ST>I*!P

    When you propagate port attributes veriy that the

    ange does not cause the Designer to invalidate the

    apping! =or example# when 'ou change the datat'pe

    a port rom integer to string and propagate the

    tat'pe to other transormations# the *esigner

    alidates the mapping i a calculation uses one o the

    anged ports!

  • 8/10/2019 INFA Notes .doc

    20/161

    0 &ou cannot override the deault ?1*TE statement

    i the target column name contains an' o the

    ollowing characters;

    Y # ) / Z 7 [ 0 ( @ \ t \ n \ Zspace7

    0 &ou can use parameters and variables in the

    target update quer'! ?se an' parameter or variable

    t'pe that 'ou can defne in the parameter fle!

    &ou can enter a parameter or variable within the

    ?1*TE statement# or 'ou can use a parameter or

    variable as the update quer'!=or example# 'ou can enter a session parameter#

    1aramM'-verride# as the update quer'# and set

    1aramM'-verride to the ?1*TE statement in a

    parameter fle!

    & .hen you save a mapping, the Designer

    veri#es that you have referenced valid port

    names! It does not validate the 9!

    0 I 'ou update an individual row in the target table

    more than once# the database onl' has data rom

    the last update!

    I the mapping does not defne an order or the

    result data# dierent runs o the mapping on

    identical input data ma' result in dierent data in

    the target table!

    0 $E5E clause that does not contain an' column

    reerences updates all rows in the target table# or

    no rows in the target table# depending on the

    $E5E clause and the data rom the mapping!

    =or example# the ollowing quer' sets the

    EM1>:ME to OMI6E SMITP or all rows in the

    target table i an' row o the transormation has

    EM1>I* 7 9;

    ?1*TE T>SLES set EM1>:ME YMI6E SMITY$E5E ;T?!EM1>I* 7 9

    0 I the $E5E clause contains no port reerences#

    the mapping updates the same set o rows or each

    row o the mapping!

    =or example# the ollowing quer' updates all

    emplo'ees with EM1>I* 7 9 to have the

    EM1>:ME rom the last row in the mapping;

    ?1*TE T>SLES set EM1>:ME ;T?!EM1>:ME

    $E5E EM1>I* 7 9

    0 I the mapping includes an ?pdate Strateg' or

    ,ustom transormation# the Target ?pdatestatement onl' aects records mar"ed or update!

    0 I 'ou use the Target ?pdate option# confgure the

    session to mar" all source records as update!

    es and 2uidelines or dding 1re0 and 1ost0Session

    L ,ommands

    0 ?se an' command that is valid or the database

    t'pe! owever# the Integration Service does not

    allow nested comments# even though the database

    might!

    0 &ou can use parameters and variables in the

    target pre0 and post0session SQL commands!

    =or example# 'ou can enter a parameter or varia

    within the command! -r# 'ou can use a session

    parameter# 1aramM',ommand# as the SQL

    command# and set 1aramM',ommand to the SQ

    statement in a parameter fle!

    , -se a semicolon '.) to separate multiple

    statements" /he Integration Service issues a

    commit ater each statement!0 The Integration Service ignores semicolons

    within @( !!!(@!

    0 I 'ou need to use a semicolon outside o

    comments# 'ou can escape it with a bac"slash )\/

    0/he Designer does not validate the SQ0"

    1ote2 %ou can also enter pre, and post,session SQ

    commands on the 3roperties tab o the Source

    Qualifer transormation!

  • 8/10/2019 INFA Notes .doc

    21/161

    mapping! I the mapplet includes a source qualifer

    that uses an SQL override# the *esigner prompts

    'ou to connect all mapplet output ports to the

    mapping!

    0 *atat'pes between ports must be compatible! I

    'ou change a port datat'pe to one that is

    incompatible with the port it is connected to# the

    *esigner generates an error and invalidates the

    mapping! =or example# 'ou have two *ate@Time

    ports connected# and 'ou change one port to a*ecimal! The *esigner invalidates the mapping! &ou

    can however# change the datat'pe i it remains

    compatible with the connected ports# such as ,har

    and

  • 8/10/2019 INFA Notes .doc

    22/161

    &ou can validate multiple mappings without etching

    them into the wor"space!

    To validate multiple mappings 'ou must select and

    validate the mappings rom either a quer' results

    view or a view ob.ect dependencies list!

    :ote; I 'ou use the 5epositor' Manager# 'ou can

    select and validate multiple mappings rom the

    :avigator!

    &ou can save and optionall' chec" in mappings that

    change rom invalid to valid status as a result o thevalidation!

    To validate multiple mappings;

    Select mappings rom either a quer' or a view

    pendencies list!

    5ight0clic" one o the selected mappings and choose

    idate! The

  • 8/10/2019 INFA Notes .doc

    23/161

    Each -utput transormation in a mapplet displa's as

    an output group in a mapping!

    n output group can pass data to multiple pipelines

    in a mapping!

    ewing Mapplet Input and -utput

    Mapplets and mapplet ports displa' dierentl' in the

    Mapplet *esigner and the Mapping *esigner

    The ollowing fgure shows a mapplet with both an

    Input transormation and an -utput transormation;

    $hen 'ou use the mapplet in a mapping# the

    mapplet ob.ect displa's onl' the ports rom the

    Input and -utput transormations! These are

    reerred to as the mapplet input and mapplet

    output ports!

    The ollowing fgure shows the same mapplet in the

    Mapping *esigner;

    &ou can expand the mapplet in the Mapping

    *esigner b' selecting it and clic"ing Mappings 7

    Expand!

    This expands the mapplet within the mapping or

    view! Transormation icons within an expanded

    mapplet displa' as shaded!

    &ou can open or iconiCe all the transormations in

    the mapplet and mapping!

    &ou cannot edit an' o the properties# navigate to

    other olders# or save the repositor' while themapplet is expanded!

    The ollowing fgure shows an expanded mapplet in

    the Mapping *esigner;

    In an e(panded mapping, you do not see the

    Input and *utput transformations!

    ,reating a Mapplet

    mapplet can be active or passive depending on

    the transormations in the mapplet!

    ctive mapplets contain one or more active

    transormations!

    1assive mapplets contain onl' passive

    transormations!

    $hen 'ou use a mapplet in a mapping# all

    transormation rules appl' to the mapplet

    depending on the mapplet t'pe! =or example# as with an active transormation# 'o

    cannot concatenate data rom an active mapplet

    with a dierent pipeline!

    ?se the ollowing rules and guidelines when 'ou a

    transormations to a mapplet;

    & If you use a e;uence

  • 8/10/2019 INFA Notes .doc

    24/161

    The *esigner validates a mapplet when 'ou save it!

    &ou can also validate a mapplet using the Mapplets

    7

  • 8/10/2019 INFA Notes .doc

    25/161

  • 8/10/2019 INFA Notes .doc

    26/161

    Setting the Target Load 1lan

    $hen 'ou use a mapplet in a mapping# the Mapping

    *esigner lets 'ou set the target load plan or

    sources within the mapplet!

    1ipeline 1artitioning

    I 'ou have the partitioning option# 'ou can increase

    the number o partitions in a pipeline to improve

    session perormance! Increasing the number opartitions allows the Integration Service to create

    multiple connections to sources and process

    partitions o source data concurrentl'!

    $hen 'ou create a session# the $or"%ow Manager

    validates each pipeline in the mapping or

    partitioning! &ou can speci' multiple partitions in a

    pipeline i the Integration Service can maintain data

    consistenc' when it processes the partitioned data!

    Some partitioning restrictions appl' to mapplets!

    5ules and 2uidelines or Mapplets

    The ollowing list summariCes the rules and

    guidelines that appear throughout this chapter;

    0 &ou can connect an Input transormation to

    multiple transormations in a mapplet! owever# 'ou

    cannot connect a single port in the Input

    transormation to multiple transormations in the

    mapplet!

    0 n Input transormation must receive data rom a

    single active source!

    0 mapplet must contain at least one Input

    transormation or source defnition with at least one

    port connected to a transormation in the mapplet!0 mapplet must contain at least one -utput

    transormation with at least one port connected to

    another transormation in the mapping!

    0 When a mapplet contains a source #ualifer that

    has an override or the deault SQ0 #uery you must

    connect all o the source #ualifer output ports to

    the ne$t transormation !ithin the mapplet!

    0 I the mapplet contains more than one source

    qualifer# use a 3oiner transormation to .oin the

    output into one pipeline! I the mapplet contains

    onl' one source qualifer# 'ou must connect the

    mapplet output ports to separate pipelines! &ou

    cannot use a 3oiner transormation to .oin the

    output!

    0 $hen 'ou edit a mapplet# 'ou might invalidate

    mappings i 'ou change the mapplet t'pe rom

    passive to active!

    0 I 'ou delete ports in the mapplet when the

    mapplet is used in a mapping# 'ou can invalidate

    the mapping!

    0 *o not change the datat'pe# precision# or scale o

    a mapplet port when the mapplet is used b' a

    mapping!

    0 I 'ou use a Sequence 2enerator transormation

    'ou must use a reusable Sequence 2enerator

    transormation!

    0 I 'ou use a Stored 1rocedure transormation# 'o

    must confgure the Stored 1rocedure T'pe to be

    :ormal!

    0 &ou cannot include 1owerMart D!G0st'le L--6?1unctions in a mapplet!

    , %ou cannot include the ollo!ing objects in a

    mapplet2

    , 1ormali4er transormations

    , *obol sources

    , 560 Source Qualifer transormations

    , 560 sources

    , /arget defnitions

    , 3re, and post, session stored procedures

    , 7ther mapplets

    Mapping ,ara%eters and ;aria(les

    Mapping 1arameters

    mapping parameter represents a constant value

    that 'ou can defne beore running a session!

    mapping parameter retains the same value

    throughout the entire session!

    $hen 'ou use a mapping parameter# 'ou declare

    and use the parameter in a mapping or mapplet!

    Then defne the value o the parameter in a

    parameter fle!

    The Integration Service evaluates all reerences tothe parameter to that value!

    $hen 'ou want to use the same value or a mapp

    parameter each time 'ou run the session# use th

    same parameter fle or each session run!

    $hen 'ou want to change the value o a mapping

    parameter between sessions 'ou can perorm on

    o the ollowing tas"s;

    0 ?pdate the parameter fle between sessions!

    0 ,reate a dierent parameter fle and confgure t

    session to use the new fle!

    0 5emove the parameter fle rom the sessionproperties! The Integration Service uses the

    parameter value in the pre0session variable

    assignment! I there is no pre0session variable

    assignment# the Integration Service uses the

    confgured initial value o the parameter in the

    mapping!

    Mapping

  • 8/10/2019 INFA Notes .doc

    27/161

    The Integration Service saves the value o a

    mapping variable to the repositor' at the end o

    each successul session run and uses that value the

    next time 'ou run the session!

    $hen 'ou use a mapping variable# 'ou declare the

    variable in the mapping or mapplet# and then use a

    variable unction in the mapping to change the

    value o the variable!

    t the beginning o a session# the Integration

    Service evaluates reerences to a variable todetermine the start value!

    t the end o a successul session# the Integration

    Service saves the fnal value o the variable to the

    repositor'!

    The next time 'ou run the session# the Integration

    Service evaluates reerences to the variable to the

    saved value!

    To override the saved value# defne the start value o

    the variable in a parameter fle or assign a value in

    the pre0session variable assignment in the session

    properties!

    ?sing Mapping 1arameters and

  • 8/10/2019 INFA Notes .doc

    28/161

    /he ollo!ing table describes the available variable

    unctions and the aggregation types and datatypes

    you use !ith each unction2

    riable =unctions

  • 8/10/2019 INFA Notes .doc

    29/161

    Although you can place a user&de#ned

    function in another user&de#ned function, a

    function cannot refer to itself!

    =or example# the user0defned unction

    5emoveSpaces includes a user0defned unction

    TrimLeadingandTrailingSpaces!

    TrimLeadingandTrailingSpaces cannot include

    5emoveSpaces! -therwise# 5emoveSpaces is

    invalid!

    nfguring 1ublic =unctions that ,ontain 1rivatenctions

    $hen 'ou include ports as arguments in a private

    user0defned unction# 'ou must also include the

    ports as arguments in an' public unction that

    contains the private unction! ?se the same

    datat'pe and precision or the arguments in the

    private and public unction!

    =or example# 'ou defne a unction to modi' order

    I*s to include VI:=U and the customer I*! &ou frst

    create the ollowing private unction called

    ,oncat,ust that concatenates VI:=U with the port

    ,?ST>I*; ,-:,T )VI:=U# ,?ST>I*/

    ter 'ou create the private unction# 'ou create a

    public unction called ,oncat-rder that contains

    ,oncat,ust;

    ,-:,T );?*=!,-:,T,?ST) ,?ST>I*/# -5*E5>I*/

    $hen 'ou add ,oncat,ust to ,oncat-rder# 'ou add

    the argument ,?ST>I* with the same datat'pe and

    precision to the public unction!

    :ote; I 'ou enter a user0defned unction when 'ou

    manuall' defne the public unction s'ntax# 'ou

    must prefx the user0defned unction with ;?*=The ollowing table describes the user0defned

    unction management tas"s and lists where 'ou

    can perorm each tas";

  • 8/10/2019 INFA Notes .doc

    30/161

    2ote% "ou cannot create brea4points for

    mapplet Input and *utput transformations!

    ,reating Error +rea"points

    When you create an error breakpoint the Debugger

    pauses !hen the Integration Service encounters

    error conditions such as a transormation error or

    calls to the &((7( unction!

    &ou also set the number o errors to s"ip or each

    brea"point beore the *ebugger pauses;

    0 I 'ou want the *ebugger to pause at ever' error#set the number o errors to Cero!

    0 I 'ou want the *ebugger to pause ater a specifed

    number o errors# set the number o errors greater

    than Cero! =or example# i 'ou set the number o

    errors to fve# the *ebugger s"ips fve errors and

    pauses at ever' sixth error!

    ?sing IS:?LL and IS*E=?LT

    &ou can create IS:?LL and IS*E=?LT conditions in

    transormation and global data brea"points!

    $hen 'ou use the IS:?LL or IS*E=?LT operator#

    'ou cannot use the t'pe or value in the condition!.hen you create an I28 condition, the

    Debugger pauses when the Integration

    ervice encounters a null input value, and the

    port contains the system default value!

    .hen you create an ID1'A8T condition, the

    Debugger pauses in the following

    circumstances%

    & The Integration ervice encounters an

    output transformation error, and the port

    contains a user&de#ned default value of a

    constant value or constant e(pression!

    & The Integration ervice encounters a null

    input value, and the port contains a user&

    de#ned default value of a constant value or

    constant e(pression!

    5unning an Existing Session in *ebug Mode

    I 'ou choose to run an existing session in debug

    mode# the *ebugger $iCard displa's a list o allsessions in the current older that use the mappi

    Select the session 'ou want to use!

    "ou cannot run the Debugger against a

    session con#gured with multiple partitions

    a session con#gured to run on a grid! "ou

    must either change the properties of the

    session or choose to create a debug session

    for the mapping!

    Set Target -ptions

    -n the last page o the *ebugger $iCard# 'ou can

    select the ollowing target options;

    Discard target data6&ou can choose to load or

    discard target data when 'ou run the *ebugger!

    you discard target data, the Integration

    ervice does not connect to the target!

    Displa! target data; &ou can select the target

    instances 'ou want to displa' in the Target windo

    while 'ou run a debug session!

    $hen 'ou clic" =inish# i the mapping includes

    mapplets# the *ebugger displa's the mapplet

    instance dialog box!

    Select the mapplets rom this dialog box that 'ou

    want to debug! To clear a selected mapplet# pres

    the ,trl "e' and select the mapplet!

    $hen 'ou select a mapplet to debug# the *esigne

    expands it to displa' the individual transormatio

    when the *ebugger runs!

    $hen 'ou do not select a mapplet to debug# the

    *esigner does not expand it in the wor"space!

    D

  • 8/10/2019 INFA Notes .doc

    31/161

    "ou cannot complete the following tas4s for

    transformations in the mapplet%

    & Monitor or modify transformation data!

    & 1valuate e(pressions!

    & 1dit brea4points!

    & tep to a transformation instance!

    /he Debugger can be in one o the ollo!ing states2

    Initiali$ing%/he Designer connects to the

    Integration Service"Running%/he Integration Service processes the

    data"

    Paused%the Integration Service encounters a

    break and pauses the Debugger!

    :ote; To enable multiple users to debug the same

    mapping at the same time# each user must

    confgure dierent port numbers in the Tools 7

    -ptions 7 *ebug tab!

    The Debugger does not use the high

    availability functionality!

    The ollowing table describes the dierent tas"s 'ou

    can perorm in each o the *ebugger states;

    $or"ing with 1ersisted

  • 8/10/2019 INFA Notes .doc

    32/161

    *esigner +ehavior

    .hen the Debugger starts, you cannot

    perform the following tas4s%

    & Close the folder or open another folder!

    & 8se the 2avigator!

    & Perform repository functions, such as ave!

    & 1dit or close the mapping.

    - witch to another tool in the Designer, such

    as Target Designer!& Close the Designer"

    :ote; *'namic partitioning is disabled during

    debugging!

    Monitoring the *ebugger

    $hen 'ou run the *ebugger# 'ou can monitor the

    ollowing inormation;

    Session stat$s6Monitor the status o the session!

    Data %ove%ent6Monitor data as it moves through

    transormations!

    rea#points6Monitor data that meets brea"point

    conditions!Target data6 Monitor target data on a row0b'0row

    basis!

    The Mapping *esigner displa's windows and debug

    indicators that help 'ou monitor the session;

    De($g indicators; *ebug indicators on

    transormations help 'ou ollow brea"points and

    data %ow!

    Instance indo6$hen the *ebugger pauses# 'ou

    can view transormation data and row inormation in

    the Instance window!Target indo6

  • 8/10/2019 INFA Notes .doc

    33/161

    *oo#$p trans)or%ation6:ewLoo"up5ow port or a

    Loo"up transormation confgured to use a d'namic

    cache!

    +$sto% trans)or%ation61orts in output groups

    other than the current output group!

    >ava trans)or%ation61orts in output groups other

    than the current output group!

    Additionally, you cannot change data associated

    with the following%

    & Mapplets that are not selected for debugging

    & Input or inputoutput ports

    & *utput ports when the Debugger pauses on an

    error brea4point

    ?. "9R@F*9" ASI+S GUIDE

    $or"%ow Tas"s

    &ou can create tas"s in Tas" *eveloper# $or"%ow

    designer or $or"let designer

    Tas"s created in Tas" *ev are reusable but those

    created in $or"%ow@wor"let designer are not!

    &ou can create the ollowing t'pes o tas"s in the

    $or"%ow Manager;

    Assign%ent6ssigns a value to a wor"%ow

    variable!

    +o%%and6Specifes a shell command to run during

    the wor"%ow!

    +ontrol6Stops or aborts the wor"%ow!

    Decision6Specifes a condition to evaluate!

    E%ail6Sends email during the wor"%ow!

    Event-Raise6:otifes the Event0$ait tas" that an

    event has occurred!

    Event-"ait6$aits or an event to occur beoreexecuting the next tas"!

    Session65uns a mapping 'ou create in the

    *esigner!

    Ti%er6$aits or a timed event to trigger!

    $or"%ow Manager $indows

    The $or"%ow Manager displa's the ollowing

    windows to help 'ou create and organiCe

    wor"%ows;

    0 :avigator

    0 $or"space0 -utput

    0 -verview

    Enhanced Securit'

    The $or"%ow Manager has an enhanced securit'

    option to speci' a deault set o permissions or

    connection ob.ects!

    .hen you enable enhanced security, the.or4)ow Manager assigns default

    permissions on connection ob3ects for users

    groups, and others.

    $hen 'ou disable enable enhanced securit'# the

    $or"%ow Manager ssigns read# write# and execu

    permissions to all users that would otherwise

    receive permissions o the deault group!

    If you delete the owner from the repository,

    the .or4)ow Manager assigns ownership o

    the ob3ect to the administrator!

  • 8/10/2019 INFA Notes .doc

    34/161

    originall' included version D o a session# but version

    D o the session is purged rom the repositor'! $hen

    'ou view version G o the wor"%ow# version B o the

    session appears as part o the wor"%ow!

    & "ou cannot view older versions of sessions if

    they reference deleted or invalid mappings, or

    if they do not have a session con#guration.

    Searching or

  • 8/10/2019 INFA Notes .doc

    35/161

    ?se the ollowing guidelines when creating the SQL

    statements;

    0 ?se an' command that is valid or the database

    t'pe! owever# the Integration Service does not

    allow nested comments# even though the database

    might!

    0 ?se a semicolon )W/ to separate multiple

    statements! The Integration Service issues a commit

    ater each statement!

    0 The Integration Service ignores semicolonswithin @( !!!(@!

    0 I 'ou need to use a semicolon outside o

    comments# 'ou can escape it with a bac"slash )\/!

    0 The .or4)ow Manager does not validate the

    9!

    Error andling 0

    &ou can confgure error handling on the ,onfg

    -b.ect tab!

    &ou can choose to stop or continue the session i the

    Integration Service encounters an error issuing the

    pre0 or post0 session SQL command

    The $or"%ow Manager provides the ollowing t'pes

    o shell commands or each Session tas";

    ,re-session co%%and -The Integration Service

    perorms pre0session shell commands at the

    beginning o a session! &ou can confgure a session

    to stop or continue i a pre0session shell command

    ails!

    ,ost-session s$ccess co%%and 0 The Integration

    Service perorms post0session success commands

    onl' i the session completed successull'!,ost-session )ail$re co%%and 0 The Integration

    Service perorms post0session ailure commands

    onl' i the session ailed to complete!

    1re0Session Shell ,ommand Errors

    I 'ou select stop# the Integration Service stops the

    session# but continues with the rest o the wor"%ow!

    I 'ou select ,ontinue# the Integration Service

    ignores the errors and continues the session!

    +' deault the Integration Service stops the session

    upon shell command errors!

    Session +on0g$ration 9(5ect

    ,onfguration -b.ect and ,onfg -b.ect Tab Settings

    &ou can confgure the ollowing settings in a session

    confguration ob.ect or on the ,onfg -b.ect tab in

    session properties;

    Advanced0 dvanced settings allow 'ou to

    confgure constraint0based loading# loo"up caches#

    and buer siCes!

    *og options0 Log options allow 'ou to confgure

    how 'ou want to save the session log! +y default

    the og Manager saves only the current

    session log!

    Error 'andling0 Error andling settings allow 'o

    to determine i the session ails or continues when

    encounters pre0session command errors# stored

    procedure errors# or a specifed number o session

    errors!

    ,artitioning options0 1artitioning options allowthe Integration Service to determine the number o

    partitions to create at run time!

    Session on grid0 $hen Session on 2rid is enabl

    the Integration Service distributes session threads

    the nodes in a grid to increase perormance and

    scalabilit'!

    DG

  • 8/10/2019 INFA Notes .doc

    36/161

  • 8/10/2019 INFA Notes .doc

    37/161

    *ecision Tas"

    &ou can enter a condition that determines the

    execution o the wor"%ow# similar to a lin" condition

    with the *ecision tas"!

    The *ecision tas" has a predefned variable called

    *ecision>tas">name!condition that represents the

    result o the decision condition!

    The Integration Service evaluates the condition in

    the *ecision tas" and sets the predefned condition

    variable to True )9/ or =alse )/!

    "ou can specify one decision condition per

    Decision tas4!

    ter the Integration Service evaluates the *ecision

    tas"# use the predefned condition variable in other

    expressions in the wor"%ow to help 'ou develop the

    wor"%ow!

    *epending on the wor"%ow# 'ou might use lin"

    conditions instead o a *ecision tas"!

    owever# the *ecision tas" simplifes the wor"%ow!

    I 'ou do not speci' a condition in the *ecision ta

    the Integration Service evaluates the *ecision tas

    to True!

    ?sing the *ecision Tas"

    ?se the *ecision tas" instead o multiple lin"

    conditions in a wor"%ow!

    Instead o speci'ing multiple lin" conditions# use

    the predefned condition variable in a *ecision ta

    to simpli' lin" conditions!

    Example

    =or example# 'ou have a ,ommand tas" that

    depends on the status o the three sessions in th

    wor"%ow! &ou want the Integration Service to run

    the ,ommand tas" when an' o the three session

    ails! To accomplish this# use a *ecision tas" with

    the ollowing decision condition;

    Q9>session!status =ILE* -5 QB>session!stat

    =ILE* -5 QD>session!status =ILE*

    &ou can then use the predefned condition variabl

    in the input lin" condition o the ,ommand tas"!

    ,onfgure the input lin" with the ollowing lin"

    condition;

    *ecision!condition True

    &ou can confgure the same logic in the wor"%ow

    without the *ecision tas"!

    .ithout the Decision tas4, you need to use

    three lin4 conditions and treat the input lin

    to the Command tas4 as *R lin4s!

    Event Tas" &ou can defne events in the wor"%ow to speci' t

    sequence o tas" execution!

    The event is triggered based on the completion o

    the sequence o tas"s!

    ?se the ollowing tas"s to help 'ou use events in t

    wor"%ow;

    Event-Raise tas# 0 Event05aise tas" represents a

    user0defned event! $hen the Integration Service

    runs the Event05aise tas"# the Event05aise tas"

    DK

  • 8/10/2019 INFA Notes .doc

    38/161

    triggers the event! ?se the Event05aise tas" with the

    Event0$ait tas" to defne events!

    Event-"ait tas#0 The Event0$ait tas" waits or an

    event to occur! -nce the event triggers# the

    Integration Service continues executing the rest o

    the wor"%ow!

    To coordinate the execution o the wor"%ow# 'ou

    ma' speci' the ollowing t'pes o events or the

    Event0$ait andEvent05aise tas"s;

    ,rede0ned event 0 predefned event is a fle0

    watch event! =or predefned events# use an Event0

    $ait tas" to instruct the Integration Service to wait

    or the specifed indicator fle to appear beore

    continuing with the rest o the wor"%ow! $hen the

    Integration Service locates the indicator fle# it starts

    the next tas" in the wor"%ow!

    User-de0ned event0 user0defned event is a

    sequence o tas"s in the wor"%ow! ?se an Event0

    5aise tas" to speci' the location o the user0defnedevent in the wor"%ow! user0defned event is

    sequence o tas"s in the branch rom the Start tas"

    leading to the Event05aise tas"!

    $hen all the tas"s in the branch rom the Start tas"

    to the Event05aise tas" complete# the Event05aise

    tas" triggers the event! The Event0$ait tas" waits

    or the Event05aise tas" to trigger the event beore

    continuing with the rest o the tas"s in its branch!

    Timer Tas"

    &ou can speci' the period o time to wait beore the

    Integration Service runs the next tas" in the

    wor"%ow with the Timer tas"!&ou can choose to start the next tas" in the wor"%ow

    at a specifed time and date!

    &ou can also choose to wait a period o time ater

    the start time o another tas"# wor"%ow# or wor"let

    beore starting the next tas"!

    The Timer tas" has the ollowing t'pes o settings;

    A(sol$te ti%e0 &ou speci' the time that the

    Integration Service starts running the next tas" in

    the wor"%ow! &ou ma' speci' the date and time# or

    'ou can choose a user0defned wor"%ow variable t

    speci' the time!

    Relative ti%e 0 &ou instruct the Integration Servi

    t