You are on page 1of 42

Informatica PowerCenter 8

Team-Based Development

Presentation Guide
Version PC8TBD-20070416

©Informatica Corporation, 2007. All rights reserved.


Duplication prohibited without written consent from Informatica Corporation
Informatica PowerCenter 8
Team-Based Development

Education Services
Version PC8TBD-20070416

© Informatica Corporation, 2007. All rights reserved.

1
Team-Based Development

• New Terms
• Versioning
• Lab 1
• Queries, Delete/Recover & Purge
• Labels
• Deployment
• Lab 2

2
Versioned Repository
New Terms A repository enabled for version control.

Versioned Object (Object for short)


An object that can have multiple versions.
Object v1
Versioned
Repository
Object Version (Version for short)
Object v2
A One version of a versioned object.

Query
Deployment Group A dynamic search for objects satisfying
specified conditions.

Label
A user-defined text object assigned to one
or more object versions.
Versioned
Repository Deployment Group
B
A set of object versions grouped for
deployment.

3
Versioning

4
Versioned and Non-Versioned Objects

Versioned Non-Versioned
• Source & target definitions • Connections

• Transformations • Server Grids

• Mappings, Mapplets • Server objects

• Tasks, Sessions • Labels


• Queries
• Workflows, Worklets
• Deployment Groups
• Session configurations
• Schedulers

5
Object Creation, Check In and Out

1. Create & save object


(unnumbered version,
checked out)

2. Check in object 3. Open Object


(version number in Read-Only
assigned = n + 1) Mode

4. Check Out object


(new unnumbered
version)

The Green Check Mark will appear on objects that have been checked out either
during initial creation or after explicit checkout.

Steps 1, 3. Disconnecting from the repository without saving leaves the repository unchanged.

1. When an object is created and saved to a versioned repository, a version appears in the repository as checked out.
2. When an object is checked in, that version is assigned an integral version number, starting at 1. You can add check-in comments.
3. When a versioned object is opened in Designer or Workflow Manager, there is no repository impact until…
4. When a versioned object is modified and saved in Designer or Workflow Manager, a new unnumbered version appears in the
repository as checked out. This version is write-locked to other users (they retain read-access to previous versions).
5. When that object is checked the new version is assigned an integral version number (see box 2)

Notes:
- Checking out is implicit whenever a new or modified versioned object is saved.
- Open versioned objects display a green arrow on the navigator icon in Designer and Workflow Manager even before they are saved
and really checked out of the repository.
- Multiple objects can be checked in and checked out and comments can be applied to multiple objects.
- If you import an object from an XML file, a version appears in the repository as checked out (similar to creating and saving an
object).

6
Object Creation, Check In and Out
Versioned
PowerCenter Client
Repository
User A

1. Create & save object Version added


as checked out*
2. Check in object Checked in as v1

User B
3. Open (Read-Only Mode)
4. Check out object Version added
as checked out*
5. Check in object Checked in as v2

Version numbers are only assigned when an object is checked in.

1. When you create a new object, it appears in Designer or Workflow Manager as checked out (green arrow on object in navigator)
but does not yet exist in the repository. After saving, a version shows in the repository (Repository Manager) as checked out. The
checked-out version is locked to other users.
2. When an object is checked in, a version number is assigned (integers, starting at 1). You must add comments at check in.
3. When an object is opened again, it appears in Designer or Workflow Manager as checked out, but the new version does not show in
the repository (Repository Manager) until it is saved.
4. When the object is modified and saved, it shows in the repository (Repository Manager) as checked out.
5. When the object is checked in again, the version number is incremented by 1.
Multiple objects can be selected for check in at the same time.
An object that is checked out is write-locked for other users.

7
Explicit Check Out

• An object is in read-only mode until you or


another user checks it out.
• An object is checked out by default when it’s
created, copied, replaced or imported.
• An object can be explicitly checked out.
• When the object is checked out, it is not editable
by other users and changes are not visible to
other users until it is checked in.

It's now in the drop down box...you can check it out rather than having to open and save it to implicitly check it
out...you now explicitly check it out. The checkout modifier is now a check mark.
You can also undo the explicit check out to check it back in again.

8
Read-Only Mode

• When you view an object that is in Read-Only


mode, it is available to other repository users to
check in or check out.
• When another user checks out an object that is
being viewed in Read-Only Mode, a message
appears in the Notification Tab of the Output
Window.

9
Viewing Check-out Time

• You can view the check-out time for a repository object by


adding the property to the View History Window.

• The Check-Out Time property can be used in an Object


Query as a parameter.
• With the Check-out parameter, you can retrieve all
checked-out objects for a particular date/time, before or
after a particular date/time or within a specified number of
days.

10

10
Undo Checkout

1. Create & save object


(unnumbered version,
checked out*)

2. Check in object 3. Open Object


(version number in Read-Only
assigned = n + 1) Mode

4. Check out object


(new unnumbered
version, checked out)

4a. Undo checkout


(new version removed)

11

4a. After saving changes (but before check-in), you can use Undo Checkout to remove the new checked-out
version from the repository.

11
Undo Checkout

Versioned
Repository
PowerCenter Client
User C
3. Open in Read-Only Mode

4. Check out object New version added


as checked out
4a. Undo checkout New version purged

Version numbers are only assigned when an object is checked in.

12

4a. After saving changes (but before check-in), you can use Undo Checkout to remove the new checked-out
version from the repository.
Note: In Designer, you can also use Edit–Revert to Saved to undo changes you entered since the last save to
sources, targets, transformations, mappings and mapplets. You can undo changes to multiple objects at
the same time.

12
Object Properties

• The Navigator and


workspace always display
the latest version of an
object
• Right-click object in
Navigator or workspace and
select Object Properties
• Version tab gives
information about latest
version
• Labels tab also used for
versioning (see later)

13

Alternatively, access object properties using the Versioning menu.


Object tab - view the current object version number and whether the object is checked out.
Version tab - view properties that are specific to the latest version of the object.
Labels tab - view all labels applied to the object.
Object Status tab - view the current status of the object (Active or Deleted).

13
View History

In Designer, Workflow Manager, or Repository


Manager:
• Versioning menu € View History
• Right-click object in Navigator or workspace, select
Versioning € View History

14

Records information about all object versions (even deleted and purged versions).
Can only view history of objects in an open folder.
From View History, you can:
•Identify obsolete versions to purge
•Compare changes in functionality between different versions
Tasks available in View History
Check in
Undo checkout
Compare versions
Validate object
Export to XML file
View dependencies
Purge object version
Apply or remove label
Add to deployment group
View version properties
All available in Repository Manager; some not available in Designer/Workflow Manager
You can save the object version history toan HTML file
Some (not all) of these tasks will be examined later in this course.

14
Comparing Versions

• Select Tools € Compare €


Previous Version or Selected
Versions
• From the Compare dialog box,
select the tab you want
• Differences are highlighted in
red and yellow

15

To compare two versions of an object:


•Select the versions that you want to compare in the object history and choose Tools-Compare-Selected Versions.
•Or select one version and choose Tools-Compare-Previous Version.
•Use the familiar PowerCenter dialog box tabs to display the differences.

When you compare different objects, you compare the latest versions.

Can also compare different objects in different repositories.

15
Lab 1. Versioning

Ex 1. Create a New Version


Ex 2. Import a New Version of a Mapping
Ex 3. Create a Session Task
Ex 4. Compare Different Versions
Ex 5. Check In Remaining Objects

16

16
Queries, Delete/Recover & Purge

17

17
Queries

• Search for versioned objects whose properties satisfy


a set of conditions, e.g.
• Version Status is equal to Deleted AND/OR Label
contains INFA050105
• Use to:
• Track objects during development
• Find deleted objects you want to recover
• Find objects that are invalid, or to export or compare
• Create dynamic deployment groups (more later)
• Queries can be shared or personal

18

Cannot run queries across multiple repositories

18
Query Parameters Available

• Business Name • Label


• Check-in time/Check-out time • Last Saved Time
• Comments • Latest Status
• Deployment Dispatch History • Metadata Extension
• Deployment Receive History • Object Name
• Folder • Object Type
• Include Children • Object Used Status
• Include Children and Parents • Reusable Status
• Include Parents • Shortcut status
• Include Primary/Foreign Key • User
Dependencies • Valid Status
• Invalidated Status • Version Status

19

Business Name: Displays sources and targets based on their business names. For example, the query ‘Business Name is equal to Informatica’ returns sources and targets that contain the
Informatica business name.
Check-in time: Displays objects checked in at/before/after a specified time or within a specified number of days.
Comments: Displays comments associated with a source, target, mapping or workflow.
Deployment Dispatch History: Displays objects deployed to another folder or repository through deployment groups in a given time period.
Deployment Receive History: Displays objects deployed from another folder or repository using deployment groups in a given time period.
Folder: Displays objects in a specified folder.
Include Children, Include Children and Parents, Include Parents: Display the dependent objects specified.
Include Primary/Foreign Key Dependencies: Displays primary key-foreign key dependencies.
Invalidated Status: Displays objects invalidated due to changes to a child dependent object.
Label: Displays objects associated with a label or group of labels.
Last Saved Time: Displays objects saved at a particular time or within a particular time range.
Latest Status: Displays objects based on the object history. The query can return local objects that are checked out, the latest version of checked-in objects, or a collection of all older versions of
objects.
Metadata Extension: Displays objects based on an extension name or value pair. Only returns non-reusable metadata extensions.
Object Name: Displays objects based on the object name.
Object Type: Displays objects based on the object type. For example, you can find all workflows in a specified folder.
Object Used Status: Displays objects that are used by other objects. For example, you can find mappings that are not used in any session. If any version of an object is used by another object,
the query returns the most recent version of the object (even if the most recent version of the object is unused).
Reusable Status: Displays reusable or non-reusable objects.
Shortcut status: Displays objects based on shortcut status. Returns local and global shortcut objects. Shortcut objects are considered valid regardless of whether the objects they reference are
valid.
User: Displays objects checked in or checked out by the specified user.
Valid Status: Displays valid, invalid, and invalidated objects.
Version Status: Displays objects based upon deleted or non-deleted status.
Note: Queries return both the latest checked-in and checked-out versions for the parameters: Object Status, Label, Deployment Dispatch/Receive History, Last Saved Time, and User.

19
Query Browser

From Repository Manager, Designer, or Workflow


Manager menu bar, select Tools t Queries

Query Browser Edit a query


Dialog Box Delete a query
Create a new query
Configure permissions
Execute a query

20

The Query Browser allows you to:


View existing queries
Edit an existing query
Delete an existing query
Create a new query
Configure permissions (to recover deleted objects)
Execute an existing query

20
Creating a Query

Example: Find target definitions whose name includes ‘customer’


Note: AND/OR precede multiple conditions

Contains
Is Equal To
Is One Of
Starts With
Ends With

Does Not Contain


Is Not Equal To
Is Not One Of
Does Not Start With
Does Not End With

21

The box at the bottom lists all operator values.


You can set the Query Type to Personal or Shared.
When making queries with multiple logical conditions (AND/OR) use the keyboard right an left arrow buttons to promote
or demote queries.
Queries are executed in order of the innermost query to the outermost query.

21
Query Results

Example results from query: Version Status Is Equal To


Deleted

Shows all deleted objects in all folders, with the user who
deleted them

22

By default, when you run an object query, the Repository Agent returns objects that meet the following criteria:
•Objects are the latest version, either local checkout versions or checked-in versions.
•Objects are reusable.
•Objects that are not deleted.
To search for deleted objects, use the Deleted value in the Version Status parameter.
To search for older versions, specify the Older value in the Latest Status parameter.
Tasks available from Query Results window
Check in
Undo checkout
View history
Compare versions
Validate object
Export to XML file
Open in workspace
View dependencies
Change object status
Apply or remove label
Add to deployment group
View version properties

22
Example: Recovering an Object
In Repository Manager:
• Run a query to find deleted objects in the repository
• Query parameter = Version Status
• Operator = Is Equal To
• Value 1 = Deleted
• Optionally add other conditions to narrow search
• On Query Results screen, change object status to Active

“AND” condition joins


the two parameters

A “Folder” parameter
narrows the search

23

1. To recover a deleted object, create and run a query that includes the condition Version Status Is Equal To Deleted.
Search returns all objects marked as deleted; add further conditions to narrow your search..
2. Change the status of the object you want to recover from Deleted to Active. If the recovered object has the same name
as a newer object, you must rename it.

23
Deleting, Recovering & Purging Objects

1. Create & save object 2a.Delete object 2b.Recover object


(unnumbered version, (status=deleted, in Repo Manager
checked out*) object hidden) (status=active)

2. Check in object 3. Open Object


(version number in Read-Only
assigned = n + 1) Mode

2c. Purge object 4. Check out object


versions in Repo (new unnumbered
Manager (selected version, checked out)
versions removed)
4a. Undo checkout
(new version removed)

24

2a. If you delete a versioned object in Designer or Workflow Manager, the object is hidden but all versions
remain in the repository with status=deleted.
2b. To recover deleted objects, you must use Repository Manager. Run a query for Version Status=deleted and change
the status to active.
2c. To purge a single version of an object, use Repository Manager’s View History or Query results screen, select object,
use Tools–Purge Object.
To purge all versions of an object from the repository, use Repository Manager:
i. Recover all deleted versions (as in 2b).
ii. From Versioning–Find Checkouts, find any checked out versions and check them in.
iii. Select the object in the Query Results window. To select multiple objects, use the Control key.
iv. Purge the object(s). Purging an object is irreversible.

24
Deleting, Recovering, & Purging Objects

PowerCenter Client Versioned


Repository
User D
2a. Delete object All versions hidden
with status = deleted
Repository Manager

2b. Recover object All versions visible


with status = active
2c. Purge version or object Version/object purged

25

2a. If you delete a versioned object in Designer or Workflow Manager, the object is hidden but all versions
remain in the repository with status=deleted. The delete function is available in Designer, Workflow Manager,
and Repository Manager.
2b. To recover deleted objects, you must use Repository Manager. Run a query for Version Status=deleted and change the
status to active.
2c. To purge a single version of an object, use Repository Manager’s View History or Query results screen, select object,
use Tools–Purge Object.
To purge all versions of an object from the repository, use Repository Manager:
i. Recover all deleted versions (as in 2b).
ii. From Versioning–Find Checkouts, find any checked out versions and check them in.
iii. Select the object in the Query Results window. To select multiple objects, use the Control key.
iv. Purge the object(s). Purging an object is irreversible.

25
Labels

26

26
Using Labels

Labels associate objects so you can:


• Retrieve them all together
• Deploy them all together

Apply labels
Create and edit labels

27

In the Repository Manager, Apply Labels is on the Versioning menu. You can create and edit labels only in the
Repository Manager.
In Designer and Workflow Manager, Apply Labels is on the Tools menu of the Version History or Query results screens.

27
Creating and Editing Labels
• Use the Label Browser from the Repository Manager
to create or edit a label

Lock the label to prevent other users


from applying or editing the label

28

The Labels… menu option opens the Label Browser.


To edit an existing label: Highlight the label in the Label Browser and select the Edit button. Enter a name for the label,
add comments and use the Lock label check box to prevent users from editing or applying the label.
To delete an exiting label: Highlight the label in the Label Browser and select the Delete button.
To create a new label: Highlight the label in the Label Browser and select the New button.
The Label Browser Permissions button is used to restrict a user from reading or editing a label. A user needs execute
permission on a label in order to apply it, write permission to edit a label and read permissions to view a label.

28
Applying a Label

29

Can apply labels in Repository Manager Label Wizard, or from any View History or Query Results windows.
To apply a label you need: Use Repository Manager privilege, Read permission for the folder, Execute permission on the
label.
Browse to select an existing label.
Move Label moves a label already applied to an older version of the selected object to the newer version.
Labels can be applied to multiple versioned objects, including (optionally) dependent objects.
A versioned object can have multiple labels.

29
Deployment

30

30
Deployment
The Team Based Development option enables you to:
1. Define a deployment group of object versions from one Repo
or more folders and repositories. Groups can be: A
• Static (created manually)
• Dynamic (created by a repository query)
Deployment Group
2. Copy a deployment group to another versioned
repository (e.g. development t production) using:
• Repository Manager or
• pmrep command utility
You can:
Repo
• Include dependent objects
• Label objects at deployment
B
3. Rollback a deployment group

31

Deployment is also called Configuration Management.


Both source and target repositories must be versioned.
A deployment group is an object that contains references to other objects from multiple folders across the repository.
Only objects that are checked-in and not locked can be placed in a deployment group
Dependent objects are essential for shortcuts

31
Static and Dynamic Deployment Groups

• Dynamic deployment group


• Objects change frequently
• Specify a query to select objects at deployment time

• Static deployment group


• Objects change infrequently
• Manually add each versioned object

32

32
Deployment Group Advantages
Deployment groups have advantages over:
• Copying folders – because a development group can include
objects from multiple folders
• XML export / import – because a development group allows
labeling and rollback

Deployment Production
Repository Repository
Deploy

Rollback

33

When a deployment group is copied from one repository to another, only the objects in the deployment group are copied -
not the group itself. Hence objects from several folders can be combined in the target repository.
If the target repository is a production repository, you can run a query with Latest Status on the production repository to
identify older versions and then purge them.

33
Managing Folder Status – Recommendations
• Before deployment, in Repository Manager:
• Ensure all objects you want to deploy are checked in
• Set source folders to ‘Frozen, Do Not Allow Deploy to Replace’ (no check in/out)
• Set target folders to ‘Frozen, Allow Deploy to Replace’
• After deployment:
• Set source folders back to ‘Active’
• Set target folders back to ‘Active’
or for production repository to ‘Frozen, Do Not Allow Deploy to Replace’

34

Active. Users can check objects in and out.


Frozen, Do Not Allow Deploy to Replace. Users cannot check objects in or out. You cannot deploy objects into this
folder.
Frozen, Allow Deploy to Replace. Users cannot check objects in or out. Deployment into the folder creates new versions
of the objects.

34
Copying a Deployment Group
In Repository Manager:
• Connect to both source and target repositories
• Select deployment group in source repository
(Deployment Group node of navigation window)

• Copy and paste or drag deployment group to target repository


• Copy Deployment Group Wizard opens => See next slide

35

Can alternatively use pmcmd to copy a deployment group

35
Copy Deployment Group Wizard

Optionally label the deployed objects –


you can create matching labels in the
source and target repositories

36

The Wizard takes you through the following screens:


•Copy Deployment Group (first screen) – select typical or advanced options
- Typical. The wizard uses the defaults for shortcuts to local and global shared folders.
- Advanced. You can override the defaults for shortcuts to local and global shared folders. You can choose the
shared folders to associate shortcuts.
•Select Deployment Folders – accept or override target folder(s) for deployment
•Select Compare Folders – if a user has created or modified any object in target folders since last deployment, select
target folder for compare
•Select Labels – choose labels to apply to the copied objects in both source and target repositories
Move label checkbox – You can move labels from version to version in source and target repositories, e.g.
- from the last version to the latest version before deployment or
- to deploy an earlier version of an object and apply the latest label to the object.
•Sequence Generators and Normalizers – retain current Sequence Generator, Normailzer and XML generated keys e.g.
in production environment
•Retain Server Settings – retain or replace server settings for workflows and sessions

36
Deployment History
1. Versioning t Deployment t History t
Browser
2. View History t History window
3. Details t Detail window

37

37
Rollback
• In target repository, Versioning – Deployment – History
• Select a deployment group to rollback

• Click View History


• Click Rollback

38

38
Lab 2. Deployment

• Ex 1. Deploys a folder containing objects


• Ex 2. Increments the folder with a static
deployment group
• Ex 3. Uses labels and a query to create a
dynamic deployment group

39

39
Informatica Resources
• www.informatica.com – provides information (under Services) on:
• Professional Services
• Education Services
• my.informatica.com – customers and contractual partners can
sign up to access:
• Technical Support
• Product documentation (under Tools – online documentation)
• Velocity Methodology (under Services)
• Knowledgebase
• Mapping templates
• devnet.informatica.com – sign up for Informatica Developers
Network
• Discussion forums
• Web seminars
• Technical papers
40

40
© Informatica Corporation, 2004-2006. All rights reserved.

41

41

You might also like