Getting error while calling two BAPIs

Dear ABAPers,
I'm stuck into a problem.
I have a situation where I'm using BAPI, WS_DELIVERY_UPDATE to update a delivery.
Then after this I have post a GR so for that I'm using BAPI_GOODSMVT_CREATE.
Now my problem is when I'm calling BAPI_GOODSMVT_CREATE it gives me an error
"CODE is not supported by BAPI2017_GOODSMVT_CREATE". I check my code thoroughly, but didn't find anything in that
which was wrong.
Again, if I try to do the same, in debugging mode, its processes me in the way it should, without any error.
Also, If I use a hard coded DELAY of 2 mins, in my program after WS_DELIVERY_UPDATE, it again processes perfectly.
Now I've put COMMIT AND WAIT and FM DEQUEUE_ALL after WS_DELIVERY_UPDATE, but still not working, and this I'm getting
error from BAPI_GOODSMVT_CREATE - "No Items Transfered".
Please help me sort this issue.
Regards,
Varun

Hi varunchopra,
the SAP documentation is not 100 % clear here: They say, with COMMIT WORK all high-priority ("VB1") update function modules are executed in the order of their registration and in a shared database LUW.  With WAIT addition, the calling program will continue after the update work process has executed the VB1 function modules.
Probably BAPI_WS_DELIVERY_UPDATE will also trigger one or more VB2 update functions that will keep the objects locked.
Ten years ago we used this code in a similar situation to wait for the update task for a material being changed:
FORM WAIT_UPDATE.
  USING P_MAX_WAIT_SECONDS TYPE I
  CHANGING P_SUBRC LIKE SY-SUBRC.
  DATA:
  L_ENDTIME LIKE SY-UZEIT,
  L_TABIX LIKE SY-TABIX,
  L_TRIES TYPE I,
  L_SUCCESS LIKE SY-SUBRC,
  L_ANSW TYPE C,
  L_TRY_AGAIN LIKE RMCLS-XFLAG VALUE 'X'.
  GET TIME.
  L_ENDTIME = SY-UZEIT.
  ADD P_MAX_WAIT_SECONDS TO L_ENDTIME.
  WHILE L_TRY_AGAIN = 'X'.
    LOOP AT ITAB.
      PERFORM CHECK_LOCK_EMMARCE
        USING ZAUF-WERKS ITAB-MATNR CHANGING P_SUBRC.
      GET TIME.
      IF P_SUBRC <> 0 OR SY-UZEIT >= L_ENDTIME.
        EXIT.                          "Loop
      ENDIF.                           " sy-subrc = 0.
    ENDLOOP.                           " AT itab.
    IF P_SUBRC = 0.
      CLEAR: L_TRY_AGAIN.
    ELSE.
      IF SY-UZEIT >= L_ENDTIME .
        PERFORM POPUP_TO_CONFIRM_WAIT
          USING P_MAX_WAIT_SECONDS CHANGING L_ENDTIME P_SUBRC.
        IF P_SUBRC <> 0.
          CLEAR L_TRY_AGAIN.
        ELSE.
          CLEAR P_SUBRC.
        ENDIF.                         " p_subrc <> 0.
      ENDIF.                           " sy-uzeit >= l_endtime.
    ENDIF.                             " p_subrc = 0.
  ENDWHILE.                            " l_try_again = 'X'.
ENDFORM.                               " WAIT_UPDATE
The coding of CHECK_LOCK_EMMARCE was derived from SM12 lock overview and used FUNCTION 'ENQUE_READ'. Today I would just try to lock the object with ENQUEUE function - if you get foreign lock error, the updatze task lock is not yet released.
Monitor SM12 during test run to identify which lock object  must be checked.
The you have to decide: If you put a WAIT UP TO 1 SECONDS in the wait loop, you may lose up to 1 second per delivery. If you just LOOP until the locks are released you may put some non-necessary load on the machine.
This way will be faster than any unconditional wait - which may sometimes not be long enough.
Regards,
Clemens

Similar Messages

  • Getting error while calling this BAPI:Field MATNR has been transferred inco

    Hi,
    I have a rquirement to upload material master data into sap for Plant 1251.(For plant 1251 we need to upload both Basi veiw and Extended View).
    I am getting the following error while calling this BAPI.Field MATNR has been transferred inconsistently or is blank
    the errror is :Field MATNR has been transferred inconsistently or is blank.
    I have written the below logic in the program to upload material master data into SAP.
    Please help me out to resolve this issue.
    Thanks in advance.
    Program logic which i have wriiten in the program is
    LOOP AT it_rpt.
        CLEAR lwa_return.
        v_tabix  = sy-tabix.
        IF ( it_rpt-werks EQ p_werks AND
           it_rpt-matnr IS INITIAL ).
    retrieve internal number
          PERFORM get_internal_number USING lc_mtart
                                            lc_mbrsh
                                   CHANGING it_rpt-matnr.
        ENDIF.
        IF NOT it_rpt-matnr IS INITIAL.
          PERFORM convert_field_input CHANGING it_rpt-matnr.
        ENDIF.
    Header data
        CLEAR lwa_headdata.
        lwa_headdata-material                = it_rpt-matnr.
        lwa_headdata-ind_sector              = lc_mbrsh.
        lwa_headdata-matl_type               = lc_mtart.
        lwa_headdata-basic_view              = 'X'.
        IF NOT it_rpt-vkorg IS INITIAL.
          lwa_headdata-sales_view            = 'X'.
        ENDIF.
        lwa_headdata-purchase_view           = 'X'.
        lwa_headdata-mrp_view                = 'X'.
        lwa_headdata-storage_view            = 'X'.
        lwa_headdata-forecast_view           = 'X'.
        lwa_headdata-work_sched_view         = 'X'.
        lwa_headdata-account_view            = 'X'.
        lwa_headdata-cost_view               = 'X'.
    *Client data
        CLEAR: lwa_clientdata, lwa_clientdatax.
        IF it_rpt-werks EQ c_1251.
          lwa_clientdata-matl_group          = it_rpt-matkl.
          lwa_clientdata-old_mat_no          = it_rpt-bismt.
          lwa_clientdata-base_uom            = it_rpt-meins.
          lwa_clientdata-manu_mat            = it_rpt-mfrpn.
          lwa_clientdata-mfr_no              = it_rpt-mfrnr.
        ENDIF.
        lwa_clientdata-division              = it_rpt-spart.
        lwa_clientdata-unit_of_wt            = lc_gewei.
        lwa_clientdata-trans_grp             = lc_tragr.
        IF it_rpt-werks EQ c_1251.
          lwa_clientdatax-matl_group         = 'X'.
          lwa_clientdatax-old_mat_no         = 'X'.
          lwa_clientdatax-base_uom           = 'X'.
          lwa_clientdatax-manu_mat           = 'X'.
          lwa_clientdatax-mfr_no             = 'X'.
        ENDIF.
        lwa_clientdatax-unit_of_wt           = 'X'.
        lwa_clientdatax-trans_grp            = 'X'.
        lwa_clientdatax-division             = 'X'.
    Material Description
        IF it_rpt-werks EQ c_1251.
          lt_matdesc-langu           = sy-langu.
          lt_matdesc-matl_desc       = it_rpt-maktx.
          APPEND lt_matdesc.
        ENDIF.
    *Plant data
        CLEAR lwa_plantdata.
        lwa_plantdata-plant                  = it_rpt-werks.
        lwa_plantdata-availcheck             = lc_mtvfp.
        lwa_plantdata-mrp_type               = lc_dismm.
        lwa_plantdata-mrp_group              = lc_disgr.
        lwa_plantdata-auto_p_ord             = 'X'.
        lwa_plantdata-proc_type              = 'F'.
        IF it_rpt-werks EQ c_1251.
          it_rpt-prctr  = lc_prctr.                 "1252
        ELSEIF it_rpt-werks EQ c_1261.
          it_rpt-prctr  = lc_prctr1.                "1262
        ENDIF.
        lwa_plantdata-profit_ctr             = it_rpt-prctr.
        lwa_plantdata-period_ind             = lc_perkz.
        lwa_plantdata-max_stock              = it_rpt-stawn.
        lwa_plantdata-countryori             = it_rpt-herkl.
        lwa_plantdata-sloc_exprc             = it_rpt-lgfsb.
        CLEAR lwa_plantdatax.
        lwa_plantdatax-plant                 = it_rpt-werks.
        lwa_plantdatax-availcheck            = 'X'.
        lwa_plantdatax-mrp_type              = 'X'.
        lwa_plantdatax-mrp_group             = 'X'.
        lwa_plantdatax-auto_p_ord            = 'X'.
        lwa_plantdatax-proc_type             = 'X'.
        lwa_plantdatax-profit_ctr            = 'X'.
        lwa_plantdata-period_ind             = 'X'.
        lwa_plantdatax-max_stock             = 'X'.
        lwa_plantdatax-countryori            = 'X'.
        lwa_plantdatax-sloc_exprc            = 'X'.
    *Valuation data
        CLEAR lwa_valuationdata.
        lwa_valuationdata-val_area           = it_rpt-werks.
        lwa_valuationdata-price_ctrl         = lc_vprsv.
        lwa_valuationdata-price_unit         = lc_peinh.
        lwa_valuationdata-val_class          = it_rpt-bklas.
        CLEAR lwa_valuationdatax.
        lwa_valuationdatax-val_area          = it_rpt-werks.
        lwa_valuationdatax-price_ctrl        = 'X'.
        lwa_valuationdatax-price_unit        = 'X'.
        lwa_valuationdatax-val_class         = 'X'.
    *Storage location
        CLEAR lwa_storagelocation.
        lwa_storagelocation-plant            = it_rpt-werks.
        lwa_storagelocation-stge_loc         = it_rpt-lgort.
        CLEAR lwa_storagelocationx.
        lwa_storagelocationx-plant           = it_rpt-werks.
        lwa_storagelocationx-stge_loc        = it_rpt-lgort.
    *Tax Classifications
        IF it_rpt-werks EQ c_1251.
          it_rpt-tatyp = lc_tatyp.       "u2018MWSTu2019
        ELSEIF it_rpt-werks EQ c_1261.
          it_rpt-tatyp = lc_tatyp1.      "u2018UTXJu2019
        ENDIF.
        lt_taxclass-tax_type_1              = it_rpt-tatyp.
        lt_taxclass-taxclass_1              = lc_taxkm.
        lt_taxclass-tax_ind                 = lc_taxim.
        APPEND lt_taxclass.
    *Sales data
        CLEAR: lwa_salesdata, lwa_salesdatax.
        IF it_rpt-werks EQ c_1251.
          it_rpt-vkorg = lc_vkorg.
        ELSEIF it_rpt-werks EQ c_1261.
          it_rpt-vkorg = lc_vkorg1.
        ENDIF.
        lwa_salesdata-sales_org           = it_rpt-vkorg.
        lwa_salesdata-distr_chan          = lc_vtweg.
        lwa_salesdata-cash_disc           = lc_sktof.
        lwa_salesdata-item_cat            = lc_mtpos.
        lwa_salesdatax-sales_org          = it_rpt-vkorg.
        lwa_salesdatax-distr_chan         = lc_vtweg.
        lwa_salesdatax-cash_disc          = 'X'.
        lwa_salesdatax-item_cat           = 'X'.
    *Forecast parameters
        CLEAR: lwa_forecast, lwa_forecastx.
        lwa_forecast-plant                = it_rpt-werks.
        lwa_forecast-fore_model           = lc_prmod.
        lwa_forecast-fore_pds             = lc_anzpr.
        lwa_forecast-hist_vals            = lc_peran.
        lwa_forecastx-plant               = it_rpt-werks.
        lwa_forecastx-fore_model          = 'X'.
        lwa_forecastx-fore_pds            = 'X'.
        lwa_forecastx-hist_vals           = 'X'.
    Purchasing long text
        IF it_rpt-werks EQ c_1251.
          IF it_rpt-tdline1 <> ' '.
            lv_tdobject = 'MATERIAL'.
            lv_tdid     = 'BEST'.
            lv_tdname   =  it_rpt-matnr.
            PERFORM fill_longtext TABLES lt_longtext
                                  USING  lv_tdobject
                                         lv_tdname
                                         lv_tdid
                                         sy-langu
                                         it_rpt-tdline1.
          ENDIF.
    Basic long text
          IF it_rpt-tdline2 <> ' '.
            lv_tdobject = 'MATERIAL'.
            lv_tdid     = 'GRUN'.
            lv_tdname   =  it_rpt-matnr.
            PERFORM fill_longtext TABLES lt_longtext
                                  USING  lv_tdobject
                                         lv_tdname
                                         lv_tdid
                                         sy-langu
                                         it_rpt-tdline2.
          ENDIF.
    *Units of measure
          CLEAR : lt_uom,lt_uomx.
          lt_uom-alt_unit     = it_rpt-meins.
          lt_uom-alt_unit_iso = it_rpt-meins.
          lt_uom-unit_of_wt   = it_rpt-gewei.
          APPEND lt_uom.
          lt_uomx-alt_unit      = it_rpt-meins.
          lt_uomx-alt_unit_iso  = it_rpt-meins.
          lt_uomx-unit_of_wt    = 'X'.
          APPEND lt_uomx.
        ENDIF.
        CALL FUNCTION 'BAPI_MATERIAL_SAVEDATA'
          EXPORTING
            headdata             = lwa_headdata
            clientdata           = lwa_clientdata
            clientdatax          = lwa_clientdatax
            plantdata            = lwa_plantdata
            plantdatax           = lwa_plantdatax
            forecastparameters   = lwa_forecast
            forecastparametersx  = lwa_forecastx
            storagelocationdata  = lwa_storagelocation
            storagelocationdatax = lwa_storagelocationx
            valuationdata        = lwa_valuationdata
            valuationdatax       = lwa_valuationdatax
            salesdata            = lwa_salesdata
            salesdatax           = lwa_salesdatax
          IMPORTING
            return               = lwa_return
          TABLES
            materialdescription  = lt_matdesc
            unitsofmeasure       = lt_uom
            unitsofmeasurex      = lt_uomx
            materiallongtext     = lt_longtext
            taxclassifications   = lt_taxclass
            returnmessages       = it_messages.
    Regards,
    Reddy

    Can you check with below code .
    CALL FUNCTION 'CONVERSION_EXIT_MATN1_INPUT'
            EXPORTING
              INPUT        =  it_rpt-matnr       
    IMPORTING
              OUTPUT       =  it_rpt-matnr
            EXCEPTIONS
              LENGTH_ERROR = 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.
    Move  it_rpt-matnr to    lwa_headdata-material  .
    Regard's
    Smruti

  • Error while calling BAPI_PARTNEREMPLOYEE_CREATE BAPI using JCO

    Hi All,
    Our requirement is to create and update customer contact details from java application. For this purpose we are trying to call BAPI_PARTNEREMPLOYEE_CREATE BAPI for create contact and BAPI_PARTNEREMPLOYEE_EDIT for updating contact information. As these BAPIs are of online version, error is coming while calling these BAPIs.
    So is there any way to call these BAPIs through JCO or are there any alternative BAPIs available for same purpose?
    Thanks in advance,
    Arati.

    Hi,
    All the bapi or function module available in SAP to create contact person will internally do a call transaction to VAP1 and VAP2 tcodes in order to create or change contact person respectively.
    We had a similar problem when we were creating and updating customer contact person using inbound idoc. We then created a bdc recording for the same and then created two function module with name Z_CREATE_CONTACT and Z_CHANGE_CONTACT. In your case you can make this function modules as RFC enabled FM and call them using JCO I guess.
    KR Jaideep,

  • Getting error in calling two different Bapi

    Hi ALL ,
    I want to create web-dynpro application
    Requirement : Main View contain one tabstrip 'T' which will display data from all the values.
    I am using one search Button 'B'and passing one number 777
    For example :for search number 777 record should come like this
    Search -- 777 -ITC NUMBER --Input filed
    For Payment & Transfer view I am calling BAPI 'A'.
    Loan Transfer I am calling Bapi 'B'.
    Desired Output :
    A            A                     B
    payment    transfer          laontransfer
    cash        JRM account        open
    cheque     CTC Employee        closed
    For this I am using following Views
    1)Main View  2) Payment 3) Transfer 4)Loan Transfer
    Error : I am not getting any records in field 'Loan Transfer ' which I am calling from Bapi 'B'.
    Can anyone please help me out ??
    Like this :
    A            A                      B
    payment    transfer          laontransfer
    cash        JRM account       
    cheque     CTC Employee

    Hi ,
    Can anyone please let me know the approach of calling different BAPI s
    in web dynpro application.
    Requirement : I want to connect Input from both the Bapi to single element.
    Regards
    Rahul

  • Getting error while calling a subscreen in  module pool program

    HI  ALL,
                         ACTUALLY I'M GETTING A SYNTAX ERROR WHILE I'M CALLING A SUBSCREEN
                       IN A MODULE POOL PROGRAM IN PAI MODULE
                       THE ERROR IS AS FOLLOW
                           "." or "ID ... FIELD ..." expected after "SUBSCREEN"
                        CAN ANYBODY PLS HELP ME.
    REGARDS
    ANDREWS

    HI MAX ,
                      THE CODE IS AS FOLLOWS:
    *& Report  ZTABSTRIP_PS
    REPORT  ZTABSTRIP_PS.
    type-pools : vrm.
    DATA:number1 type I,
         number2 type I,
         result  type I,
         ok_code like SY-UCOMM,
         employee1 type c,
         ABAP(19)    type c,
         SALES(19)  type c,
         HR(19)      type c,
         MM(19)     type  c,
    employee type c.
        emp type c.
    CONTROLS  tabstrip TYPE TABSTRIP.
    CALL SCREEN 100.
    call screen 110.
    call screen 130.
    call screen 120.
    call screen  140.
    *&      Module  STATUS_0100  OUTPUT
          text
    MODULE STATUS_0100 OUTPUT.
      SET PF-STATUS 'STATUS'.
      SET TITLEBAR 'TITLE'.
      CASE OK_CODE.
        WHEN 'BACK' or 'EXIT' or 'DELETE'.
         leave program.
         WHEN 'SAVE'.
           MESSAGE 'please choose a valid function' TYPE 'I'.
       WHEN 'BACK'.
        leave PROGRAM.
    when  'EXIT' or 'DELETE'.
        leave to screen 0.
        WHEN 'SAVE'.
          MESSAGE 'please choose a valid function' TYPE 'I'.
    endcase.
    ENDMODULE.                 " STATUS_0100  OUTPUT
    *&      Module  USER_COMMAND_0100  INPUT
          text
    MODULE USER_COMMAND_0100 INPUT.
    CASE OK_CODE.
      when 'TAB1'.
    tabstrip-activetab = 'TAB1'.
       when 'TAB2'.
    tabstrip-activetab = 'TAB2'.
    result = number1 + number2.
       when 'TAB3'.
      tabstrip-activetab = 'TAB3'.
    SET TITLEBAR 'TITLE1'.
      when 'TAB4'.
        tabstrip-activetab = 'TAB4'.
       if employee = 'NEERAJ'.
         ABAP = 'NEERAJ'.
       elseif employee = 'UMESH'.
         SALES = 'UMESH'.
       ELSEIF employee = 'RAM'.
         HR = 'RAM'.
       elseif employee = 'ANIL'.
         MM = 'ANIL'.
         endif.
       employee = employee.
    WHEN 'BACK'.
        leave PROGRAM.
    when  'EXIT' or 'DELETE'.
        leave to screen 0.
        WHEN 'SAVE'.
          MESSAGE 'please choose a valid function' TYPE 'I'.
    ENDCASE.
       WHEN 'BACK' or 'EXIT' or 'DELETE'.
         leave program .
         WHEN 'SAVE'.
           MESSAGE 'please choose a valid function' TYPE 'I'.
    endcase.
    ENDMODULE.                 " USER_COMMAND_0100  INPUT
    *&      Module  STATUS_0110  OUTPUT
          text
    **MODULE STATUS_0110 OUTPUT.
    SET PF-STATUS 'STATUS1'.
    SET TITLEBAR 'xxx'.
    **case ok_code.
    **WHEN 'back' or 'exit' or 'delete'.
        leave PROGRAM.
        WHEN 'save'.
          MESSAGE 'please choose a valid function ' TYPE 'W'.
    ENDCASE.
    **ENDMODULE.                 " STATUS_0110  OUTPUT
    *&      Module  USER_COMMAND_0110  INPUT
          text
    MODULE USER_COMMAND_0110 INPUT.
      number1 = number1.
      number2 = number2.
    CLEAR NUMBER1.
    CLEAR NUMBER2.
    REFRESH NUMBER1.
    REFRESH NUMBER2.
    ENDMODULE.                 " USER_COMMAND_0110  INPUT
    *&      Module  STATUS_0130  OUTPUT
          text
    MODULE STATUS_0130 OUTPUT.
    SET PF-STATUS 'STATUS2'.
    SET TITLEBAR 'xxx'.
    RESULT = number1 + number2.
    *CLEAR RESULT.
    REFRESH RESULT.
    ENDMODULE.                 " STATUS_0130  OUTPUT
    *&      Module  STATUS_0120  OUTPUT
          text
    MODULE STATUS_0120 OUTPUT.
    SET PF-STATUS 'xxxxxxxx'.
    SET TITLEBAR 'xxx'.
    DATA:  l_name TYPE vrm_id,
            li_list TYPE vrm_values,
            l_value LIKE LINE OF li_list.
      l_value-key = '1'.
      l_value-text = 'ANIL'.
      APPEND l_value TO li_list.
      CLEAR l_value.
    CLEAR li_list.
      l_value-key = '2'.
      l_value-text = 'RAM'.
      APPEND l_value TO li_list.
      CLEAR l_value.
    CLEAR li_list.
      l_value-key = '3'.
      l_value-text = 'NEERAJ'.
      APPEND l_value TO li_list.
      CLEAR l_value.
    CLEAR li_list.
      l_value-key = '4'.
      l_value-text = 'UMESH'.
      APPEND l_value TO li_list.
      CLEAR l_value.
    CLEAR li_list.
    l_name =  'employee'.
      CALL FUNCTION 'VRM_SET_VALUES'
        EXPORTING
          ID                    =  l_name
          VALUES                =  li_list
       EXCEPTIONS
         ID_ILLEGAL_NAME       = 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.
    CLEAR li_list.
    ENDMODULE.                 " STATUS_0120  OUTPUT
    *&      Module  USER_COMMAND_0120  INPUT
          text
    MODULE USER_COMMAND_0120 INPUT.
    INCLUDING sy-repid '140'.
    employee1 = employee.
    IF employee1 CS 'NEERAJ'.
      call SUBSCREEN    sub4  .
      ABAP = 'NEERAJ'.
      CLEAR ABAP.
    ELSEIF employee1 CS 'UMESH'.
       call SUBSCREEN  sub4  .
        SALES = 'UMESH'.
        CLEAR SALES.
    elseif employee1 CS 'RAM'.
      call SUBSCREEN sub4 .
       HR = 'RAM'.
       CLEAR  HR.
    ELSEIF employee1 CS 'ANIL'.
       call SUBSCREEN sub4 .
       MM = 'ANIL'.
       CLEAR MM.
       endif.
    ENDMODULE.                 " USER_COMMAND_0120  INPUT
    *&      Module  STATUS_0140  OUTPUT
          text
    MODULE STATUS_0140 OUTPUT.
    *CASE OK_CODE.
       WHEN employee1  'NEERAJ'.
         screen-active = 1.
         ABAP = 'NEERAJ'.
       WHEN employee1 = 'UMESH'.
         screen-active = 1.
         SALES = 'UMESH'.
       WHEN employee1 = 'RAM'.
         screen-active = 1.
         HR = 'RAM'.
       WHEN employee1 = 'ANIL'.
         screen-active = 1.
         MM = 'ANIL'.
         endif.
    *ENDCASE.
    ENDMODULE.                 " STATUS_0140  OUTPUT

  • Getting error while calling AME api from the page

    Hi,
    I am calling ame api ame_api2.getallapprovers7 from our custom page.I have written following code-
    public void getapprovers(String transactionid)
    String OutError = "";
    ArrayList al = new ArrayList();
    OADBTransaction trans = getOADBTransaction();
    String insStmnt = "BEGIN " +
    "ame_api2.getAllApprovers7(applicationIdIn => :1,transactionTypeIn =>:2,transactionIdIn =>:3,"+
    "l_processYN =>:4,approversOut =>:5); " +
    "END;";
    OracleCallableStatement stmt = (OracleCallableStatement)trans.createCallableStatement(insStmnt, 1);
    try
    stmt.setString(1, "800");
    stmt.setString(2, "XXXXCWKAPP");
    stmt.setString(3, transactionid);
    stmt.registerOutParameter(4, OracleTypes.VARCHAR);
    stmt.registerOutParameter(5, OracleTypes.ARRAY,"XXXX_APPROVER_TABLE");
    stmt.execute();
    // OAExceptionUtils.checkErrors as per PLSQL API standards
    OAExceptionUtils.checkErrors(trans);
    ARRAY arrayError = stmt.getARRAY(5);
    Datum[] arr = arrayError.getOracleArray();
    for (int i = 0; i < arr.length; i++)
    oracle.sql.STRUCT os = (oracle.sql.STRUCT)arr;
    Object[] a = os.getAttributes();
    System.out.println("Column:" + a[0] + " Value:" + a[1]);
    //OutError = (String)a[1];
    //al.add(new OAException(OutError, OAException.ERROR));
    stmt.close();
    catch(SQLException sqle){
    try { stmt.close(); }
    catch (Exception e) {;}
    throw OAException.wrapperException(sqle);
    if (OutError != null)
    // OAException.raiseBundledOAException(al);
    4 and 5th parameters are out parameters and 5th parameter provides the approver records and it should have the same data type as ame_util.approversTable2. I have created this table type explicitly in oracle by the name XXXX_APPROVER_TABLE but i am getting the error while running the page "java.sql.SQLException: Fail to construct descriptor: Unable to resolve type: "APPS.ETHR_APPROVER_TABLE"". I requirement is to take the 5th parameter in ame_util.approversTable2 data type.
    Please help me urgently.
    Thanks
    Ashish

    Hi Kumar,
    The ETHR_APPROVER_TABLE is custom pl sql indexed table that I have created.following are the parameters of api-
    procedure getAllApprovers7(
    applicationIdIn in number,
    transactionTypeIn in varchar2,
    transactionIdIn in varchar2,
    approvalProcessCompleteYNOut out varchar2,
    approversOut out nocopy ame_util.approversTable2);
    i need a out variable of type ame_util.approversTable2 so get the values.
    I have changed the code and now getting the following error-
    java.sql.SQLException: ORA-03115: unsupported network datatype or representation
    I have only changed this statement.
    stmt.registerOutParameter(5,OracleTypes.PLSQL_INDEX_TABLE);//,"XXXX_APPROVAL_TBL");
    Edited by: user5756777 on Jul 13, 2009 4:17 AM

  • Getting error while calling ejb business methods from servlet

    Hi
    Iam getting error when i try to call a ejb method from servlet.Error is
    "com.netscape.server.eb.UncheckedException: unchecked exception nested exception is:java.lang.NullPointerException".
    I build the application and deployed it successfully.Iam using IAS 6.O with windows NT 4.0.
    This is just a method which takes values from database and return as an array of bean to servlet.
    Any help on this.Thanks Shank

    Hi
    I was using the session bean.Your suggestion helped me a lot.Perfect.
    I debug my program and found that from ejbCreate()exception is getting.
    I was getting the datasource object thro ejb create() initialisation.
    Somehow the look up jndi which i mentioned was not interpretting from ejb-jar.xml ias-ejb-jar.xml and datasource ref .Due to this iam getting jndi Namenotfound exception which in turns to null pointer as datasource is getting null.
    when i hardcoded in the ejb the the jndi name for datasource it is working fine.Bit worried all the existing ejbs working with the xml referenced datasource and jndi,but when i added a new ejb with same properties it is failing to get the jndi name.
    Piece of code from ias-ejb-jar.xml
    <resource-ref>
              <res-ref-name>myDataSource</res-ref-name>
              <jndi-name>jdbc/nb/myData</jndi-name>
    </resource-ref>
    Piece of code from ejb-jar.xml
    <resource-ref>
              <res-ref-name>myDataSource</res-ref-name>
              <res-type>javax.sql.DataSource</res-type>
              <res-auth>Container</res-auth>
    </resource-ref>
    Thanks a lot meka

  • Getting error while calling Web service in PB 12.5

    Hi All,
    I am trying to call web service through my PB 12.5 but getting error like "Window sdk for .net framework 4.0 was not installed. please install befor use this feature." though I had installed window sdk . net framework 4.0.
    one more thing do we required .wsdl file to call web service or only path is ok?
    please help me out here.
    Thanks,
    Pralhad

    Hi Pralhad,
    From the Application Techniques manual, Building a Web Services Client, it states the following:
    The WSDL file for you specify in the wizard or painter must have:
    Services/Binding entries
    The Targetnamespace
    attribute defined in its Schema element
    No circular references (an example of a “circular reference” is a structure
    that includes itself as a child class member)
    If PowerBuilder encounters a problem parsing the WSDL file, it reports the
    error in an error message box.
    Thank you.
    Beverly Duquette

  • Getting error while calling reports through form

    Hi I want to call a report from a form i put the following code on when-button-pressed but i am getting the following error.I can generate and run the reports.The object REPORTS is created under forms report object
    FRM-41211: Integration error: SSL Failure running another report
    DECLARE
    repid REPORT_OBJECT;
    report_prop VARCHAR2(20);
    v_rep VARCHAR2(100);
    BEGIN
    repid := find_report_object('REPORTS');
    set_report_object_property(repid,report_other,'p1=15 p2=19 paramform=yes');
    v_rep := RUN_REPORT_OBJECT(repid);
    END;
    rgds
    shyam

    Hi
    I can able to run the reports from the browser there was a syntax error, but not able to call from a form
    I am getting error but i can run another forms without any problem
    FRM-92101: There Was a failure in the FormsServer during startup
    oracle.forms.net.connectionexception:forms session aborted:unable to communicate with the runtime process
    rgds
    rosh

  • Getting error  while calling triggering event in processFormRequest

    hi all,
    i am clicking my custom button after selecting value from a lov on create quote and getting error "Row 1 Error - Please note that following required fields have not been entered: CustPartyId "
    if 1st i m entering a value in DFF filed and then selecting value from lov and cliking my custom button this error is not coming.
    please help.
    thanks

    hi all,
    i am clicking my custom button after selecting value from a lov on create quote and getting error "Row 1 Error - Please note that following required fields have not been entered: CustPartyId "
    if 1st i m entering a value in DFF filed and then selecting value from lov and cliking my custom button this error is not coming.
    please help.
    thanks

  • Getting error while calling procedure from remote database

    When I am trying to call child procedure from remote database I am getting below error:
    ORA-02064: distributed operation not supported
    ORA-06512: at "NMUSER.NEW_CUST_UPLOAD", line 740
    (P.S. on line no 740 I issued "commit;" )
    I checked rights,synonym on all the objects they are fine.

    Oracle Error: ORA-02064
    Error Description:
    Distributed operation
    not supported
    Error Cause:
    One of the following
    unsupported operations was attempted:
    1. array execute of a remote update with a subquery that references a dblink,
    or
    2. an update of a long column with bind variable and an update of a second
    column with a subquery that both references a dblink and a bind variable, or
    3. a commit is issued in a coordinated session from an RPC procedure call
    with OUT parameters or function call.
    Cheers,
    Manik.

  • I am getting error while calling FNDCPPROGRAMPAGE from OA page

    Hi,
    I need to submit a concurrent request with user
    given parameters from an OA page.
    Here is the codepart written in CO.....
    HashMap params = new HashMap();
    String url = "OA.jsp";
    params.put("akRegionApplicationId", "0");
    params.put("akRegionCode", "FNDCPPROGRAMPAGE");
    params.put("programApplName", "AHL");
    params.put("programName", "AHLUMATF");
    params.put("programDesc", "Build Material Stream for Planned
    Maintenance");
    params.put("programRegion", "Show");
    params.put("parameterRegion", "Show");
    // params.put("scheduleRegion", "Show");
    // params.put("notifyRegion", "Show");
    // params.put("printRegion", "Show");
    //params.put("requestMode", "DEFERRED");
    try {
    pageContext.setForwardURL(url,
    null,OAWebBeanConstants.KEEP_MENU_CONTEXT, null,
    params, true,
    OAWebBeanConstants.ADD_BREAD_CRUMB_NO,
    OAWebBeanConstants.IGNORE_MESSAGES);
    catch (Exception e)
    throw new OAException("SetDeferredException " +
    e.getMessage(),OAException.ERROR);
    I am getting the request page with the following errors
    "Could not create webbean, could not create item metadata item Name
    (FndCpLanguageTable); Region: (FNDCPPROGRAMSTATION);"
    "Could not create webbean, could not create item metadata item Name
    (FndCpCopyRequest); Region: (FNDCPPROGRAMCONTAINER);
    Please advise me, is there anything missing in code or what could be
    done to resolve the error.
    Thanks in Advance for your help.
    Regards,
    Balaji

    Hi,
    you can use this code...
    import oracle.apps.fnd.cp.request.ConcurrentRequest;
    import oracle.apps.fnd.framework.server.OADBTransaction;
    public int submitCPRequest(Number headerId) {
    try {
    OADBTransaction tx = (OADBTransaction)getDBTransaction();
    java.sql.Connection pConncection = tx.getJdbcConnection();
    ConcurrentRequest cr = new ConcurrentRequest(pConncection);
    String applnName = "PO"; //Application that contains the concurrent program
    String cpName = "POXXXX"; //Concurrent program name
    String cpDesc = "Concurrent Program Description"; // concurrent Program description
    // Pass the Arguments using vector
    // Here i have added my parameter headerId to the vector and passed the vector to the concurrent program
    Vector cpArgs = new Vector();
    cpArgs.addElement(headerId.stringValue());
    // Calling the Concurrent Program
    int requestId = cr.submitRequest(applnName, cpName, cpDesc, null, false, cpArgs);
    tx.commit();
    return requestId;
    } catch (RequestSubmissionException e) {
    OAException oe = new OAException(e.getMessage());
    oe.setApplicationModule(this);
    throw oe;
    Now to go to the Monitoring page.
    set the forward url to
    String url = "OA.jsp?akRegionCode=FNDCPREQUESTVIEWREGION&akRegionApplicationId=0";
    try {
    pageContext.setForwardURL(url,
    null,OAWebBeanConstants.KEEP_MENU_CONTEXT, null,
    params, true,
    OAWebBeanConstants.ADD_BREAD_CRUMB_NO,
    OAWebBeanConstants.IGNORE_MESSAGES);
    catch (Exception e)
    throw new OAException("SetDeferredException " +
    e.getMessage(),OAException.ERROR);
    }

  • Getting Error while Calling Java File from oblixpppcatalog.lst file

    Hi,
    We are trying to configure userservcenter_workflowCreateProfile in oblixpppcatalog.lst file to call a java class that returns an xml file as below
    <?xml version="1.0" encoding="UTF-8"?>
    <ObEventParams
    xmlns="http://www.oblix.com/">
    <ObParamList name="ObRequest">
    <ObParam name="sn">
    <ObValue>Smith</ObValue>
    </ObParam>
    </ObParamList>
    </ObEventParams>
    But when we try to run this code by clicking on "Create User Identity" we are getting "An error in Pre/Post Processing of the Page has Occured" or Some times we get "Parse error in XML document sent by event handler to identity server".
    Can some please shed some light on this issue?
    Thanks,
    Ganesh

    Hi Ganesh,
    That event xml looks rather incomplete - I would expect it to contain information about the workflow, and workflow step etc. For example, I have a Create User workflow that generates Event XML beginning:
    <?xml version="1.0" encoding="utf-8"?>
    <ObEventParams
    xmlns="http://www.oblix.com/">
    <ObParamList
    name="WfInstance">
    <ObParam
    name="obwfinstanceid">
    <ObValue>f92cab82ee4b43ccba42869bb2928d0c</ObValue>
    </ObParam>
    <ObParam
    name="obworkflowdn">
    <ObValue>obworkflowid=060efe6966674e54be63383290d81e63,obcontainerId=workflowDefinitions,o=Oblix,dc=example,dc=com</ObValue>
    </ObParam>
    <ObParam
    name="obworkflowname">
    <ObValue>Create User</ObValue>
    etc etc...
    You could look at the Event XML that is sent to the plugin from your workflow to a file by reading STDIN and dumping it to a file. There is an example of this in Note 843570.1 (happens to be for a password change event, but it should work for any ppp exec event). Then your code could change the Event XML as required, but keeping the basic structure of the data that is sent to it.
    Regards,
    Colin

  • Getting error while Calling Oracle Stored Procedure with output Parameter

    HI All,
    From long days i am working on this but i unable to solve it.
    Even i have studied so many forums in SAP but i didn't find the solution.
    I am calling Oracle Store procedure with 3 inputs and 1 output without cursor.
    Store Procedure:-
    CREATE OR REPLACE PROCEDURE PDS.send_rm
    IS
    proc_name           VARCHAR2(64) := 'send_rm';
    destination_system  VARCHAR2(32) := 'RAWMAT';
    xml_message         VARCHAR2(4000);
    status_code         INTEGER;
    status_message      VARCHAR2(128);
    debug_message       VARCHAR2(128);
    p_ret               INTEGER;
    BEGIN
      DBMS_OUTPUT.PUT_LINE( proc_name || ' started' );
      xml_message := '<RAW_MATERIAL>'||
                     '<BAR_CODE>10000764601</BAR_CODE>'||
                     '<MATERIAL>1101448</MATERIAL>'||
                     '<VENDOR_CODE/>'||
                     '<PRODUCTION_DATE>0000-00-00</PRODUCTION_DATE>'||
                     '<EXPIRE_DATE>0000-00-00</EXPIRE_DATE>'||
                     '<BATCH/>'||
                     '<PO_NUM/>'||
                     '<MATERIAL_DESCRIPTION>POWER SUPPLY</MATERIAL_DESCRIPTION>'||
                     '<SPEC_NAME/>'||
                     '<STOCK_CODE>BSW-JH</STOCK_CODE>'||
                     '<INSPECTION_LOT>00</INSPECTION_LOT>'||
                     '<USAGE_DECISION_CODE/>'||
                     '<MATERIAL_GROUP>031</MATERIAL_GROUP>'||
                     '</RAW_MATERIAL>';
          dbms_output.put_line('XML '||xml_message);
    --      vp_interface.load_rawmat@cnprpt1_pds(SYSDATE, destination_system,
    --                   xml_message, p_ret);
          vp_interface.load_rawmat(SYSDATE, destination_system,
                       xml_message, p_ret);
          dbms_output.put_line('Return Code '||p_ret);
          COMMIT;
    EXCEPTION
      WHEN OTHERS THEN
        status_code := SQLCODE;
        status_message := SUBSTR(SQLERRM, 1, 64);
    --    Extract_Error_Logger(proc_name, 'LOCAL', SYSDATE, -999,
    --                         status_message, 0, debug_message);
        ROLLBACK;
    END send_rm;
    And while i am calling this Store procedure in MII, I am facing error.
    I have tried different ways but didnt solved
    In SQL Query, i kept mode as: FixedQueryOutput
    Can anyone tell me or send code for calling above store procedure
    And onemore thing, While creating store procedure in Oracle for MII. Do we need to Create output parameter as cursor or normal.  
    Thanks,
    Kind Regards,
    Praveen Reddy M

    Hi Praveen
    Our wrapper was created because we could not modify the procedure we call (it was not returning a cursor).
    CREATE OR REPLACE PROCEDURE CHECK_PUT_IN_USE
    (STRCMPNAME in varchar2,
    STRSCANLABEL in varchar2,
    RCT1 out SYS_REFCURSOR
    AS
      charDispo          Char(1);
      charStatus          Char(1);
      intCatNo          Integer;
      charCatDispo     Char(1);
      strCatQual          VarChar2(2);
      strCatDesc          VarChar2(30);
      strMsg          VarChar2(128);
    BEGIN
    qa.check_put_in_use@AR(STRCMPNAME,
                                              STRSCANLABEL,
                                              charDispo,
                                              charStatus,
                                              intCatNo,
                                              charCatDispo,
                                              strCatQual,
                                              strCatDesc,
                                              strMsg);
    OPEN RCT1
    FOR Select charDispo,charStatus,charDispo,charStatus,intCatNo,charCatDispo,strCatQual,strCatDesc,strMsg from Dual;
    END;
    Hope this helps
    Regards
    Amrik
    then with a FixedQueryWithOutput
    call mixar.qasap.wrapper_update_put_in_use('[Param.1]','[Param.2]',[Param.3],?)
    Hope this helps.

  • Getting Error while calling Flex function from JavaScript

    Hi,
    I have an aspx page, which shows charts as per dropdown selection,
    I am using flex charts for flex.In aspx page, i am calling an mxml function using javascript.below is the code for javascript in aspx.
    Javascript  code in aspx page:
    <script type="text/javascript">     
    function callApp(formid) {
        try {
                var objectChart = document.getElementById("statisticsChart");
                alert(objectChart.id);               
                objectChart.myFlexFunction(formid,get('<%=HiddenDashboardWS.ClientID %>').value);
        catch (e) {
            alert(e.message);
    function getDropDownListvalue() {
        var IndexValue = $get('<%=FormDropDownList.ClientID %>').selectedIndex;
        var SelectedVal = $get('<%=FormDropDownList.ClientID %>').options[IndexValue].value;
        //  alert(SelectedVal);
        callApp(SelectedVal);
    </script>
    Html code where dropdown control is placed
    <asp:DropDownList CssClass="combo" ID="FormDropDownList" runat="server" AutoPostBack="false"></asp:DropDownList>
    <object id="statisticsChart" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
    codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0"
    height="220" width="680">
        <param name="src" value="../swf/DashboardStatisticChart.swf" />
        <param name="flashVars" value="" />
        <embed name="statisticsChart" src="../swf/DashboardStatisticChart.swf" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" height="220" width="680" flashvars=""></embed>
    </object>
    Mxml code:
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"  backgroundColor="white" creationComplete="initApp();" >
    <mx:script>
      public function initApp():void {
    ExternalInterface.addCallback("myFlexFunction",myFunc);
      public function myFunc(s:String,wsurl:String):void {
         Formid.text = s;
         webService.wsdl = wsurl;
         Alert.show("webservice");
    //Getdata calls webservice and gets xml data    
    GetData();
    //showchart() will draw chart
                     ShowChart();
    </mx:script>
    </mx:Application>
    Above code works perfect in ie, but in firefox, it gives An error saying “chartObject.MyFlexFunction is not a function”.
    I am getting the object in javascript in all the browsers, but not the functions!
    Does anyone has worked with this?
    Any help will be highly appreciated.
    Regards,
    Nirav Patel

    Found the solution from here... http://74.125.153.132/search?q=cache:4BC9BY04B5EJ:livedocs.adobe.com/flash/8/main/00002201 .html+externalinterface.addcallback+not+working&cd=1&hl=en&ct=clnk&gl=in
    Hope it will help others...
    Regards,

Maybe you are looking for

  • Purchase report of Items Having Landing Cost

    Hi Experts, I am in a urgent need of help form you experts.!!! We are involved in Import of goods. As you all know, import purchase means Purchase Order- GRPO- Landing cost now, i want the actual cost of purchase for every Item based on every transac

  • Im having problem with window defender it is off I tried turn on ... it won't turn on How do I set

    hp touchsmart iq 504  window vista ..problem with window defender.. I bought pwoerline adapter  I found out the window defender is not on and itis turn off I tried to fix turn on but it won't work I am deaf lady

  • A Positive-Negative Experience

    With all the ongoing discussion about issues with MBPs and support, I thought I would share my story with the group... I pre-ordered an MBP the day after they were announced. I was delighted with the upgrade to a 2.0 GHz chip at no charge and receive

  • ISync can't be launched

    First time poster and recent Apple convert. I have my iPhone 3GS and tried syncing to my iMac(Snow Leopard) for the first time. iTunes won't let me sync because: "iTunes cannot sync information with the iPhone because sycing has been disabled blah bl

  • Wrong Agenda trashes

    I have a strange case of mistaken identity. And can't therefore load up to the cloud... I have within Calender (Agenda it is called here) 12 subagenda's One of them is behaving strange... When I try to trash it (since it has all double appointments)