Check for parameters in function module calls

Check for parameters in function module calls

This tip tells you how to check for the parameters in function module calls.
IS REQUESTED: 
Consider the following function module call in a program. 
          CALL FUNCTION 'ZSURESH_TEST1' 

EXPORTING 

   CARRID         = 'AA' 

 IMPORTING 

   CONNID         = connid 

*   FLDATE        = 

* CARRNAME  =  . 

Here the FLDATE and CARRNAME parameters are not required. 
So there is no need in retrieving the same in the function module.

In these cases, we can use IS REQUESTED as follows:

  
   If CARRNAME is requested. 
     Select single CARRNAME from SCARR Where carrid eq I_carrid. 
     Endif.   

Since in the above function call, CARRNAME is not requested,
the above SELECT statement is not executed. 
So unnecessary database calls can be restricted.

IS REQUESTED is allowed only in a function module and not 
even in a subroutine called by the function module.  
  
IS SUPPLIED: 

This checks whether the parameter = < p= >  was passed during 
runtime (IMPORTING). For this the parameter = < p= >  should 
be optional, else the system raises an error. This statement can be 
used in function modules and methods.

    Requires Free Membership to View

    When you register, you will start receiving targeted emails from my award-winning team of editorial writers. Our goal is to keep you informed on the hottest topics and biggest challenges faced by SAP professionals today.

    Hannah Smalltree, Editorial Director

    By submitting your registration information to SearchSAP.com you agree to receive email communications from TechTarget and TechTarget partners. We encourage you to read our Privacy Policy which contains important disclosures about how we collect and use your registration and other information. If you reside outside of the United States, by submitting this registration information you consent to having your personal data transferred to and processed in the United States. Your use of SearchSAP.com is governed by our Terms of Use. You may contact us at webmaster@TechTarget.com.

This was first published in February 2004

Disclaimer: Our Tips Exchange is a forum for you to share technical advice and expertise with your peers and to learn from other enterprise IT professionals. TechTarget provides the infrastructure to facilitate this sharing of information. However, we cannot guarantee the accuracy or validity of the material submitted. You agree that your use of the Ask The Expert services and your reliance on any questions, answers, information or other materials received through this Web site is at your own risk.