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

abap code if& else

Former Member
0 Likes
1,448

Hi experts how to change the below code with one if and else statemennnt

FORM SUB_CHOOSE_SELECTION.

IF P_FULL = C_RADIO_VALUE. "Choice of Total Invoice

PERFORM FULL_INVOICE.

ENDIF.

IF P_HOLD = C_RADIO_VALUE. "Choice of Hold Invoice

PERFORM HOLD_INVOICE.

ENDIF.

IF P_BLOCK = C_RADIO_VALUE. "Choice of Block Invoice

PERFORM BLOCK_INVOICE.

ENDIF.

IF P_DELETE = C_RADIO_VALUE. "Choice of Delete Invoice

PERFORM DELETE_INVOICE.

ENDIF.

IF P_REJECT = C_RADIO_VALUE. "Choice of Reject invoice

PERFORM REJECT_INVOICE.

ENDIF.

regards

siri

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
1,375

Hi,

If P_FULL = C_RADIO_VALUE or

P_HOLD = C_RADIO_VALUE ....

else.

Regards

Amole

12 REPLIES 12
Read only

Former Member
0 Likes
1,376

Hi,

If P_FULL = C_RADIO_VALUE or

P_HOLD = C_RADIO_VALUE ....

else.

Regards

Amole

Read only

0 Likes
1,375

thank u

Read only

Former Member
0 Likes
1,375

Hi

Use This,,,

IF P_FULL = C_RADIO_VALUE. "Choice of Total Invoice

PERFORM FULL_INVOICE.

ELSEIF P_HOLD = C_RADIO_VALUE. "Choice of Hold Invoice

PERFORM HOLD_INVOICE.

ELSEIF P_BLOCK = C_RADIO_VALUE. "Choice of Block Invoice

PERFORM BLOCK_INVOICE.

ELSEIF P_DELETE = C_RADIO_VALUE. "Choice of Delete Invoice

PERFORM DELETE_INVOICE.

ELSE "Choice of Reject invoice

PERFORM REJECT_INVOICE.

ENDIF.

OR Please use CASE statement. It will be faster.

CASE C_RADIO_VALUE.

WHEN P_FULL.

PERFORM FULL_INVOICE.

WHEN P_HOLD.

PERFORM HOLD_INVOICE.

-


-


ENDCASE.

Sreedhar

Read only

0 Likes
1,375

thank u

Read only

Former Member
0 Likes
1,375

Hai

FORM SUB_CHOOSE_SELECTION.

IF P_FULL = C_RADIO_VALUE. "Choice of Total Invoice

PERFORM FULL_INVOICE.

ELSEIF P_HOLD = C_RADIO_VALUE. "Choice of Hold Invoice

PERFORM HOLD_INVOICE.

ELSEIF P_BLOCK = C_RADIO_VALUE. "Choice of Block Invoice

PERFORM BLOCK_INVOICE.

ELSEIF P_DELETE = C_RADIO_VALUE. "Choice of DeleteInvoice

PERFORM DELETE_INVOICE.

ELSEIF P_REJECT = C_RADIO_VALUE. "Choice of Rejectinvoice

PERFORM REJECT_INVOICE.

ENDIF.

Thanks & regards

Sreeni

Read only

0 Likes
1,375

thank u

Read only

Former Member
0 Likes
1,375

Best way is to make as below using CASE.

FORM SUB_CHOOSE_SELECTION.

Case C_RADIO_VALUE.

when P_FULL  "Choice of Total Invoice
PERFORM FULL_INVOICE.



when P_HOLD  "Choice of Hold Invoice
PERFORM HOLD_INVOICE.

when P_BLOCK  "Choice of Block Invoice
PERFORM BLOCK_INVOICE.


when P_DELETE  "Choice of Delete Invoice
PERFORM DELETE_INVOICE.
ENDIF.

when P_REJECT "Choice of Reject invoice
PERFORM REJECT_INVOICE.

ENDCASE.

ENDFORM.

rgds,

TM.

Please mark points if helpful.

Read only

0 Likes
1,375

thank u

Read only

Former Member
0 Likes
1,375

Hi,

u have to use case statement.

Case C_RADIO_VALUE.

when P_FULL = . "Choice of Total Invoice
PERFORM FULL_INVOICE.

when P_HOLD  "Choice of Hold Invoice
PERFORM HOLD_INVOICE.

when P_BLOCK "Choice of Block Invoice
PERFORM BLOCK_INVOICE.

when P_DELETE  "Choice of Delete Invoice
PERFORM DELETE_INVOICE.
when P_REJECT  "Choice of Reject invoice
PERFORM REJECT_INVOICE.

ENDASE.

<b>Please Mark Helpful Answers</b>

.

Read only

0 Likes
1,375

thank u

Read only

Former Member
0 Likes
1,375

Hi,

Check this way...

IF C_RADIO_VALUE = p_full. "Choice of Total Invoice
PERFORM FULL_INVOICE.
esleif C_RADIO_VALUE = p_Hold.
PERFORM HOLD_INVOICE.
esleif C_RADIO_VALUE = p_block.
PERFORM BLOCK_INVOICE.
esleif C_RADIO_VALUE = p_delete
PERFORM DELETE_INVOICE.
esleif C_RADIO_VALUE = p_reject
PERFORM REJECT_INVOICE.
ENDIF.

Regards

vijay

Read only

0 Likes
1,375

thank u