Seven Stars RAJ
Seven Stars

How to multiply big decimal number with -1 value

Hi talend folks,

 

How to multiply big decimal number with -1 value. 

My column name is data (big decimal).

data column value like (344.0,344.0). 

I want to multiply below calculation in tmap.

calculation:

Case when ART = 'R' and SOLL = 'S' then data *- 1
when ART = 'R' and BEN = 'S' then data
else 0

kindly share your information.

Thanks
RAJ
2 ACCEPTED SOLUTIONS

Accepted Solutions
Thirteen Stars TRF
Thirteen Stars

Re: How to multiply big decimal number with -1 value

Hi,

Assuming your data flow is called row71, fields are named as in your question and data datatype is BigDecimal, here is the solution:

(row71.ART == 'R' && row71.SOLL == 'S') ? row71.data.multiply(new BigDecimal(-1)) :
	(row71.ART == 'R' && row71.BEN == 'S') ? row71.data : (new BigDecimal(0)) 

the tMap with the expression:

Capture.PNG

and the result for different values:

.---+----+---+----.
|   tLogRow_36    |
|=--+----+---+---=|
|ART|SOLL|BEN|data|
|=--+----+---+---=|
|R  |S   |S  |-100|
|R  |X   |S  |100 |
|R  |X   |X  |0   |
|X  |X   |X  |0   |
'---+----+---+----'

 


TRF
Thirteen Stars TRF
Thirteen Stars

Re: How to multiply big decimal number with -1 value

Did this help?
If so, thank's to mark your case as solved.

TRF
3 REPLIES
Thirteen Stars TRF
Thirteen Stars

Re: How to multiply big decimal number with -1 value

Hi,

Assuming your data flow is called row71, fields are named as in your question and data datatype is BigDecimal, here is the solution:

(row71.ART == 'R' && row71.SOLL == 'S') ? row71.data.multiply(new BigDecimal(-1)) :
	(row71.ART == 'R' && row71.BEN == 'S') ? row71.data : (new BigDecimal(0)) 

the tMap with the expression:

Capture.PNG

and the result for different values:

.---+----+---+----.
|   tLogRow_36    |
|=--+----+---+---=|
|ART|SOLL|BEN|data|
|=--+----+---+---=|
|R  |S   |S  |-100|
|R  |X   |S  |100 |
|R  |X   |X  |0   |
|X  |X   |X  |0   |
'---+----+---+----'

 


TRF
Thirteen Stars TRF
Thirteen Stars

Re: How to multiply big decimal number with -1 value

Did this help?
If so, thank's to mark your case as solved.

TRF
Seven Stars RAJ
Seven Stars

Re: How to multiply big decimal number with -1 value

Thank you @TRF

Thanks
RAJ