Skip to Content
0
Former Member
May 09, 2008 at 09:41 AM

Customer exit week to date

68 Views

Hi,

i have follwoing reqt where period in format 200804/W1 is passed and i have to find the date. Like W1 will be 07.04.2008 for period 200804/W1.

I have defined normal variable on period characteristics say 'ZZPERIOD_WEEK_TO_DATE' and a customer exit variable on 0calday 'ZDATELATEST_REP' and written following code to get

period Date

200804/W1 07.04.2008

But i am not getting the value...where i am having a mistake

Plz suggest

Thanks

Prashant

WHEN 'ZDATELATEST_REP'.

IF i_step = '2'.

CLEAR l_t_var_range.

i_t_range-sign = 'I'.

i_t_range-opt = 'EQ'.

LOOP AT i_t_var_range INTO l_t_var_range WHERE vnam = 'ZZPERIOD_WEEK_TO_DATE'.

date_in = l_t_var_range-low.

IF date_in+7(2) EQ 'W1'.

CONCATENATE date_in0(4) date_in4(2) '07' INTO date_out.

ELSEIF date_in+7(2) EQ 'W2'.

CONCATENATE date_in0(4) date_in4(2) '14' INTO date_out.

ELSEIF date_in+7(2) EQ 'W3'.

CONCATENATE date_in0(4) date_in4(2) '21' INTO date_out.

ELSEIF date_in+7(2) EQ 'W4'.

CONCATENATE date_in0(4) date_in4(2) '28' INTO date_out.

ELSEIF date_in+7(2) EQ 'W5'.

IF date_in4(2) EQ '04' OR date_in4(2) EQ '06' OR

date_in4(2) EQ '09' OR date_in4(2) EQ '11'.

CONCATENATE date_in0(4) date_in4(2) '30' INTO date_out.

ELSEIF date_in+4(2) EQ '02' .

CONCATENATE date_in0(4) date_in4(2) '29' INTO date_out.

ELSE.

CONCATENATE date_in0(4) date_in4(2) '31' INTO date_out.

ENDIF.

ENDIF.

i_t_range-low = date_out.

i_t_range-sign = 'I'.

i_t_range-opt = 'EQ'.

APPEND i_t_range TO e_t_range.

ENDLOOP.

ENDIF.