Skip to Content

(internal) Tables obsolete as parameter in function modules,


As you probably can see by the question, my ABAP Knowledge isn't exactly overwhelming šŸ˜Š !


I'm trying to create a function module in NW2004s, This functionmodule should take an internal table, based on a structure as (import) parameter.

In the earlier version, I've done this by defining it under the TAB 'Tables' in the function builder - But know its telling me that "<i>Tables Parameters are obsolete</i>", and that I should define it under "Changing" instead.

I have tried that, but I'm only allowed to pass a single line, and if I try to do a Loop, in the function module, it tells me that ity isn't created as an internal table.

So please - what is the "best practice" here ?


Morten Nielsen

Add a comment
10|10000 characters needed characters exceeded

Assigned Tags

Related questions

3 Answers

  • Best Answer
    Posted on Nov 15, 2006 at 12:47 PM

    Hi Morten,

    You should define a table type Standard table in transaction SE11. In transaction SE11 go to field Data Type and insert the name of table, click on button create and select Table Type in the pop up window showed, in the next screen define the Line type of the table, the lyne type can be a structure, then select Standard table in TabStrip InitializaciĆ³n and Access.

    Put this new Table Type in the changing parameters of your function Module, and it will work like a standard table.



    Add a comment
    10|10000 characters needed characters exceeded

    • Former Member Morten Hjorth Nielsen

      Hi All,

      I followed Steps 1 and 2 but when I use the following select statement I get a dump with the error enclosed.

      Step1. Created a structure ZDFKKCOHI which is a replica of DFKKCOHI.

      Step2. Created a table type ZDFKKCOHITABLE with line type as ZDFKKCOHI.

      Step3. In my function module I have a changing parameter ZDFKKCOHIPARAM of type ZDFKKCOHITABLE.

      Step 4. When I use the following select clause I am getting a dump.

      DATA: wa_zdfkkcohi LIKE LINE OF zdfkkcohiparam.

      SELECT *

      FROM dfkkcohi


      WHERE cotyp EQ zcotyp

      AND gpart EQ zgpart

      AND corr_status EQ zcorr_status.

      LOOP AT zdfkkcohiparam INTO wa_zdfkkcohi.


      *Append ZDFKKCOHIOUT.

      *Clear IT_ZDFKKCOHI.


      What could be wrong?

      Thanks for all your help in advance.



  • Posted on Nov 15, 2006 at 12:39 PM

    I am still on 47.. but you can try this... create a Table TYPE with in se11 with the desired fields & define a CHANGING parameter of this TYPE in your function module..


    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Nov 15, 2006 at 12:45 PM


    U can define you CHANGING parameter as type TABLE, so you'll have a table parameter there.

    In this case the problem is this parameter has any reference, so It can be hard to manage it by ABAP.

    Another solution is create a type table Z<...> in dictionary and then create the CHANGING parameter in reference to this type.

    In both solution you'll have a table without header line.


    Add a comment
    10|10000 characters needed characters exceeded

Before answering

You should only submit an answer when you are proposing a solution to the poster's problem. If you want the poster to clarify the question or provide more information, please leave a comment instead, requesting additional details. When answering, please include specifics, such as step-by-step instructions, context for the solution, and links to useful resources. Also, please make sure that you answer complies with our Rules of Engagement.
You must be Logged in to submit an answer.

Up to 10 attachments (including images) can be used with a maximum of 1.0 MB each and 10.5 MB total.