NAME

PeopleSoft::EPM - Functions for EPM

SYNOPSIS

use PeopleSoft::EPM;
my $result = remove_grp($grpid,$dbh);
my $result = create_grp(\@grp,,$grpid,$parallelflag $dbh)
my $result = release_recsuite($rs_id, $js_id, $dbh);
my $return = ren_repository($old_name, $new_name, $dbh);
my ( $maps, $srcs, $tgts, $lkps ) = get_mapping_structs( $app_aref, $dbh );
recurse( $mapping, $load_seq, $MS, $SS, $TS );
my $mapname = get_mapname_with_target( $target_name, $dbh );
my $mapname = get_mapname_with_source( $source_name, $dbh );

DESCRIPTION

This module provides functionality associated with running the data loader utility to move data from ODS staging into the enterprise warehouse.

This module also provides a set of functions to query and manipulate the informatica mappings.

remove_grp($grpid, $dbh)

The remove_grp() deletes the specified data loader map group from the database associated with $dbh.

create_grp(\@grp,,$grpid,$parallelflag $dbh)

create_grp creates a data loader map group including all the maps in $maps_aref with description of $mapdesc and a group id of $grpid. The function will mark the group with $parallelflg, valid values are 'Y' and 'N'.

release_recsuite( $rs_id, $js_id, $dbh )

Specifying a record suite id (e.g. 001) and a jobstream id (e.g. PS_DL_RUN) will release the recordsuite in the database with handle $dbh.

get_maps_aref( $fldr_aref, $dbh )

This function returns a reference to an array that contains the names of all the data loader maps associated with any of the "folders" contained in the array of the first parameter.

ren_repository($old_name, $new_name, $dbh)

The ren_repository() function changes the name of an Informatica repository. It returns 1 on success and 0 on failure.

$mapname = get_mapname_with_target( $target_name, $dbh );

This function returns a reference to an array of map names that populate the table with the given name.

$mapname = get_mapname_with_source( $source_name, $dbh );

This function returns a reference to an array of map names that are fed by the table with the given name.

( $maps, $srcs, $tgts, $lkps ) = get_mapping_structs( $app_aref, $dbh );

This function returns references to four seperate hashes that contain critical dependency information regarding informatica maps. The first (i.e. $maps) contains sections for: source tables, target tables, and lookups. The other three are simply inversions to expedite searchs.

The function takes an array reference containing "applications" whose maps you want to get information on and a database handle that point to the informatica you are analyzing.

recurse( $mapping, $load_seq, $MS, $SS, $TS );

This function populates the array reference passed as its first parameter with an ordered list of informatica maps. The order is such that lookups and sources are run before their targets.

The following snippet shows typical usage employing the get_mapping_structs function described above.

@{$aref} = qw( HR80 ); ( $MS, $SS, $TS, $LS ) = get_mapping_structs( $aref, $dbh ); foreach $mapping ( keys(%{$MS}) ) { recurse( $mapping, $load_seq, $MS, $SS, $TS ); }