Developing a Dynamic Mapping to Run Against Different Sources

Developing a Dynamic Mapping to Run
Against Different Sources and Targets
© 1993-2016 Informatica LLC. No part of this document may be reproduced or transmitted in any form, by any
means (electronic, photocopying, recording or otherwise) without prior consent of Informatica LLC. All other
company and product names may be trade names or trademarks of their respective owners and/or copyrighted
materials of such owners.
Abstract
In the Developer tool, you can develop a dynamic mapping that reuses the same mapping logic for different sources
and targets. This article describes the steps to create a dynamic mapping with a mapping logic that you can run
against different sources and write to different targets. This article assumes that you are familiar with mappings and
dynamic mappings and know how to develop and run a mapping.
Supported Versions
•
Informatica Big Data Management 10.0
•
Informatica Data Services 10.0
•
Informatica Data Quality 10.0
Table of Contents
Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Use Case: Reuse Dynamic Mapping for Different Sources and Targets. . . . . . . . . . . . . . . . . . . . . . . . . . 3
Source Files. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Target Files. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Dynamic Mapping. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Step 1. Configure the Read_Customer_FF Read Transformation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Step 2. Configure the Exp_TRIM Expression Transformation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Create a Dynamic Port and Define Input Rules. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Create a Dynamic Port and Define a Dynamic Expression. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Step 3. Configure the Exp_Output Expression Transformation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Step 4. Configure the Write_customerTrim_FF Write Transformation. . . . . . . . . . . . . . . . . . . . . . . . . . 12
Configure the Data Object to Use a Parameter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Create Target Columns from the Mapping Flow. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Step 5. Validate and Save the Mapping. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Step 6. Run the Dynamic Mapping Against Different Sources and Targets. . . . . . . . . . . . . . . . . . . . . . . 14
Run the Mapping for the Customer_FF Source. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Change the Parameter Values. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Run the Mapping for the orders_FF Source. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Overview
A dynamic mapping is a mapping in which you can change sources, targets, and transformation logic at run time based
on parameters and rules that you define. When your organization wants to reuse the same mapping logic for different
data sources, develop a dynamic mapping that you can run against different sources and write the mapping output to
different targets.
2
Use Case: Reuse Dynamic Mapping for Different Sources and
Targets
You are a developer for an organization that must clean different data files to remove beginning and end blanks in
string values. The data files have different column names and have multiple columns of type string. You need to
develop a dynamic mapping that can remove blanks from the beginning and end of strings from different sources and
write the output to different targets.
Source Files
The source files are flat files that contain string data with blanks in the beginning and end. The source files for the
Read transformation include Customer_FF and orders_FF.
Example procedure reads from the Customer_FF file in the first mapping run and the orders_FF file in the second
mapping run.
Customer_FF columns and data
Customer_FF contains the following columns:
C_Id
C_Fullname
C_title
C_comp
C_addr
C_suite
C_city
C_state
C_zip5
C_country
C_phone
C_fax
C_date
C_email
C_description
where the data type of C_ID and C_zip5 columns is number, and the data type of other columns is string.
Customer_FF contains the following data:
C_Id,C_Fullname,C_title,C_comp,C_addr,C_suite,C_city,C_state,C_zip5,C_country,C_phone,C_
fax,C_date,C_email,C_description
1, Smith John,Account Executive,DKR MANAGEMENT COMPANY INC,100 High Street,
5406,Anytown,TN,22342,USA,4047668150,2124031386,31/08/1985,bwilliama@yahoo.com,
ACTIVE
2,Balasubramanian Krishna,Account Executive,EASTON & COMPANY,71 Congress Parkway,
789,Bangalore,Karnataka,38103,India,
4046345228,4151689756,29/10/1985,bmatthewc@univ.edu,
ACTIVE
3, Johnson Lars,Regional Sales Exec,GREATER BAY BANCORP,123 Snow St.,43543,St. Paul,MN,
55103,USA,4046581534,6122945948,7/9/1992,
ehpuniv.edu,INACTIVE
4,Zogby Kevin,Regional Sales Exec, HEWLETT-PACKARD,317 29th. St.,5856,San Francisco,CA,
94116,USA,4042662730,4155466814,7/8/1985,grobertwuniv.edu,
ACTIVE
5,Franklin Roosevelt,Sales Representative,JAYD TRADING,1511 Wacker Dr,6334,Chicago,IL,
60606,USA,7703965851,2065075486,20/10/1982,trichard@univ.edu,INACTIVE
6, Cruz Emilio,Sales Representative,JEFFERSON-PILOT LIFE INSURANCE,700 Ponce de Leon
Blvd,757,Miami,FL,33134,USA,4043500799,2127655499,31/07/1983,ahelle@mailcity.com,
ACTIVE
7, King BB,Sales Representative,KUWAIT PETROLEUM CORPORATION,18 Beale St,967,Memphis,TN,
38103,USA,4046243979,2151717120,27/09/1989,
glizziem@univ.edu
,INACTIVE
8,Presley Elvis,Sales Representative,PRINCIPIA PARTNERS,45 N Green St.,43546,Tupelo,MS,
38804,USA,4043733125,3311313591,26/07/1992,,
ACTIVE
9,Olson Floyd,Acct MGR., SOLITON ASSOCIATES INC.,21 Lake Harriet Pkwy,
869790,Mineaspolis,MN,55410,USA,7706425402,3232429056,27/08/1993,,INACTIVE
10,Chu Steven,Account Executive,WQXR,2100 Sepulveda Blvd,3434,Los Angeles,CA,90049,USA,
4042319005,2126509756,29/09/1988,akennetha@univ.edu,
ACTIVE
3
For example, the first and third rows have space in the beginning of the name:
1, Smith John,
3, Johnson Lars,
orders_FF columns and data
orders_FF contains the following columns:
OrderID
Customer_ID
Company
CompanyAddress
CompanyCity
CompanyState
CompanyZip
OrderContact
DeliveryAddress
DeliveryCity
DeliveryState
PaymentType
PaymentTerms
Title
DeliveryOption
DeliveryVendor
ConfirmationCode
OrderAmount
OrderType
ProductDescription
where the data type of Customer_ID column is number, and the data type of other columns is string.
orders_FF contains the following data:
O-5079,10110085,JOSEPHTHAL LYON & ROSS,96 FISHER ROAD,
MAHWAH,NJ,7430,PARKE PERSLEY
OR RAYFORD LECROY,96 FISHER ROAD,MAHWAH,NJ,American Express,CHARGE,Account
Executive,UPA,United Parcel Service Air,44162,$21.00 ,Generic,O/L/B P/W L/S TAWNY
SHIMMER .08 OZ.
O-6658,10110086,NRCA,10255 W.HIGGINS RD.,
ROSEMONT,IL,60018-5607,ROLANDA SORTO,10255
W.HIGGINS RD.,ROSEMONT,IL,American Express,CHARGE,Account Executive,UPA,United Parcel
Service Air,44163,$56.40 ,Generic,O-L.B PW LIPSTYLO LASTING PERFECTION .08 OZ.
O-8195,10110087,POND EQUITIES,4522 FT. HAMILTON PKWY., BROOKLYN,NY,11219, KONSTANTIN
PEDDICORD,4522 FT. HAMILTON PKWY.,BROOKLYN,NY,American Express,CHARGE,Account
Executive,UPA,United Parcel Service Air,44164,$78.00 ,Generic,O/L/B P/W L/S TAWNY
SHIMMER LASTING PERFECTION LIPSTYLO TAWNY SHIMMER .08 OZ.
O-9130,10110088,
SCHRODER & COMPANY
,787 SEVENTH AVENUE,
NEW YORK,NY,
10019,GIORGIA TWITCHELL,787 SEVENTH AVENUE,NEW YORK,NY,American Express,CHARGE,Account
Executive,UPA,United Parcel Service Air,44165,$14.00 ,Generic,A/COL L PERFECTION L/S
REF P SUPREME LASTING PERFECTION LIPSTYLO TAWNY SHIMMER .08 OZ.
O-9352,10110089,YUASA TRADING COMPANY (AMERICA),150 EAST 52ND STREET,NEW YORK,NY,
10005,STEFFI MCGLOWN,150 EAST 52ND STREET,NEW YORK,NY,American Express,CHARGE,Account
Executive,UPA,United Parcel Service Air,44166,$54.00 ,Generic,O/L/B L PERFECTION REF
LIPSTYLO COFFEE PEACH SUPREME .08 OZ.
O-9517,10110090,DAI ICHI KANGYO BANK,1 WORLD TRADE CENTRE SUITE 49 - 11,NEW YORK,NEW
YORK,10048,AIKEN DOBRICK,1 WORLD TRADE CENTRE SUITE 49 - 11,NEW YORK,NEW YORK,American
Express,CHARGE,Account Executive,UPR,United Parcel Service Red,
44167,$58.00 ,Generic,LASTING PERFECTION LIP COLOR HOLLYWOOD GLAMOUR 1.7 G MAUVE ICE
#752
O-9639,10110091,FIRST GLOBAL SECURITIES,614 EAST COLORADO BLVD.,PASADENA,CA,91101,
KIRSTENI SIPPEL,614 EAST COLORADO BLVD.,PASADENA,CA,American Express,CHARGE,Account
Executive,FSO,Federal Express Overnight,44168,$24.00 ,Generic,A/COL L PERFECTION L/S
REF P SUPREME .08 OZ.
O-9761,10110092,MILTON PARTNERS,56 MASON STREET,
GREENWICH
,CT,6830,ORLANTA
DYSON,56 MASON STREET,GREENWICH,CT,American Express,CHARGE,Account Executive,UPI,United
Parcel Service International,44169,$75.20 ,Generic,LASTING PERFECTION LIPSTYLO PEACH
SU .08 OZ.
O-9883,10110093,
TAX ANALYSTS
,6830 N. FAIRFAX DRIVE,ARLINGTON,VA,22213,NEWLIN
MCCART,6830 N. FAIRFAX DRIVE,ARLINGTON,VA,American Express,CHARGE,Account
Executive,FSO,Federal Express Overnight,44170,$275.40 ,Generic,O/L/B L PERFECTION L/
STYLO REF P SUPRE
O-5438,10110094,VECTORMEX,535 MADISON AVENUE,NEW YORK,NY,10022,LONNA HUGGINS,535
4
MADISON AVENUE,NEW YORK,NY,American Express,CHARGE,Account Executive,FSO,Federal
Express Overnight,44171,$60.00 ,Generic,LASTING PERFECTION DOUBLE PERFORMANCE LIPSTICK
PEACH SUPREME .08 OZ.
For example, the fourth row has space in the beginning and ending of the company name:
O-9130,10110088,
SCHRODER & COMPANY
,
Target Files
The target file is a flat file where the mapping writes the data after removing the blanks in the beginning and end of
string values. Create a customerTrim.csv file as the target file for the target data object.
Use parameters to change the output file name at run time when you use a different data source. The Data Integration
Service creates the output file based on the parameter value for the target file name and saves the file to the target
directory on the system where Informatica services is installed.
Dynamic Mapping
Create a mapping m_Replication_Template and configure the following dynamic mapping functionality:
•
Read transformation that uses a parameter for the data object to read from different sources
•
Dynamic ports in the downstream transformations that can pass new or changed columns
•
Expression transformation that contains a dynamic expression to remove leading and trailing spaces in strings
•
Write transformation that creates target columns based on the mapping flow and uses a parameter in the
target data object for the target file name
When you run the mapping, the Data Integration Service performs the following tasks:
1.
Reads the data from the appropriate source file based on the parameter value for the source data object.
2.
Passes the new and changed columns to the downstream transformations through dynamic ports.
3.
Expands the dynamic expression and processes the expression function for each generated port in the
dynamic port.
4.
Creates columns in the Write transformation based on the mapping flow and writes the transformed data to
the appropriate target file based on the parameter value.
The following image shows the objects in the mapping:
The mapping contains the following objects:
Read_Customer_FF
Read transformation that represents a flat file source. The flat file contains string data with leading and
ending spaces.
Exp_TRIM
Expression transformation that contains a dynamic expression to remove leading and trailing spaces for ports
of type string.
5
Exp_Output
Expression transformation that contains transformed string ports, and remaining ports from the source object.
Write_customerTrim_FF
Write transformation that represents a flat file target. The mapping writes the output to the flat file target.
Step 1. Configure the Read_Customer_FF Read
Transformation
Configure the Read_Customer_FF Read transformation to use a parameter of type Resource to change the source
data object between mapping runs.
1.
Add a Read transformation that represents the Customer_FF flat file data object.
The Read transformation appears in the editor as Read_Customer_FF.
2.
In the Properties view, click the Data Object tab.
3.
Select Parameter in the Specify by list.
4.
Click New to create a new parameter.
The Parameters dialog box appears.
5.
Enter the parameter name as Param_Src.
6.
Click Browse in the Default Value.
7.
In the Select location dialog box, select the data object that you want to provide as the default value.
An example default value is MRS//Cust_Dept/Customer_FF, where MRS is the Model Repository Service and
Cust_Dept is the project where the Customer_FF data object is stored. You can change the value of the
parameter when you run the mapping.
The following image shows the Data Object tab after you define the settings:
Step 2. Configure the Exp_TRIM Expression Transformation
Add an Expression transformation Exp_TRIM to the mapping and configure the transformation to remove the spaces in
the beginning and end of the strings.
1.
Create a dynamic port to receive columns from the Read transformation and define input rules to include only
the string ports.
2.
Create a dynamic output port and define a dynamic expression to remove the spaces in the beginning and
end of the strings.
6
Create a Dynamic Port and Define Input Rules
Create a dynamic port to receive columns from the Read transformation. Define input rules to include only the string
ports in the dynamic port.
1.
Drag the All Ports group from the Read_Customer_FF transformation to the All Ports group in the Exp_TRIM
transformation.
The Developer tool creates a dynamic port From_Read_CUSTOMER_FF in the Exp_TRIM transformation.
The following image shows the dynamic port in the Exp_TRIM transformation that includes all ports from the
Read transformation as generated ports:
2.
Right-click the dynamic port, and select Edit Input Rules.
The Input Rules dialog box appears.
3.
Select by Type from the Selection Criteria column.
4.
Click the Details button to select the data type you want to include.
5.
In the Input Rule Detail: By Type dialog box, select string data type from the list.
7
6.
Verify the Port Preview area to ensure that only string ports appear.
The following image shows the updated input rule and the string ports in the Port Preview area of the Input
Rule dialog box:
Create a Dynamic Port and Define a Dynamic Expression
Create a dynamic port as an output-only port in the Exp_TRIM transformation. Define a dynamic expression to remove
the spaces in the beginning and end of the strings.
1.
In the Properties view of the Exp_TRIM transformation, click the Ports tab.
2.
Click New Dynamic Port.
3.
Clear the Input column to make this port an output-only port.
4.
Rename the dynamic port that you created as Dynamic_TRIM.
5.
In the Expression column for the Dynamic_TRIM dynamic port, click the Open button (
The Dynamic Expression window opens.
8
).
6.
Replace the existing expression in the editor with the following expression:
LTRIM(RTRIM(From_Read_Customer_FF))
7.
Click Validate to validate the expression.
8.
Click OK to exit the Validate Expression dialog box.
9.
Rename the output ports for the expression as follows:
a.
In the Output Port Settings area, select the Base Port as From_Read_Customer_FF.
b.
Click Edit Output Port Settings.
The Output Port Settings dialog box appears.
9
c.
In the Name list, select Base port name + Suffix.
d.
In the Suffix box, enter _TRIM.
e.
Click OK.
10.
Click OK to exit the Dynamic Expression editor.
The following image shows the Dynamic_TRIM dynamic port with the renamed generated ports:
Step 3. Configure the Exp_Output Expression Transformation
Add an Expression transformation Exp_Output to the mapping. Create a dynamic port to get the output ports from the
Exp_TRIM transformation. Create another dynamic port to get the ports from the Read transformation and define input
rules to include only the unused ports.
1.
From the Exp_TRIM transformation, drag the DynamicTrim dynamic port to the All Ports group in the
Exp_Output transformation.
The Developer tool creates a dynamic port DynamicTrim in the Exp_Output transformation.
2.
From the Read_Customer_FF transformation, drag the All Ports group to the All Ports group in the
Exp_Output transformation.
The Developer tool creates a dynamic port From_Read_Customer_FF in the Exp_Output transformation.
10
The following image shows the two dynamic ports in the Exp_Output transformation.
3.
Right-click the From_Read_CUSTOMER_FF dynamic port, and select Edit Input Rules.
The Input Rules dialog box appears.
4.
Click the New icon to add an input rule.
5.
Select Exclude in the Operator column.
6.
Select Type in the Selection Criteria column.
7.
Click the Details arrow to select the data type you want to include.
8.
In the Input Rule Detail: By Type dialog box, select string data type from the list.
11
9.
Verify the Port Preview area to ensure that string ports do not appear.
The following image shows the updated input rule and the ports in the Port Preview area of the Input Rule
dialog box:
Step 4. Configure the Write_customerTrim_FF Write
Transformation
Create a customerTrim_FF data object and configure it to use a parameter of type String for the output file name.
Configure the Write_customerTrim_FF transformation to create target files at run time based on the columns from the
Exp_Output transformation.
Configure the Data Object to Use a Parameter
Create a customerTrim_FF data object to add as the Write transformation in the mapping. Configure the data object to
use a parameter of type String for the output file name.
1.
Create a customerTrim_FF data object based on the customerTrim.csv file.
2.
To use a parameter for the output file, perform the following steps:
a.
In the Parameters tab of the data object, click the New button (
b.
In the Name column, change the parameter name as Param_TgtFile.
c.
In the Default Value column, click the Open button (
) to create a new parameter.
).
The Edit Parameter Value window appears.
d.
3.
12
Enter the default file name value as customerTrim.csv and click OK.
Save the customerTrim_FF data object.
The following image shows the Parameter tab with the new parameter:
Create Target Columns from the Mapping Flow
Add the Write transformation to the mapping and configure the Write_customerTrim_FF transformation to create target
files at run time based on the columns from the Exp_Output transformation.
1.
Add the customerTrim_FF data object as the Write transformation to the mapping.
2.
In the Properties view of the Write transformation, click the Ports tab.
3.
Choose the Mapping flow option to define the columns for the target.
The Developer tool creates a dynamic port input in the Write_customerTrim_FF transformation.
The following image shows the Ports tab after you choose the option:
The following image shows the new dynamic port input in the Write_customerTrim_FF transformation:
13
4.
From the Exp_Output transformation, drag the All Ports group to the input port in the
Write_customerTrim_FF transformation.
The Developer tool creates a link and flows the columns from the All Ports group of the Exp_Output
transformation to the input dynamic port of the Write transformation.
The following image shows the m_Replication_Template mapping with the Write transformation configured:
Step 5. Validate and Save the Mapping
Validate and run the m_ReplicationTemplate mapping with the default parameter values for the source data object
and target file to view the result.
1.
In the mapping editor, click Edit > Validate.
2.
When the mapping is valid, click File > Save to save the mapping.
Step 6. Run the Dynamic Mapping Against Different Sources
and Targets
After you develop the dynamic mapping, you can run the mapping to access different sources and write to different
targets based on the parameter values.
Run the Mapping for the Customer_FF Source
Run the m_ReplicationTemplate mapping with the default parameter values for the source data object and target file
to view the result. The mapping reads from the Customer_FF source file and writes to the customerTrim.csv target file.
1.
Click Run > Mapping.
The Run Mapping window displays the progress of the mapping run. The mapping runs and writes the output
to the target file.
2.
To view the results written to the target file, navigate to the target directory on the system where Informatica
services is installed:
3.
Open the customerTrim.csv file to verify that the string values do not have spaces in the beginning and end.
<Informatica Installation Directory>\tomcat\bin\target
14
Each line of the file lists data for the columns in the order that they appeared in the target object as C_Id,
C_zip5, C_Fullname, C_title, C_comp, and so on. For example, the first five lines of the file contain the
following data where the blanks from the beginning and end of strings are removed:
1,22342,Smith John,Account Executive,DKR MANAGEMENT COMPANY INC,100 High Street,
5406,Anytown,TN,USA,4047668150,2124031386,31/08/1985,bwilliama@yahoo.com,ACTIVE
2,38103,Balasubramanian Krishna,Account Executive,EASTON & COMPANY,71 Congress Parkway,
789,Bangalore,Karnataka,India,4046345228,4151689756,29/10/1985,bmatthewc@univ.edu,ACTIVE
3,55103,Johnson Lars,Regional Sales Exec,GREATER BAY BANCORP,123 Snow St.,43543,St.
Paul,MN,USA,4046581534,6122945948,7/9/1992,ehpuniv.edu,INACTIVE
4,94116,Zogby Kevin,Regional Sales Exec,HEWLETT-PACKARD,317 29th. St.,5856,San
Francisco,CA,USA,4042662730,4155466814,7/8/1985,grobertwuniv.edu,ACTIVE
5,60606,Franklin Roosevelt,Sales Representative,JAYD TRADING,1511 Wacker Dr,
6334,Chicago,IL,USA,7703965851,2065075486,20/10/1982,trichard@univ.edu,INACTIVE
Change the Parameter Values
Change the parameter values for the source data object and the output file name of the target data object.
1.
To change the parameter value for the source data object, perform the following steps:
a.
In the Properties view of the mapping, click the Parameters tab.
b.
Locate the Param_Src parameter for the source object.
c.
In the Default Value column, click the Open button (
).
The Select Location dialog box appears.
d.
Select the orders_FF data object.
The following image shows the Parameter tab of the mapping with the updated default value:
15
The following image shows the mapping that reflects the ports from the orders_FF data object for the Read
transformation. The dynamic ports reflect new generated ports.
2.
To change the parameter value of the target file name, perform the following steps:
a.
Open the customerTrim_FF target data object.
b.
In the Parameters tab of the data object, locate the Param_TgtFile parameter for the target file name.
c.
In the Default Value column, click the Open button (
).
The Edit Parameter Value window appears.
d.
Change the default file name value to ordersTrim.csv and click OK.
The following image shows the Parameter tab of the customerTrim_FF data object with the updated default
value:
Run the Mapping for the orders_FF Source
Validate the mapping and run the m_ReplicationTemplate mapping for a different source and target. The mapping
reads from the orders_FF source file and writes to the ordersTrim.csv target file.
1.
In the mapping editor, click Edit > Validate.
2.
When the mapping is valid, click File > Save to save the mapping.
3.
Click Run > Mapping.
The Run Mapping window displays the progress of the mapping run. The mapping runs and writes the output
to the target file.
16
4.
To view the results written to the target file, navigate to the target directory on the system where Informatica
services is installed:
<Informatica Installation Directory>\tomcat\bin\target
5.
Open the ordersTrim.csv file to verify that the string values do not have spaces in the beginning and end.
Each line of the file lists data for the columns in the order that they appeared in the target object as
Customer_Id, Order_ID, Company, CompanyAddress, CompanyCity, and so on. For example, the first five
lines of the file contain the following data where the blanks from the beginning and end of strings are
removed:
10110085,O-5079,JOSEPHTHAL LYON & ROSS,96 FISHER ROAD,MAHWAH,NJ,7430,PARKE PERSLEY OR
RAYFORD LECROY,96 FISHER ROAD,MAHWAH,NJ,American Express,CHARGE,Account
Executive,UPA,United Parcel Service Air,44162,$21.00,Generic,O/L/B P/W L/S TAWNY
SHIMMER .08 OZ.
10110086,O-6658,NRCA,10255 W.HIGGINS RD.,ROSEMONT,IL,60018-5607,ROLANDA SORTO,10255
W.HIGGINS RD.,ROSEMONT,IL,American Express,CHARGE,Account Executive,UPA,United Parcel
Service Air,44163,$56.40,Generic,O-L.B PW LIPSTYLO LASTING PERFECTION .08 OZ.
10110087,O-8195,POND EQUITIES,4522 FT. HAMILTON PKWY.,BROOKLYN,NY,11219,KONSTANTIN
PEDDICORD,4522 FT. HAMILTON PKWY.,BROOKLYN,NY,American Express,CHARGE,Account
Executive,UPA,United Parcel Service Air,44164,$78.00,Generic,O/L/B P/W L/S TAWNY
SHIMMER LASTING PERFECTION LIPSTYLO TAWNY SHIMMER .08 OZ.
10110088,O-9130,SCHRODER & COMPANY,787 SEVENTH AVENUE,NEW YORK,NY,10019,GIORGIA
TWITCHELL,787 SEVENTH AVENUE,NEW YORK,NY,American Express,CHARGE,Account
Executive,UPA,United Parcel Service Air,44165,$14.00,Generic,A/COL L PERFECTION L/S REF
P SUPREME LASTING PERFECTION LIPSTYLO TAWNY SHIMMER .08 OZ.
10110089,O-9352,YUASA TRADING COMPANY (AMERICA),150 EAST 52ND STREET,NEW YORK,NY,
10005,STEFFI MCGLOWN,150 EAST 52ND STREET,NEW YORK,NY,American Express,CHARGE,Account
Executive,UPA,United Parcel Service Air,44166,$54.00,Generic,O/L/B L PERFECTION REF
LIPSTYLO COFFEE PEACH SUPREME .08 OZ.
Author
Indra Sivakumar
Staff Technical Writer
Acknowledgements
The author would like to acknowledge Lalitha Sundaramurthy and Indranil Roy for their contributions to this
article.
17