How to extract original records at one target & Duplicate
records at one target?
Answers were Sorted based on User's Feedback
Answer / sks
Hi,
Yes you can do it by using Expression transformation as
well. Infact, by using 2 SQ (source qualifier) and using
sql queries (as I explained earlier), you can perform the
required task on relational tables only (but not on flat
files etc).
In the case of flat files as source, you will need to use
Expression transformation. But you also need to use sorter
before expression (otherwise record flag will change for
every incoming record & duplicates won't be traced). The
sequence of transformations will be as follows -
Source -> SQ -> Sorter ->Expression ->Router(or 2 filters) -
>Targets
| Is This Answer Correct ? | 6 Yes | 1 No |
yes... add a new column in the sql override by calculating
the count(*) to get how many times the record is repeating.
Using Router we can seperate them into two different
targets.
| Is This Answer Correct ? | 1 Yes | 1 No |
Answer / davan
sq-->sort--exp--riuder--tg1--tg2
In exp V_flag=iif(empno=p_empno,v_flag+1,1)--variable port
p_empno=empno--variable port
0_flag=v_flag--output port
In rouder o_flag>1 one target,default one target
| Is This Answer Correct ? | 0 Yes | 0 No |
Answer / kumar
The scenario's.. i want, duplicate records from a table to a
target.. n remaining records to b on another target...
| Is This Answer Correct ? | 0 Yes | 1 No |
Answer / sunil
Its not very clear by using expression transformation.Can
any one eloberate. I am creating one variable port VAR_EMPNO
in exp and giving value as EMPNO.Created one output port
EMPVAR_OP with cond : IFF(EMPNO = VAR_EMPNO,1,0) Based on
this I am filtering and redirecting to two targets but its
not working, is the expression fine over here?
| Is This Answer Correct ? | 1 Yes | 2 No |
Answer / sks
Hi,
If I understand your question correctly, then it is like-
How to send original (distinct) records to one target
(let's say TA) and duplicates to another target (let's say
TB).
It can simply be done as follows -
In your mapping, take the source table containing whole
records (duplicates as well). Now, take 2 source qualifier
(SQ) transformations. The first SQ should
contain 'Distinct' sql query (hope you know that) and the
output ports should go to TA table.
The second SQ should contain the following sql stmt (which
filters only the duplicate records) -
-------------------------------------------
SELECT empno, ename, job, mgr, hiredate, sal, comm, deptno
FROM (SELECT empno, ename, job, mgr, hiredate, sal, comm,
deptno, ROW_NUMBER() OVER (PARTITION BY empno ORDER BY
EMPNO) rn FROM s_assign_1_emp)
WHERE rn > 1
-------------------------------------------
I am using emp table example (hope you can understand it).
Now, the output ports of the seecond SQ should go to TB
table.
This is the simplest way of doing it. Hope it will help.
If you feel any issue, please let me know at
shrikant_rps@yahoo.com
| Is This Answer Correct ? | 1 Yes | 3 No |
What is the benefit of session partitioning?
Explain why we use partitioning the session in informatica?
Write the prerequisite tasks to achieve the session partition?
What is the exact difference b/w IN and EXIST in Oracle..?
What is lookup change?
Suppose we have a csv file with contents as below which is used has a source file. C1,C2,C3,C4 100,200,A B,300 200,400,X,Y,299 ---> it should be 4 values but by mistake 300,600,C D,566 with a comma in between X & Y,its 5. My target takes only 4 columns, How to take care of the 2 record as above without rejecting it and loading in the target. Hope u guys have understood my scenerio
if we r using aggregator we enabled sorted input but the records r not sorted what happen?
what are testing in a mapping level please give brif eplanation
How to load the data from people soft hrm to people soft erm using informatica?
What's the layout of parameter file (what does a parameter file contain?)?
how to use incremental load?
What are the scheduling options to run a sesion?