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

PROBLEM IN SUBROUTINE IN SAPSCRIPT!

Former Member
0 Likes
783

CAUFVD IS A STRUCTURE. WHICH HAS ORDER NO 10000427.

IAM USING CAUFVD COZ RESB-AUFNR IN PERFORM DOESNOT GIVE A VALUE IN SAP SCRIPT.

CAUFVD-AUFNR = 10000427

RESB-AUFNR IN SE11 GIVES THE FOLLOWING.

RESB-AUFNR = 000010000427

RESB-RSNUM = 0000005126

PROBLEM IS THAT IN SELECTION ITS PICKING 10000427 WHEREAS I NEED 000010000427.

HOW DO I DO THIS?

PLEASE MENTION COMPLETE STEPS OR MODIFY THE EXISTING.

PERFORM YE_PM_COMMON_RESERV_PR IN PROGRAM ZPMLINCLUDE

USING &CAUFVD-AUFNR& "RESB-AUFNR WONT WORK. SO IAM USING CAUFVGD-AUFNR.

CHANGING &CONV_RESERV&

CHANGING &CONV_PR&

CHANGING &CONV_PR&

ENDPERFORM.

PERFORM ZPM_COMMON IN PROGRAM ZPMLINCLUDE

USING &CAUVFD-AUFNR& "ORDER NO

CHANGING &CONV_RESERV&

ENDPERFORM.

FORM ZPM_COMMON

TABLES IN_TAB STRUCTURE ITCSY

OUT_TAB STRUCTURE ITCSY.

DATA : V_AUFNR TYPE RESB-AUFNR, "ORDER NO

V_RSNUM TYPE RESB-RSNUM. "RESERVATION NUMBER

READ TABLE IN_TAB INDEX 1.

MOVE IN_TAB-VALUE TO V_AUFNR.

SELECT SINGLE RSNUM FROM RESB INTO V_RSNUM

WHERE AUFNR = V_AUFNR.

READ TABLE OUT_TAB INDEX 1.

OUT_TAB-VALUE = V_RSNUM.

MODIFY OUT_TAB INDEX 1.

CLEAR OUT_TAB.

ENDFORM.

REGARDS

ESSAM (essamsaud@yahoo.co.in)

5 REPLIES 5
Read only

Former Member
0 Likes
707

Hi,

In the FORM whcih you arewriting in the program just use the CONVERSION_EXIT_ALPHA_INPUT to change the input format, then it will have the leading zero's then move that to output table inorder to come to that value in to SCRIPT

Regards

Sudheer

Read only

varma_narayana
Active Contributor
0 Likes
707

Hi

Check out the changes in BOLD

FORM ZPM_COMMON

TABLES IN_TAB STRUCTURE ITCSY

OUT_TAB STRUCTURE ITCSY.

DATA : V_AUFNR TYPE RESB-AUFNR, "ORDER NO

V_RSNUM TYPE RESB-RSNUM. "RESERVATION NUMBER

READ TABLE IN_TAB INDEX 1.

MOVE IN_TAB-VALUE TO V_AUFNR.

**CALL THIS FUNCTION TO CONVERT FOR OUTPUT FORMAT TO

***INTERNAL FORMAT I.E WITH LEADING 0.

<b>CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'

Exporting

INPUT = V_AUFNR

Importing

OUTPUT = V_AUFNR.</b>

SELECT SINGLE RSNUM FROM RESB INTO V_RSNUM

WHERE AUFNR = V_AUFNR.

READ TABLE OUT_TAB INDEX 1.

<b>**OUT_TAB-VALUE = V_RSNUM.</b><b>write v_rsnum to out_tab-value left-justified.</b>

MODIFY OUT_TAB INDEX 1.

CLEAR OUT_TAB.

ENDFORM.

<b>Reward if Helpful.</b>

Read only

Former Member
0 Likes
707

friend i dint understand this step..

could u please ellaborate

READ TABLE OUT_TAB INDEX 1.

**OUT_TAB-VALUE = V_RSNUM.write v_rsnum to out_tab-value left-justified.

MODIFY OUT_TAB INDEX 1.

CLEAR OUT_TAB.

wht should i write in place of this?

**OUT_TAB-VALUE = V_RSNUM.write v_rsnum to out_tab-value left-justified.

please reply soon.

Read only

Former Member
0 Likes
707

Hello Essam,

CAUFVD-AUFNR is a data type CHAR, length 12

Try to move the value CAUFVD-AUFNR into another variable, of type N.

data: v_aufnr(12) type n.

move caufvd-aufnr to v_aufnr.

After this the value of <b>v_aufnr</b> will be <b>000010000427</b> (according to your example)

Forward use this <b>v_aufnr</b> instead of <b>caufvd-aufnr</b>.

hope this will help you!

Regards,

Corina

Read only

Former Member
0 Likes
707

buddy,

move caufvd-aufnr to v_aufnr.

its saying that caufvd-aufnr is unknown...

please give me a avlid solution....anyone???????

regards

essam