Capturing error messages from Oracle EBS APIs when using Oracle Apps Adapter

We are using Oracle applications adapter to call Oracle EBS (both R11.5 and R12) APIs. I want to understand the best practice around error handling when using Oracle Apps Adapter to call Oracle EBS.
Here are some observations:
1. Most of the APIs return X_RETURN_STATUS and X_MSG_DATA containing the status and messages if any.
2. If the MSG COUNT is 1 then X_MSG_DATA contains the message, if MSG COUNT is > 1. X_MSG_DATA is empty.
We know that when calling the API directly from PL/SQL, we need to loop through FND_MSG_PUB to fetch all messages when there are more than 1. How do we achieve the same using Apps Adapter as Apps Adapter generates the PL/SQL block to call the API dynamically at runtime.
In some APIs, which have table/rec types as input or output parameters, Apps Adapter generates a wrapper package to do conversion from SQL--> PL/SQL and viceversa. In this case the adapter calls the custom package generated which internally calls the API. For these APIs we were able to put the logic to loop through FND_MSG_PUB and return a concatenated string as value of X_MSG_DATA.
But what should we do for the APIs which do NOT have a rec/table type as input or output, in which case the Apps Adapter directly calls the API and there is no intermediate custom package?
How are others handling this?

Please see the section "Handling Functional Errors" in the below link
Oracle Fusion Middleware Adapter for Oracle Applications User's Guide

Similar Messages

  • Can you watch video apps on an hdtv from an ipad 3 when using an hdmi adapter?

    Can you watch video apps on an HDTV from an ipad 3 when using an hdmi adapter?

    Yes, unless the developer of the app specifically prohibits it.The Apple Video app works fine.

  • Error out from MB01 and MIGO when using BADI "INSPECTIONLOT_UPDATE"

    Hi all:
    We are currently implementing Quality Level with Dynamic Modification Rule using SAP Quality Management module.
    We are trying to change stage level by modifying the field PRSTUFENAE of the table QDQL (Material Quality Level) using BADI: INSPECTIONLOT_UPDATE, new logic is successful for a goods receipt with a single lot if we use COMMIT WORK within BADI, but an error occurs from MB01 and MIGO when we are receiving multiple lots in same goods receipt.
    Have anyone else got across something similar?
    Thank you in advance,
    Regards
    Daniel Guillen

    Hi Paul,
    First of all, there is a How To Guide for RUNLOGIC implementation. It uses BAdI approach as well, but doesn't call WRITE_BACK that can change from version to version.
    Second, you should be able to see that method GET_DELTA is being called under
    IF D_CALC_DELTA eq abap_true and df_bw_delta eq abap_false.
    D_CALC_DELTA is set to TRUE only in Method WRITE_BACK_INT; I hope you aren't using that one.
    DF_BW_DELTA is taken from DM Package parameters. Can you check what you have there or put just a break-point in PACKAGE_LOGIC_1 to see what value those 2 variables have?
    Hope this helps,
    Gersh

  • 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

  • Capture error messages from stored procedure calls

    Hi there,
    How do I capture a stored procedure calls error messages provided the stored procedures does not have output parameters? This questions applies to Oracle 7.3.4 stored procedures calls.
    TQ
    Neo

    There are two parts.
    The stored proc must 'throw' an exception.
    And java must catch it.
    You probably already have the java part. That is the catch(SQLException).
    As for the stored proc you can use the following search string in the jdbc forum
    raise oracle
    You need to use 'raise' in the stored proc but I am not sure of the exact form, but one of the threads using the above search string is likely to have it.

  • I am getting "this connection is untrusted" error messages from Firefox for Desktop when I try to log into certain websites, such as Facebook. Why?

    I get this error message "this connection is untrusted" after I re-installed Windows Vista and all my programs. This happened before but after reformatting my computer everything was good. Why am I getting this? Could it be a virus of some sort? It happens when I use Windows Internet Explorer as well....

    Hi,
    Please check the time/date on the PC. The ideal setting would be to '''Automatically synchronize ...''' in Date and Time > Internet Time.

  • Getting error message while trying to Develop Applications using Oracle ADF

    I have just started learning Oracle ADF. I have installed Oracle ADF 11g (with Oracle 11g database) in my PC. I am an experienced Oracle Forms Developer. While trying to run the application after development in
    Oracle ADF I get the following error message :
    This Project has no default run target. Please choose the file you want to run. Default Run Target:
    and then it gives you a browse option to select default run target file.
    This message always come in any type of application I want to write in Oracle ADF. Can you please tell me what is the possible fix to this issue.
    Installation of Oracle ADF did not show any error message. Oracle Middleware and webserver 11g has been installed before the installation of Oracle ADF 11g.
    I will appreciate any feedback for this. Thank you.

    Let me add some missing information.
    Right clicking a page or java class and selecting run or debug is ONE way to start the application with the page selected or the class selected (if the class can be started).
    Sometimes it's more desirable to always start the application using the same way (e.g. start page in a unbounded task flow) regardless where you are currently working on. So you don't need to find the page in the application navigator.
    For this you can use the 'Run configurations'. These (as you can have more then one) can be used to tell the framework which page or class to start if you hit the run or debug toolbar button. You can edit or create run configurations by using the menu 'run->choose active configuration->manage run configuration' or you open the project properties of the viewcontroller project and select 'run/debug/profile'. Then you get the dialog to edit or create a run configuration.
    Select default (this won is created for you by the framework) and click 'edit'. Then you see the launch settings. If you are using adf task flows you can e.g. select the adfc-config.xml file as 'default run target'. This allows you to select the page to start in the 'ADF Task FLow' sub node. If you now uncheck the 'attempt to run active file...' the framework always start the page you selected from the unbounded task flow.
    Timo

  • Capture error messages from CLASS cx_document_bcs

    Hi ,
    I am using the class CL_BSC for sending mail with attachment,i need to disply the messge captured in the cx_document_bcs in spool log.
      TRY.
          lo_document->add_attachment(
          EXPORTING
          i_attachment_type = 'PDF'
          i_attachment_subject = 'Test*     
          i_attachment_subject = i_attachment_subject1
          i_att_content_hex = lt_att_content_hex ).
        CATCH cx_document_bcs INTO lx_document_bcs.
      ENDTRY.
    How to disply the messges in Spool,which are captured in the cx_document_bcs.
    Please advise.
    Thanks
    Kiran

    Hi Kiran,
    Catch exceptions like this.
    TRY.
    CATCH cx_document_bcs INTO lx_document_bcs.
         MESSAGE Ennn(ZXX).
    CLEANUP.
    ENDTRY.
    There  you can check diffrent exceptions like this.. from class CX_DOCUMENT_BCS..
    ERROR_TYPE parameter of lx_document_bcs contains the below values.. or you can use message parameters. Check constructore parameters in that class.
    OBJECT_NOT_EXISTS
    KPRO_ERROR
    MIME_NOT_AVAILABLE
    Based on the code you can give meaning ful message.

  • Error message: incompatib​le image size when using IMAQ in image processing

    I want to do low pass filter and convolution on an acquired image. When I connect the image to the VI, the message: incompatible image size appears. I have tried to set the border to 3 in IMAQ create, but it does not help. Anyone know how to solve this problem?

    A couple things might be causing this problem-
    1) The convolution matrix is bigger than 7x7, or
    2) You have created an image, but there is not yet anything in the buffer
    You can check number 2 by doing a winDraw window just before you do the convolution.

  • Error message "Enter a cust numb" when using BAPIBUSISM007_CREATEFROMDATA

    Hello,
    We would like to create Business Partner (SAP-BP module) with the standard SAP BAPI "BAPIBUSISM007_CREATEFROMDATA", but we always got the message:
    Type A
    ID: R11
    Mess: "Enter at least one number for the business partner"
    Even if we create have a partner group 0002 to assign external partner number and we enter a number in the field external partner number:
    Exemple:
    PARTNERGROUP                    0002
    BUSINESSPARTNEREXTERN           7000173  -> number which does not exist in BUT000.
    Does someone have already got this message and knows how to solve this issue ?
    Thanks a lot,
    Maxime
    Edited by: Maxime  VALLEE on Dec 22, 2008 4:30 PM

    Hi,
    In fact this link below is not for Business partner but martgage loan which is not what I am looking for.
    I would like to create in mass business partner with the standard BAPI :
    BAPIBUSISM007_CREATEFROMDATA
    It seems that this BAPI is not able to create business partner, but the BAPI "BAPI_BUPA_FS_CREATE_FROM_DATA2" works... The only issue is that the latter BAPI does not enable us to create Sales view and vendor view on the business partner.
    Thanks in advance if you have a clue or a solution...
    MV

  • Error message from Application Server

    Hi All,
    Is it possible to capture a descriptive error message from the Application server when we try to transfer a file from SAP and it does not get written to the application server.
    I know it is possible to catch the standard catchable runtime exceptions, but I also would like to know if the file transfer fails in any other conditions which do not result in runtime dumps, nevertheless I should be able to get the error message.
    Thanks in advance,

    hi,
    it is not possible to find the run time errors in application server while writing the file.using sy-subrc only we can find out. where it is writing correctly like this.
    we can see all the application server files in this Tcode: AL11

  • Database Connector error: 'cannot obtain error message from server'

    I am using Oracle stored procedures and I have used IN parameters for input and INOUT parameter of REF_CURSOR TYPE for returning resultset in Crystal Report 2008 by using package. Now when I am trying to add the package in the Crystal Report, parameter input box prompts, I enter some values and gets Database Connector error: 'cannot obtain error message from server'.
    But when I do not use INPUT parameters and use OUT parameter of REF_CURSOR type it runs well without any issues.
    We are using ODBC connection for Oracle.
    Kindly suggest.

    Hello,
    Search the Knowledge Base for "oracle store procedures" and you'll find a document on how to write a SP so CR can use them.
    Thank you
    Don

  • Error message from my time capsule

    I get the following error message from my time capsule when I try to backup my HD:
    There was a problem connecting to the server "XXXXX".
    Check the server name or IP address, and then try again. If you continue to have problems, contact your system administrator.

    You have lost all network connection to the TC. This is not so unusual since Mavericks.
    You have listed hardware but the more important part is OS you are running.
    Have you done a restart of the TC? That often gets it going.
    A full network restart in correct order is next. With everything off.. power up modem.. wait 2min.. power up TC.. wait 2min. Power up computers etc.
    Still no luck. Factory reset the TC and start over.

  • Getting more detailed error messages from Adobe Acrobat

    Hi
    Is there a way to get more detailed error messages from Adobe Acrobat reader when he detecs an error in a PDF file?
    My program generates PDF files. There is one that throws an error in Acrobat while GhostScript and Google Chromes PDF Reader display it correctly.
    I wonder where the error is, but the error message is just "expected dictionary", when I hold CTRL and press "OK".
    GhostScript usually gives useful error messages, but it has no error this time.

    More specifically, Acrobat Pro!
              - Dov

  • Capturing Runtime Error Messages From ODI (Sunopsis) Operator

    Hi
    I have following question
    1) I want to capture error message of an activity that has failed during execution
    I have created a variable and used following query to capture it
    select T.TXT
    from <%=odiRef.getObjectName("L","SNP_EXP_TXT","D")%> T,
    <%=odiRef.getObjectName("L","SNP_STEP_LOG","D")%> S
    where S.SESS_NO = <%=odiRef.getSession("SESS_NO")%>
    and S.I_TXT_STEP_MESS = T.I_TXT
    order by T.TXT_ORD asc
    unfortunatly am not getting entire error message ,instead am getting first row of the error from SNP_EXP_TXT table.How to get entire error message in a variable.
    2) How can we know scenario name if we know session number?
    Please provide your inputs
    Thanks
    Baji

    Hi,
    Don't use this query, it won't work.
    Use the API GetPrevStepLog, it is simple and better...
    Take a look at:
    Use the http://www.oracle.com/technology/products/oracle-data-integrator/10.1.3/htdocs/documentation/oracledi_api_reference.pdf
    For the session name, just use getSession() Method ( too is at the pdf)
    I hope be helpful.
    Cezar
    Edited by: Cezar Santos on 21/11/2008 09:16

Maybe you are looking for

  • Curve 8520- email and bbm not working

    Hello, Over a month ago i started having this problem with my blackberry curve. My bbm wont send or receive messages, at all. So I deleted my only contact which was hubby, and tried to add him again, but the request is just pending and he hasnt gotte

  • Keyboard problems in xorg/gnome

    has anyone noticed any weird keyboard behavior recently? i just updated everything last night and started getting crazy keyboard actions. the layout is correct, but my typing is really garbled. letters appear out of order or keypresses are skipped ov

  • Playing FLV in a layer - control problems

    I have several FLV files that I need to play in a layer that is hidden when page loads. If I set 'autoplay' in the parameters for the FLV player in my flash file, it of course, starts to play the video when the page loads (but is not seen). Once the

  • Unlock cellphone

    A friend fr. UK gave me a nokia 3210, orange. I was trying to use here in the US using t-mobile SIM card, but i think it needs to be unlocked, or any ideas why the phone wont work here in the US? Pls. help me troubleshoot.

  • Multiple timezones on weblogic 10.3.6 and forms 11.1.1.6

    Hi I have installed weblogic 10.3.6 and forms 11.1.1.6. I am trying to setup different forms environments with different time zones within the same installation of forms 11.1.1.6. I have 2 environments testau and testnz. testnz.env has a parameter na