Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

case/endcase

Former Member
0 Likes
557

Hi,

How to replace the below code with case/endcase statement instead of if/endif....

IF ( gwa_approvers-appr_end_date IS INITIAL )

AND NOT ( gwa_approvers-appr_start_date IS INITIAL ).

CONCATENATE text-021 gwa_approvers-appr_start_date

text-023 gwa_approvers-appr_start_time

INTO gwa_rep_tab-status1.

ELSEIF NOT ( gwa_approvers-appr_end_date IS INITIAL )

AND ( gwa_approvers-appr_start_date IS INITIAL ).

CONCATENATE text-024 gwa_approvers-appr_end_date

text-023 gwa_approvers-appr_end_time

INTO gwa_rep_tab-status1.

ELSEIF NOT ( gwa_approvers-appr_end_date IS INITIAL )

AND NOT ( gwa_approvers-appr_start_date IS INITIAL ).

CONCATENATE text-025 gwa_approvers-appr_end_date

INTO gwa_rep_tab-status1 SEPARATED BY space.

ELSEIF ( gwa_approvers-appr_end_date IS INITIAL )

AND ( gwa_approvers-appr_start_date IS INITIAL ).

ENDIF.

4 REPLIES 4
Read only

naimesh_patel
Active Contributor
0 Likes
533

Hello,

case gwa_approvers-appr_end_date.

when '0000000'.

case gwa_approvers-appr_start_date.

when '0000000'.

when others.

CONCATENATE text-021 gwa_approvers-appr_start_date

text-023 gwa_approvers-appr_start_time

endcase.

when others.

case gwa_approvers-appr_start_date.

when '0000000'.

CONCATENATE text-024 gwa_approvers-appr_end_date

text-023 gwa_approvers-appr_end_time

INTO gwa_rep_tab-status1.

when others.

CONCATENATE text-025 gwa_approvers-appr_end_date

INTO gwa_rep_tab-status1 SEPARATED BY space.

endcase.

endcase.

Read only

Former Member
0 Likes
533

Hi Vj_bb,

Please use the code given below. This will solve your purpose.

**************************************************

DATA: INIT_DATE LIKE GWA_APPROVERS-APPR_END_DATE .

CASE GWA_APPROVERS-APPR_END_DATE.

WHEN INIT_DATE.

CASE GWA_APPROVERS-APPR_START_DATE.

WHEN INIT_DATE.

  • No code

WHEN OTHERS.

CONCATENATE TEXT-021 GWA_APPROVERS-APPR_START_DATE

TEXT-023 GWA_APPROVERS-APPR_START_TIME

INTO GWA_REP_TAB-STATUS1.

ENDCASE.

WHEN OTHERS.

CASE GWA_APPROVERS-APPR_START_DATE.

WHEN INIT_DATE.

CONCATENATE TEXT-024 GWA_APPROVERS-APPR_END_DATE

TEXT-023 GWA_APPROVERS-APPR_END_TIME

INTO GWA_REP_TAB-STATUS1.

WHEN OTHERS.

CONCATENATE TEXT-025 GWA_APPROVERS-APPR_END_DATE

INTO GWA_REP_TAB-STATUS1 SEPARATED BY SPACE.

ENDCASE.

ENDCASE.

**************************************************

Please reward points if useful.

Regards,

Prabhas.

Read only

Former Member
0 Likes
533

There are few ways to resolve the below..one way can as listed below.

data : lval(2) type c.

lval = '00'.

if not (gwa_approvers-appr_end_date is intial).

lval = '1'.

endif.

if not (gwa_approvers-appr_start_date is intial).

lval+0(1) = '1'.

endif.

case lval.

when '01'.

CONCATENATE text-021 gwa_approvers-appr_start_date

text-023 gwa_approvers-appr_start_time

INTO gwa_rep_tab-status1.

when '10'.

CONCATENATE text-024 gwa_approvers-appr_end_date

text-023 gwa_approvers-appr_end_time

INTO gwa_rep_tab-status1.

when '11'.

CONCATENATE text-025 gwa_approvers-appr_end_date

INTO gwa_rep_tab-status1 SEPARATED BY space.

when '00'.

endcase.

Regards

Anurag

Read only

Former Member
0 Likes
533

Hi vj,

Try the following code:

CASE gwa_approvers-appr_end_date.

WHEN '00000000'.

CASE gwa_approvers-appr_start_date .

WHEN '00000000'.

WHEN OTHERS.

CONCATENATE text-021 gwa_approvers-appr_start_date text-023 gwa_approvers-appr_start_time INTO gwa_rep_tab-status1.

ENDCASE.

WHEN OTHERS.

CASE gwa_approvers-appr_start_date .

WHEN '00000000'.

CONCATENATE text-024 gwa_approvers-appr_end_date text-023 gwa_approvers-appr_end_time

INTO gwa_rep_tab-status1.

WHEN OTHERS.

CONCATENATE text-025 gwa_approvers-appr_end_date INTO gwa_rep_tab-status1 SEPARATED BY space

ENDCASE.

ENDCASE.

Hope this helps,

Regards,

Pragya

Message was edited by: Pragya