cancel
Showing results for 
Search instead for 
Did you mean: 

New Field in 0MATERIAL.

0 Kudos

Hi All,

Iu2019ve added a Z field (CHAR 30) in 0MATERIAL and I am passing characteristics value as 123,456,789.1234 from R/3 and it is coming as 123.456.789,1234 in BW.

so I've added some code in Transfer Rules of the 0MATERIAL in BW and everything is working fine, but because of this the performance problems came, initially all the material was loaded in 1 hour but now it is taking 7 hours.

My Code in Transfer rules:

l_outin = TRAN_STRUCTURE-zzoutdia_in.

REPLACE ALL OCCURRENCES OF '.' IN l_outin WITH ','.

l_len = STRLEN( l_outin ).

l_len = l_len - 5.

IF l_outin+l_len(1) = ','.

l_outin+l_len(1) = '.'.

ENDIF.

Please suggest me how can i solve this.

Thanks in Advance,

MJ Vikram

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi Vikram,

Instead of using such a big logic put below code, it might solve your problem.

l_outin = TRAN_STRUCTURE-zzoutdia_in.

REPLACE ALL OCCURRENCES OF '.' IN l_outin WITH 'X'. "You can put any third character of your own choice.

REPLACE ALL OCCURRENCES OF ',' IN l_outin WITH '.'.

REPLACE ALL OCCURRENCES OF 'X' IN l_outin WITH ','.

After the assign the final value to result and you are done. Just check how much it will help of improve the perfrmance.

Regards,

Durgesh.

0 Kudos

Hi Durgesh,

Thank you very much its working, rewarded you with points.

Regards,

vikram

Answers (3)

Answers (3)

Former Member
0 Kudos

Why do you want to convert like this?

This is how it is stored in BW.

Former Member
0 Kudos

Hi

Have you tried data type "NUMC"?

Regards,

Venkatesh

0 Kudos

Hi Venkatesh,

I cont use NUMC because user want to see up to 4 decimals which is not possible with NUMC.

Regards,

vikram

Former Member
0 Kudos

Hi Vikram,

You do not need to apply any code changes in transformation routine. Just go to user profile from SU01 transaction or from SAP Menu and change the decimal settings from Own Data option.

System----> User Profiles -


> Own Data. Change the decimal point setting and get the required thousand separator.

Regards,

Durgesh.

0 Kudos

Hi Durgesh,

Thanks for replying, this is character field of length 30. Iu2019ve also tried by changing the own data but no use.

Regards,

vikram