• Introducing Dark Mode! Switch by clicking on the lightbulb icon next to Search or by clicking on Default style at the bottom left of the page!

Issue using CBSFN "CalcDiscNoTax" B0000283

ashwin E1

Active Member
I encountered some strange behavior in this standard Cbsfn. I'm using JDE 9.2. There is a line of code which says "iDec = Decimals(&lpDS->mnAmountGross);"
This is used to know the Decimal place of the variable. When i debug this BSFN i see that when ever this BSFN is called from F0411Editline, this piece of code works but when i call this BSFN from my own UBE or APP it wont work though the inputs are exactly same.
For example you can test this BSFN(through Object browser) using these inputs:

IN->[ 1] <Item>: szTaxRateArea <type>: STRING <Value>: [ ]
IN->[ 2] <Item>: szTaxexplanationcode1 <type>: STRING <Value>: [ ]
IN->[ 3] <Item>: szPaymentTermsCode <type>: STRING <Value>: [110]
IN->[ 4] <Item>: mnAmountGross <type>: MATH_NUMERIC <Value>: [21847.60]
IN->[ 5] <Item>: mnAmtDiscountAvailable <type>: MATH_NUMERIC <Value>: [.00]
IN->[ 6] <Item>: mnRunTotalUnroundDisc <type>: MATH_NUMERIC <Value>: [0]
IN->[ 7] <Item>: mnDiscountPercent <type>: MATH_NUMERIC <Value>: [.01000]

and in the output we will expect mnAmtDiscountAvailable to be 218.47 but unfortunately it will always be 218.00. This happens when u test this bsfn from your own UBE or through Object Browser but will work fine when called from Edit line.

Any hints why this might be happening. I also noticed while debugging that the code doesn't go through iDec Variable Declaration.


Legendary Poster
In ObjectBrowser, try setting the currency and decimals of the input values. Hit the $ option from the BSFN toolbar to show the columns (USD, 2 for example). If that works, then you need to do the same in your code. IIRC B1100007.DecimalsTriggerGetbyCOCRCD is the currency trigger attached to F0411.