Application Development 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: 

Having Problems with PERFORM in SE71

dean_hinson2
Active Contributor
0 Kudos

Hello,

I am trying to use a PERFORM in SE71 with 9 parameters. However, during a test print, I get a short dump saying that I am short on the number of parameters. I know that I am not but it may be due to line continutation on the CHANGING. Here is the SAPSCRIPT...

/* INCLUDE &REGUD-TXTKO& OBJECT TEXT ID ADRS

/: DEFINE &C_TITLE&

/: DEFINE &C_NAME1&

/: DEFINE &C_NAME2&

/: DEFINE &C_STREET&

/: DEFINE &C_POST_CODE&

/: DEFINE &C_CITY&

/: DEFINE &C_REGION&

/: DEFINE &C_COUNTRY&

/*

/: PERFORM GET_COMPANY_ADDRESS IN PROGRAM ZFFOM100

/: USING &REGUH-ZBUKR&

/: CHANGING &C_TITLE& &C_NAME1& &C_NAME2& &C_STREET& &C_POST_CODE&

/: &C_CITY& &C_REGION& &C_COUNTRY&

/: ENDPERFORM

/*

The short dump says ...

A PERFORM was used to call the routine "GET_COMPANY_ADDRESS"

of the program "ZFFOM100 ". The current call contains 4 actual parameter(s),

but the routine "GET_COMPANY_ADDRESS" expects 9 parameters.

What am I doing wrong?

Regards, Dean.

1 ACCEPTED SOLUTION

Former Member
0 Kudos

Hi

How have you defined the form GET_COMPANY_ADDRESS in your program?

It has to have only 2 table parameters:

one for USING

one for CHANGING

your form has to have an interface like this:

FORM GET_COMPANY_ADDRESS TABLES IN_TAB_EM STRUCTURE ITCSY
    OUT_TAB_EM STRUCTURE ITCSY.

In IN_TAB u can get the values of the variables transfred via USING, in OUT_TAB u can get and change the values of variable transfered via CHANGING.

and then just the GTREN said before, u need to correct the call of the form in sapscript

/: PERFORM GET_COMPANY_ADDRESS IN PROGRAM ZFFOM100
/: USING &REGUH-ZBUKR&
/: CHANGING &C_TITLE& 
/:CHANGING &C_NAME1& 
/:CHANGING &C_NAME2& 
/:CHANGING &C_STREET& 
/:CHANGING &C_POST_CODE&
/:CHANGING &C_CITY& 
/:CHANGING &C_REGION& 
/:CHANGING &C_COUNTRY&
/: ENDPERFORM

U need to repeat USING or CHANGING for every data u need to transfer

Max

3 REPLIES 3

Former Member
0 Kudos
/* INCLUDE &REGUD-TXTKO& OBJECT TEXT ID ADRS 
/: DEFINE &C_TITLE& 
/: DEFINE &C_NAME1& 
/: DEFINE &C_NAME2& 
/: DEFINE &C_STREET& 
/: DEFINE &C_POST_CODE& 
/: DEFINE &C_CITY& 
/: DEFINE &C_REGION& 
/: DEFINE &C_COUNTRY& 
/* 
/: PERFORM GET_COMPANY_ADDRESS IN PROGRAM ZFFOM100 
/: USING &REGUH-ZBUKR& 
/: CHANGING &C_TITLE& 
/: CHANGING &C_NAME1& 
/: CHANGING &C_NAME2& 
/: CHANGING &C_STREET& 
/: CHANGING &C_POST_CODE& 
/: CHANGING &C_CITY&
/: CHANGING &C_REGION&
/: CHANGING &C_COUNTRY& 
/: ENDPERFORM

Former Member
0 Kudos

Hi

How have you defined the form GET_COMPANY_ADDRESS in your program?

It has to have only 2 table parameters:

one for USING

one for CHANGING

your form has to have an interface like this:

FORM GET_COMPANY_ADDRESS TABLES IN_TAB_EM STRUCTURE ITCSY
    OUT_TAB_EM STRUCTURE ITCSY.

In IN_TAB u can get the values of the variables transfred via USING, in OUT_TAB u can get and change the values of variable transfered via CHANGING.

and then just the GTREN said before, u need to correct the call of the form in sapscript

/: PERFORM GET_COMPANY_ADDRESS IN PROGRAM ZFFOM100
/: USING &REGUH-ZBUKR&
/: CHANGING &C_TITLE& 
/:CHANGING &C_NAME1& 
/:CHANGING &C_NAME2& 
/:CHANGING &C_STREET& 
/:CHANGING &C_POST_CODE&
/:CHANGING &C_CITY& 
/:CHANGING &C_REGION& 
/:CHANGING &C_COUNTRY&
/: ENDPERFORM

U need to repeat USING or CHANGING for every data u need to transfer

Max

Former Member
0 Kudos

Hi,

First you can check the the number of parameters used in the script and in the subroutine pool is same or not, along with the type declaration.

Still it is not working means, may be there could be some limit over using the number of parameters in it.

Try using the less number of parameters and check.

Regards,

Santhosh.