Skip to Content

Corporate Action-Rounding Rule

Mar 10, 2017 at 10:04 AM


avatar image

Dear Experts,

We have posted Corporate action in FWKB (split ratio: 3/4) but in TPM12 report units are not getting rounded near to the decimal value, it should be 1000 units but its showing 999.99.

pls find the below rounding rule configuration, Please can someone suggest if you come across such scenario.






1.jpg (51.1 kB)
3.jpg (18.7 kB)
2.jpg (19.6 kB)
10 |10000 characters needed characters left characters exceeded
* Please Login or Register to Answer, Follow or Comment.

3 Answers

Grigoriy Babitskiy Mar 13, 2017 at 07:55 AM

There is no rounding for units.

You can use badi TPM_CORPORATE_ACTION with functional module ROUND.

10 |10000 characters needed characters left characters exceeded
prasad raju Mar 14, 2017 at 06:43 AM

Hi Griogoriy,

Thanks for your update. Please can you explain in detailed how can I proceed further by using BADI.

Show 1 Share
10 |10000 characters needed characters left characters exceeded

Exporting parameter EX_TAS_CA_FLOW_ADJUSTMENT has UNITS fields.

So you need to apply functional module Round to each field UNITS in table EX_TAS_CA_FLOW_ADJUSTMENT in order to round values like 999,99 to value 1000

sec.jpg (108.1 kB)
sec2.jpg (136.8 kB)
Jasmine Li
Mar 23, 2017 at 06:42 AM


If you want to have no decimal places you can use the BAdI TPM_CORPORATE_ACTION described in the note 783081.

As note 783081 explains, you will have to create your OWN implementation with SE19 (in customer namespace) and activate it. You may take over the example coding in SE19 via the 'Goto' menu.

In the note you have an example coding so that the user can manipulate quantities calculated by the system. Of course you can use this BAdI to perform rounding automatically, too.

You will get the type of the corporate action in method ADJUST_CA_FLOWS (parameter IM_STR_CA_TRANSACTION_INFO) and you can change the quanities of the flows in EX_TAS_CA_FLOW_ADJUSTMENT.

Best regards,

10 |10000 characters needed characters left characters exceeded