Bapi table - wrong values

Hi,
I have a Z Bapi with a couple of fields, I have tested on R/3 and the resulting table has valid values, nevertheless when I executed the Bapi from WD I have all the fields on the table good but two, wich returns the values: CUST-100000000000001 (CHAR30) and CUST-1000000 (PROFL-CHAR12)
Any ideas about what could be happening?
Thanks in advance
Jean Carlo
on R3:
ex:
CATALOG                               MEI ...
European Waste Code            KG
European Waste Code            KG
European Waste Code            KG
on WD:
Catalog                             UMB ...
CUST-100000000000001 KG
CUST-100000000000001 KG
CUST-100000000000001 KG

Hi ,
Did u try to execute the same bapi in the corresponding backend with the login you are using for webdynpro app?
If the JCO connection you are using is configured for SSO. Then there should be a user in backend for the front end user.
You can see the JCO connections in Webdynpro content Administrator.
The result may be user -specific.That is for different users the bapi can give different results.
You can check the language used using this line in ur webdynpro code. The url parameter used to pass the locale to the webdynpro application is sap-locale
Check the SAP Note 947081 for language related problems.
Best Wishes
Idhaya R
Edited by: IdhayaR on May 19, 2010 2:39 PM

Similar Messages

  • Wrong value with calculated item in pivot table

    I have a report with 4 columns:
    First Column are Department Dimension
    Second Column is Actual value
    Third Column is Previous value
    Four Column is: ((Actual Value-Previous Value)/Previous Value))*100 that called Var
    Then I do a pivot table and I have new calculated item: Department1/Department2 and I have wrong value in four column:
    Department----------------------------------Actual-------Previous------Var
    Dept1------------------------------------------18503--------16308--------13,5
    Dept2-------------------------------------------3758---------3518----------6,8
    (Calculated Item: Dept1/Dept2)--------4,92---------4,64------------*2* <---- This value is wrong...and it has to be: 6,03
    Is possible to get the correct value???
    Thank you very much!

    hi,
    Create a logical column with ur calculation formula and make it as default agg rule in rpd and answers change it to server determined/server complex agg.I did the same it was working fine for me!!
    Check this link
    http://books.google.com/books?id=OnbYrkWa4RsC&pg=PA74&lpg=PA74&dq=%22server+complex+aggregate%22&source=web&ots=qxrpaFXmo2&sig=CxLOemzcOlvIiaQ_sQD4fPQotdM&hl=en&sa=X&oi=book_result&resnum=5&ct=result#v=onepage&q=%22server%20complex%20aggregate%22&f=false
    thanks,
    saichand

  • Passing values to RFC/BAPI Table

    Hi,
    I am having a very strange problem. While passing the values to RFC/BAPI table using add method the values are not passed to backend SAP. Below is the code which I am using just to pass some data in RFC/BAPI table.
    The same code was working few days back. Is there any configuration in JCO or any other problems other than the code?
    Your l help is greatly appreciated.
      public void executeZtest_Function_Input( )
    //    //@@begin executeZtest_Function_Input()
    //     //$$begin Service Controller(943377124)
           IWDMessageManager manager = wdComponentAPI.getMessageManager();
           try{
      Ztest_Function_Input input = new Ztest_Function_Input();
           for (int i=0; i<5;i++){
                Zhr_Ear_Cclist cc =new Zhr_Ear_Cclist();
                cc.setFi_User("[email protected]");
                input.addIcc_List(cc);
           wdContext.nodeZtest_Function_Input().bind(input);
           wdContext.currentZtest_Function_InputElement().modelObject().execute();
                wdContext.nodeOutput().invalidate();
           } catch(WDDynamicRFCExecuteException ce) {
                manager.reportException(ce.getMessage(), false);
         //$$end
        //@@end

    Hi Raksh,
              I also got the same problem. Please check the following ways then you will solve problem.
    1. First check the appropriate BAPI in SAP GUI Software. You have to determine where is the problem?. Is it in Dynpro or BAPI itself?.
    2. Suppose the BAPI structure change you will wont't run. If BAPI strusture change you have to reimport BAPI.
    3. Please check the JCo connectio using test Button. Then redeploy your project.
    4. Rebuild your project then redeploy.
    Check the above ways you may get answer.
    Kind Regards,
    S.Saravanan

  • Wrong value getting updated into konv table.

    Hi,
    i have created 1 sales order through VA01 transaction.
    when i checked this sales order value into VA02 It shows 14,700, but when i check into KONV table this value shows 147.00 .
    please suggest a solution .
    thanks
    Abhay

    Hello Abhay,
    KONV is a table that deals with Condition types.
    It's not a wrong value but only a different way used by SAP to store the value.
    This rule is valid for all table where an amount, a percentage or unit dimension is stored.
    Please find below two links for your reference.
    For Eg - SAP will store 14.7 as 147 internally in SAP table.
    http://scn.sap.com/thread/55183
    http://scn.sap.com/thread/1208210
    Regards,
    Vikas

  • Project cash management Reporting; wrong value in RPSCO table

    Hi,
    I have a problem.
    I have activate the Project cash management.
    I have run the transaction OPH1 for delection Actual DATA.
    I have run the transaction OPH4 for reconstruction actual data for purchase orders.
    Ihave run the transaction CJEN for reconstruction info database.
    The customizing for the value category is green.
    In  the report S_ALR_87013573, we display always wrong value , tough line items (CJIA ) is blank.
    We have run again the transaction OPH1 for delection Actual DATA, but we display the worng value in the table RPSCO. .
    Kindly suggest me the solution.
    Best Regards
    Federica

    hi,
    execute the below reports in se38 and after that run cjbn,cjen
    RKACOR19-Reconcile between line items and totals records
    RKPEP010-Display Project Actual Payment Line Items
    regards,

  • BAPI Table Input not passing to R/3 Backend

    Hello Experts,
    I am having trouble populating a Table input in my Web Dynpro Java application.  I have tried researching this issue on SDN and have attemped many of the solutions with no luck.  Here is my code:
              Bapi_Order_Input NewOrder = new Bapi_Order_Input();
              wdContext.nodeBapi_Order_Input().bind(NewOrder);
              Bapisdhd1 OrderHead = new Bapisdhd1(); - <i>(This is part of the Input Paramter, values are successfully passed)</i>
              OrderHead.setDoc_Type("ZOR");
              OrderHead.setSales_Org("2000");
              OrderHead.setDistr_Chan("40");
              NewOrder.setOrder_Header_In(OrderHead);                    
              Bapiparnr Partner = new Bapiparnr(); - <i>(This is a table parameter, values are not being passed to the backend)</i>
              Partner.setPartn_Role("SP");
              Partner.setPartn_Numb("20010");
              Partner.setItm_Number("000000");     
              NewOrder.addOrder_Partners(Partner);
              wdContext.currentBapi_Salesorder_Createfromdat2_InputElement().modelObject().execute();
    I cannot use "NewOrder.setOrder_Partners(Partner)" because Order_Partners is an AbstactList.  I have attempted to create this abstract list below but it will not syntactically check:  
    AbstractList PartnerList = new Bapiparnr.Bapiparnr_List();
    If I test these same input values above in R/3, the BAPI executes fine.  When I test the BAPI from WD, I get the return message " Please enter a Sold-To or ShipTo Party".  I can replicate this same message in R/3 if I do not populate the Partner table.
    I am also able to see the Partner values I enter when I create a Table is display them in Web Dynpro.
    This is frusterating me a great deal and I would greatly appreciate, and rewards, any suggestions or recomendations.
    Thank you for your help,
    Matt

    Hi Everyone,
    Well, I was finally able to resolve my issue.  After debugging the Web Dynpro Application from the ECC BAPI side, I was able to see that the Partner values were failing to be passed to the back-end SAP system.  After I restarted the J2EE engine, I was able to create the sales order.
    I noticed a couple of interesting things as well:
    -You need to fill in the leading zeros for Customer Number (KUNNR) before passing of this value
    -The ECC BAPI automatically (atleast in my case) changed the input value of Partner-PartnerRole from "SP" to "AG".  This change occurs before the first step in the Debugger is performed.  This change, however, does not occur when the BAPI is called from Web Dynpro.  Once I edited the Web Dynpro Partner Role input to "AG", I was able to create the sales order.
    I have list my code below, thank you all for your help.
    Regards,
    Matt
         Bapi_Salesorder_Createfromdat2_Input SO = new Bapi_Salesorder_Createfromdat2_Input();
         Bapi_Transaction_Commit_Input Commit = new Bapi_Transaction_Commit_Input();
         Bapisdhd1 OrderHeader = new Bapisdhd1();
         OrderHeader.setSales_Off("0000");
         OrderHeader.setDoc_Type("ZOR");
         OrderHeader.setPo_Meth_S("CU01");
         SO.setOrder_Header_In(OrderHeader);
         Bapiparnr Partner = new Bapiparnr();
         Bapiparnr.Bapiparnr_List PartnerList = new Bapiparnr.Bapiparnr_List();     
         Partner.setPartn_Numb(PartnerNumber);
         Partner.setPartn_Role("AG");
         PartnerList.addBapiparnr(Partner);
         SO.setOrder_Partners(PartnerList);
         int size = wdContext.nodeShoppingCart().size();
         BigDecimal Qty;
         Bapisditm.Bapisditm_List ItemsList = new Bapisditm.Bapisditm_List();
         Bapisditm Items;
         IPublicUserAccount.IShoppingCartElement CartItem = wdContext.currentShoppingCartElement();
         for (int i=0; i < size; i++){     
              Items = new Bapisditm();
              Qty = new BigDecimal(BigInteger.ZERO);
              CartItem = wdContext.nodeShoppingCart().getShoppingCartElementAt(i);
              Qty = Qty.add(BigDecimal.valueOf(CartItem.getQuantity()));                              
              Items.setTarget_Qty(Qty);
              Items.setTarget_Qu("EA");
              Items.setMaterial(CartItem.getMaterial_number());          
              ItemsList.add(Items);
         SO.setOrder_Items_In(ItemsList);     
         wdContext.nodeBapi_Salesorder_Createfromdat2_Input().bind(SO);
         wdContext.nodeBapi_Transaction_Commit_Input().bind(Commit);
    catch(Exception ex) {
         IWDMessageManager msgMgr = wdComponentAPI.getMessageManager();
         msgMgr.reportException(ex.getLocalizedMessage()+ " Create SO Failed!", true);
         try {
              wdContext.currentBapi_Salesorder_Createfromdat2_InputElement().modelObject().execute();
              wdContext.currentBapi_Transaction_Commit_InputElement().modelObject().execute();
         catch (Exception ex){
              IWDMessageManager msgMgr = wdComponentAPI.getMessageManager();
              msgMgr.reportException(ex.getLocalizedMessage()+ " Retrieve Cart Failed!", true);

  • Updated CODE1 is showing wrong values in 2LIS_05_QE1

    Hi all,
    I'm using 2LIS_05_QE1 extractor to report over qualitative data in BW. When the code of the characteristics is updated, the extractor takes 2 records, before and after images. The extractor is gathering wrong values for the CODE1 field  in the before image.
    REQUEST     DATAPAKID     RECORD     ROCANCEL     PPLNKN     MERKNR     CODE1     GRUPPE1     ZHLNSTAT
    REQU_4KVR0APSV0RSZ7N70IOR0F95L     1     5120          5     40     0     CIBAU038     1
    REQU_4KPIA4UG5G1IKN6DE3XFWKIS9             3     4045     X     5     40     0     CIBAU038     -1
    REQU_4KPIA4UG5G1IKN6DE3XFWKIS9             3     4046          5     40     75     CIBAU038     1
    REQU_4KYF8YNIEMXNZI7P2Y5BM21W9     3     4045     X     5     40     0     CIBAU038     -1
    REQU_4KYF8YNIEMXNZI7P2Y5BM21W9     3     4046          5     40     75     CIBAU038     1
    We have changed the characteristic two times, now we can see two of the before images with the ROCANCEL field marked with = 'X'. The problem appears in the second before image which is not taking the actual value of the CODE1 field (75), instead is showing the value in zero. Then, when I report over the key figure in the table above ZHLNSTAT (quantity of values) the results are showing 2 values for CODE1=75 and -1 values for CODE1=0.
    Any ideas?

    I have checked Datasource and CODE1 is not a hidden field...apart from this field there are other fields too which I can see in Datasource in R/3 about dont see them in BW ....
    Please let me know what could be wrong.
    Thanks,
    Murtuza.
    Edited by: Murtuza Morwala on Jun 27, 2009 7:36 AM

  • HTMLDB_APPLICATION.G_F01 has wrong value!

    HTMLDB_APPLICATION.G_F01 has wrong value!
    Hello again,
    I have a search page in my app (here the user defines the search criteria) P1.
    The page branches to P130, where the result is shown. This second page contains a region of type 'SQL Query (PL/SQL Function Body Returning SQL Query)'. The code for this dynamic query is 231 lines of code, so I want to spare you scrolling through it here . What it basically does is generating SQL QRY's such as the following:
    select     distinct(sq.SAMPLE_ID) XXX,
    'ID: '||sq.SAMPLE_ID||'
    ' ||'Type: '||sq.SAMPLE_TYPE||'
    ' ||'Collection Date: '||sq.COLLECTION_DATE SAMPLE_INFO,
    'Aliquots (T/A): '||to_char(sq.ALIQUOTS_TOTAL)|| '/' ||to_char(sq.ALIQUOTS_AVAILABLE)||'
    ' ||'Volume (T/A): '||to_char(sq.VOLUME_TOTAL,'990D00')|| '/' ||to_char(sq.VOLUME_AVAILABLE,'990D00') AVAILABILITY,
    'Age: '||sq.PATIENT_AGE||'
    ' ||'Gender: '||sq.PATIENT_SEX||'
    ' ||'Bloodtype: '||sq.BLOOD_TYPE||'
    ' PATIENT_INFO,
    DML_SERVICE.get_Diagnoses(sq.SAMPLE_ID) DIAGNOSES,
    DML_SERVICE.get_Medications(sq.SAMPLE_ID) MEDICATIONS,
    DML_SERVICE.get_Interferences(sq.SAMPLE_ID) INTERFERENCES,
    DML_SERVICE.get_LabData(sq.SAMPLE_ID) LABDATA,
    decode(to_char(sq.ALIQUOTS_AVAILABLE), '0', null, htmldb_item.text(1, '1', 1, 2)) ORDER_QTY,
    decode(to_char(sq.ALIQUOTS_AVAILABLE), '0', null, htmldb_item.checkbox(2,sq.SAMPLE_ID)) ORDER_ME
    from SEARCH_V01 sq
    where sq.DIAGNOSIS = 'D-Dimer'
    order by 1 desc
    The DML_SERVICE functions just return a string(Varchar2). At the right side of the report I have two columns, one with a textfield (ORDER_QTY, default: 1) and one with a checkbox (ORDER_ME) for each line.
    For each line where the checkbox is checked, a process (On Submit - after Comp and Val) places the order for the requested quantity (this is done by inserting an Order ID into the ALIQUOTS table -> see bold update statement below).
    The process follows:
    declare
    alq_qty number;
    alq_id number;
    cnt number;
    begin
    cnt := 0;
    for i in 1..HTMLDB_APPLICATION.G_F02.count
    loop
    select count(*) -- set alq_qty to number of available alq's
    into alq_qty
    from ALIQUOTS a
    where a.SAMPLE_ID = HTMLDB_APPLICATION.G_F02(i)
    and a.ORDER_ID = 0;
    insert into D_DEBUG (ID, DD) values (1, 'wanted: ' || HTMLDB_APPLICATION.G_F01(i) || ' available: ' || alq_qty); -- REMOVE!!!
    if alq_qty > to_number(HTMLDB_APPLICATION.G_F01(i)) then -- if there are enough alq's
    alq_qty := to_number(HTMLDB_APPLICATION.G_F01(i)); -- set alq_qty to number of ordered alq's
    end if;
    for n in 1..alq_qty
    loop
    select min(ID)
    into alq_id
    from ALIQUOTS
    where sample_id = HTMLDB_APPLICATION.G_F02(i)
    and order_id = 0;
    insert into D_DEBUG (ID, DD) values (1, 'alq_id: '||alq_id); -- REMOVE!!!
    update ALIQUOTS
    set order_id = :P130_SELECT_ORDER
    where id = alq_id;
    cnt := cnt + 1;
    end loop;
    dml_service.upd_sample_record(HTMLDB_APPLICATION.G_F02(i)); -- refresh data in SAMPLE table
    end loop;
    :P130_MSG := 'Assigned '||cnt||' aliquots to order: '||:P130_SELECT_ORDER;
    end;
    Now my problem is that this process does what it should, sometimes. When I enter 6 in one row and check the checkbox and enter 4 in another row and check that checkbox and then press SUBMIT, 10 aliquots are assigned to my order.
    Sometimes.... the other times the process just orders 2 aliquots, one of each line and disregards the number entered in the textfield.
    Or so it may seem: I added some lines to write debug info into D_DEBUG (see above.) From those entries you can assume that the content of HTMLDB_APPLICATION.G_F01(i) is in fact '1' when the process does its work. So I think the problem lies somewhere in the creation of htmldb_item.text(), (I went through the API of that htmldb_item again and again...)
    Also: I can reproduce / recreate this error. It's totally weird: for some rows it (always) works and for some it (always) doesn't !!!
    So, any help, any suggestion is really appreciated (I'm currently working on bringing the crucial part of this to marvel.oracle.com)
    -David-
    [Edited by: sleuniss on Jul 15, 2004 12:18 PM]
    Changed subject line.

    Now the subjectline is right, but the indentation is gone.... :-(
    again the SQL query:
    select     distinct(sq.SAMPLE_ID) XXX,
               'ID: '||sq.SAMPLE_ID||'
    ' ||'Type: '||sq.SAMPLE_TYPE||'
    ' ||'Collection Date: '||sq.COLLECTION_DATE SAMPLE_INFO,
               'Aliquots (T/A): '||to_char(sq.ALIQUOTS_TOTAL)|| '/' ||to_char(sq.ALIQUOTS_AVAILABLE)||'
    ' ||'Volume (T/A): '||to_char(sq.VOLUME_TOTAL,'990D00')|| '/' ||to_char(sq.VOLUME_AVAILABLE,'990D00') AVAILABILITY,
               'Age: '||sq.PATIENT_AGE||'
    ' ||'Gender: '||sq.PATIENT_SEX||'
    ' ||'Bloodtype: '||sq.BLOOD_TYPE||'
    ' PATIENT_INFO,
               DML_SERVICE.get_Diagnoses(sq.SAMPLE_ID) DIAGNOSES,
               DML_SERVICE.get_Medications(sq.SAMPLE_ID) MEDICATIONS,
               DML_SERVICE.get_Interferences(sq.SAMPLE_ID) INTERFERENCES,
               DML_SERVICE.get_LabData(sq.SAMPLE_ID) LABDATA,
               decode(to_char(sq.ALIQUOTS_AVAILABLE), '0', null, htmldb_item.text(1, '1', 1, 2)) ORDER_QTY,
               decode(to_char(sq.ALIQUOTS_AVAILABLE), '0', null, htmldb_item.checkbox(2,sq.SAMPLE_ID)) ORDER_ME
    from     SEARCH_V01 sq
    where  sq.DIAGNOSIS = 'D-Dimer'
    order    by 1 desc
    and the process:
    declare
       alq_qty number;
       alq_id number;
       cnt number;
    begin
       cnt := 0;
       for i in 1..HTMLDB_APPLICATION.G_F02.count
       loop
          select count(*) -- set alq_qty to number of available alq's
           into alq_qty
           from ALIQUOTS a
           where a.SAMPLE_ID = HTMLDB_APPLICATION.G_F02(i)
           and a.ORDER_ID = 0;
    insert into D_DEBUG (ID, DD) values (1, 'wanted: ' || HTMLDB_APPLICATION.G_F01(i) || ' available: ' || alq_qty); -- REMOVE!!!
          if alq_qty > to_number(HTMLDB_APPLICATION.G_F01(i)) then -- if there are enough alq's
             alq_qty := to_number(HTMLDB_APPLICATION.G_F01(i)); -- set alq_qty to number of ordered alq's
          end if;
          for n in 1..alq_qty
          loop
             select min(ID)
              into alq_id
              from ALIQUOTS
              where sample_id = HTMLDB_APPLICATION.G_F02(i)
              and order_id = 0;
    insert into D_DEBUG (ID, DD) values (1, 'alq_id: '||alq_id); -- REMOVE!!!
             update ALIQUOTS
              set order_id = :P130_SELECT_ORDER
              where id = alq_id;
             cnt := cnt + 1;
          end loop;
          dml_service.upd_sample_record(HTMLDB_APPLICATION.G_F02(i)); -- refresh data in SAMPLE table
       end loop;
       :P130_MSG := 'Assigned '||cnt||' aliquots to order: '||:P130_SELECT_ORDER;
    end;
    -David-

  • How to populate multiple entries to Bapi Table

    Hi all,
      How to populate multiple entries to Bapi Table.....
    Here is the code(in component controller)
      Z_Recr_Apply_Point_Input request = new Z_Recr_Apply_Point_Input(WDModelScopeType.TASK_SCOPE);
           int  size = wdContext.nodeApplicants().size();
                for(int i = 0 ; i < size ; i++)
                    String isselected = wdThis.wdGetContext().nodeApplicants().getElementAt(i).getAttributeAsText("Appl_Number");
                     if(isselected == "true")
                               com.models.veteranpoint.Zrecr_Aplno appid = new
                                    com.models.veteranpoint.Zrecr_Aplno();                                        
                                    appid.setAppl_Number(wdContext.nodeApplicants().
                                        getApplicantsElementAt(i).getAppl_Number());
                               request.addApplicants(appid);
    I want to pass the selected input field to bapi..
    Please tel me where i pass the input field...
    Please correct my code...
    Thanks & regards
    Mathi s

    Hi,
    Steps to insert multiple entries to BAPI table.
    1.Create an instance for BAPI input
    2.Bind the instance to the Node of the BAPI input
    3.Create instance of the Structure(BAPI table) to which input has to be added.
    4.Set the input values to the Structure instance.
    5.Add the instance to the BAPI input.
    6.Execute
    From the given example,I assume Z_Recr_Apply_Point_Input  is the BAPI Input and com.epiuse.us.recruitment.models.veteranpoint.Zrecr_Aplno as Structure
    Step 1:
    Z_Recr_Apply_Point_Input request = new Z_Recr_Apply_Point_Input(WDModelScopeType.TASK_SCOPE);
    Step 2:
    <b>wdContext.nodeZ_Recr_Apply_Point_Input.bind(request);</b>
    Steps 3 & 4:
    int size = wdContext.nodeApplicants().size();
    for(int i = 0 ; i < size ; i++)
    String isselected = wdThis.wdGetContext().nodeApplicants().getElementAt(i).getAttributeAsText("Appl_Number");
    if(isselected == "true")
    com.epiuse.us.recruitment.models.veteranpoint.Zrecr_Aplno appid = new
    com.epiuse.us.recruitment.models.veteranpoint.Zrecr_Aplno();
    appid.setAppl_Number(wdContext.nodeApplicants().
    getApplicantsElementAt(i).getAppl_Number());
    <b>wdContext.currentZ_Recr_Apply_Point_InputElement().modelObject().addRecr_Aplno(appid);</b>
    Step 5:
    <b>wdContext.currentZ_Recr_Apply_Point_InputElement().modelObject().execute();</b>
    Regards,
    Viji Priya

  • SAP-R/3- In which table, numeric values stored in  equipment characteristis

    SAP-R/3- In which table, numeric values stored in  equipment characteristis are captured.
    In AUSP table Char values in equipment characteristics are captured against object number.But this table does not cappture numeric characteristics.
    Are these numeric values captured in any function module?

    Hi
    check the BAPI  for characteristics
    BAPI_OBJCL_GETDETAIL
    BAPI_OBJCL_CHANGE
    or use the fun module:
    CLAF_CLASSIFICATION_OF_OBJECTS.
    You can use the tables
    CAWN,INOB and AUSP to get the characteristics
    Regards
    Anji

  • Wrong  value  in java stored function

    Hi All,
    i have written a java stored function,
    at the end of the code it insert record into the database
    among other columns also a number(18,3) column,
    when I debug it (out side of server) - works fine.
    when I load it to database i get wrong values in column
    (like instead of 76.546 i get 77.667) I can't figure out where it comes from.
    I use big decimal in java code.
    if i Hard code the value in java code it works fine!
    am I missing something ?, calculations/ data type different out side then inside database? using oracle 10.2.0.2
    Cheers
    Sahar

    Hi
    the code calculate some averages of amounts ( money) according to several
    conditions,and parameters given to the function and stores the average into table in the database
    the money columns are of data type 18,3 , both source and target tables have same structure.
    thanks
    Sahar

  • Wrong values in the cube S001.

    good morning people,
    we are with the ecc 6.0 installed almost 01 years, the analysis made in the reports that use the standard cube S001, are with with wrong values. This problem does not happen with all materials in a given month, it appears as if the quantity to be addressed in pending orders, but referring to VA05 or VA05N shows nothing pending.
    Being a standard table is not my IT team can not change it, someone already went through this problem, how did you solve it.
    Since will thank you.
    Jefferson Souza
    Multilab Ind e Com Prod Farmaco Ltda
    Brazil

    Hello Jefferson
    Can you elaborate a bit more?  When you say cube S001, I think you mean Infostructure S001 which is part of Sales Information System (SIS) reporting. What key figures are showing wrong? Is it open orders quantity/value? Are VA05 or VA05N showing correct values?
    Check if you are using any formulas for updates- T code MC26- I doubt it becasue it is a standard table. If they are using custom formulas, may be they are the culprit.
    Sometimes document status is not updated and so VA05, VA05N may not be correct.  Run reports SDVBUV00, SDVBUK00 and  RVV05IVB. Use OSS notes 106567,  128947 for tips before running the reports.

  • How to check wrong values in isChangedByClient

    Hi,
    I had two issues with a validation code.
    First let me describe the scenario.
    We need to update the Vendor Master.
    There should one primary contact against one Vendor Number.
    There are multiple Secondary contact against one primary contact.
    There are 4 fields for both primary and secondary contact.
    Primary Contact:
    First Name (Read Only, Mandatory).
    Last Name (Read Only, Mandatrory).
    Mobile Number (Mandatory).
    Telephone (Optional).
    Secondary Contact:
    First Name (Mandatory).
    Last Name (Mandatory).
    Mobile Number (Mandatory).
    Telephone (Optional).
    So, I need to check two validations by Java Regular Expressions,
    Name should be alphabets with ,. and space.
    Telephone Number and Mobile Number would be Numbers only.
    Now, the issue client wants the Sceondary Contacts table rows
    can be modified without selecting them.
    So, I used isChangedByClient.
    That's working fine.
    But the user gives First Name as Kaushik45 in first row of the secondary contact table
    and also types First Name as Subho67 in third row.
    The first wrong value get printed (by wdComponentAPI.getMessageManager) but
    the control goes to the last wrong value.
    This might be solved by using setLeadSelectionAt(i).
    Now, when the user types values wrongly in First Name field for Row 1 and Row 3;
    the user gets stuck in First Row.
    He modifies and then click the update again.
    This time update runs and update the wrong value at row 3.
    So, solution might be storing all wrong values of the isChangedByClient in an array and then comparing one by one.
    Please suggest.
    Regards
    Kaushik Banerjee

    Hi Ilan,
    I am pasting the code below.
    public void onActionconf(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent )
        //@@begin onActionconf(ServerEvent)
         MessageManager msgmanager=(MessageManager)wdThis.wdGetAPI().getComponent().getMessageManager();
         IPrivateMainView.IP_personNode testNodeP = wdContext.nodeP_person();
              //IPrivateMainView.IS_personNode testNodeS = wdContext.nodeS_person();
              IPrivateMainView.IS_personNode S_personNode = wdContext.nodeS_person();
             IPrivateMainView.IS_personNode spersonNode = wdContext.nodeVendorDetails().nodeS_person();
              IPrivateMainView.IP_personElement testElementP = testNodeP.currentP_personElement();
         if(testNodeP.size()!=0){
              /*If else for tesElementP Namev null value check */          
                        if(testElementP.getNamev()!=null)
                   /*Start of if-else for testElementP Mob Number */          
                                  if(testElementP.getMob_Number()!=null){
                                       String Mob_num = testElementP.getMob_Number();
                                      String regStrforPriMob=  "[0-9]*";
                                       CharSequence chSeqForMob = Mob_num;
                                       Pattern patternForPriMob = Pattern.compile(regStrforPriMob);
                                      Matcher matcherForPriMob = null;
                                       matcherForPriMob = patternForPriMob.matcher(chSeqForMob);
                                       /* Start of matcher if-else*/
                                       if(matcherForPriMob.matches()==true){
                                            if(testElementP.getTel_Number()!=null) {
                                             String tel_num = testElementP.getTel_Number();
                                             String regStrforPriTel = "[0-9]*";
                                             CharSequence chSeqForTel = tel_num;
                                             Pattern patternForPriTel = Pattern.compile(regStrforPriTel);
                                             Matcher matcherForPriTel = null;
                                             matcherForPriTel = patternForPriTel.matcher(chSeqForTel);
                                  wdComponentAPI.getMessageManager().reportSuccess("The Telephone Number of Primary Number is matching");            
                        if(matcherForPriTel.matches()==true){
                        if(S_personNode.size()!=0){
                        //IPrivateMainView.IS_personElement S_personElement = S_personNode.currentS_personElement();
                                          //  for(int i=0;i<wdContext.nodeS_person().size();i++) {
                                                      /*Start of Secondary Contact Mob Number and Tel Number if-else */     
                                                      for(int i=0;i<wdContext.nodeS_person().size();i++){
                                                        if(wdContext.nodeS_person().getS_personElementAt(i).isChangedByClient()==true){
                                                           IPrivateMainView.IS_personElement S_personElement = (IPrivateMainView.IS_personElement)S_personNode.getElementAt(i);
                                                           String fName = wdContext.nodeS_person().getElementAt(i).getAttributeAsText("Namev");
                                                           wdComponentAPI.getMessageManager().reportSuccess("The First Name for the Secondary Contact is :"+fName);                                                                                                                        
                                                           String regStrforSecfName = "[a-zA-Z-øØæÆåÅ,. ]*";
                                                           CharSequence chSeqforSecFname = fName;
                                                           Pattern patternForSecfName = Pattern.compile(regStrforSecfName);
                                                           Matcher matcherForSecfName = null;
                                                           matcherForSecfName =  patternForSecfName.matcher(chSeqforSecFname);
                                                                                                                  //String lName = S_personElement.getName1();
                                                           String lName = wdContext.nodeS_person().getElementAt(i).getAttributeAsText("Name1");
                                                           String regStrforSeclName = "[a-zA-Z-øØæÆåÅ,. ]*";
                                                           CharSequence chSeqForSecLname = lName;
                                                           Pattern patternForSeclName = Pattern.compile(regStrforSeclName);
                                                           Matcher matcherForSeclName = null;
                                                           matcherForSeclName = patternForSeclName.matcher(chSeqForSecLname);
                                                                                                                  //String Mob_NumSec = S_personElement.getMob_Number();
                                                          String Mob_NumSec = wdContext.nodeS_person().getElementAt(i).getAttributeAsText("Mob_Number");
                                                           String regStrforSecMob ="[0-9]*";
                                                           CharSequence chSeqForMobSec = Mob_NumSec;
                                                           Pattern patternForSecMob = Pattern.compile(regStrforSecMob);
                                                           Matcher matcherForSecMob = null;
                                                           matcherForSecMob = patternForSecMob.matcher(chSeqForMobSec);
                                                        if(S_personElement.getMob_Number()!=null&&S_personElement.getNamev()!=null&&S_personElement.getName1()!=null){
                                                           //String fName = S_personElement.getNamev();
                                                                                    /* Start of matcher if-else*/
                                                           if(matcherForSecfName.matches()==true&&matcherForSeclName.matches()==true&&matcherForSecMob.matches()==true){
                                                           /* Start of City if-else */
                                                           if(S_personElement.getTel_Number()!=null){
                                                             String Tel_NumSec = wdContext.nodeS_person().getElementAt(i).getAttributeAsText("Tel_Number");
                                                             String regStrforSecTel = "[0-9]*";
                                                             CharSequence chSeqForTelSec = Tel_NumSec;
                                                             Pattern patternForSecTel = Pattern.compile(regStrforSecTel);
                                                             Matcher matcherForSecTel = null;
                                                             matcherForSecTel = patternForSecTel.matcher(chSeqForTelSec);
                                                           /* Start of matcher if-else */
                                                           if(matcherForSecTel.matches()==true&&matcherForSecfName.matches()==true&&matcherForSeclName.matches()==true&&matcherForSecMob.matches()==true){
                                                 wdComponentAPI.getMessageManager().reportSuccess("The First Name matches the pattern: "+matcherForSecfName.matches());               
                                                                                               if(wdContext.currentCheckboxckElement().getCorrespondence()==true){
             wdComponentAPI.getMessageManager().reportSuccess("Entering the if statement for executing the RFC");
                                                                                              wdThis.wdGetVdapplicationController().updVendorDetails();
                                                                                              wdThis.wdFirePlugToFinal();
                                                                                              //break;
                                                                                              else
                                                                                              {   IWDAttributeInfo atinfo = wdContext.nodeCheckboxck().getNodeInfo().getAttribute("Correspondence");
                                                                                              msgmanager.reportContextAttributeMessage(wdContext.nodeCheckboxck().getCurrentElement(),atinfo,IMessageVdapplication.KEY4,new Object[]{},true);
                                                                                              //wdComponentAPI.getMessageManager().reportException("Kryss av for korrekt informasjon før lagring",true);
                                                                                              } /* End of check box if else*/
                                                           } /* End of Secondary Contact Telephone Number matching */
                                                           else {
                                                                wdComponentAPI.getMessageManager().raiseException("The Secondary Contact Telephone Number is not matching",true);
                                                                } /* End of Secondary Telephone Number if */     
                                                             /* End of matcher if-else*/
                                                             else {
                                                                //wdComponentAPI.getMessageManager.re("The Mobile Number is not in the correct format for Secondary contact",true);
                                                    wdComponentAPI.getMessageManager().reportSuccess("The First Name was : "+wdContext.nodeS_person().getElementAt(i).getAttributeValue("Namev"));
                                                    //Object[] firName = new Object<i>;
                                                   // firName<i> = wdContext.nodeS_person().getElementAt(i).getAttributeValue("Namev");
                                                    wdContext.nodeS_person().setLeadSelection(i);      
    //                                                for(int j=0;j<firName.length;j++)
                                                      /*  try {
                                                                          String fuName = wdContext.nodeS_person().getElementAt(i).getAttributeValue("Namev").toString();
                                                                          wdComponentAPI.getMessageManager().reportSuccess("The Value of fuName: "+fuName);
                                                                                                                                           //String fName = S_personElement.getNamev();
                                                                          String regStrforFuName = "[a-zA-Z-øØæÆåÅ,. ]*";
                                                                          CharSequence chSeqforFuName = fuName;
                                                                          wdComponentAPI.getMessageManager().reportSuccess("The Value of CharSequence "+chSeqforFuName);
                                                                          Pattern patternForSecFuName = Pattern.compile(regStrforFuName);
                                                                          Matcher matcherForSecFuName = null;
                                                                          matcherForSecFuName =  patternForSecFuName.matcher(chSeqforFuName);
                                                                          wdComponentAPI.getMessageManager().reportSuccess("The matcherForSecFuName is "+matcherForSecFuName);
                                                                          if(matcherForSecFuName.matches()==false){
                                                                          wdComponentAPI.getMessageManager().reportException("Error in the First Name",true);
                                                         catch(ArrayIndexOutOfBoundsException ae){
                                                              ae.printStackTrace();
                                                         catch(Exception e){
                                                              e.printStackTrace();
                                                   //String fuName = wdContext.nodeS_person().getElementAt(i).getAttributeValue("Namev");
                                                                wdComponentAPI.getMessageManager().reportException("The First Name, Last Name or Mobile Number is not in the correct format for Secondary contact",true);
                          //     break;
                                                        else {
                                                                                                               wdComponentAPI.getMessageManager().raiseException("First Name, Last Name, Mobile Number is blank",true);
                                               else {
                                                    wdComponentAPI.getMessageManager().raiseException("The Telephone Number of the Primary Contact is in the Correct format",true);
                                            } /* Telephone Number element null*/
                                            //else{}
                        /*Start of Secondary Contact Size if-else */                    
                                  /* End of if-else for Secondary Contact Size */
    //                 else {
    //                      wdComponentAPI.getMessageManager().reportException("The Mobile No of the Primary Contact is not in the correct format",true);                            
                        /* End of matcher if-else for Primary Contact*/
                        else{
                             wdComponentAPI.getMessageManager().reportException("Primary Contact Mobile Nunber is not in the correct format",true);
                   /* if for testElementP Mob Number */
                   else {
                        wdComponentAPI.getMessageManager().reportException("No Primary Contact Mobile Number",true);
              } /* End of If else for tesElementP Namev null value check */     
                        else {
                             wdComponentAPI.getMessageManager().reportException("There is no First Name for Primary Contact",true);          
        }// else if for testNodeP size closed
        else{
             wdComponentAPI.getMessageManager().reportException("There is no element in Primary Contact",true);
        //@@end
    Regards
    Kaushik Banerjee

  • WRONG VALUE OF THE parameter file type(bdc-session method)

    Hi experts,
    when iam uploading vendor details,,,
    it is giving above error.
    chk the code once.....
    CALL FUNCTION 'GUI_UPLOAD'
      EXPORTING
       FILENAME                      = 'C:/VENDOR1.TXT'
       FILETYPE                      = 'DAT'
      TABLES
        DATA_TAB                      = IT_UPLOAD.
    CALL FUNCTION 'BDC_OPEN_GROUP'
    EXPORTING
       CLIENT                    = SY-MANDT
       GROUP                     = 'SRR'
       USER                      = SY-UNAME.

    Hi here  iam sending the whole code once to you. just chk it once and same error(WRONG VALUE OF THE parameter file type) is coming after the changes.
    if i use asc it is giving that no file exists.
    Table Declaration
    tables :rf02k,    "Maintain vendor master record screen and work fields
            lfa1,     "Vendor Master(general)
            lfbk,     "Vendor Master (Bank Details)
            lfb1,     "Vendor Master (Company Code)
            lfm1,     "Vendor master record purchasing organization data
            lfb5.     "Vendor master (dunning data)
    Data Declaration
    data : begin of it_UPLOAD occurs 0,
           LIFNR like rf02k-lifnr,     "vendor no
           BUKRS like rf02k-bukrs,     "company code
           EKorg like rf02k-ekorg,     "purchasing org
           KTOKK like rf02k-ktokk,     "account group
           anred like lfa1-anred,     "initial
           name1 like lfa1-name1,     "name of vendor
           sortl like lfa1-sortl,     "search term
           land1 like lfa1-land1,     "country
           akont like lfb1-akont,     "reconcillation a/c.
           fdgrv like lfb1-fdgrv,     "planning group
           zterm like lfb1-zterm,     "terms of payment key
           mahna like LFB5-MAHNA,     "dunning procedure
           waers like lfm1-waers,     "Purchase order currency
           END OF IT_UPLOAD.
    DATA : IT_BDCDATA LIKE BDCDATA OCCURS 0 WITH HEADER LINE.
    include bdcrecx1.
    start-of-selection.
    UPLOADING THE DATA TO IT_UPLOAD
    call function 'GUI_UPLOAD'
    exporting
    filename = 'C:\DASRR\VENDOR1.TXT'
    filetype = 'DAT'
    has_field_separator = 'X'
    HEADER_LENGTH = 0
    READ_BY_LINE = 'X'
    DAT_MODE = ' '
    CODEPAGE = ' '
    IGNORE_CERR = ABAP_TRUE
    REPLACEMENT = '#'
    CHECK_BOM = ' '
    IMPORTING
    FILELENGTH =
    HEADER =
    tables
    data_tab = IT_UPLOAD
    EXCEPTIONS
    FILE_OPEN_ERROR = 1
    FILE_READ_ERROR = 2
    NO_BATCH = 3
    GUI_REFUSE_FILETRANSFER = 4
    INVALID_TYPE = 5
    NO_AUTHORITY = 6
    UNKNOWN_ERROR = 7
    BAD_DATA_FORMAT = 8
    HEADER_NOT_ALLOWED = 9
    SEPARATOR_NOT_ALLOWED = 10
    HEADER_TOO_LONG = 11
    UNKNOWN_DP_ERROR = 12
    ACCESS_DENIED = 13
    DP_OUT_OF_MEMORY = 14
    DISK_FULL = 15
    DP_TIMEOUT = 16
    OTHERS = 17
    if sy-subrc <> 0.
    message id sy-msgid type sy-msgty number sy-msgno
    with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
    endif.
    *CALL FUNCTION 'GUI_UPLOAD'
    EXPORTING
      FILENAME                      = 'C:/VENDOR1.TXT'
      FILETYPE                      = 'DAT'
    TABLES
       DATA_TAB                      = IT_UPLOAD.
    CALL FUNCTION 'BDC_OPEN_GROUP'
    EXPORTING
       CLIENT                    = SY-MANDT
       GROUP                     = 'SRR'
       USER                      = SY-UNAME.
      POPULATE INTERNAL TABL
    LOOP AT IT_UPLOAD.
    CLEAR IT_BDCDATA.
    REFRESH IT_BDCDATA.
    PERFORM POPULATE_DATA.
    CALL FUNCTION 'BDC_INSERT'
    EXPORTING
        TCODE                  = 'XK01'
       TABLES
        DYNPROTAB              = IT_BDCDATA.
    ENDLOOP.
    *&      Form  POPULATE_DATA
          text
    -->  p1        text
    <--  p2        text
    FORM POPULATE_DATA .
    PERFORM GETDATA USING 'X' 'SAPMF02K' '0100'.
    perform getdata using ' ' RF02K-LIFNR 'IT_UPLOAD-LIFNR'.
    perform getdata using ' ' RF02K-bukrs 'IT_UPLOAD-bukrs'.
    perform getdata using ' ' RF02K-EKORG 'IT_UPLOAD-EKORG'.
    perform getdata using ' ' RF02K-KTOKK 'IT_UPLOAD-KTOKK'.
    PERFORM GETDATA USING 'X' 'SAPMF02K' '0110'.
    perform getdata using ' ' LFA1-ANRED 'IT_UPLOAD-ANRED'.
    perform getdata using ' ' LFA1-NAME1 'IT_UPLOAD-NAME1'.
    perform getdata using ' ' LFA1-SORTL 'IT_UPLOAD-SORTL'.
    perform getdata using ' ' LFA1-LAND1 'IT_UPLOAD-LAND1'.
    PERFORM GETDATA USING 'X' 'SAPMF02K' '0210'.
    perform getdata using ' ' LFB1-AKONT 'IT_UPLOAD-AKONT'.
    perform getdata using ' ' LFB1-FDGRV 'IT_UPLOAD-FDGRV'.
    PERFORM GETDATA USING 'X' 'SAPMF02K' '0215'.
    perform getdata using ' ' LFB1-ZTERM 'IT_UPLOAD-ZTERM'.
    PERFORM GETDATA USING 'X' 'SAPMF02K' '0220'.
    perform getdata using ' ' LFB5-MAHNA 'IT_UPLOAD-MAHNA'.
    PERFORM GETDATA USING 'X' 'SAPMF02K' '0310'.
    perform getdata using ' ' LFM1-WAERS 'IT_UPLOAD-WAERS'.
    ENDFORM.                    " POPULATE_DATA
    *&      Form  GETDATA
          text
         -->P_0213   text
         -->P_0214   text
         -->P_0215   text
    FORM GETDATA  USING    VALUE(P_0213)
                           VALUE(P_0214)
                           VALUE(P_0215).
                        IF P_0213  = 'X'.
                        IT_BDCDATA-PROGRAM = P_0213.
                        IT_BDCDATA-DYNPRO = P_0214.
                        IT_BDCDATA-DYNBEGIN = P_0215.
                        ELSE.
                        IT_BDCDATA-FNAM = P_0214.
                        IT_BDCDATA-FVAL = P_0215.
                        ENDIF.
    ****************any error in coding just chk it*****************

  • RFC+BAPI+TABLE HELP

    Hi all.
    Im install SAP NetWeaver Sneak preview ABAP edition.
    Me application writen i VB 6 connect ok.
    BAPI,TABLE- object connect ok.
    If retrieving data command BAPI getdetail+show app closed=crash,TABLE search ok,if TABLE show data or TABLE detail data,main app writen error - No search table-table not found ......
    Please help

    Armin,
    First of all than you for your reaction. I couldn't answer earlier because I was too busy to catch up with project deadlines.
    I checked the mapping between the custom controller and the view controller is done. It should be OK since I can display the bapi returned table in a Table widget.
    But I still don't know how to access this returned table from the wdDoInit() method of the view controller.
    My context is as following:
    Bapi_Currency_Getlist_Input
      -- Curreny_List
         -- Currency
    I can get a reference to currentBapi_Currency_Getlist_Input, next I can get a reference to currentCurrency_ListElement. But as from this point, I can't get a List or any other container with the currency values. (The bapi I call is bapi_currency_getlist and I try to create a value help with curency values)

Maybe you are looking for

  • FAQ: How do I uninstall the Photoshop CS6 beta?

    With the Photoshop CS6 beta coming to a close and the 60 day trial period expiring, you'll be looking to uninstall the beta software from your system. It is recommended that you uninstall the Photoshop CS6 beta prior to installing the official releas

  • How to make a conference call from an iPhone

    How to make a conference call from an iPhone

  • Settings for Video Podcast?

    I don't have a video iPod, but a friend told me that my video didn't sync with her new iPod Nano via iTunes. Trying to figure out if there's something wrong with the encoding. I read in the new video capable iPod specs... H.264 video, up to 1.5 Mbps,

  • Is there a way to bulk import/edit SMTP Proxy Adresses in Unity Connection 10?

    I'm looking for a way to perform a bulk import of SMTP Proxy Addresses. BAT doesn't seem to have a way to do it.  I have 3,000 users, not looking forward to doing it manually!  Any suggestions? Thanks

  • Map programe for valuation

    dear gurus yesterday i faced a problem with material stock valuation with ref. to that i got on replay ple check map program ple tell me about that tahnk u prakash