What are Stage Variables, Derivations and Constants? 

Stage Variable - An intermediate processing variable that retains value during read and doesnt pass the value into target column.

Derivation - Expression that specifies value to be passed on to the target column.

Constant - Conditions that are either true or false that specifies flow of data with a link. 

Showing Answers 1 - 40 of 40 Answers

siva

  • Oct 13th, 2005
 

Not 'constant' ..but 'Constraints'

  Was this answer useful?  Yes

raghuvamsi

  • Dec 21st, 2006
 

stage variables :- is the tempry memomery area.

derivation :- where u apply the business rule.

constarins :- where u apply conditions

order of execution is :-

constrains

derivation

stage vraiables

  Was this answer useful?  Yes

ADITI

  • Mar 29th, 2007
 

stage variable is a variable that executes locally within the stage.

constraint is like a filter condition which limits the number of records coming from input according to business rule.

derivation is like expression which is used to modify or get some values from input columns.

Execution order is stage variable,constraint,derivation.........

sss

  • Apr 20th, 2007
 

Order of execution is :
Constrains
Stage variables and Derviations

hanug

  • May 6th, 2007
 

Hi:

I dont think so previous posts are correct.

The correct order is :

1. stage variable
2. derivation
3. Constraint(it is like a condition in the transformer). Before sending any info to targer, we can filter the data by using stage variable as a constraint or condtion.

Hanu.

  Was this answer useful?  Yes

Sreenubabu P

  • Sep 6th, 2007
 

Hi
Your answer is wrong for order of execution of stage variables, constraints and derivations...

the right order  is..

stage variables
constraints
Derivations

tisha24

  • Feb 22nd, 2010
 

Stage variables:  StageVariables are the buffes with in the transformer stage , wher you can braekup the complex calculations into simple, This can be used with that stage..
an simple ex is if you wanna calculate b^2-4ac.. it can be defined as 

stagevar1= b*b
stagevar2=4*a*c
stagevar3=stagevar1-stagevar2

This can be populated into outputcolumns..

Constraints: Constraints are also set to the transformer stage. But before take into process.

Example - say ther is a column contains dept_code   contains  like "ECE","CSC" and etc.. If there are different process for all these then it would be set as tranformer constraints as

  input  ___output1_ece    
            |___output2 _csc   

constraint  for link output1_ece  "if input.dept_code="ECE" 
constraint  for link output2_csc   "if input.dept_code="CSC" 
etc..

i.e The constraints are processed before takethe records  into to the transformer stage.. so gets high priority.

Derivation: Derivation are define how the output should be populated.. which may be as simple as "one-to-one" mapping(without any transformation)  or can be with any arithmatic calculation.

So the priority would be 
1. Constraints - Entry check for the tranformer"
2. Stage variables  - Temprory calculations.
3. Defination  - Exit for the stage

Hope this wll help you out.

amit101here

  • Oct 20th, 2010
 

Hi

I don't think execution order that you have written is correct, because in t/f we can write an expression containing 'stagevariables' in t/f 'constraint' conditions.

In those t/f 'constraint' expressions, containing 'stagevariables', stagevariables needs to be initialised/derived first...thereby getting higher priority then contraints


so your theory of Contraints getting higher priority sounds in correct.


so correct order should be 

1.stagevariables  2 contrainst   3 col derivations

OR

1.stagevariables 2 col derivations 3 contrainst
 

  Was this answer useful?  Yes

amit101here

  • Oct 20th, 2010
 

Read below from IBM pdf :

1. Any before-stage subroutine is executed.  If ErrorCode is non-zero, the job aborts.
2. A row is obtained from the stream input link.
3. For each reference input link, in the specified execution order:
   (a) the reference key expression is evaluated
   (b) a "get by key" request is issued (this handles supply of NULL values if that record is not found
4. Stage variables are evaluated in the order in which they appear in their grid.
5. The REJECTED variable is set to TRUE
6. For each output link, in the specified execution order:
   (a) the output link constraint expression is evaluated
   (b) if the output link constraint expression is satisfied, column derivation expressions on that link are evaluated then a "put" request is issued and the REJECTED variable is set to FALSE
   (c) if the output link is marked as handling rejects, and the REJECTED variable is TRUE, column derivation expressions on that link are evaluated then a "put" request is issued
7. If the row count reaches a particular value, the stage's status record in the RT_STATUSnn table for the job is updated
8. If the "end of data" token has not been received, go back to step 2.
9. Any after-stage subroutine is executed.  If ErrorCode is non-zero, the job aborts.


Thsi clearly shows order is this :

stage var

constraints

col derivations

  Was this answer useful?  Yes

Hi,

Stage Variables:
This are used in thr transformer For passing a Value in the Input but not effected on output Data.It is applicable for all the output links.

Dervation:

This are the values which passed to the output.It is only applicable for that column.


Constrant:

This is nothing but a filter condition we can traced out the column based on the  Particular Link.

  Was this answer useful?  Yes

HIANSHU SINGH

  • Feb 17th, 2016
 

Order of execution is:
Stage Variable
Constraint then
Derivation

  Was this answer useful?  Yes

venkat

  • Mar 28th, 2016
 

In Transformer stage there are 3 Types:
1) Stage Variables are used for passing a value as a input value.
2) Derivation: In this stage all functions like logical, Mathematical, String, Date and Time Functions etc total 10 Types of functions are available.
3) Constraints: It is a condition like If else ....

And mainly the execution process is Stage Variables -> Constraints -> Derivations

  Was this answer useful?  Yes

Give your answer:

If you think the above answer is not correct, Please select a reason and add your answer below.

 

Related Answered Questions

 

Related Open Questions