Catch the Exceptions of standard Function Module

Hi Experts,
I am Using Version 4.6C.
I am developing an RFC for creation of commitments into the system for this i have used 'FMFR_CREATE_FROM_DATA'  Function Module. But i need to capture the System exception so as to alert the user when it puts in invalid data. However function Module 'FMFR_CREATE_FROM_DATA' is working fine but   I am unable to System Exceptions i have tried using Function Module FORMAT_MESSAGE by importing the system variable into it but my program gets append ever time an system exception raised.
Can anyone help in getting it fix.

Hi,
Which thrid party system you are configuring check the system destinations propely given or not and in third parthy which type error or any message u r getting or not.  Once if it is working find in from R/3 to other it is not RFC problem it may related to u r settings or in third parthy system not set properly.
contact your basis teams
Regards
Ganesh

Similar Messages

  • Catching error message from standard function module to internal table.

    Hi,
    i am calling a FM in my custom prog.
    After execution of the FM some auto generated errors is getting displayed.
    I want to pass this error to an internal table.
    Please tell me how to do this?
        CALL FUNCTION 'FORMAT_CHECK'
          EXPORTING
            i_checkrule   = t005-prbkn
            i_checkfield  = it_ven-bankn
            i_checklength = t005-lnbkn
            i_checkmask   = space
            i_fname       = fname
          EXCEPTIONS
            not_valid     = 1
            OTHERS        = 2.
      IF sy-subrc <> 0.
           MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
        ENDIF.
    I want to catch this particular error message in the itab.
    Thanks,
    SAM.

    Even we can create an internal table  nad move the messages to it.
    DATA : BEGIN OF L_ERR OCCURS 0,
            SNO LIKE SY-tabix,                                  "serial no
            MSGTY LIKE SY-MSGTY,                         "message type
            MSGNO LIKE SY-MSGNO,                        "message no
            ERR_TEXT LIKE T100-TEXT,                     "message text
           END OF L_ERR. 
       IF SY-SUBRC <> 0.
              L_ERR-SNO      = SY-TABIX.
              L_ERR-MSGTY    = SY-MSGTY.
              L_ERR-MSGNO    = SY-MSGNO.
              L_ERR-ERR_TEXT = TEXT-015.                        "Problem encounterd in uploading data.
              APPEND L_ERR.
              clear L_ERR.
         ENDIF.

  • How to see the exception raised  in function module...

    DEAR ABAPERS,
    how can i see that exception, when iam excuting
    Regards,
    veera

    hi Veera,
    Based on SY-SUBRC value we can handle those exception in this way ..
      if sy-subrc = 1.                    
        raise file_write_error.           
      elseif sy-subrc = 2.                
        raise gui_refuse_filetransfer.    
      elseif sy-subrc = 3.                
        raise gui_refuse_filetransfer.
    Regards,
    Santosh

  • Is it necessary to use the standard function modules always?

    Hi All,
       Suppose i can retrieve the BUSINEES PARTNER ID from the table BUT000 with the help of 'BP_GUID' field through a select query statement. 
    Now is it necessary to use a standard function module to retrieve the same data. what about the performance? which is the better solution. to implement our own code or to use the function module available.
    Please someone clarify me about this issue.
    Regards,
    Sharry.

    If you'd ask the question in general it's obvious that there is no good answer as it always would depend on the circumstance. However, as you've posted your question in the performance tuning forum, let's look at your question in this context first. I think it's fairly safe to say, that in almost 100% of the cases a standard function module will not be as fast as any well implemented and custom tailored code. If in doubt, just try reading the code of the function module you want to read; most likely you will find lots of unnecessary fluff in there, often they read data that you don't even need.
    And as far as buffering is concerned, that can also be an issue. E.g. let's say you do a massive read of distinct business partners and you only need the data once for each partner. Obviously buffering is silly in this case and it might even slow down your program, because the implemented buffering is not necessarily well implemented. I've come across a few cases, where the buffer tables where standard tables with no efficient read access (so no sorted table or hash table) and once tons of data were buffered, it actually took a moment to look up if the record already was buffered (just to find it wasn't there yet).
    Now most of the times this slowdown is not an issue as the lookup is still fast compared to the (usually) prevalent database accesses with their slower IO timing. But another factor to consider is memory consumption and why buffer data in memory (and waste it), if you can't use the buffer anyway? So when I do use standard function modules, I usually try to see what they retain in global memory, to better understand if I need to call some initialization/clearing/refresh function...
    Note also that often you need to process lots of data, but don't find a standard function module for "mass access", so you need to read your object one by one. Obviously that's another good candidate for implementing your own queries, where you can process the data in packages.
    So what might be the reason to use a standard function module? Well, often it's required because the logic is so complex that it would take you too much time to implement it (not to mention that we often simply don't know all the logic that's coded in there). Another advantage is that you might get independent of the data model. E.g. for IDoc interfaces SAP switched in some release the tables where the data is stored. So if you had coded your own queries to get IDoc data, they wouldn't have worked after this particular release upgrade. The standard function on the other hand, checks both the old and new tables, so by using it you would have been fine.
    The one major caveat I'd give though is to always check whether the function module is released or at least documented to some degree. I.e. if it's not released, SAP won't support it and does not guarantee that the interface or logic stays the same. In my experience lots of functions I do want to use are not released (or documented), but I will still use them because they seem to be the best alternative in certain scenarios.
    Cheers, harald

  • Lists of Standard Function Modules to Download data into Excellsheet format

    Dear Guru,
    i want to know what are the Lists of Standard Function Modules to Upload data in to Excellsheet format other than WS_DOWNLOAD or GUI_DOWNLOAD.
    Thanks & regards
    SAifur Rahaman

    Hi,
    Check this out,
    Download & upload of an excel file

  • Where the documentation is provided for the Standard Function module ?

    If there is no documentation provided for the standard function module in SE37 what is the best way to understand the functionality of the function module?Is there any where we can find the documentation?
    Please dont say the From coding part its too vast to understand
    Ex: HRCM_ORGSTRC_INFO_TABLE_GET
    Paint for me ..
    Regards
    sas
    Edited by: Julius Bussche on Mar 18, 2009 1:17 PM

    O Really thanks amit !!
    Are you able to understand the below code and please provide your valuable inputs what we are understanding is the same.
    PERFORM read_infotypes.
    *-- ********************************************************** NMP
    *-- IF scb frozen then write to itab-scb field.  nmp 11/2001.
    *-- ********************************************************** NMP
    *--Begin of Change by vneld - 01/17/2007
    *  IF PA0001-ZZBERN NE SPACE.
    *    FROZEN = PA0001-ZZBERN.
    *  ENDIF.
    *  ITAB-SCB = FROZEN.
    *-- ********************************************************** NMP
    *--end of Change by  vneld- 01/17/2007
      PERFORM get_date USING '92'
                       CHANGING w_hiredate.
      PERFORM get_date USING '93'
                       CHANGING w_rehire.
      PERFORM get_date USING '94'
                       CHANGING w_termdate.
      IF NOT ( w_rehire IS INITIAL ).
        w_hiredate = w_rehire.
        itab-code = 'R'.
      ELSE.
        itab-code = 'H'.
      ENDIF.
      IF p0001-persg = '3'.
        itab-code = 'T'.
      ENDIF.
    *Change by Mdukes
    ** We need HIRE,Rehire & term  within 13 month`s window
    ** But if someone Hire in IT ,change dept and then terminated .
    ** We need to exclude that person from the list  .
    ** We need to change his Org.Unit by END_DATE 12/31/9999 from Pa0001.
      CLEAR:result_tab.REFRESH:result_tab.
      CALL FUNCTION 'HRCM_ORGSTRC_INFO_TABLE_GET'
        EXPORTING
          PLVAR          = '01'
          ROOT_OTYPE     = 'O'
          ROOT_OBJID     = P0001-ORGEH
          BEGDA          = SY-DATUM
          ENDDA          = P0001-ENDDA
          PATH_ID        = EVPATH
          PATH_DEPTH     = 10
        TABLES
          ORG_INFO_TABLE = result_tab
        EXCEPTIONS
          PATH_ERROR     = 1
          ROOT_ERROR     = 2
          OTHERS         = 3.
    *  CALL FUNCTION 'RH_STRUC_GET'
    *    EXPORTING = 'O'
    *      act_objid       = PA0001-ORGEH
    *      act_wegid       =  EVPATH
    *      act_plvar       =  TYPE
    *      act_tflag       = space
    *      act_vflag       = space
    *      authority_check = space
    *    TABLES
    *      result_tab      = result_tab
    *    EXCEPTIONS
    *      no_plvar_found  = 1
    *      no_entry_found  = 2
    *      OTHERS          = 3.
    * reading the Org.Unit based on employee Org.unit (Evaluation Path 'O-O'.
    * After that making sure the latest Pa0001 org.unit is part of selection org.unit
    * If yes, set the flag to = 1 . Otherwise ignore the rec .
    * We want only IT folks hire/rehire/term within 13 monthu2019s window
    * if somebody change the dept and get term within 13 monthu2019s .it
    * Should show up in hire but not in term report .
      CLEAR:REC.
      lOOP AT result_tab.
        read table PCHOBJID with key low = result_tab-OBJID.
        if sy-subrc = 0 .
          Rec = 1.
          EXIT.
        Endif.
      ENDLOOP.
      if rec  = 1.
    *--begin of change by vneld- 01/17/07
        CHECK ( ( w_hiredate >= w_13th_mnth_date AND w_hiredate <= sy-datum )
          OR
              ( w_termdate >= w_13th_mnth_date AND w_termdate <= sy-datum ) ).
    *--end of change by vneld- 01/17/07
    **---check for hires or terms in the calendar year.
    **---No future terms
    *  CHECK ( ( W_HIREDATE(4) = SY-DATUM(4) ) OR
    *  ( W_TERMDATE(4) = SY-DATUM(4) AND W_TERMDATE <= SY-DATUM ) ).
        CONCATENATE p0002-vorna p0002-nachn INTO itab-name SEPARATED BY ' '.
    *--Begin of change by vneld 03/29/2007
    *--get supervisor name
        data : lname(20),
               fname(20).
        clear: lname,
               fname.
        Select vorna nachn from pa0002 into (fname ,lname)
               where pernr =  p0001-zzsuper_no.
        endselect.
        CONCATENATE lname fname INTO itab-supv SEPARATED BY ' '.
    *  itab-supv = p0001-zzsuper_text.
    *--End of change by vneld 03/29/2007
    *----get employee group text
        CLEAR t501t.
        SELECT SINGLE * FROM t501t WHERE sprsl = 'EN' AND
                                         persg = p0001-persg.
        IF sy-subrc EQ 0.
          itab-group = t501t-ptext.
        ENDIF.
        PERFORM get_dept.
        PERFORM get_position.
        PERFORM append_fields.
      endif.
    ENDFORM.                    " PROCESS_EMPLOYEE
    Edited by: saslove sap on Mar 19, 2009 7:45 AM

  • Error in the SAP standard function module 'RSDRI_INFOPROV_READ'.

    Hello Experts,
    We upgraded from 3.5 to 7,0 support pack 17 .
    After upgrade we are getting error
      with return code 11 'Others´'.
    While debugging the standard function module we found that the standard method s_r_infoprov->read is being executed with the return code = 8 (inherited_error).
    Any suggestions?
    Regards,
    Vivek

    Not sure if the parameters provided were correct,you may wish to do a sanity check
    Input Parameters:
    1. I_INFOPROV - This will hold the Name of the Info Cube from where we need the pull the data.
    2. I_T_SFC - This parameter is in the format of Internal Table which holds the Character Info Objects we need to pull from the Source Cube.
    3. I_T_SFK - This parameter is also in the format of Internal Table which holds the Key Figure Info Objects which we need to pull from the Source Cube.
    4. I_T_RANGE - This is also in the format of Internal Table which holds the Selection criteria for which we need to pull from the Source Cube u2013 For example the Company Code u2013 001 and Fiscal Year Period u2013 001/2006.
    5. I_T_REQUID u2013 Selection of cube data based on Request Id.
    6. I_SAVE_IN_TABLE u2013 In case you need to save the data in DB table
    7. I_REFERENCE_DATE u2013 This holds the current date.
    8. I_AUTHORITY_CHECK u2013 This will hold the value u2018Ru2019, which is meant for READ.
    9. I_DEBUG u2013 This is for Debugging mode and holds the default value u2018Yu2019.
    Output Parameters:
    1. E_T_DATA u2013 This Output Parameter is of internal table format, in which we can mention the output fields (For all the fields mentioned in the Input Parameter, this output parameter will hold the values).
    2. E_END_OF_DATA u2013 Once the FM is executed successfully, this output parameter will hold the value u2018Xu2019, means extraction completed successfully.
    Hope it Helps
    Chetan
    @CP..

  • Standard function module for checking the sales organization and plant

    Hi all,
        Does have standard function module for checking the relationship between sales organization and plant?
    Thanks a lot!
    Nina

    hi
    good
    check these BAPIS
    BAPI_SALESGROUP_GET_DETAIL     Sales Group: Display Name                                                
    BAPI_SALESOFFICE_GET_DETAIL    Sales Office: Display Name                                               
    BAPI_SALESOFFICE_GRP_EXIST     Sales Office / Sales Group: Existence Check                              
    BAPI_SALESORG_EXIST            Sales Organization: Existence Check                                      
    BAPI_SALESORG_GET_DETAIL       Sales Organization: Display Data                                         
    BAPI_SALESORG_OFFICE_EXIST     Sales Organization / Sales Office: Existence Check                       
    PLANT=>
    BAPI_PROMO_GETSITEPLANNING     Detailed Data for the Plants Involved in a Promotion   
    thanks
    mrutyun^

  • Need to know the standard function module/program in E recruitment

    Hi All,
    I need to know the standard function module/programm that defaults the 'Functional area' field in the posting page from the requisition page.
    Early responce is greatly appreciated.
    Thanks and best regards
    Rajeev

    Hi Masa,
    Thanks for your reply.
    We are using Assets with the integration of Project systems. We are now in 4.6C R/3 & SRM 5.0 system. And now R/3 upgrade and SRM upgrade going on smultaniously to ECC6.0 and SRM 7.0 respectively.
    I would like to know any new functionality available in the latest upgrades and we have done lot of customization for Asset Procurement. And would like to go with Vanilla.
    Can you please provide me some inputs about the Project (WBS element ) based Asset Procurement in SRM as standard.
    Thanks and Regards,
    Ramesh

  • Need to know the standard function module in E-Recruitment

    Hi All,
    I need to know the standard function module that defaults the value of 'Functional area' in 'Posting' from 'Requisition'.
    Early response is greatly appreciated.
    Thanks an best regards
    Rajeev

    Hi Masa,
    Thanks for your reply.
    We are using Assets with the integration of Project systems. We are now in 4.6C R/3 & SRM 5.0 system. And now R/3 upgrade and SRM upgrade going on smultaniously to ECC6.0 and SRM 7.0 respectively.
    I would like to know any new functionality available in the latest upgrades and we have done lot of customization for Asset Procurement. And would like to go with Vanilla.
    Can you please provide me some inputs about the Project (WBS element ) based Asset Procurement in SRM as standard.
    Thanks and Regards,
    Ramesh

  • Change the standard function module

    The standard function module FI_DUPLICATE_INVOICE_CHECK will check whether an invoice/credit memo has already been posted where all of the following attributes match: Company code, vendor, currency, document date, reference number (If a reference number was entered in the current invoice/credit memo). If no reference number was entered in the current invoice/credit memo the system checks whether an invoice/credit memo has already been posted where all of the following attributes match: Company code, vendor, currency, document date, amount in document currency
    my requirement is
    The above functionality described in the short description doesn’t provide for the need within AP to check on duplicate invoices. The functionality in FI differs from the functionaltiy provided in LIV and therefor needs to be aligned. The risk of posting duplicate invoice entry is eminent since the check is dependent on all parameters. For a good duplicate invoice number check we need FI to check on Vendor and invoice reference within the same fiscal year. To modify rules, copy FI_DUPLICATE_INVOICE_CHECK, modify the checks and then call the copied function module from FB60. The remaining field check in the standard function module should be deleted.
    how  to achive this. i didn't understand the requirement .Please give me any suggestion for this.

    Hi ,
    I think what you are saying is the functionality given in Logistics Invoice verification is not suitable for FI Invoice.
    If I am correct , then there is a configuration setting in SPRO where you set check for duplicate invoice. It has just three checkboxes
    a) Company code b) Reference number c) Invoice date
    so I think this configuration setting will suffice your requirement.
    Please let me know.
    Amit

  • *Can we call a Standard Function Module inside a Zfunction module ?*

    Can anyone please help me know whether we can call a Standard Function Module inside a Zfunction module ?
    I tried the same (No syntax error) BUT when i activate the zFunction Module it throws the error:-
    +'' REPORT/PROGRAM statement missing, or program type is INCLUDE. " +

    Yes, I got the Answer -
    We Can we call a Standard Function Module inside a Zfunction module.
    But we need to make sure that the Function Groups are activated.
    FUNCTION ZFM_TEST_NESTED_FM.
    ""Local Interface:
    *"  EXPORTING
    *"     REFERENCE(EX_CONVERT_UPPER_CASE) TYPE  STRING
    CALL FUNCTION 'TERM_TRANSLATE_TO_UPPER_CASE'
      EXPORTING
      LANGU                     = SY-LANGU
        TEXT                         = 'gaurav'
    IMPORTING
        TEXT_UC                   = EX_CONVERT_UPPER_CASE
    EXCEPTIONS
       NO_LOCALE_AVAILABLE       = 1
       OTHERS                                    = 2
    IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
             WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    ENDFUNCTION.

  • Exception Raising in Function Module

    Hi,
    I am having a custom function module that calls a standard function module. Custom function module has following exception defined: manufacture unknown.
    Standard function module has enhancement sections that I implement. For a defined condition I have to raise an exception and return from the function module. However, the exception is not defined in function module.
    Standard exception OTHERS is available. Is it possible to raise OTHERS exception from the code? I have tried statement Raise OTHERS. But it has syntax errors.
    Regards,
    Bhavish Bhatia

    Hi,
    If you raise an exception not defined at exception's tab, sy-subrc will be returned with the number of exception OTHERS.
    Just with the sentece:
    RAISE ZEXCEPTION. (Assuming that ZEXCEPTION is not included at exception's tab).
    Regards,
    Pablo.

  • How to capture error message from standard function module

    Dear friends
    when i  execute standard function module in finance , i am getting error message , pls check the below screen shot,
    how to capture the below error message so that i have display in my webdynpro component
    Thanks
    Vijaya

    Hello Vijaya,
    Incase of BAPI's they have a return table parameter T_RETURN. Just read that return table to get the error message.
    Incase of normal function modules, there will be exceptions raised for the message used inside the function module. Just read the sy-subrc after the FM and based on the sy-subrc value find the respective exception raised.
    May be you can try like this, whenever the message is raised it will be stored in the system variable.
    CALL FM.
    check for the system variables.
    sy-msgid = Message ID of the latest message raised.
    sy-msgno = message number of the latest message raised.
    sy-msgty = message type of the latest message raised.
    sy-msgv1 = variable1 of the latest message raised.
    sy-msgv2 = variable2 of the latest message raised.
    sy-msgv3 = variable3 of the latest message raised.
    sy-msgv4 = variable4 of the latest message raised.
    Regards,
    TP

  • Customer : Exception 7 in function module VIEW_KUxxV

    Hi,
    While Billing facing this problem
    00 Customer : Exception 7 in function module VIEW_KUxxV
    10 The bill-to party could not be determined
    10 The payer could not be determined
    tx in advance
    Bhushan Kolte

    Hello Colleague;
    Please check the account group assignment to the partner functions in   
    transaction VOPA click on partner function button then environment      
    then Account group assignment. Please ensure that this is all configured
    correctly for the partners.                                                                               
    Please also review the note                                    
    -> 80233   Debit-side settlement: Customizing, error messages                                                                               
    In particular the section:                                              
    VF083: 'Customer &: Exception & in function module VIEW_KUAGV'                                                                               
    The error message is generated because of a program error that          
    has since been corrected. The correct error message is VP304,           
    'Customer belongs to customer group & and thus cannot be the            
    sold-to party'.                                                                               
    The partner roles in the customer master are incorrectly set, see       
    below.                                                                               
    Recommendation: Assign the customer an account group which              
    already fulfills these criteria. (In the standard system, this is       
    Account group '0001).                                                                               
    I hope this helps resolve the error.
    Regards
    Ruy Castro

Maybe you are looking for