Former Member

# Decimal Points in SD Pricing

Hi all:

I am having problems with pricing in Quotation Sales Orders , Contracts and Billing.

We have transactional sales that are below \$1. I have tried to use a work aroun (/1,000, 5,000 and 10,000 units) But the system always rounds off. The calcutation is correct but the qty. on the documents round off.

This causes problems with the clients Invoice.

Example:

I need to get a price of .341. if I price it at \$341.75 and in the condition price unit I enter 1000, then the sistem prices it .34, the calculation is correct but the way it is presenmted is not.

The correct way to see it would be .341

Any help, would be graetly appreciated

10|10000 characters needed characters exceeded

Former Member
Oct 28, 2010 at 06:02 PM

Hector

I think your problem is with the number of decimal places allowed for currency (USD). USD allows only 2 places after the point.

I have seen this in an Oil company in US where they needed upto 6 places after the decimal point.

So they created another currency (Say US\$) and specified the number of decimal places as 6 in t code OY04. And then they used it in the customer masters, Pricing records etc. There will be some repercussions to this so be careful while you do it. You may have to some additional config in the currency area ( like Exchange rates) etc, so check them out:

SPRO/IMG/SAP NetWeaver/General Settings/Currencies

Hope this helps.

10|10000 characters needed characters exceeded
• Former Member
Oct 28, 2010 at 02:11 PM

Do you mean that the value is correct (=customer should pay this amount of money, the rounding is proper) but on the invoice (paper) you should put the amount of money with three decimals.

Is my understanding proper?

If yes, isn't it a solution to display a calculated figure on the (paper) invoice instead of / "independently from" the value which is stored in the data table (=recalculate that figure in the ABAP code)?

10|10000 characters needed characters exceeded
• Former Member
Oct 29, 2010 at 06:16 PM

Hector,

See the note 80183

Filipe Borges

10|10000 characters needed characters exceeded
• Former Member
Oct 30, 2010 at 03:44 AM

hi

G_DECIMAL_PLACES_GET

The table that stores the Currencies in SAP system (Currency Codes) is TCURC. The code below shows the decimal places for a particular currency.

REPORT ZEX_CURRENCY .

Parameters: p_curr(10).

Data: d_decpl like TCURX-CURRDEC.

CALL FUNCTION 'G_DECIMAL_PLACES_GET'

EXPORTING

CURRENCY = p_curr

IMPORTING

DECIMAL_PLACES = d_decpl .

regards

balajia

10|10000 characters needed characters exceeded
• Former Member

Thank you very much to all of you.

Regards,

Hector.

• Former Member
Oct 30, 2010 at 03:35 AM

hi

OY04 it is a oneway decision, extending yes, but removing not anymore possible then. Search OSS for more infos.

If you allow more decimals, then this has not only effect on purchase orders, it will certainly effect your FI books as well.

SAP predefines the currencies in its natural design.

If a currency like dollars has smaller units like cent, then the SAP currency will show that. eg. for USD 2 decimals.

If you need more detailed prices with more than 2 decimals, then you should use the price unit which is usually next to the price fields.

instead of 1,0025 dollar you just enter 100,25 dollar per 100, this has the same effect. and this is available in material master and any condition, hence in PO and SA.

and also chec OSS notes.

regards

balajia