Syntax Error with Table Parameter (type: ANY) when Creating Function Module

Hello experts,
I want to create a function module with a table parameter and table type is ANY. But when I check (Ctrl+F7) this function module, syntax error occurs - "In this statement, the internal table "MSG_TABLE_ITEM" must have the type "STANDARD TABLE"."
Could anyone tell me what the wrong is? And how can I fix it?
Thanks,
Shelwin

Hi,
For table parameters, you can only pass
MSG_TABLE_ITM   TYPE STANDARD TABLE
or
MSG_TABLE_ITM  ( don't fill other columns TYPING ASSOCIATED TYPE  ).
For reference check FM 'GUI_UPLOAD' - Table parameters
Regards,
DPM

Similar Messages

  • Doubt in  export, import and table para when creating Function Module

    Dear fellow ABAPers,
    I have a doubt in defining export, import and table parameter while creating a function module.
    I am calling a function module inside a user exit. Now in the user exit the SAP fills an internal table called i_lfa1 with all the data user has eneterd.
    Now I want to pass this whole internal table to function module and the perform some checks on the values of internal table.
    After that function module fills an error structure with values depending on some check.
    1)
    How do I pass this internal table to function module ? 
    When I am creating function module in se37 where do I define this iternal table type ? Is it in Import or Table parameter during function module creation?
    2)
    Where do I define error structure type (which is returned by function module to main program)? Is it in Export or table parameter during function module creation?
    Please clear my doubt..
    Relevant points will be awarded.
    Regards,
    Tushar.

    Hi Tushar,
    1. How do I pass this internal table to function module ?
       I assume u are creating your own Y/Z FM.
       Pass it thru TABLES parameter.
    2. When I am creating function module in se37 where do I define this iternal table type
       Define this in TABLES interface.
       What Type ?
       THE SAME TYPE WHICH HAS BEEN DEFINED
        WHILE PASSING IN THE USER-EXIT FUNCTION MODULE.
       IF U SEE THE FM OF THE USER-EXIT,
       U WILL COME TO KNOW.
    3.
    Where do I define error structure type (which is returned by function module to main program)? Is it in Export or table parameter during function module creation?
    Define it in TABLES interace. (not in export, import)
      (Since what u are going to return is an internal table)
      U can take for eg. BDCMSGCOLL.
      OR u can create your own Y/Z structure
    for the same purpose.
      (or u can use the structure type T100)
    I hope it helps.
    Regards,
    Amit M.

  • Modify Syntax on Internal table of type ANY TABLE

    Hi,
    I have declared one internal table which is of type ANY TABLE.
    In the Loop statement, I am trying to Modify that Internal table from WA.
    Then I am getting one Error message
    "You cannot use explicit or implicit index operations on tables with types "HASHED TABLE" or "ANY TABLE". "C_T_DATA" has the type "ANY TABLE".
    Above code I have placed in method of a corresponding Class.
    Can u please advise me on this..How to modify the Intenal table .
    Thanks and Regards,
    K.Krishna Chaitanya.

    Hi Krishna,
    the modify statement is obsolete.
    You can always LOOP AT [itab] ASSIGNING <field-symbol>.
    This makes the loop never slower, depending on the table structure faster or much faster.
    If you know the table structure at run time, you can use a field-symbol of that type. If not, you can use a field-symbol TYPE any. Then you have to assign the components to field-symbol to modify them, i.e.
    field-symbols:
      <table_line> type any,
      <matnr>        type mara-matnr.
    loop at itab assigning  <table_line>.
      assign component 'MATNR' of structure <table_line> to <matnr>.
      clear <matnr>.
    endloop.
    This technique (available more than ten years) works incredibly fast. My estimate is that if SAP would change all the old standard programs that way and use it consequently in the new ones, the whole system would be 20 % faster because myriads of unnecessary copy operations of LOOP INTO would not happen.
    Regards,
    Clemens.

  • Error Message: "The parameter is incorrect" when trying to modify SSLs

    Like I wrote in my subject line, RoboHelp pop-ups the error message “The Parameter is incorrect” when I try to modify any SSL.
    What happens next, is that the “Print Document General” window opens, but does not allow me to select anything (the fields are blank).
    If I close the window and open it again, it seems to work until I have to select the styles from our Microsoft Word Template.
    Then the error message “The parameter is incorrect” appears again, and RoboHelp does not allow me to select anything but a stylesheet
    (which is not what I need).
    This is very strange, because not only  until recently I was able to build Word documents and PDFs, but also my colleagues are able to
    produce them out of my source.
    Even the old projects, that I was able to build, now I cannot.
    I do not have any problem in generating CHMs.
    Until now I have tried everything I found in the forum:
    I deleted the PSS file (also following the advice in your snippet number 14 from 10 – RoboHelp HTML –Features and Use).
    http://forums.adobe.com/thread/120022
    I reinstalled RoboHelp and the Adobe Technical Communication Suite (I also used CCleaner to delete the registries).
    http://forums.adobe.com/thread/598335
    I gave Administrator rights to all users in my computer (what seemed to work for some SSLs, but not for all)
    http://forums.adobe.com/thread/870339
    I am also looking at all programs that I installed since the last time I was able to build .docs in case there is a conflict, but I do not find anything!
    My computer has Windows 7 installed and I use the Adobe Technical Communication Suite 3.5, with RoboHelp 9.
    My Microsoft Office is 2010.
    Can somebody please help me? Did someone have the same problem?
    Thanks in advance.

    Hi there
    I know you said you reinstalled, but did you reinstall before or after you gave administrator rights to all users on your computer? And how many users *ARE* on your computer?
    Often you need administrator rights to properly install things.
    Cheers... Rick
    Helpful and Handy Links
    RoboHelp Wish Form/Bug Reporting Form
    Begin learning RoboHelp HTML 7, 8 or 9 within the day!
    Adobe Certified RoboHelp HTML Training
    SorcerStone Blog
    RoboHelp eBooks

  • How to use INVOKE function with INT parameter types

    Can you tell me how to use invoke function with int parameter type ?

    Pass the int as an Integer.

  • Is there any BAPI or function module  to delete entries from a table (VBAK)

    Hi Everybody,
    this is my first thread in SDN...
    my problem follows...
    A report is be created that selects all sales orders created by e-Sales that are more than 20 minutes old and still have a delivery block:
    tables:
    VBAK     sales document: header data
    selection fields:
    VBAK-LIFSK      &#8800;     <BLANK>
    VBAK-ERNAM     =     userID used by e-Sales / IVE
              (EP-BATCH / EAI-BATCH)
    VBAK-ERDAT      <=     Current system Date
    VBAK-ERZET     <=     Current system Time - 20 minutes
    These orders should be deleted from SAP system.
    This report should be scheduled to run regularly every 10 minutes.
    my doubt : is ther any BAPI or Function module to delete entries from a standard table...if no what is the way to delete the enteries from a std table...
    best replies will be rewarded....
    regards
    Reddy

    Hi Vasanth ,
    thanks for your reply.
    i tried in the same manner what u mentioned.
    but how to pass only one parameter to the functionmodule..
    here in this case we have to pass only update flag as 'D'..
    i did the same it giving dump..
    An exception occurred that is explained in detail below.                          
    The exception, which is assigned to class 'CX_SY_DYN_CALL_ILLEGAL_TYPE', was      
      not caught and                                                                   
    therefore caused a runtime error.                                                 
    The reason for the exception is:                                                  
    The call to the function module "BAPI_SALESORDER_CHANGE" is incorrect:                                                                               
    In the function module interface, you can specify only                            
    fields of a specific type and length under "ORDER_HEADER_INX".                    
    Although the currently specified field                                            
    "INT_ORDER_HEADER_INX" is the correct type, its length is incorrect.              
    my pgm :
    *& Report  YNEW_ORDER_DELETION
    REPORT  ynew_order_deletion.
    TABLES:vbak.
    PARAMETERS:
         p_lifsk LIKE vbak-lifsk DEFAULT '02'.
    SELECT-OPTIONS:
       s_lifsk FOR vbak-lifsk DEFAULT '10',
        s_ernam FOR vbak-ernam,
        s_erdat FOR vbak-erdat,"DEFAULT sy-datum.
        s_erzet FOR sy-uzeit.
    *PARAMETERS:
    p_erzet LIKE sy-uzeit.
       s_erdat like vbak-erdat,
       s_erzet like vbak-erzet.
    DATA:
       BEGIN OF int_final OCCURS 0,
            w_vbeln TYPE vbak-vbeln,
       END OF int_final.
    DATA:
      int_return LIKE bapiret2 OCCURS 0 WITH HEADER LINE.
    DATA: int_order_header_inx LIKE bapisditmx OCCURS 0 WITH HEADER LINE.
    DATA:
      wf_time TYPE sy-uzeit.
    INITIALIZATION.
      s_ernam-low = 'KULKARMA'.
      s_ernam-sign = 'I'.
      s_ernam-option = 'EQ'.
      APPEND s_ernam.
    s_ernam-low = 'EAI-BATCH'.
    s_ernam-sign = 'I'.
    s_ernam-option = 'EQ'.
    APPEND s_ernam.
    wf_time = sy-uzeit - 1200.
    p_erzet = sy-uzeit - 1200.
    p_erzet-low = wf_time.
    APPEND s_erzet.
      int_order_header_inx-updateflag = 'D'.
      APPEND int_order_header_inx.
    START-OF-SELECTION.
      SELECT vbeln FROM vbak
                       INTO TABLE int_final
                       WHERE lifsk EQ p_lifsk
                         AND ernam IN s_ernam
                         AND erdat IN s_erdat
                         AND erzet IN s_erzet.
      IF sy-subrc = 0.
        LOOP AT int_final.
          CALL FUNCTION 'BAPI_SALESORDER_CHANGE'
            EXPORTING
              salesdocument         = int_final-w_vbeln
      ORDER_HEADER_IN             =
        order_header_inx            = int_order_header_inx
      SIMULATION                  =
      BEHAVE_WHEN_ERROR           = ' '
      INT_NUMBER_ASSIGNMENT       = ' '
      LOGIC_SWITCH                =
      NO_STATUS_BUF_INIT          = ' '
            TABLES
              return                      = int_return
      ORDER_ITEM_IN               =
      ORDER_ITEM_INX              =
      PARTNERS                    =
      PARTNERCHANGES              =
      PARTNERADDRESSES            =
      ORDER_CFGS_REF              =
      ORDER_CFGS_INST             =
      ORDER_CFGS_PART_OF          =
      ORDER_CFGS_VALUE            =
      ORDER_CFGS_BLOB             =
      ORDER_CFGS_VK               =
      ORDER_CFGS_REFINST          =
      SCHEDULE_LINES              =
      SCHEDULE_LINESX             =
      ORDER_TEXT                  =
      ORDER_KEYS                  =
      CONDITIONS_IN               =
      CONDITIONS_INX              =
      EXTENSIONIN                 =
        ENDLOOP.
        LOOP AT int_return.
          WRITE:/ int_return-type,
                  int_return-id,
                  int_return-number,
                  int_return-message.
        ENDLOOP.
      ENDIF.
    please help me ..its a very urgent issue to be solved...
    am waiting for ur reply...
    regards
    gangareddy

  • Error BT616 when calling function module SXPG_COMMAND_EXECUTE in background

    Hi All,
    We use function module SXPG_COMMAND_EXECUTE with a custom command we defined in SM69 to move files in unix (mv command).
    The function module call has worked fine for almost a year and recently we have been seeing an error (BT616) in our job lob (SM37) when the program is run in background. We have not been able to reproduce the error in foreground mode and it seems to be occuring only periodically in the background. (The appropriate SAP authorization objects where assigned to the batch job ID and the steps on the batch job.) We are in the process of setting up the trace flag and performing analysis on the trace log via ST11 to help identify the issue.
    After perform analysis on SXPG_COMMAND_EXECUTE, the error is occurring when calling function module SAPXPG_END_XPG for exception 2, system failure, yet function module SAPXPG_END_XPG does not exist. I assume this is a program at the operating system level and is just a signature of the parameters to be passed to the operating system program.
    Below is part of the SAP function module SXPG_COMMAND_EXECUTE that is failing.
    * Now we have to wait for the termination of the external
    * command if the caller wants us to.
        IF TERMINATIONWAIT = 'X'.
          CALL FUNCTION 'SAPXPG_END_XPG'
            DESTINATION DESTINATION
            IMPORTING   EXITSTAT = STATUS
                        EXITCODE = EXITCODE
            TABLES      LOG      = LOG
            EXCEPTIONS  COMMUNICATION_FAILURE = 1 MESSAGE MSG
                        SYSTEM_FAILURE        = 2 MESSAGE MSG.
    I performed a where used on function module SXPG_COMMAND_EXECUTE, and most of SAP programs call the function module with the parameter TERMINATIONWAIT = 'X', so I assume we should pass ‘X’ as well.
    Any ideas on what could be causing this issue?
    Mike Vondran

    I also remember I have this kind of issue, as I have some UNIX script at OS( UNIX) level . The problem was with the ID , as it don’t have proper authorization at OS level ( UNIX ) . Please check this ID authorization. This could be the one of reasons if you’re sure from SAP standpoint.
    Hope this’ll give you some guide line..
    Thanks
    Bye

  • How to capture errors when a Function module is called as BACKGROUND TASK

    How to capture errors when a Function module is called as BACKGROUND TASK?.Please advise.
    FUNCTION ZRPM_DELETE_PROJECT_DATA_API.
    ""Local interface:
    *"  IMPORTING
    *"     VALUE(IV_EXTERNAL_ID) TYPE  RPM_TV_EXTID OPTIONAL
    *"     VALUE(IV_PROJECT_GUID) TYPE  RPM_TV_GUID OPTIONAL
    *"     VALUE(FLAG) TYPE  BOOLEAN OPTIONAL
    *"  EXPORTING
    *"     VALUE(EV_RC) TYPE  I
    *"     VALUE(EV_MSG) TYPE  STRING
    *"     VALUE(ET_MSG) TYPE  RPM_TT_MESSAGES
      IF flag = cl_rpm_co=>sc_true.
        Call function 'RPM_DELETE_PROJECT_DATA' IN BACKGROUND TASK
          EXPORTING
            IV_EXTERNAL_ID  = IV_EXTERNAL_ID
            IV_PROJECT_GUID = IV_PROJECT_GUID
          IMPORTING
            EV_RC           = EV_RC
            EV_MSG          = EV_RC
            ET_MSG          = ET_MSG.
        COMMIT WORK.
      ELSE.
        CALL FUNCTION 'RPM_DELETE_PROJECT_DATA'
          EXPORTING
            IV_EXTERNAL_ID  = IV_EXTERNAL_ID
            IV_PROJECT_GUID = IV_PROJECT_GUID
          IMPORTING
            EV_RC           = EV_RC
            EV_MSG          = EV_MSG
            ET_MSG          = ET_MSG.
      ENDIF.
    ENDFUNCTION.
    In above code how to capture 'EV_RC' when FM is called as background task.

    Prakash,
    CALL FUNCTION IN BACKGROUND TASK allows no IMPORTING parameters, so that your code will produce a syntax error.
    The calling program can only handle errors of remote function calls (RFC) if these are either
    - synchronous RFC  (that is CALL FUNCTION ... DESTINATION ...) or
    - asynchronous RFC (that is CALL FUNCTION STARTING NEW TASK ... DESTINATION ...).
    Both synchronous and asynchronous RFC allow the capturing of errors by means of exceptions. But that is a different topic.

  • Any Bapi or function Module to update standard table

    Can u Plz let me know , is there any bapi or function module to update few fields of a standard table using an internable.

    I don't know if any FM exists for your requirement. But you may like to copy it into a custom table and modify it according to your enterprise needs.

  • Creating function modules with step by step

    Hi,
       plz provide me the material for creating function modules with step by step.

    Hi Nagaraju,
    Step 1.
    GO to transaction SE80.In the drop box list select function group enter your Z Function group name.Press enter it will ask for creating the function group.Create your function group.
    OR
    In SE37 transaction,in the menu bar Goto - > Function Group - > Create Group.Your Function Group will be created.
    Step 2.
    Go to transaction SE37.Enter your Z Function module name,your recently created function group name and the description.Press Enter.Now your FM is created.
    Step 3.
    Enter Export,Import parameters.In the source code tab write the code what you want to write.If any exception write in the exception tab.
    Method 2)
    First u have to create Function Group.
    1.se37->Goto->Function Group--->Create.
    2.Create FM.
    3.maintain import /export parameters and tables , exceptions.
    4.based on the ur requirement u have to bulid ur logic in Source Code by using there Import parameters and u can pass the results by using Export or table.
    5.u can raise error by using exception.
    Reward if useful.
    Thanks
    Aneesh.

  • Problem when calling function module CV120_DOC_CHECKOUT_VIEW in background

    Hi ,
    I'm currently developping an abap program which extract document from KPRO for printing into a windows Folder.
    For this I use standard function module CV120_DOC_CHECKOUT_VIEW.
    When i run my program in foreground task there's no problem, but when i run it in background task the extract doesn't work. It seems that the system cannot connect to the Windows Network.
    Whe the program is running in foreground task, the function module user SAPHHTP RFC destination, when it runs in background task it use SAPFTP destination .
    Does somebody can help me ?
    thanks in advance

    Hi Ajay,
    The program extract document into a folder on Windows Network that means on a server not on a PC .
    I know that in background task ther's no connection with sapgui.
    For example when i want to create a file on network n background task i use OPEN_DATASET instruction and that works fine.
    My problem is the use of the standard function module CV120_DOC_CHECKOUT_VIEW in background task because when this function module is running in background task it use the SAPFTP rfc destination instead of SAPHHTP rfc destination in foreground task . I check the RFC destination , thoses works both . SO i think the problem comes from parameters given to the function module.
    Regards.

  • Any Class or Function Module..?

    Hi,
    I have a requirement to update some Infotypes when the user updates the salary package from portal.
    Is there any class or Function Module available?
    Pls let me know.
    Thanks,
    KK
    Moderator Message: Thread locked. Points unassigned.
    Edited by: Suhas Saha on Sep 29, 2011 8:38 PM

    Hello,
    I had a similar requirement earlier and I've used the Function modules listed below to update the IT0008, IT0014 & IT0589 respectively.
    HR_SPA_FILL_IT0014_STRUCTURE
    HR_SPA_FILL_IT0008_STRUCTURE
    HR_SPA_FILL_IT0589_STRUCTURE
    Hope this helps.
    Regards,
    Venkata Phani Prasad K

  • HR-ABAP Any BAPI or Function module to update infotypes 167 & 170

    Hi,
        Can anyone let me know is there any BAPI or Function module to update infotypes 167(Health Plans) & 170(Flexible Spending Accounts).
    Thanks,
    Sandeep

    Hi,
       U can use HR_BEN_CREATE_PLANS internally it calls HR infotype operation as specified by suresh.
    Suresh  : If there are approximately 3000 records to be updated on regular basis do u think is it better to use BAPI's or BDC
    regards
    Vick

  • Any Bapi or Function module for transaction CA22

    Hi experts,
    Is there any Bapi or Function module for transaction CA22(Change Rate Routing).
    Thanks,
    Yogesh

    Hi,
    The following r the Enhancement's and BADI'S fro CA22
    Enhancement
    CMDI001                                 Determine explosion control for BOM
    CPAU0001                                Enhancement for Authorization Check in Task Lists
    CPDO0001                                Test units of measure for reference operation set
    CPRE0001                                Enhancement for Reorgnization Checks in Task Lists
    XCZD0004                                Extend authority check for the material-recipe allocation
    Business Add-in
    CEWB_OPR_MENU_EXTERN                    Menu Extensions in the Engineering Workbench
    CEWB_OPR_MENU_INTERN                    Menu Extensions in the EWB (SAP Internal)
    CEWB_SEQ_MENU_INTERN                    Menu Extensions in the EWB (SAP Internal)
    CEWB_TSK_MENU_EXTERN                    Menu Extensions in the Engineering Workbench
    CEWB_TSK_MENU_INTERN                    Menu Extensions in the EWB (SAP Internal)
    CEWB_TSK_SCREENS                        Screen Extensions for Task Lists in the EWB
    CEWB_TSK_UPDATE                         Task List Maintenance and Checks in the EWB
    CP_DIG_SIGNATURE                        Digital Signature for Routings
    EWB_SELECTION                           Selection Within the Engineering Workbench
    ROUTING_EXIT                            User Exits for Routings
    CEWB_MTK_MENU_INTERN                    Menu Extensions in the EWB (SAP Internal)
    CEWB_MST_MENU_INTERN                    Menu Extensions in the EWB (SAP Internal)
    CEWB_MST_MENU_EXTERN                    Menu Extensions in the Engineering Workbench
    CEWB_ITM_MENU_INTERN                    Menu Extensions in the EWB (SAP Internal)
    CEWB_ITM_MENU_EXTERN                    Menu Extensions in the Engineering Workbench
    CEWB_GEN_MENU_INTERN                    Menu Extensions in the EWB (SAP Internal)
    CEWB_GEN_MENU_EXTERN                    Menu Extensions in the Engineering Workbench
    CEWB_COM_MENU_INTERN                    Menu Extensions in the EWB (SAP Internal)
    CEWB_COM_MENU_EXTERN                    Menu Extensions in the EWB (SAP Internal)
    CEWB_CHA_MENU_INTERN                    Menu Extensions in the EWB (SAP Internal)
    CEWB_CHA_MENU_EXTERN                    Menu Extensions in the Engineering Workbench

  • Any BAPI or Function module upload data into /LOT/LEOMM01

    Hi ,
      Could you tell me please if there is any BAPI or Function module to upload LEO material Property group data (/LOT/LEOMM01)
    Thanks & Regards
    RK
    null

    Hi Rk,
    take this pavkage name MGA go to se80
    in se80 provide package name click on display
    open  function group folder see the function modules and BAPI s that ful fill u r requirement
    Regards
    kishore ale

Maybe you are looking for

  • Ipod classic and itunes 11.1.5 Does NOT work

    This is really unacceptable. I've had iTunes running seamlessly with all my IPod Classics through a Toshiba laptop and Windows Vista premium home edition for years. Today I accept the prompt to finally upgrade to ITunes 11.1.5 and guess what. iTunes

  • Itunes 'lost' my music files

    This appears to be the result of a problem while I was syncing my iPod. During a standard syncing process, it appeared that iTunes was pulling music files from a location on a home server that I didn't want. I stopped the sync process and most of my

  • How to get the errors thrown during SwingWorkes-doInBackground-method

    Hi, I got an annoying problem. I use a SwingWorker to do some operations in background... Now it could be, that some of those operations throw an exception... but the SwingWorker do not throw those... The only exception i get is a final Exception cau

  • Does ALDSP 2.5 supports INOUT cursor??

    Hi, We are using ALDSP 2.5 and trying to connect to oracle stored procs. Some of these stored procs have INOUT Cursor, INPUT cursor and associate array types. Does ALDSP 2.5 supports this?? If not please let me know whether other versions support thi

  • [SOLVED] PROJECT: Linux build w/ arch repo compatibility

    Hi, I haven't been around in the linux world for too long, but I've fallen in love with the Arch philosophy (and the learning curve was a bit of a bonus) although there are a few adjustments that I, personally, would like to implement into the basic