i have 1000 records in my dource table, the same i have in
target ,but a new column added in target as "batchno", and
this column adds no 10 for 1st 100 records and 20 for next
100 records and 30 next 100 records and vice versa. how to
acheive this?
Answers were Sorted based on User's Feedback
Answer / srini
SQ>>EXP>>>TAR
Generate seq in exp and check for condition like
iif(seq<100,10,iif(seq>100 and seq<=200,20,iif(seq>200 and seq<=300,30,40)))
| Is This Answer Correct ? | 12 Yes | 3 No |
Answer / rocky!!
Here is another answer.
--> SEQ1
SD --> SQ --> EXP --> EXP --> TGT
--> SEQ2
1) Add SEQ1. Keep Starting value as 1 with cycle attribute set in after end value 100.
2) Add Another SEQ2. This is to keep a tab on the record count on the incoming data flow.
3) Get NEXTVAL & NEXTVAL1 from SEQ1 and SEQ2 and dump it in EXP.
4) in EXP, add Varibale port "V_OUTPUT_DECISION" and write code "CEIL(NEXTVAL1/100)"
5) in EXP, add variable "V_BATCH_NO" and initialise value as 10.
6) in EXP, add output port "OUTPUT_DECISION_BATCH_NO" and write code as "V_OUTPUT_DECISION*V_BATCH_NO"
7) connect fields viz, YEAR, DESC, MONTH, SALARY and BATCHNO to Target.
I guess this is the generic code. Bring any number records, should work.
Cheers!!
| Is This Answer Correct ? | 3 Yes | 0 No |
Please follow the below step.
1.Create sequence geneteor which will start with 1.
2.Connect the nextval port to expression t/p.
3.connect port from sq transformation to expression t/p.
4.Create below port in the expression transformation.
a. NEXTVAL_OUT(Variable port)= NEXTVAL-1
b.rec_con(Variable port)= IIF(NEXTVAL_OUT % 100 = 0, REC_CON+10,REC_CON)
c. REC_CON_OUT(Out put port)= rec_con
5. If you have primary key on the target table then use update startegy t/r to update the targer.
6. If you don't have primary key on the target table then use update voerride in the properties tab of the target.
7. U can use the below query to update the target by update override.
UPDATE EMP_UPDATE SET REC_COUNT = :TU.REC_COUNT WHERE EMPID = :TU.EMPID
Please correct me if anything wrong.
Thanks and Regards
Santosh Kumar Sarangi
| Is This Answer Correct ? | 1 Yes | 1 No |
Answer / nitin
Source->SQ->Sequence->Exp->Target
In Sequence Generator:
Give Start Value = 1
End value = 100
Check the Properties as CYCLE.
Give the following condition In Expression Transformation:\
O_SEQUENCE= NEXT_VAL
COUNT = IIF(O_SEQUENCE > 1 AND O_SEQUENCE <= 100, COUNT+10)
Make the default value of COUNT as 0
| Is This Answer Correct ? | 1 Yes | 6 No |
how can u generate sequence of values in which target has more than 2billion of records.(but with sequence generator u can generate upto 2 biliion only)
From where we can start or use pmcmd?
What is router transformation
How to load relational source into file target?
performance tuning of Informatica
Design a mapping to load the cumulative sum of salaries of employees into target table?
On a day, I load 10 rows in my target and on next day if I get 10 more rows to be added to my target out of which 5 are updated rows how can I send them to target? How can I insert and update the record?
.prm wirh repalce .txt is possible?
If a session fails after loading of 10,000 records in to the target.How can you load the records from 10001?
what is mean by complex business rule ?
What are steps to follow Informatica migration from 7x to 8x? Pls Explain...
I have two different source structure tables, but I want to load into single target table? How do I go about it? Explain in detail through mapping flow.