cancel
Showing results for 
Search instead for 
Did you mean: 

a = b -c.

Former Member
0 Kudos

this is the code:

i get 100000 instead of 1,000.00

any idea?

thanks

DATA: lv_sum type i,

lv_sum_a type p decimals 2,

lv_mam type p decimals 2,

lv_sum_t(15) ."type p decimals 2,

lv_sum = lv_sum_a - lv_mam.

lv_sum_t = lv_sum.

condense lv_sum_t.

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi Rani

Please try this code it will solve your problem.

DATA: v_var1 TYPE p DECIMALS 2 value '2000.65',

v_var2 TYPE p DECIMALS 2 value '1000.65',

v_var3 TYPE p DECIMALS 2.

v_var3 = v_var1 - v_var2.

write:/ v_var3.

Cheers

Kathir

Message was edited by: Kathirvel Balakrishnan

Former Member
0 Kudos

i want to make condense to v_var3 and i can not

Former Member
0 Kudos

hi Rani,

my code is working well..

regards

satesh

Former Member
0 Kudos

this is the hole code i send it to sapscript:

DATA: lv_sum type p decimals 2,

lv_sum_a type p decimals 2,

lv_mam type p decimals 2,

lv_sum_t(15)."type p decimals 2.

LOOP AT in_par.

CASE in_par-name.

WHEN 'MAM'.

REPLACE ',' WITH '' INTO in_par-value.

condense in_par-value no-gaps.

MOVE in_par-value TO lv_mam.

WHEN 'SUM'.

REPLACE ',' WITH '' INTO in_par-value.

condense in_par-value no-gaps.

MOVE in_par-value TO lv_sum_a.

ENDCASE.

ENDLOOP.

lv_sum = lv_sum_a - lv_mam.

lv_sum_t = lv_sum.

condense lv_sum_t.

LOOP AT out_par.

CASE out_par-name.

WHEN 'EXT_SUM'.

out_par-value = lv_sum_t.

ENDCASE.

MODIFY out_par.

ENDLOOP.

Former Member
0 Kudos

hi Rani,

try this..in your code..

data :m(7).

......

lv_sum = lv_sum_a - lv_mam.

<b>describe field lv_sum edit mask m.

write lv_sum to lv_sum_t using edit mask m.</b>

condense lv_sum_t.

......

regards

satesh

Former Member
0 Kudos

check with user profile . go to su01 , change , then go to default tab. then check with decimal notation..change and try

Former Member
0 Kudos

i wrote this

lv_sum = lv_sum_a - lv_mam.

describe field lv_sum edit mask m.

3 write lv_sum to lv_sum_t using edit mask m.

condense lv_sum_t.

and i dont get value in 3

Former Member
0 Kudos

Hi rani,

use <b>write to</b> instead of

lv_sum = lv_sum_t.

ignore the edit mask if it doesn't work..

DATA: lv_sum type p decimals 2,

lv_sum_a type p decimals 2 value '2000.00',

lv_mam type p decimals 2 value '1000.00',

lv_sum_t(10) type c , m(7).

lv_sum = lv_sum_a - lv_mam.

<b>write lv_sum to lv_sum_t.</b>

you can debug and find the difference between using Write to and '='...

it will give you the desired result..

regards

satesh

Former Member
0 Kudos

thanks

FredericGirod
Active Contributor
0 Kudos

mmmh, I think I have said 2 times to use write ...

Answers (3)

Answers (3)

Former Member
0 Kudos

DATA: v_var1 TYPE p DECIMALS 2 value '1020.65',

v_var2 TYPE p DECIMALS 2 value '20.65',

v_var3 TYPE p DECIMALS 2.

v_var3 = v_var1 - v_var2.

write:/ v_var3.

Former Member
0 Kudos

hi Rani,

i,ve given this code which gives me 1,000.00 the one which you desired.. in the previous thread itself..

data : a type p decimals 2 value '1020.00' , b type p decimals 2 value
'20.00' , c type i .
a = '1020.00'.
c = a - b .
<b>write : / c decimals 2</b>.

regards

satesh

Former Member
0 Kudos

i get 1000.00 i dont know why.

mabe becuase i move this parameter to sapscript

Former Member
0 Kudos

Hi rani,

1. If u dont want decimal in sapscript,

use like this

&ENTL-TAXABLE(.0)

regards,

amit m.

Former Member
0 Kudos

hi rani,

if you want it to be a chracter field with comma..

then this code will do it..

data : a type p decimals 2 value '1020.00' , b type p decimals 2 value
'20.00' , c type i ,char(10) , m(7).
a = '1020.00'.
c = a - b .
*condense c.
write : / c decimals 2.
describe field c edit mask m .
write c to char using edit mask m.
write : / char.

try it out..

ps: reward points if it helps you..

regards

satesh

Former Member
0 Kudos

DATA: lv_sum type p decimals 2 ,

lv_sum_a type p decimals 2,

lv_mam type p decimals 2,

lv_sum_t(15)type i ."type p decimals 2,

lv_sum = lv_sum_a - lv_mam.

lv_sum_t = lv_sum.

condense lv_sum_t.

jayanthi_jayaraman
Active Contributor
0 Kudos

Hi,

DATA: lv_sum type i,

lv_sum_a type p decimals 2 value '2000.00',

lv_mam type p decimals 2 value '1000.00',

lv_sum_t type p decimals 2.

lv_sum = lv_sum_a - lv_mam.

lv_sum_t = lv_sum.

write lv_sum_t.

Reward points if it helps.

Former Member
0 Kudos

hi jayanthi

i have problem with condense

FredericGirod
Active Contributor
0 Kudos

Again ..

please don't open many thread for the same question.

replace your : "lv_sum_t = lv_sum." with "write lv_sum to lv_sum_t".

Rgd

Frédéric

Former Member
0 Kudos

but lv_sum get the value 100000