SSIS Lookup Transformation To Update Individual Columns

Mar 4, 2008

Hi,
I have an example situation that seems like it should have a super easy solution, but my jobs keep failing.
Here we go. . .

I have a SQL Server 2005 table as my source in a data flow task.
This table contains raw data.
We'll call it FACT_Product_Raw - which contains a field called ProductType varchar(1)
Let's say that ProductType contains values of "A" or "B" or "C" - or for that matter, some null and garbage values

I have a lookup table, LOV_Product_Types
This table contains 3 fields that will transform my raw data table
We'll call these fields ProdTypeID smallint, ProdTypeRaw varchar(1) and ProdType smallint
It contains pairs such that A = 1, B = 2, and so on.


Here's what I want to do.
I want to ADD a field to FACT_Product_Raw that contains the "looked up" value from LOV_Product_Types.
Let's say that I want to add the ProdTypeID field to my _Raw table.

I have used the _Raw table as both my source and destination
It blows up every time.
Help.
Thanks,
David

View 5 Replies


ADVERTISEMENT

What Is The SSIS Solution To Matching Columns When Using The Lookup Transformation

Jan 9, 2008

How would you do the following in SSIS?

SELECT a.TestID,
a.TestCode
FROM TableA a
WHERE UPPER(RTRIM(a.TestCode)) IN SELECT (SELECT UPPER(RTRIM(b.TestCode)) FROM TableB b)

Of course the above query is missing a few things but with ETL the where clause UPPER(RTRIM does not appear to be something that has an object or property that I can use in the Lookup.

Please correct and educate me.

View 4 Replies View Related

DT_NTEXT Pass Through Columns In Fuzzy Lookup Transformation

Sep 4, 2006

The documentation on the fuzzy lookup transform mentions that only columns of type DT_WSTR and DT_STR can be used in fuzzy matching. I interpreted this as meaning that you could not create a mapping between an input column of type DT_NTEXT and a column from the reference table. I assumed that you could still have a DT_NTEXT column as part of the input and mark this as a pass through column so that it's value could be inserted in the destination, together with the result of the lookup operation. Apparently this is not the case. Validation fails with the following message: 'The data type of column 'fieldname' is not supported.' First, I'd like to confirm that this is really the case and that I have not misinterpreted this limitation.

Finally, given the following situation

- A data source with input columns

Field_A DT_STR
Field_B DT_NTEXT

- A fuzzy lookup is used to match Field_A to a row in the reference table and obtain Field_C.

- Finally, Field_B and Field_C must be inserted into the destination.

Can anyone suggest how this could be achieved?

Fernando Tubio



View 5 Replies View Related

MAX And Lookup Transformation In SSIS

Oct 15, 2007

I have the following query:

SELECT EMPID,EMPNAME from EMPLOYEE
where EMPID = (SELECT MAX(EMPID) from EMPLOYEE group by EMPNAME,insert_date)

Here one can use above query in Dataflow of SSIS and specify SQL to create temporary table and later can use as lookup to join to other table.

Is there any way in SSIS to directly do the MAX of EMPID in lookup and join to the main source table.

Any help is really appreciated.

Thanks.

View 3 Replies View Related

Visual Studio Closes When Accessing The Columns Tab Of A Lookup Transformation Referencing SQL 7 Table

Jul 30, 2007

I'm creating a new Integration Services Project that copies data out of a SQL 7 server, transforms it, and places the data on a SQL 2005 (SP 2) Server. When defining a lookup transformation, if I specify an OLE DB Connection to my server running SQL 7 as the reference table, as soon as I click on the Colums tab, Visual Studio closes / crashes and dumps me to windows. I don't get an error message. If however I specify a connection to a server running SQL 8, or SQL 2005, no problems.

Is this supposed to happen?

My workstation is running Windows XP Pro SP2, Visual Studio 2005 Pro.

Microsoft SQL Server Integration Services Designer
Version 9.00.1399.00

The server that doesn't work for a reference table is running Windows 2000 Server SP4
SQL 7.00.623


Thanks for your help,
Kirk

View 6 Replies View Related

SSIS Script Transformation: Loop Through Columns In A Row

Mar 17, 2008


HI,


How do I loop through all columns in a row using a script
transformation? For example if I want trim all columns.


If I want to trim one column this is a simple script:



Public Class ScriptMain
Inherits UserComponent


Public Overrides Sub MyAddressInput_ProcessInputRow(ByVal Row As
MyAddressInputBuffer)


Row.City = Trim(Row.City)


End Sub


End Class



But what if I want to do that for all columns? I don't want to name
them all like this:



Public Class ScriptMain
Inherits UserComponent


Public Overrides Sub MyAddressInput_ProcessInputRow(ByVal Row As
MyAddressInputBuffer)


Row.Column1 = Trim(Row.Column1)
Row.Column2 = Trim(Row.Column2)
Row.Column3 = Trim(Row.Column3)
...
...
Row.Column997 = Trim(Row.Column997)
Row.Column998 = Trim(Row.Column998)
Row.Column999 = Trim(Row.Column999)


End Sub


End Class



Is there a simple foreach column in Row.columns option?


-- Joost (Atos Origin)

View 11 Replies View Related

Fuzzy Lookup Error When Adding Additional Lookup Columns

Sep 26, 2007

I'm working with an existing package that uses the fuzzy lookup transform. The package is currently working; however, I need to add some columns to the lookup columns from the reference table that is being used.

It seems that I am hitting a memory threshold of some sort, as when I add 3 or 4 columns, the package works, but when I add 5 columns, the fuzzy lookup transform fails pre-execute:

Pre-Execute
Taking a snapshot of the reference table
Taking a snapshot of the reference table
Building Fuzzy Match Index
component "Fuzzy Lookup Existing Member" (8351) failed the pre-execute phase and returned error code 0x8007007A.

These errors occur regardless of what columns I am attempting to add to the lookup list.

I have tried setting the MaxMemoryUsage custom property of the transform to 0, and to explicit values that should be much more than enough to hold the fuzzy match index (the reference table is only about 3000 rows, and the entire table is stored in less than 2MB of disk space.

Any ideas on what else could be causing this?

View 4 Replies View Related

Help Using Lookup Transformation

Aug 1, 2007

Hi All,

I am doing something really simple and it doesnt work, may be I am missing something, What I am trying to accomplish is to load a fact table using lookup transaformation, however my source data was different from the data in my dimension (or the datatype ) I had to use a data conversion task before my lookup , so the data flow is something like this source -> Data Conversion -> Lookup -> destination , I am getting an error at my lookup task where it says the "[Lookup [82]] Error: Row yielded no match during lookup". and then it just fails. I know for sure that there has to be matching data. donno what is it that I am missing.

Thanks

View 10 Replies View Related

Lookup Transformation

Jan 8, 2007

Is there a way to ignore the unmatched rows using Lookup without creating another destination (Error Transformation for red connector)?

View 5 Replies View Related

Lookup Transformation

Nov 27, 2007

Hi,

I am totally new to SSIS.
I need an example of how to use a Lookup transformation. Basd on that i need to lookup for some recs and delete records from transaction table. I have used the Execute SQL task for this and i am able to achive my requirement. But now i am using XML configurations for Connection Managers and for that very reason i dont want to hard code the catalog names(database names) inside my Execute SQL task.

Can any one suggest me how to do the same using a Lookup transformation or any other.
Any suggestions will be greatly appreciated.

Thank Q,
priya

View 3 Replies View Related

Help Regarding Lookup Transformation

Dec 24, 2007



Hi,


I have a Dataflow task which loads data from a flat file to a Fact table named Inventory , doing a dimensional Key lookup with DIMStores - which is the dimension table for stores information.


If I have some rows in the flatfile whose 'Store' column doesnt have a corresponsing key in the DIMStores table, I want to insert all these stores in to DIMStores table and then update the Inventory table accordingly ..

Any idea how do to this ?


Thanks in Advance,

Sun

View 3 Replies View Related

Lookup Transformation

Feb 27, 2008

I have a question based on Lookup Transformation component. If using Lookup component, the data cannot be NULL for available columns mapping. How about I want to keep the NULL value like outer join instead of inner join? Is there any way to do since I have several Lookup components inside of my dataflow?

View 5 Replies View Related

Lookup Transformation

Mar 27, 2006

Hi Everyone,

I'm trying to perform a lookup transformation. But the deal is, I have this one value that I am passing into the transformation, but I would like to gather all values that match the value I put in....does the lookup transformation do this? I tried it, and it appears as if it only returns one value for the one input. After the lookup, I have an access OLE DB destination setup...so I can capture all those values that corresponds to that one value I passed into the lookup. Does anyone have any ideas on how I can go about this?

Thanks!

View 1 Replies View Related

How To Break In Individual Columns

Jan 2, 2015

I am recieving complete row in one single column and I have pipe delimeter in this row . I want to retrieve the data in individual columns...Currently row is in one column

Data
02|vinod sahu

Expected output

Col1 col2
02 VInod Sahu

View 4 Replies View Related

Lookup Queries And Transformation

May 11, 2000

I have a question. I'm using a lookup table which contains descriptions for a field from one of my tables. I have added a lookup query that looks like this:
SELECT STORE_DESRIP, BANNER, STORE_ID
FROM `stores.txt`
WHERE (STORE_ID = ?)

My main table (stagging) contains the store_id field. What I want to do is populate my destination fields (Store_descriptin and Banner) from the lookup table, based on the Store_id. I have written an ActiveX script that looks like this:
Function Main()
DTSDestination("Store_id") = DTSSource("store_id")
DTSDestination("Store_description") = DTSLookup("storelookup").Execute(DTSSource("store_ id")).value
Main = DTSTransformStat_OK
End Function

I receive an error when I try to test this script. It complains about line 8, which is the line that contains the DTSLookup function. Does anyone have any ideas what I'm doing wrong?

The process I see here is that when it comes to populating the "Store_description" field is will look the lookup table and based on the store_id, pass the description back. I would also like to add another destination field into this script, but won't until I resolve this.

Thanks for yoour support.

View 1 Replies View Related

Lookup Transformation Question

Nov 8, 2006

 Hello,


I have a table like this:






Customer

Group


A

10


B

20
I need to do a translation of "group" to €ślocal group€?:






Customer

Group

Local Group


A

10

11


B

20

21
 When a match is found, the group code should be replaced by the local group code ... but, when no match is found the group code should stay.
 
Is there any way to do this using Lookup ? I tried but when you set the error output to ignore it replaces the value that has no match with a NULL value. Maybe there is another way to get this done with or without the lookup component ?

View 5 Replies View Related

Lookup Transformation (Can It Be Using The Old Data?)

Mar 31, 2008



I have a lookup transformation that retrieves a key for a certain column of values, in this case, a name. So, I go in to the lookup table with a name and come out with its key. I had it working and then I added new entries to the lookup table for a bunch of new names. Now, for some reason, I am not getting the matches for the new names. But I am still getting the matches for the names that existed before I added the new ones.

I'm wondering if the lookup transformation is using the old set of data and some how not picking up the new names. Do I have to trigger something in the lookup transformation to let it know that the lookup table data has changed?

View 4 Replies View Related

Lookup Transformation Problem

Sep 21, 2006

Hello all,



I needed to lookup some table values based on a join of two fields...

I've configured the lookup transform to get the values via a SQL statement to minimize loading time.

However, when creating the relationships between the input columns and the lookup columns I receive following error:
input column [BATCH_ID] has a datatype which cannot be joined on


I've checked both input and lookup columns, both are of type DT_R8... Both columns in the different tables do have the same datatypes

Any idea how to solve this problem??

Thanks in advance

View 5 Replies View Related

NULL Lookup Transformation

Oct 16, 2007




How to compare NULL to NULL in Lookup transformation?

I have a column (key) that has NULL value

and In my look up table, i assign NULL to -1, so i can get -1 when I join key to CD ( in lookup) ...

Num CD
-1 NULL
1 12
2 56



but when i run my package I keep getting no matching record.. i thnk it;s because of NULL value...
how can I resolve this?

View 6 Replies View Related

Transformation/Lookup Confusion

Dec 10, 2007



I've been going round in circles trying to understand what design I should use for a particular transformation/lookup problem I have. Would appreciate a few pointers.

On the data flow, I can create the data source easily with a SQL Query that returns 4 columns...

eg. myDb.dbo.Table1
Col1,
Col2,
Col3,
Col4

The end result at the Destination is:-

myDb.dbo.Table2
Col1,
Col5

Table1.Col1 maps directly to Table2.Col1 -- easy

Table2.Col5 is a result of a lookup query to different tables in the same db based on the value of Table1.Col1, Table1.Col2 & Table1.Col3.

I've already had problems with the Lookup component that forced me to give up using it because it wouldn't adequately support parameters. I was forced to use the Script component instead. However, this problem is a bit different because I don't need to try and reference variables as parameters and, instead, I need to use the values from the source query (Col1, Col2 & Col3).

Suggestions?

Thanks in advance,
Clive

View 2 Replies View Related

Need Help To Optimize The Lookup Transformation

Jul 2, 2007

Hi,



There is one data flow task in the package. I have a column in the input set called "ID". The total number of rows in the input set is > 50000.



There is one table in the database which has the description for all the IDs. I need to get the "Description" value from the database for each row. The table contains nearly 12 lack records.



For that I am using lookup transformation. In lookup, I specified the query and column mapping and I got the new column "Description".



Here is the problem.



while running the package, the lookup is getting all the 12 lack rows from table and then it is matching the rows.



It is taking huge time.



Can any one suggest me how to improve the performance of this situation?



Thanks in advance.

View 5 Replies View Related

When Using Advanced Tab In Lookup Transformation

Oct 22, 2007


Hi all

when using advanced tab in lookup transformation ?, for whatany suggest i will be appreciated , thanks in advance

View 4 Replies View Related

Allow NULLS With The Lookup Transformation?

Mar 6, 2007

Hi,

I just wanted to know if there is any way to Allow Null values while doing a lookup on a table in SSIS.

Let me elaborate the situation...

I have a flat file source that has a field called 'code'. I want to lookup in a code table to see if the code in the file is a valid code but the flat file may contain a NULL value as a 'code' (i.e. zero length string which treated as NULL by my package).

My problem is, the SSIS package tries to search for the NULL in the table and the lookup fails and an error is logged as per the business logic but actually NULL is also an acceptable value and the error should not be logged.

I tried inserting a NULL value in the lookup column but that doesn't work. I am not sure but I think I have read somewhere that two null values cannot be compared for equality. I cannot use conditional split to check the null value because I have to use a large number of lookups and a conditional split everywhere will mess up the things.

Is there any way to solve this problem?

View 6 Replies View Related

Lookup Dataflow Transformation

Feb 21, 2008

I may have misunderstood how Lookupu works because it's not doing what I want.
From the OLTP datasource I have a long list of revenue items (from a SQL server database). I want to assign these to specific accounts as they are transferred into our accounting system. I have another table with a list of words to search for and which account they belong to.
For example if the OLTP source might be
Description - Amount
"Sales of cars"- "$20,000"
"Motorcycle sales" - "$15,000"
"Bike rentals" - "$2,000"

The account lookup table is like
Wordsearch - Account
"sale" - "ACCT_SAL"
"rental" - "ACCT_RENT"

So by looking up whether "wordsearch" is found in "desription" I should get an output of
ACCT_SAL - $20,000
ACCT_SAL - $15,000
ACCT_RENT - $2,000

Back in DTS I did this with an array and "If Instr" using VBScript in the Data Transformation Task. I'm sure there must be something in SSIS to do this - it should be something like a Fuzzy Lookup ?, but I'm drifting toward Script Component. Anyone got any ideas for SSIS

View 6 Replies View Related

Advanced Lookup Transformation

Nov 30, 2006

Hi,

Here is my problem for a lookup transformation:

I have an input flow with dates and fields like this :

ID BEGINNING_DATE ENDING_DATE

1 12/01/2006 12/16/2006

and a reference table like this:

ID PRICE BEGINNING_PRICE_DATE ENDING_PRICE_DATE

1 400 11/28/2006 12/03/2006

1 500 12/03/2006 12/06/2006

1 600 12/06/2006 12/09/2006



I have to get the intersection periods between the two tables joining on ID. I would like to have this result flow :

ID BEGINNING_DATE ENDING_DATE PRICE

1 12/01/2006 12/03/2006 400

1 12/03/2006 12/06/2006 500

1 12/06/2006 12/09/2006 600



I'm using a lookup transformation and modifying the SQL instruction in advanced tab like this:

select *
from
(select * from [dbo].[Price]) as refTable
where [refTable].[ID] = ?
and (? between [refTable].[BEGINNING_PRICE_DATE] and [refTable].[ENDING_PRICE_DATE]
or ? between [refTable].[BEGINNING_PRICE_DATE] and [refTable].[ENDING_PRICE_DATE]
or ([refTable].[BEGINNING_PRICE_DATE] between ? and ?
and [refTable].[ENDING_PRICE_DATE] between ? and ?))

In that case I have to define 7 parameters:

ID : parameter0

BEGINNING_DATE : parameter1, parameter3, parameter5

ENDING_DATE : parameter2, parameter4, parameter6



My problem is that the transformation looks for only one matching element and outputs 0 or 1 row per input row... In that case the 3 rows of my lookup table are matching with the row in my input table, but I have only the first one.

How could I do to resolve my problem?

Thanks... I hope it's clear...

Arnaud.

View 6 Replies View Related

Lookup Transformation Issue

Mar 6, 2008

I used to use Lookup Transformation for my SSIS, now I am having problem and cannot find the problem. I have my source table, one lookup to join source column to my lookup column as L1. I then have another lookup to join L1 to L2, and will show L2. It seems not working. I used to have source to join several lookup and get different Li, not this one. Any help?

View 14 Replies View Related

Lookup Transformation With Parameter

Jan 11, 2006

 

Has anyone else noticed this? I want to be able to use a paremter in my reference table of my Lookup Transformation. I couldn't find any way for the dialog to accept SQL with a parameter so I checked on MSDN How to: Implement a Lookup Using the Lookup Transformation and sure enough in the article is says to click on the Parameter button. I don't have a Parameters button on this dialog. Error? Is this possible?

 

6. In the Lookup Transformation Editor, on the Reference Table tab, select a connection manager in the Connection manager list, and then do one of the following:

Click Use a table or a view, and then select either a data source view, a data source reference, or an OLE DB connection manager.

Click Use results of an SQL query, and then build a query in the SQL Command window, or click Build Query to build a query using the graphical tools that the Query Builder provides. Alternatively, click Browse to import an SQL statement from a file.
If the query includes parameters, click Parameters to map parameters to variables. For more information, see How to: Map Query Parameters to Variables in Data Flow Components.
To validate the SQL query, click Parse Query.
To view a sample of the data that the query returns, click Preview.

View 10 Replies View Related

Row Yielded No Match During Lookup When Using 2 Columns In Lookup

Jul 24, 2007

I am doing a lookup that requires mapping 2 columns in the column mapping section. When I do this, I get the error "Row yielded no match during lookup" . The SQL that I captured in SQL profiler does find the record when I run it in Management Studio. I have already tried trimming everything to no avail.

Why is this happening?



I tried enabling memory restrictions but then I my package hangs and I get a SQLDUMPER_ERRORLOG.log file with the following logged:



07/24/07 13:35:48, ERROR , SQLDUMPER_UNKNOWN_APP.EXE, AdjustTokenPrivileges () failed (00000514)
07/24/07 13:35:48, ACTION, SQLDUMPER_UNKNOWN_APP.EXE, Input parameters: 4 supplied
07/24/07 13:35:48, ACTION, SQLDUMPER_UNKNOWN_APP.EXE, ProcessID = 5952
07/24/07 13:35:48, ACTION, SQLDUMPER_UNKNOWN_APP.EXE, ThreadId = 0
07/24/07 13:35:48, ACTION, SQLDUMPER_UNKNOWN_APP.EXE, Flags = 0x0
07/24/07 13:35:48, ACTION, SQLDUMPER_UNKNOWN_APP.EXE, MiniDumpFlags = 0x0
07/24/07 13:35:48, ACTION, SQLDUMPER_UNKNOWN_APP.EXE, SqlInfoPtr = 0x0100C5D0
07/24/07 13:35:48, ACTION, SQLDUMPER_UNKNOWN_APP.EXE, DumpDir = <NULL>
07/24/07 13:35:48, ACTION, SQLDUMPER_UNKNOWN_APP.EXE, ExceptionRecordPtr = 0x00000000
07/24/07 13:35:48, ACTION, SQLDUMPER_UNKNOWN_APP.EXE, ContextPtr = 0x00000000
07/24/07 13:35:48, ACTION, SQLDUMPER_UNKNOWN_APP.EXE, ExtraFile = <NULL>
07/24/07 13:35:48, ACTION, SQLDUMPER_UNKNOWN_APP.EXE, InstanceName = <NULL>
07/24/07 13:35:48, ACTION, SQLDUMPER_UNKNOWN_APP.EXE, ServiceName = <NULL>
07/24/07 13:35:48, ACTION, SQLDUMPER_UNKNOWN_APP.EXE, Callback type 11 not used
07/24/07 13:35:48, ACTION, SQLDUMPER_UNKNOWN_APP.EXE, Callback type 15 not used
07/24/07 13:35:49, ACTION, SQLDUMPER_UNKNOWN_APP.EXE, Callback type 7 not used
07/24/07 13:35:49, ACTION, SQLDUMPER_UNKNOWN_APP.EXE, MiniDump completed: C:Program FilesMicrosoft SQL Server90SharedErrorDumpsSQLDmpr0033.mdmp
07/24/07 13:35:49, ACTION, DtsDebugHost.exe, Watson Invoke: No


Why am I getting this error with "Enable Memory Restriction"?

View 12 Replies View Related

Filtering Individual Columns In A Table

May 5, 2008

I'm designing a sales report. The user would like to be able to look at individual customers against total sales in a report.

I have a parameter that will allow the user to select from a list of customers. Then I need a column that will show that customers sales and the next column will show total sales. If I filter the data set by Customer I will only get that customer's sales. Can I filter on individual columns?

I tried something like

=Sum(IIF(Fields!Name.Value=Parameters!VendorName.Label,Fields!Coil_Weight.Value/code.Expon(Parameters!Units.Value),0))in the expression but that doesn't seem to work.

View 5 Replies View Related

Fuzzy Lookup Transform Row Scores 'inconsistent' With Individual Column Scores

Sep 1, 2006

I am trying to interpret some of the results I observe when trying to match similar records using a fuzzy lookup transform, but it's not entirely clear how the overall row similarity score is calculated. In particular, sometimes rows with lower individual column similarity scores will achieve a higher similarity and confidence score than a matching row with higher individual column scores.

The transform is configured with 6 text fields set to fuzzy mapping and a minimum similarity of 0, and 3 additional numeric fields with an exact mapping. It is set to return a maximum of 2 matches per lookup and to do an exhaustive search of the reference table.

For example, from the following matching pair of records Match 1 is picked over Match 2 even though it's individual scores are lower.

Match 1 Match 2
----------------- -----------------
_similarity_author 1.0 1.0
_similarity_title 0.85344648 1.0
_similarity_headline 0.0125 0.0125
_similarity_summary 0.0125 0.0125
_similarity_picture 1.0 1.0
_similarity_caption 1.0 1.0

_similarity 7.8429267E-2 7.3196657E-2
_confidence 0.55728668 0.44271332

In another case both matching records have *identical* scores for every mapped column and yet their similarity and confidence scores are different.

Clearly there are other factors involved in calculating the overall row score. Anybody know what these are?


Fernando Tubio

View 2 Replies View Related

What Is The Caching Strategy Behind The Lookup Transformation?

Aug 27, 2007

I found that sometimes when the cache is filled up, the performance drops significantly. Anyone knows the caching strategy behind the Lookup Transformation?
If it's LRU or FIFO for example, I may have to sort the input based on FK to get better performance.
If it's frequency based then sort might not help.
Cheers,

View 1 Replies View Related

Cache Size Lookup Transformation

Nov 3, 2006

Hi,

I have to perform a lookup in a table based on a query like:

"... where ? = [RefTable].fieldID and ? between [RefTable].AnotherFieldValue and [RefTable].AThirdFieldValue"

So, SSIS has put the CacheType to none. As I really need to speed up the job I want to set the CacheType to partial (full isn't an option due to the custom query I use here).

But here it comes: when using partial CacheType, one has to set the cache size manually - and I really don't know what value I should assign to it - is there a guideline on this topic?

I work on a Win2003 server platform with sql server 2005 - 2 processors - 2Gb Ram - enough disc space

Thanks in advance,
Tom

View 2 Replies View Related

Lookup Transformation Fails On Oracle

May 28, 2007

Hi,

I am trying to use a lookup in a package and check for some conditions. On the advanced tab, I am trying to modify the condition from = to <=. But the same doesnt work when the target is on oracle, but the same works fine on SQL Server and DB2.



Any idea regarding the same?



Thanks,

Manish Singh

View 3 Replies View Related







Copyrights 2005-15 www.BigResource.com, All rights reserved