APT_CombinedOperatorController,1: APT_DecimalNumber::analyzeAndPrepare:divisor is 0.
APT_CombinedOperatorController,1: APT_DecimalNumber::analyzeAndPrepare:parameter(s) are invalid or not normalized.
APT_CombinedOperatorController,1: APT_Decimal::operator=: the source decimal has even precision, but non-zero in the leading nybble, or is too large for the destination decimal.
I am getting this warning for calulation (a/b)*c
a is decimal nullable
b is decimal nullable
c is decimal nullable
Please help me out
Thank you
Warning MSgs
Moderators: chulett, rschirm, roy
Re: Warning MSgs
Hi,
I think this error is because of the decimal divided by zero. The value of b is zero or null. Try with a Stage variable or a routine that can send values other than zero or null.
Or write a stage variable to check for b value in if else condition.Something like this:
Check it. I am not sure whether this work for your specification or not.
I think this error is because of the decimal divided by zero. The value of b is zero or null. Try with a Stage variable or a routine that can send values other than zero or null.
Or write a stage variable to check for b value in if else condition.Something like this:
Code: Select all
IF (IN.b=0 or IsNull(IN.b) or IN.b="") then a*c else (a/b)*c.
APT_CombinedOperatorController,1: APT_DecimalNumber::analyzeAndPrepare:divisor is 0.
APT_CombinedOperatorController,1: APT_DecimalNumber::analyzeAndPrepare:parameter(s) are invalid or not normalized.
APT_CombinedOperatorController,1: APT_Decimal::operator=: the source decimal has even precision, but non-zero in the leading nybble, or is too large for the destination decimal.
I am getting this warning for calulation (a/b)*c
a is decimal nullable
b is decimal nullable
c is decimal nullable
Please help me out
Thank you
Hi Kumar,
If are sure that input value for b is 0.00 then have you tried replacing the 0 with 0.00 in the expression.
Else if you are not then What is the length of the b column? The zero's may be in the form of 0.00 or 00.00. In this case try to pad zero's for the complete length of the column. (ex : (4,2) then 0000.00) . Based on the length change the expression.
If are sure that input value for b is 0.00 then have you tried replacing the 0 with 0.00 in the expression.
Else if you are not then What is the length of the b column? The zero's may be in the form of 0.00 or 00.00. In this case try to pad zero's for the complete length of the column. (ex : (4,2) then 0000.00) . Based on the length change the expression.
b is also decimal , it have 0s in 0.00.. format even i tried that way still its giving warning msgs please help me out this
If
(IsNull(a) Or IsNull(b) Or IsNull(c))
Then SetNull()
Else If
(IsNotNull(a) And IsNotNull(c))
And (IsNotNull(b) = 0000000000.0000 Or
IsNotNull(b) = 0)
Then (a* c)
Else If
(IsNotNull(a) And IsNotNull(b)And IsNotNull(c))
Then
(a/ b) * (c) Else SetNull()
Still iam getting same warnings i could't figured out what happenening
(IsNull(a) Or IsNull(b) Or IsNull(c))
Then SetNull()
Else If
(IsNotNull(a) And IsNotNull(c))
And (IsNotNull(b) = 0000000000.0000 Or
IsNotNull(b) = 0)
Then (a* c)
Else If
(IsNotNull(a) And IsNotNull(b)And IsNotNull(c))
Then
(a/ b) * (c) Else SetNull()
Still iam getting same warnings i could't figured out what happenening