BDC return message table problem

Dear All
We are doing BDCs for Excise Invoice (J1IS) and for Posting Excise
Invoice (J1IV) in Backgroung mode.
Here we are facing problem in BDC return message table (messtab) which
retruns the internal document number,errors or warning messages
in BDC rerurn message table.when we are doing BDC for J1IS in background
mode, no internal document number or error messages is generated in
BDC message table (ie in messtab), but the excise invoice is posted and database table
j_1iexchdr is updated with internal document number even though Accessible
value is '0'.Then we are taking this internal document nuber from databae
table j_1iexchdr passing to next BDC for J1Iv.Again after execution of BDC for J1IV
in background mode the same is happening as J1IS BDC return message table.
Is it the correct method of data retrieving from Database table ?
and we want to capture all types of error messages and internal document
no generated by BDC message table.How to capture BDC return messages.
Does Transactions J1Is and J1IV are executable for BDC ?
Thanks and Regards,
Ulhas

Hi
Use the following code to capture the return table values.
data: i_msg type standard table of bdcmsgcoll with header line.
LOOP AT I_MSG.
    CALL FUNCTION 'FORMAT_MESSAGE'
     EXPORTING
       ID              = I_MSG-MSGID
       LANG            = SY-LANGU
       NO              = I_MSG-MSGNR
       V1              = I_MSG-MSGV1
       V2              = I_MSG-MSGV2
       V3              = I_MSG-MSGV3
       V4              = I_MSG-MSGV4
     IMPORTING
       MSG             = W_STR
*  EXCEPTIONS
*    NOT_FOUND       = 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.
    WRITE:/ i_msg-msgnr,w_str.
  endloop.
Regards,
Vishwa.

Similar Messages

  • Problem in Issues/message table problem in RMMAIN

    Hello ,
    I have a problem in Issues/messages table in tx RMMAIN
    Problem:When i click on create "Issue" tab in RMMAIN,issue tab is disabled.
    Please let me know what i have to do?
    Regards,
    Neni

    Hi,
    Is this problem with a roadmap assigned with a project or a roadmap not yet assigned with a project?
    If this roadmap is assigned with a project, then:
    1. Go to tcode: SOLAR_PROJECT_ADMIN->select the project to which this roadmap is assigned.
    2. Go to tab->Project Standards->Select the tab "TABS".
    3. Check the visibility of the tab "Issues/Messages". It should be "Visible".
    If still the problem persists, then check whether you have this SAP_RMMAIN_EXE authorization.
    Check also that you have activated BC sets for service desk.
    SOLMAN40_SDESK_BASICFUNC_000
    SOLMAN40_SDESK_TPI_ACT_AST_001
    SOLMAN40_SDESK_ACTIONLOG_001
    SOLMAN40_SDESK_ACT_ADVCLOSE_001
    SOLMAN40_SDESK_TEXTTYPES_001
    Let me know if this not solved your issue.
    Regards,
    Sanjai

  • Posting Document num not captured in BDC message table

    I am working on a dataload program for Asset Transfer using tcode ABUMN. If I run ABUMN online, it will give me the message saying, 'Asset Transaction posted with document no. xxxxxx' after saving the trx. However, I can't capture this message while running the Call Trx/BDX program.
    I don't know why the message table is empty after a successful Call Transaction. If there is an error, it will capture it, but no meesage if the trx is successul.  I thought the table will capture any message whether it is a 'S' or 'E' or 'W'. It works for other tcodes, but not for tcode ABUMN. 
    DATA: T_MESSTAB LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.
    " Batch Input Message table
    call transaction C_TCODE using t_bdcdata
    MODE P_MODE
    UPDATE P_UPDATE
    MESSAGES INTO T_MESSTAB
    CAll Transcation is a standard code, so there is need to specify what types of message should be captured.
    I remember seeing some threads about the empty message table, and they suggest to use Parameter Id to capture the posting document #.  I tried  par id ' BLN' and still not able to see anything there.!!
    Can anyone help?
    Thank you in advance for any help. Greatly appreciated.

    Hi,
    I have come across with the same issue with transaction CS01. I have done it in a round away . I find an userexit after save , and export the  document number to memory and after the call transaction import the document number from memory and updated the BDCMSGCOLL table.
    May this info will be helpful to you.

  • BAPI return message problem

    Hi All,
    I created BAPI for Sale order the order created successfully but the return message S -success  is not coming- but the error message the sale order is already exist. How to solve this. I used the returnmessage for BAPI - BAPIRETURN1.
    Thanks,
    Suresh Maniarasu
    Edited by: suresh maniarasu on May 23, 2009 12:20 PM

    Well S  is not coming because there is no Success. Its giving error that Order already exists in system. Seems like straightforward condition.

  • BAPI return message

    Hi,
    I am trying to use 'BAPI_INQUIRY_CREATEFROMDATA2' to create Inquiries. It is creating successfully. But if there any pricing errors like 'Pricing error: Mandatory condition SRP5 is missing', it is not giving this return message but instead giving generic return message saying 'The sales document is not yet complete: Edit data'.
    If we use BDC to create the Inquiry, if the same problem happens, it does gives the specific return message ('Pricing error: Mandatory condition SRP5 is missing').
    Is there a way to get this specific return message from the BAPI as well?
    Thanks..
    Swetha.

    Hi Swetha ,
    BAPI is a kind of direct table update and BDC is creation of data thro' screen validation. So SAP take cares of all the validation when you run the BDC, but in case of BAPI, you will always get these kinds of message which are hard to interpreter. Also there is no way to manipulate these messages.
    Thanks,
    Mandar

  • How to track return message in file to proxy interface

    I am using file to proxy scenerio, where i will get my file from FTP and updating it into a table , after updating i am calling a program to Run BDC, in my method for proxy, after that i dont how to track return message , anyone please tell me suggestion regarding for this
    thanking you
    Sridhar

    Hi Sridhar,
    What exactly you want to track????
    my assumtion is the call will be of asyn mode, once the data reach the proxy method the XI job done and u can easly track that using monitoring.
    Regards,
    Phani

  • Getting Return Message : Make an entry in all required fields

    I need help.
    when passing objectid blank i am getting "Make an entry in all required fields" Return message.
    i checked through se16 --> PA0006 Table for all employeenumber objectid is blank.
    below is my code
    proxyaddchange.Connection.Open();
    // To refer to the subset that has Permanent Address details
                        string subType = "1";
                        // Get records till this date(yyyymmdd - format)
                        string timeIntervalHigh = "99991231";
                        //timeIntervalHigh = "31.12.9999";
                        // Get records from this date(yyyymmdd - format)
                        string timeIntervalLow = "18000101";
                        timeIntervalLow = "19850101";
                        proxyaddchange.Bapi_Employee_Enqueue(txtSapId.Text,out Return11);
                        proxyaddchange.Bapi_Addressemp_Change(txtSapId.Text,"","","",subType,"123456789",timeIntervalLow,timeIntervalHigh,out Return12);
                        proxyaddchange.Bapi_Employee_Dequeue(txtSapId.Text,out Return13);

    Adil,
    We are having the exact same problem as you have described.  Did you ever find an answer?
    We would appreciate any pointers you can provide.
    Thanks,
    Benny

  • Message table is not populating in CALL Transaction Method.....

    Hi,
    Im developing a BDC program for Tcode CV01N...Document link...Problem is when document link is created Successfully.then Message table is not getting populated with message....but this working fine when there is a error then it is population.
    what could be the problem...let me know..
    Thanks,
    kiran.

    Hi,
    Usually BDC replicates the standard transaction and captures all the messages that occur in the standard transaction.
    I would request you to check the standard transaction, execute it and see if there is any message captured in success mode. If no message is capture, then your BDC functions correct.
    If you still need do some processing based on the message table, you can do one thing:
    IF gt_message (your message table)  is initial.
    > Do some processing/append your custom messagesince this is successful
    Else.
    --> Do error processing - since this is error record.
    ENDIF.
    Hope this helps
    Regards
    Shiva

  • How to handle BAPI RETURN message?

    Hi ,
    I developed a bapi ,it is calling from java  application . i don't konw how to send the return message to java application .Pl any one help out this problem.
    Thanks&Regards,
    Pratap

    bapi's normally have a return parameter of type BAPIRETURN (structure) or BAPIRET (internal table) that contain the result messages from a bapi. So if you develop your own bapi you should add this kind of export parameter.
    regards,
    Hans

  • OM: CLEARING THE PROCESS MESSAGES TABLES

    제품 : MFG_OM
    작성날짜 : 2004-10-11
    OM: CLEARING THE PROCESS MESSAGES TABLES
    ==========================================
    PURPOSE
    OM 모듈을 어느 기간 사용하다 보면 process messages table -
    OE_PROCESSING_MSGS_TL/OE_PROCESSING_MSGS - 에 많은 data가 쌓여 있는것을
    확인할 수 있다.
    이 tables의 size를 줄임으로써 system performance 향상도 기대할 수 있다.
    Explanation
    OE_PROCESSING_MSGS_TL table은 Order Entry concurreny problem이 실행되거
    나 User interface process가 실행될때 발생하는 processing messages를
    저장하는 table이다.
    아래의 3가지 방법중 하나를 이용하여 process messagea tables
    - OE_PROCESSING_MSGS_TL/OE_PROCESSING_MSGS -의 정보를 delete 할 수 있다.
    1.SQL을 이용하여 table을 truncate
    (OE_PROCESSING_MSGS_TL를 먼저 truncate 시켜야 함을 주의)
    경고: 만약 truncate 방법을 선택했다면, 위 두 tables에 있는 모든 정보를
    잃게 될 것이다.
    2.OM application의 Process Messages form을 이용.
    Delete 될 messages는 사용자의 query에 따른다.
    Process Messages form에서 delete 하고자 하는 messages range를 설정하여
    조회한 후, 그 query된 messages만 delete 할 수 있다.
    1) Navigation: Orders, Returns>Process Messages
    2) Messages source를 선택
    3) Query를 원하는 Messages Request ID range를 입력
    4) Query를 원하는 Messages의 Order Number range를 입력
    5) Query를 원하는 Messages의 Request Date range를 입력
    6) Query를 원하는 Messages의 Program Name을 선택
    7) 특정한 Workflow Activity를 가지고 있는 Workflow Activity를 선택
    WF activity는 Order의 actual stage를 참조한다.
    8) Query를 원하는 Message의 Order Type을 선택
    9) Attribute를 선택, Default는 null
    10) Customer Name or Number를 선택
    11) Requester를 선택
    12) Find button을 선택
    Process Messages window displays.
    13) Query된 모든 messages를 delete 하기 위새 'Delete All' button을
    click.
    3.SQL을 이용하여 특정 일자전의 모든 process messages를 delete.
    (OE_PROCESSING_MSGS_TL 의 data를 먼저 delete 함을 명심!!)
    위 1번의 truncate option을 이용하면, SQL statement는 어떤 messages를
    delete하는지 전혀 식별할 수가 없다.
    만약 특정 process에 관련된 messages만을 delete하길 원하면 아래의
    truncate option 2를 이용한다.
    아래는 sample script이며, creation date를 근간으로 delete한다.
    만약 오늘 날짜(dd-mon-yy)를 입력하면 script는 7일전의 messages만을
    delete 할 것이다.
    ====================================================
    DECLARE
    l_date DATE := to_date('&delete_date');
    BEGIN
    Delete from oe_processing_msgs_tl
    Where creation_date <= l_date - 7;
    Delete from oe_processing_msgs
    Where creation_date <= l_date - 7;
    Exception
    WHEN Others THEN
    Null;
    END;
    After executing this script commit and exit from sqlplus.
    =======================================================
    Note: 꼭 기억해야 할 것은 'Delete/Truncate' 작업시 'OE_PROCESSING_MSGS'
    data를 delete 전에 꼭 'OE_PROCESSING_MSGS_TL' data를 먼저 delete
    해야 한다는 것이다.
    Example
    Reference Documents
    Note 123150.1

    You can include PSA's in process chain and schedule deletion periodically.
    You can include process type 'Deletion of Requests from PSA / Deletion of Requests from the Change Log   ' in process chain . After EHP1 upgrade you can define pattern like 2lis* or 0* it will delete all the PSA's starting with 2lis or 0 data source .
    Ravi

  • BDC coding for TABLE controls

    how to write BDC coding based on Table Controls...

    http://www.sap-basis-abap.com/abap/handling-table-control-in-bdc.htm
    How to deal with table control / step loop in BDC
    Steploop and table contol is inevitable in certain transactions. When we run BDC for such transactions, we will face the situation: how many visible lines of steploop/tablecontrol are on the screen? Although we can always find certain method to deal with it, such as function code 'NP', 'POPO', considering some extreme situation: there is only one line visible one the screen, our BDC program should display an error message. (See transaction 'ME21', we you resize your screen to let only one row visible, you can not enter mutiple lines on this screen even you use 'NP')
    Now with the help of Poonam on sapfans.com developement forum, I find a method with which we can determine the number of visible lines on Transaction Screen from our Calling BDC program. Maybe it is useless to you, but I think it will give your some idea.
    Demo ABAP code has two purposes:
    1. how to determine number of visible lines and how to calculte page number;
    (the 'calpage' routine has been modify to meet general purpose usage)
    2. using field symbol in BDC program, please pay special attention to the difference in Static ASSIGN and Dynamic ASSIGN.
    Now I begin to describe the step to implement my method:
    (I use transaction 'ME21', screen 121 for sample,
    the method using is Call Transation Using..)
    Step1: go to screen painter to display the screen 121, then we can count the fixed line on this screen, there is 7 lines above the steploop and 2 lines below the steploop, so there are total 9 fixed lines on this screen. This means except these 9 lines, all the other line is for step loop. Then have a look at steploop itselp, one entry of it will occupy two lines.
    (Be careful, for table control, the head and the bottom scroll bar will possess another two fixed lines, and there is a maximum number for table line)
    Now we have : FixedLine = 9
                  LoopLine  = 2(for table control, LoopLine is always equal to 1)
    Step2: go to transaction itself(ME21) to see how it roll page, in ME21, the first line of new page is always occupied by the last line of last page, so it begin with index '02', but in some other case, fisrt line is empty and ready for input.
    Now we have: FirstLine = 0
              or FirstLine = 1 ( in our case, FirstLine is 1 because the first line of new page is fulfilled)
    Step3: write a subroutine calcalculating number of pages
    (here, the name of actual parameter is the same as formal parameter)
    global data:    FixedLine type i, " number of fixed line on a certain screen
                    LoopLine  type i, " the number of lines occupied by one steploop item
                    FirstLine type i, " possbile value 0 or 1, 0 stand for the first line of new                                                               " scrolling screen is empty, otherwise is 1
                    Dataline  type i, " number of items you will use in BDC, using DESCRIBE to get
                    pageno    type i, " you need to scroll screen how many times.
                    line      type i, " number of lines appears on the screen.
                    index(2)  type N, " the screen index for certain item
                    begin     type i, " from parameter of loop
                    end       type i. " to parameter of loop
    *in code sample, the DataTable-linindex stands for the table index number of this line
    form calpage using FixedLine type i (see step 1)
                       LoopLine  type i (see step 1)
                       FirstLine type i (see step 2)
                       DataLine  type i ( this is the item number you will enter in transaction)
              changing pageno    type i (return the number of page, depends on run-time visible                                                                             line in table control/ Step Loop)
              changing line      type i.(visible lines one the screen)
    data: midd type i,
          vline type i, "visible lines
    if DataLine eq 0.
       Message eXXX.
    endif.
    vline = ( sy-srows - FixedLine ) div LoopLine.
    *for table control, you should compare vline with maximum line of
    *table control, then take the small one that is min(vline, maximum)
    *here only illustrate step loop
    if FirstLine eq 0.
            pageno = DataLine div vline.
            if pageno eq 0.
               pageno = pageno + 1.
            endif.
    elseif FirstLine eq 1.
            pageno = ( DataLine - 1 ) div ( vline - 1 ) + 1.
            midd = ( DataLine - 1 ) mod ( vline - 1).
            if midd = 0 and DataLine gt 1.
                    pageno = pageno - 1.
            endif.
    endif.
    line = vline.
    endform.
    Step4 write a subroutine to calculate the line index for each item.
    form calindex using Line type i (visible lines on the screen)
                        FirstLine type i(see step 2)
                        LineIndex type i(item index)
              changing  Index type n.    (index on the screen)
      if  FirstLine = 0.
            index = LineIndex mod Line.
            if index = '00'.
                    index = Line.
            endif.
      elseif FirstLine = 1.
            index = LineIndex mod ( Line - 1 ).
            if ( index between 1 and 0 ) and LineIndex gt 1.
                    index = index + Line - 1.
            endif.
            if Line = 2.
                    index = index + Line - 1.
            endif.
    endif.
    endform.
    Step5 write a subroutine to calculate the loop range.
    form calrange using Line type i ( visible lines on the screen)
                        DataLine type i
                        FirstLine type i
                        loopindex like sy-index
            changing    begin type i
                        end type i.
    If FirstLine = 0.
       if loopindex = 1.
            begin = 1.
            if DataLine <= Line.
                    end = DataLine.
            else.
                    end = Line.
            endif.
       elseif loopindex gt 1.
            begin = Line * ( loopindex - 1 ) + 1.
            end   = Line * loopindex.
            if end gt DataLine.
               end = DataLine.
            endif.
       endif.
    elseif FirstLine = 1.
      if loopindex = 1.
            begin = 1.
            if DataLine <= Line.
                    end = DataLine.
            else.
                    end = Line.
            endif.
      elseif loop index gt 1.
            begin = ( Line - 1 ) * ( loopindex - 1 ) + 2.
            end =   ( Line - 1 ) * ( loopindex - 1 ) + Line.
            if end gt DataLine.
                    end = DataLine.
            endif.
      endif.
    endif.
    endform.
    Step6 using field sysbol in your BDC, for example: in ME21, but you should calculate each item will correponding to which index in steploop/Table Control
    form creat_bdc.
    field-symbols: <material>, <quan>, <indicator>.
    data: name1(14) value 'EKPO-EMATN(XX)',
          name2(14) value 'EKPO-MENGE(XX)',
          name3(15) value 'RM06E-SELKZ(XX)'.
    assign:         name1 to <material>,
                    name2 to <quan>,
                    name3 to <indicator>.
    do pageno times.
    if sy-index gt 1
    *insert scroll page ok_code"
    endif.
            perform calrange using Line DataLine FirstLine sy-index
                             changing begin end.
    loop at DataTable from begin to end.
            perform calindex using Line FirstLine DataTable-LineIndex changing Index.
            name1+11(2) = Index.
            name2+11(2) = Index.
            name3+12(2) = Index.
            perform bdcfield using <material> DataTable-matnr.
            perform bdcfield using <quan>     DataTable-menge.
            perform bdcfield using <indicator> DataTable-indicator.
    endloop.
    enddo.
    Cheers
    VJ

  • Return message isse while using "API_RE_CN_CHANGE"

    Hi Experts
    I have an issue in capturing return messages while using API_RE_CN_CHANGE to alter a real estate contract.follows is the problem description -
    API_RE_CN_CHANGE is called to change a realestate contract(insert a condition) with key to identify the contract as "Object instance of the contract". In this case, the return message form the API is empty. this is how i use the API function module -
    CALL METHOD cf_recn_contract=>find
        EXPORTING
          id_bukrs         = bukrs
          id_recnnr        = recnnr
          id_activity       = reca1_activity-change    " Change mode
          if_auth_check = abap_false
          if_enqueue    = abap_true                " LOck the contract
        RECEIVING
          ro_instance   = lo_contract              " getting the contract object instance
        EXCEPTIONS
          error               = 1
          OTHERS        = 2.
        CALL FUNCTION 'API_RE_CN_CHANGE'
          EXPORTING
           id_bukrs                  = g_t_contracts-bukrs      " Not using this field
          id_recnnr                 = g_t_contracts-recnnr      " Not using this field
            io_object                 = lo_contract
            it_term_sr_sales          = lt_term_sr_sl_intc
            it_condition              = lt_condition_intc
            if_test_run               = g_testrun_flg
            if_msglist_instead_of_exc = 'X'
            io_msglist                = lo_msglist_t    " Error messages list
         IMPORTING
           EF_STORED                       = ef_stored
         EXCEPTIONS
           ERROR                           = 1
           OTHERS                          = 2
    convert messages to bapi return list
        CALL METHOD lo_msglist_t->get_list_as_bapiret
          IMPORTING
            et_list = g_t_return[].  " Read the messages in internal table
    Here the method does not give the return message as import parameter. but all these stuff works if i call API_RE_CN_CHANGE using company code(BUKRS) & Contract number(RECNNR).
    Can anybody suggest a solution.
    Thanks
    Mukundhan

    Hello Mukundhan
    While function module API_RE_CN_CHANGE may work this is not the way how I would change a contract condition. Since you are obviously working with RE-FX and dealing with a contract instance (IF_RECN_CONTRACT) I would apply the following logic:
    DATA:
      lo_contract              TYPE REF TO if_recn_contract,
      lo_condition_Mngr    TYPE REF TO if_recd_condition_manager,
      lo_condition             TYPE REF TO if_recd_condition.
    " Create contract instance
      CALL METHOD cf_recn_contract=>find
        EXPORTING
        RECEIVING
          ro_instance = lo_contract
       EXCEPTIONS
         others = 1.
    " Get condition manager from contract
      lo_condition_mngr =
            lo_contract->IF_RECD_HAS_CONDITION~GET_CONDITION_MNGR( ).
    " Insert a new condition
       CALL METHOD lo_condition_mngr->insert_condition
         EXPORTING
        RECEIVING
          ro_condition = lo_condition.
    Regards
      Uwe

  • Question in invoking a bpel process from adf (how to return a table)

    hi all,
    i have developed a bpel process that checks customer name and if the customer name is valid , it will go to query a table of product and send this data to the client (jsf)
    In my bpel process ,there are two services
    1. Getcustomer service--> this service is developed by java web services that checks if the customername ='john' and it will return true and then query the product deta
    2. Product serverice--> this service is developed using entity ejb class first and then created sesssion bean , exposing this seesion bean as a ejb web serive that can query a product table in the database.
    In the syschronous process
    1. receive input (customer name)
    2. assigncustomer
    3. invoke_customer-->if =john----> Getcustomer service
    4. switch---->if true--->
    5. invoke_product ---> product service that can return a table of product detail
    6. assignproductdetail
    7. replyoutput to the client ( i could see the result of the detail of product on the bpel control , it seemed fine)
    i could deploy this bpel process sucessfully without errors and i copied the wsdl of this bpel process
    8. i created an adf application and put this wsdl link into the web service control that i created so that i could see the data control
    However,
    Under the data control tab......
    product------>(data control)
    process(string)...operation
    parameters
    ----input
    <----String (result)
    the question is did i create the wrong bpel process because the result that return is String why when the bpel process is mapped into data control it looked like this.
    why i can not see any collection of product or any parameter of product could anyone give me some advices???
    Therefore when i developed jsf page i fill the input value customer name -- and it returned nothing......please help i would highly appreicated.
    datacontrol.xml file
    <?xml version="1.0" encoding="UTF-8" ?>
    <pageDefinition xmlns="http://xmlns.oracle.com/adfm/uimodel"
    version="10.1.3.39.84" id="untitled1PageDef"
    Package="oracle.view.pageDefs">
    <parameters/>
    <executables>
    <variableIterator id="variables">
    <variable Type="java.lang.String" Name="process_input"
    IsQueriable="false"/>
    <variable Type="java.lang.String" Name="process_Return"
    IsQueriable="false" IsUpdateable="0"
    DefaultValue="${bindings.process.result}"/>
    </variableIterator>
    </executables>
    <bindings>
    <methodAction id="process" MethodName="process" RequiresUpdateModel="true"
    Action="999" IsViewObjectMethod="false"
    DataControl="product_customer" InstanceName="product_customer"
    ReturnName="product_customer.methodResults.product_customer_process_result">
    <NamedData NDName="input" NDType="java.lang.String"
    NDValue="${bindings.process_input}"/>
    </methodAction>
    <attributeValues id="input" IterBinding="variables">
    <AttrNames>
    <Item Value="process_input"/>
    </AttrNames>
    </attributeValues>
    <attributeValues id="process1" IterBinding="variables">
    <AttrNames>
    <Item Value="process_Return"/>
    </AttrNames>
    </attributeValues>
    </bindings>
    </pageDefinition>
    <?xml version="1.0" encoding="UTF-8" ?>
    <JavaBean xmlns="http://xmlns.oracle.com/adfm/beanmodel" version="10.1.3.39.84"
    id="product_customer" BeanClass="product_customer"
    isJavaBased="false">
    <MethodAccessor IsCollection="false" Type="java.lang.String" id="process"
    ReturnNodeName="Return">
    <ParameterInfo id="input" Type="java.lang.String" isStructured="false"/>
    </MethodAccessor>
    </JavaBean>

    hi, i just can not post the long information...test
    ProductSession.wsdl
    <?xml version = '1.0' encoding = 'UTF-8'?>
    <definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://oracle/" name="ProductSessionWebServiceService" targetNamespace="http://oracle/">
    <types>
    <schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:soap11-enc="http://schemas.xmlsoap.org/soap/encoding/" targetNamespace="http://oracle/" elementFormDefault="qualified">
    <complexType name="Product">
    <sequence>
    <element name="brand" type="string" nillable="true"/>
    <element name="price" type="float" nillable="true"/>
    <element name="description" type="string" nillable="true"/>
    <element name="category" type="string" nillable="true"/>
    <element name="name" type="string" nillable="true"/>
    <element name="prodid" type="long" nillable="true"/>
    </sequence>
    </complexType>
    <element name="mergeEntity" type="tns:mergeEntity"/>
    <complexType name="mergeEntity">
    <sequence>
    <element name="Object_1" type="anyType" nillable="true"/>
    </sequence>
    </complexType>
    <element name="mergeEntityResponse" type="tns:mergeEntityResponse"/>
    <complexType name="mergeEntityResponse">
    <sequence>
    <element name="return" type="anyType" nillable="true"/>
    </sequence>
    </complexType>
    <element name="persistEntity" type="tns:persistEntity"/>
    <complexType name="persistEntity">
    <sequence>
    <element name="Object_1" type="anyType" nillable="true"/>
    </sequence>
    </complexType>
    <element name="persistEntityResponse" type="tns:persistEntityResponse"/>
    <complexType name="persistEntityResponse">
    <sequence>
    <element name="return" type="anyType" nillable="true"/>
    </sequence>
    </complexType>
    <element name="queryProductFindAll" type="tns:queryProductFindAll"/>
    <complexType name="queryProductFindAll">
    <sequence/>
    </complexType>
    <element name="queryProductFindAllResponse" type="tns:queryProductFindAllResponse"/>
    <complexType name="queryProductFindAllResponse">
    <sequence>
    <element name="return" type="tns:ListOfProduct" nillable="true"/>
    </sequence>
    </complexType>
    <complexType name="ListOfProduct">
    <sequence>
    <element name="item" type="tns:Product" minOccurs="0" maxOccurs="unbounded"/>
    </sequence>
    </complexType>
    <element name="removeProduct" type="tns:removeProduct"/>
    <complexType name="removeProduct">
    <sequence>
    <element name="Product_1" type="tns:Product" nillable="true"/>
    </sequence>
    </complexType>
    <element name="removeProductResponse" type="tns:removeProductResponse"/>
    <complexType name="removeProductResponse">
    <sequence/>
    </complexType>
    </schema>
    </types>
    <message name="ProductSessionWebService_mergeEntity">
    <part name="parameters" element="tns:mergeEntity"/>
    </message>
    <message name="ProductSessionWebService_mergeEntityResponse">
    <part name="parameters" element="tns:mergeEntityResponse"/>
    </message>
    <message name="ProductSessionWebService_persistEntity">
    <part name="parameters" element="tns:persistEntity"/>
    </message>
    <message name="ProductSessionWebService_persistEntityResponse">
    <part name="parameters" element="tns:persistEntityResponse"/>
    </message>
    <message name="ProductSessionWebService_queryProductFindAll">
    <part name="parameters" element="tns:queryProductFindAll"/>
    </message>
    <message name="ProductSessionWebService_queryProductFindAllResponse">
    <part name="parameters" element="tns:queryProductFindAllResponse"/>
    </message>
    <message name="ProductSessionWebService_removeProduct">
    <part name="parameters" element="tns:removeProduct"/>
    </message>
    <message name="ProductSessionWebService_removeProductResponse">
    <part name="parameters" element="tns:removeProductResponse"/>
    </message>
    <portType name="ProductSessionWebService">
    <operation name="mergeEntity">
    <input message="tns:ProductSessionWebService_mergeEntity"/>
    <output message="tns:ProductSessionWebService_mergeEntityResponse"/>
    </operation>
    <operation name="persistEntity">
    <input message="tns:ProductSessionWebService_persistEntity"/>
    <output message="tns:ProductSessionWebService_persistEntityResponse"/>
    </operation>
    <operation name="queryProductFindAll">
    <input message="tns:ProductSessionWebService_queryProductFindAll"/>
    <output message="tns:ProductSessionWebService_queryProductFindAllResponse"/>
    </operation>
    <operation name="removeProduct">
    <input message="tns:ProductSessionWebService_removeProduct"/>
    <output message="tns:ProductSessionWebService_removeProductResponse"/>
    </operation>
    </portType>
    <binding name="ProductSessionWebServiceSoapHttp" type="tns:ProductSessionWebService">
    <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
    <operation name="mergeEntity">
    <soap:operation soapAction=""/>
    <input>
    <soap:body use="literal"/>
    </input>
    <output>
    <soap:body use="literal"/>
    </output>
    </operation>
    <operation name="persistEntity">
    <soap:operation soapAction=""/>
    <input>
    <soap:body use="literal"/>
    </input>
    <output>
    <soap:body use="literal"/>
    </output>
    </operation>
    <operation name="queryProductFindAll">
    <soap:operation soapAction=""/>
    <input>
    <soap:body use="literal"/>
    </input>
    <output>
    <soap:body use="literal"/>
    </output>
    </operation>
    <operation name="removeProduct">
    <soap:operation soapAction=""/>
    <input>
    <soap:body use="literal"/>
    </input>
    <output>
    <soap:body use="literal"/>
    </output>
    </operation>
    </binding>
    <service name="ProductSessionWebServiceService">
    <port name="ProductSession" binding="tns:ProductSessionWebServiceSoapHttp">
    <soap:address location="http://home-f045512354:8888/testproduct/ProductSession"/>
    </port>
    </service>
    </definitions>

  • Return Messages for a BAPI run in Background

    Hi all,
    I am running a BAPI( BAPI_SALESORDER_CHANGE ) in Background task, It works fine and updates the Sales order but i dont get any return messages.But based on the return messages i need to show up on the report which orders got updated and which are not.....
    Can anyone help me how can i get the return messages when i run a BAPI in background task......

    Thanks for the quick response....I think you got me wrong...I am not running the program as a background job....I am running only the bapi in background task as below.....
                CALL FUNCTION 'BAPI_SALESORDER_CHANGE'
                   IN BACKGROUND TASK AS SEPARATE UNIT
                     EXPORTING
                          salesdocument    = v_vbeln
                          order_header_in  = it_bapisdh1
                          order_header_inx = it_bapisdh1x
                     TABLES
                          return           = it_return
                          partnerchanges   = it_bapiparnrc.
    When the bapi runs as a background task i dont get any return messages in it_return but the sales order gets updated....
    But i will have to capture the return messages as well....How can i achieve that ?

  • Assign error with complex type return message

    Dear all,
    I have an axis web service with complex type return message. When I invoke the web service, and try to assign one element of the result to other variable, it fails with following error message(BPEL Fault:{http://schemas.xmlsoap.org/ws/2003/03/business-process/}selectionFailure{}
    The invoking web service and assignment BPEL source is as follows:
    <invoke name="registerConference" partnerLink="conferenceCenter" portType="tns:ConfArrangementPort" operation="Conference_Register" inputVariable="registerInput" outputVariable="registerOutput"/>
    <copy>
    <from variable="registerOutput" part="Conference_RegisterReturn" query="/Conference_RegisterReturn/confcity"></from>
    <to variable="bookHotelInput" part="si" query="/si/city"/>
    </copy>
    I tunneled the response SOAP message:
    ==== Response ====
    HTTP/1.1 200 OK
    Content-Type: text/xml; charset=utf-8
    Date: Sun, 31 Oct 2004 08:28:27 GMT
    Server: Apache Coyote/1.0
    Connection: close
    <?xml version="1.0" encoding="UTF-8"?>
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <soapenv:Body>
    <ns1:Conference_RegisterResponse soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns1="http://conference.sjtu.edu">
    <ns1:Conference_RegisterReturn href="#id0"/>
    </ns1:Conference_RegisterResponse>
    <multiRef id="id0" soapenc:root="0" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns2:ConfInfo" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns2="http://conference.sjtu.edu">
    <confcity xsi:type="xsd:string">star</confcity>
    <confend xsi:type="xsd:string">20041120</confend>
    <confstart xsi:type="xsd:string">20041116</confstart>
    </multiRef>
    </soapenv:Body>
    </soapenv:Envelope>
    ==============
    However, when i check the invoke activity audit trail, it return the following info:
    <messages>
    <registerInput>
    <part xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" name="gi">
    <gi xmlns="http://conference.sjtu.edu">
    <attendeename xmlns="">ss</attendeename>
    <confname xmlns="">hh</confname>
    </gi>
    </part>
    </registerInput>
    <registerOutput>
    <part xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" name="Conference_RegisterReturn">
    <ns1:Conference_RegisterReturn xmlns:ns1="http://conference.sjtu.edu" href="#id0" />
    </part>
    </registerOutput>
    </messages>
    The detailed value of the return message lost, only leaving the href. Can I find the desired value again? should I try another XPATH expression? should I parse the result from the SOAP message directly? Or it's a problem of the system itself?
    Hope you can do me a favor, thanks.

    From Axis's user guide: RPC services default to the soap section 5 encoding rules, objects will be encoded via "multi-ref" serialization. Document services do not use any encoding (so in particular, you won't see multiref object serialization or SOAP-style arrays on the wire)
    May be I should try document service style instead of RPC. Thanks for your reply.

Maybe you are looking for

  • How can I add a new record in an Access table.

    How can I add a new record in access with LabView, using activex, without using the database connectivity tools. Message Edited by Noawena on 05-16-2008 09:25 AM

  • Clicking a Phone Number from a voicemail in Outlook 2013

    I was running Outlook 2010 and Lync 2013 on my Windows 8.1 machine. This was working great until I upgraded to Outlook 2013 (Office 365 Home). Now, when I click a phone number link at the bottom of a voicemail in Outlook 2013, I get this message Micr

  • Home hub 3 received instead of Home hub 4

    Hi all, I am a new broaband customer and my broadband got activated on 29-1-2014 (technically). I was supposed get BT home hub 4 on that day. For some strange reason I didnt receive it. So I called BT customer service in the evening and the advicer r

  • Destination country in a Sales Order

    Hi, I am not clear with one of my earlier issues. I want to know from where does the destination country comes in calculation of MWST tax condition type in a sales order. In my case I have a sales order for one time customer for which the destination

  • Moving Mom from a MacBook to an iPad

    I'm thinking of giving my iPad to my mom to replace her aging hand-me-down MacBook I gave here years ago. Just had a couple questions about how to get everything from her MacBook to the iPad. Looks like that even though her MacBook's old, you only ne