Problem in Pricing routine

Hi Sap Gurus,
Currently I am dealing with one pricing problem.Pricing in item level is working but unfortunately pricing in Header level is not working.Any thoughts or concerns will be highly rewarded and appreciated.Thanks!
                       chetali

Hi,
The issue here is with the condition ZV15-Effective price in the pricing procedure ZUT21S.In the order we are getting the error “Mandatory condition ZV15 is missing”, even when ZV15 is getting pulled in with a condition value but as you hit save and go to incompletion log (where we see the pricing error) and when you come back in to the conditions screen we ca can see condition value is blank, and we see error at the bottom.
ZV15 is a mandatory and statistical condition maintained to make sure that the orders are not getting saved if any one of among (ZV11, ZV13 and ZV14) is missing. ZV15 refers to the subtotal 6 (Item Gross) in the pricing procedure.
In sales order, when I include ZV13 condition, I can save my order and the subtotal (which essentially has to be a running total) is ignoring ZV14 and getting condition value of ZV13.
When I delete the condition ZV13 and only have ZV14, then I am getting the error.
Some details about the issue:
There was not any copying control set.
Header condition is first listed in the pricing procedure.
Pricing procedure ZUT21S was defined with the following descriptions:
Ctype    description     manuals    mandatory    statistics   Reqt  AltCtype  AHCBV  Actky
ZV14    Manual(Hdr)  checked                                          907       0              12           ERL
ZV13    Manual(Item) checked                                          907       0               0            ERL
ZV11    Price                     
ZV15    Effective price                 checked        checked    2          10              0   
Condition tables (with several key combinations) and access sequences were maintained for each of the pricing condition types.
Brief descriptions about the condition types are as follows:
ZV11: cond class:B, Cal Type:C, Cond Cat:H
Changes can be made: Manual entries: C
Item condition and amount/percent are checked.
Master Data: Valid from: 4, valid to: 5; delete from DB: Do not delete.
Scale: Scale basis: c and check value: A
ZV13: cond class:B, Cal Type:C, Cond Cat:H
Changes can be made: Item Condition, delete, amount/percent, quantity relation, value, calculate type.
Changed manual is checked.
Cond Contorl: C, Cond Origin: C, Account Determination: ERL
ZV14: cond class:B, Cal Type:B, Cond Cat:H
Changes can be made: Header Condition, delete, amount/percent, quantity relation, value, calculate type.
Group condition is checked.
Scale Basis: C and check value: A.
ZV15: cond class:B, Cal Type:G,
Changes can be made: Item Condition
Statistical is checked.
Cond Contorl: A, Cond Origin: A,
Any light on the issue??

Similar Messages

  • IPC  java user exit- pricing routines

    Hi experts,
    I am new to IPC  java pricing routines and i have a requirement like this,
    1. The user enters manually in Quote the new price. (say cond type ZNEW)
    2. The cond record for ZTKE is available with the price as well as Max price and Min Price.
    3. The Routine formula should validate with ZTKEcondition record with maximum and minimum price available.
    4. If the new price is within the max/min range then pass it. System will do nothing and accept the manual price entered.
    5. If the price is not within the range then issue error message u2018Price not within the rangeu2019. The system does not accept the manual entry of the new price.
    Please let me know how to approach for the solution of the above.
    I know how to raise the error messages ,my main concern is to check the new price of condition type with the other condition type min n max values.
    Please provide me some pointers on it.
    Thanks.

    Hi Faiq,
    I am facing the same problem as you.
    I tried to solve it via the following code sample:
    throw new PricingRuntimeException([MessageClass], [MessageNumber], [Attributes], [RootCauseException]);
    throw new PricingRuntimeException("ZTEST", 0, new String[] {"test2"}, null);
    But no error appeared.
    Another possibility can be the following method!?
    But I do not know how to use it:
    pricingItem.getUserExitDocument().setStatusMessage(new StatusEvent());
    Perhaps meanwhile you have found another solution.
    If yes it will be nice if you post it.
    Greets Ruben

  • Pricing routine is not called even after assigning it in pricing procedure.

    Hi
    I created a pricing routine (Condition value) for one ZCondition type. I saved it in the workbench request. Functional consultant assigned this pricing routine to condition in Pricing Procedure. The routine was called while creating a PO. It works perfect in development system. But after we transported to quality server the routine is not getting called. Routine is displayed in pricing procedure in quality server. Routine program also exists in quality server. But the program include statement is not found in standard program RV64ANNN in quality. But in development the include statement appears in this program. How this program was not modified in quality server after transport? Its a SAP standard program and it was not saved in any request and was not modified manually too.
    Can anyone explain me what could be the reason that the program RV64ANNN is not updated in quality server to include the routine?
    How can we update this program without modifying it manually?
    Would deleting the pricing routine and recreating it help resolve this problem?

    Hi,
    Refer to the following Notes:
    [Note 22808 - Transferring formulas|https://service.sap.com/sap/support/notes/22808]
    [Note 388998: VOFM: Check report for entries in TFRM/TFRMT|https://service.sap.com/sap/support/notes/388998]
    [Note 28683: PERFORM_NOT_FOUND: VOFM routine is not active|https://service.sap.com/sap/support/notes/28683]
    Note 22808 - Transferring formulas is the first place you should look.  FYI, there is a lot of information on this topic available by searching for SAP Notes that have "RV80HGEN" and/or "VOFM" as keywords.
    Regards,
    Jamie
    Edited by: James Gaddis on Mar 19, 2008 10:59 AM - Added an additional SAP Note number and comment about searching for more Notes.

  • Get Delivery date(EKET-EINDT) in MM Pricing routine(group condition)

    Hi All,
    I have created an MM pricing routine RV65A092 in VOFM. So when creating PO(ME21n), this routine will trigger..
    Now the problem is I need EKET-EINDT for grouping condition. It was mentioned to call program SAPLMEPO and get EKET data.
    Please help me how to get delivery date in that routine  which is filled in Item level during PO creation
    Thanks
    Ram

    Hi Ram,
    For SD you have the SAP Note 531835 - Using field PSTYV in the condition access. For MM is simmilar, although you must use the enahncements. Instead use the userexits that note says, use the enhancement LMEKO001 (EXIT_SAPLMEKO_001) to populate fields ZZ in KOMK and LMEKO002 to populate KOMP.
    I hope this helps you
    Regards
    Eduardo

  • Replicate pricing routine in CRM

    Hi all,
    I'm trying to replicate pricing routine from R3 to CRM 5.0 without using IPC.
    Most of the master data and copy control is done already, pricing routine is the only one that I'm having a problem with since we don't use IPC here.
    Have anyone experienced this before?  Appreciate all the help.
    Thanks
    Gilbert

    Gilbert
    1. <a href="http://help.sap.com/saphelp_crm50/helpdata/en/8b/06f837aea75351e10000009b38f8cf/frameset.htm">How Pricing is done in CRM ?</a>
    2. <a href="http://help.sap.com/saphelp_crm50/helpdata/en/f6/6f6d28bf197247918ae66002feec75/frameset.htm">Differences in Pricing in SAP CRM and SAP R/3</a>
    3. Pricing in crm
    Happy Working !
    Thanks
    <b>Allot pointzs if this helps!</b>

  • VOFM pricing routine

    I have a requirement where I need to check pricing condition for BOM material.The requirement is that,if the material is a BOM in a sales order,then the pricing routine should trigger for its sub material. The problem we are facing is that the pricing routine is not getting triggered for the sub material. If anybody have worked on such requirement ,please give some input.I want the pricing routine to be triggered for the submaterial.

    Hi ,
          Whatever logic u write in ur routine .The final value which will go out from the routine is xkwert which is condition value .so in ur logic you will have to populate a value to the field xkwert .

  • Problems in pricing

    Hi,
    I am new to IS-OIL and have had trouble finding the answer to a problem we are having. We have a rounding rule in our pricing routine set up for Provisional and Final. The Provisional gets updated ok, but the Final does not show the rounding rule. I am currently trying to find out how the tables OICQ8 and OICQ5 are updated as those are the tables that should have the rounding rule in them. One other thing, is this is not something that happens on all of our invoices and sales orders, but only on two of the contracts that we have.
    Thank you so much for any help
    Mike

    Hi Badrinath,
    Please try pricing requirements in VOFM.
    T/code VOFM> Requirements> Pricing > you can copy Standard routine (Price Change)> Write your own logic .
    Hope this may help you.
    Lanka

  • IPC Java userexit-pricing routines

    Hi experts,
    I am new to IPC  java pricing routines and i have a requirement like this,
    1. The user enters manually in Quote the new price. (say cond type ZNEW)
    2. The cond record for ZTKE is available with the price as well as Max price and Min Price.
    3. The Routine formula should validate with ZTKEcondition record with maximum and minimum price available.
    4. If the new price is within the max/min range then pass it. System will do nothing and accept the manual price entered.
    5. If the price is not within the range then issue error message u2018Price not within the rangeu2019. The system does not accept the manual entry of the new price.
    Please let me know how to approach for the solution of the above.
    I know how to raise the error messages ,my main concern is to check the new price of condition type with the other condition type min n max values.
    Please provide me some pointers on it.
    Thanks.

    Hi Micheal,
    Thanks for the reply. I am not doing anything with ZTKE. I need to check with ZNEW.when user enters the new price in ZNEW condition type ,that price should be checked with the price in ZTKE with its min n max values. I.e if the entered new price is in the range between max n min values ,system will take that entered new value ,if its not it will through a error.
    So, for this i need to get the condition record value of min n max and compare with the entered new price in ZNEW and check for the above. I hope you got my point.
    Please let me knoe which way i can proced to do so....
    Thanks.

  • IPC Pricing routine for Product Family Margin in Quotation is not working

    Hi,
    I am working on the IPC Pricing Routine to calculate Item's Product Family Margin in the Quotation. 
    Process followed:
    Step 1:  Created a Group condition ZPFM for Product Family Margin and assigned to the pricing procedure. 
    Step 2:  Created a Value Routine to determine ZPFM's Condition Rate and Condition Value.
    Logic: 
              1.  Collect (Sum Of)  the Cost (ZSVC) and the Subtotal 3 of the items which are in same Material Group.
               2.  Assign the ZPFM Condition Value = Sum of Subtotal 3 - Cost.
    Issue:  The condition value for ZPFM is calculating correct for all line items except the last item.  I am getting some junk value always to the last item. If I delete the last time, again next last item is giving wrong value.  The calculation value in the routine debugging log (SM53) is showing correct value.  However, assigning the wrong value.  No other routines have been assigned to this condition type in the pricing procedure. 
    Routine Code:
    package stanley.pricing.userexits.val;
    import java.math.BigDecimal;
    import com.sap.spe.pricing.customizing.PricingCustomizingConstants;
    import com.sap.spe.pricing.transactiondata.PricingTransactiondataConstants;
    import com.sap.spe.pricing.transactiondata.userexit.IPricingConditionUserExit;
    import com.sap.spe.pricing.transactiondata.userexit.IPricingItemUserExit;
    import com.sap.spe.base.logging.UserexitLogger;
    import com.sap.spe.pricing.transactiondata.userexit.ValueFormulaAdapter;
    //import com.sap.spe.pricing.transactiondata.userexit.IPricingCondition;
    public class Z_CondValueRoutine730 extends  ValueFormulaAdapter{
       private static UserexitLogger uelogger =
              new UserexitLogger(Z_CondValueRoutine730.class);
      public BigDecimal overwriteConditionValue(IPricingItemUserExit pricingItem,
             IPricingConditionUserExit pricingCondition) {
      // Variable Declarations.
      BigDecimal conditionValueZCVC=PricingTransactiondataConstants.ZERO;
      BigDecimal conditionValueZCVCAccrual=PricingTransactiondataConstants.ZERO;
      BigDecimal subTotal3=PricingTransactiondataConstants.ZERO;
      BigDecimal subTotal3Accrual=PricingTransactiondataConstants.ZERO;
      if(pricingCondition.getConditionTypeName().equalsIgnoreCase("ZPFM")){
                IPricingItemUserExit[] prItems;
                prItems = pricingItem.getUserExitDocument().getUserExitItems();
                String materialGroup = pricingItem.getAttributeValue("MATL_GRP");
                uelogger.writeLogDebug("  Material Group  :"+materialGroup);
                for (int i=0;i<prItems.length;i++){
                     String materialGroup1 = prItems[i].getAttributeValue("MATL_GRP");
                     if (materialGroup1.equalsIgnoreCase(materialGroup)){
                          subTotal3 = prItems[i].getSubtotal(PricingCustomizingConstants.ConditionSubtotal.SUBTOTAL_3).getValue();
                          subTotal3Accrual = subTotal3Accrual.add(subTotal3);
                          IPricingConditionUserExit[] conditionsForCumulation = prItems[i].getUserExitConditions();
                          for (int j = 0; j < conditionsForCumulation.length; j++) {
                               if(conditionsForCumulation[j].getConditionTypeName()==null) {
                                   continue;
                               else if ( conditionsForCumulation[j].getConditionTypeName().equalsIgnoreCase("ZCVC")){
                                    conditionValueZCVC = conditionsForCumulation[j].getConditionValue().getValue();
                                    conditionValueZCVCAccrual = conditionValueZCVCAccrual.add(conditionValueZCVC);
                BigDecimal conditionValueZPFM=PricingTransactiondataConstants.ZERO;
                conditionValueZPFM = subTotal3Accrual.subtract(conditionValueZCVCAccrual);
               BigDecimal conditionRateZPFM=PricingTransactiondataConstants.ZERO;
               conditionRateZPFM = conditionValueZPFM.multiply(new BigDecimal ("100"));
              conditionRateZPFM = conditionRateZPFM.divide(subTotal3Accrual,7,BigDecimal.ROUND_FLOOR);
             uelogger.writeLogDebug(subTotal3Accrual+"-"+conditionValueZCVCAccrual+" = "+conditionValueZPFM);
             uelogger.writeLogDebug("Condition Rate  :"+conditionRateZPFM);
           pricingCondition.setConditionRateValue(conditionRateZPFM.setScale(2,BigDecimal.ROUND_HALF_UP));
           pricingCondition.setConditionValue(conditionValueZPFM.setScale(2,BigDecimal.ROUND_HALF_UP));
              return null;
           return null;

    Hi,
    I think you should change xkwert variable instead of komv-kwert.
    Standard routines does the same.
    Aslo check in SPRO settings that routine is attached and
    getting triggered by putting break-point.
    Regards,
    Vishal

  • Pricing routine 901 in the pricing procedure

    Can you tell me in detail (step by step) How to write pricing routine 901 in the pricing procedure?
    I know ABAP coding. I am new to SD (pricing).
    The only thing I know is the VOFM 901 Pricing Routine development is in ABAP program RV64A901.
    Purpose : Pricing Routine for calculating the price difference due to increase or decrease in the copal contract price from the copal actual price
    Description :
    Routine 901 : Copal Difference Calculation
    The formula to be used is : Copal Adjustment = ( Copal Contract Price + Copal Actual Price ) x Amount of Copal / 1000
    Where
    Copal Contract price is the condition type Y001 from the pricing procedure Z00003.
    Copal Actual price is the condition type Y002 from the pricing procedure Z00003.
    Amount of Copal is the condition type Y005 from the pricing procedure Z00003.
    Copal Adjustment is the condition type Y003 from the pricing procedure Z00003.

    Hi,
    Go to the transaction VOFM.
    In the menu..Choose...Formulas -> Condition value
    At the of the table ..Enter 901 and give the description..
    Then select that row and press source text button or F5.
    It will ask for the access key...
    Get the access key for the corresponding object
    R3TR PROG RV64A901
    Then in the code..
    READ TABLE XKOMV INTO LWA_Y001 WITH KEY KSCHL = 'Y001'
                                                      KPOSN = KOMP-POSNR.
    READ TABLE XKOMV INTO LWA_Y002 WITH KEY KSCHL = 'Y002'
                                                      KPOSN = KOMP-POSNR.
    READ TABLE XKOMV INTO LWA_Y005 WITH KEY KSCHL = 'Y005'
                                                      KPOSN = KOMP-POSNR.
    Sum up the values in LWA_Y001, LWA_Y002 & LWA_Y005
    And then move it to XKWERT
    Thanks,
    Naren

  • Problem in pricing determination in VA03

    Hi All,
    I am facing in pricing determination. There is inconsistency problem for pricing determination. For one of condition type ZCN1, we have maintained the price in condition record(VK11) but even after than the condition record does not get copied in the order. This is happening for some of the orders and not for all orders and not for all items for one order.
    In VA03 T.code
    E.g
    Sales order:30000123 line item 15
    The pricing date is 29.04.2007, but pricing in ZCN1 condition type could not be determined. In the pricing analysis screen it shows the confition record for the condition type ZCN1 but displays ''condition record found but not set'' we cheched for other orders/ line items this price was successfully copied. we are having such inconsistencies often.
    Can any body suggest some solution.
    Regads ,
    Geetha

    If it's a standard configuration that is not working, I would suggest to move this question to SD forum. Otherwise, if you have any user exits in pricing determination, the problem might be there. If it's a small piece of code, please post it here for a review.
    Also in the pricing condition analysis take a look at what keys are used for the price determination. Often the problem is that the keys are incorrectly populated in the program.

  • Problem in pricing regardinr business blueprint

    HI Gurus,
    i am new in sap sd field i just put my foot in this field.
    i got business blueprint for sap sd implementation i have folloing problem in pricing please help me out.
    <b>1</b>.Do you require the functionality to create user-defined indexes in the pricing table? This will enable you to search for your prices using company-specific search criteria such as what operation input ?what prices on a certain day?
    2 Do you ever base the prise of an item on the cost to manufacture or purchase the material?
    3. Eill you need to pas pricing information to the sales informatiom system?
    how to configure above requirement in business blueprints?
    please solve this problem
    Ketan Katara

    I install Oracle Business Process Architect 11g again but with local DB. there is quick start example. when I share blueprint that project, It is ok but when I add a repository server and share a project inside it nothing happen.
    I dont know why???? please help me.
    sorry for my bad english :(

  • Problems with pricing in Internet Order screen(CRM E-Commerce 5.0)

    Good afternoon !
            We are using CRM 5.0 with CRM E-Commerce 5.0, and we are experiencing problems with pricing in the order screen.
            When we create an order and insert one item at this order, this item is processed and the price is calculated and shown correctly, both in the item and in the table of totals at the right corner(where is the Total Net Price, freight value, etc).
            If we change the quantity of this item, or insert more one item(with the same or other product), the price turns to zero, both in the item(s) and in the table of totals mentioned above. Also, in the table of totals, the freight value remains being calculated, even in this cases when the prices is turned to zero.
            What can be happening in this case ? What can I check to determine the cause and solve this problem ?
            Thank you in advance !
            Wilson

    Good afternoon !
            This problem was solved adjusting some parameters of partner determination.

  • BAPI_PO_CREATE1 - Overriding standard pricing routine with fixed price

    Hi,
    I have to post a purchase order with BAPI_PO_CREATE1. It's important that the price in BAPIMEPOITEM-NET_PRICE is relevant for posting this purchase order and nothing else. I don't want to search for the price in any pricing routines of SAP, I want to take the price that I input explicitly.
    How can I tell BAPI_PO_CREATE1 that I want to use the fixed price in BAPIMEPOITEM-NET_PRICE?
    Thank you very much!
    Ralf

    Hi,
        if u have code for bapi_po_create1     ( purchase order creation bapi ) can u send me when i write the prog. it gave the error
           No instance of object type PurchaseOrder has been created. External reference:
    Thanks,
    mukesh

  • Problem with standard Routine "Seniority"

    Hi gurus,
    I have a problem with the routine "Seniority" that evaluate the length of service for the infoObject 0SRVCLEN - Length of Service. It is a standard routine in the update rule 0HR_PA_0.
    The problem occurs when the Employee has less than a year of service. The result of the routine is "0" but in the BW query "0" is interpreted like "#" - Not assigned.
    How can I change the value of the Not assigned result?
    This is the main part of the routine:
      IF NOT EMPLOYEE_WA-ENTRYDATE IS INITIAL.
        RESULT = ULTIMO0(4) - EMPLOYEE_WA-ENTRYDATE0(4).
        IF ULTIMO4(4) LT EMPLOYEE_WA-ENTRYDATE4(4).
          RESULT = RESULT - 1.
        endif.
      ENDIF.
    Thanks
    Alberto

    Sonal,
    To find the number of items please correct the code as below:
    Determine number of PO item lines
    LOOP AT TKOMV WHERE<b> KNUMV = TKOMV-KNUMV</b>
                                AND      NOT KPOSN IS INITIAL.
    AT NEW KPOSN.
    I = I + 1.
    ENDAT.
    ENDLOOP.
    Keep rest all code as it is.
    Let me know if this works,
    Thanks.

Maybe you are looking for

  • TDS (WHT) Reports, Tables, T-codes

    My Dear Friends, Please help me in the below requirement My Client need a report which consists the below fields. If there is no standard SAP report, please help me with tables, programs. TDS Report Vendor Name Vendor Number Vendor PAN Number Posting

  • Billing vf03

    hi all, in my vf03 t-code i got 2 billing invoice number both having same cond type. FOR 1st invoice - qty purchased 5 pc inside the item level - if we double click on cond. it will take to cond base value there i can see the Quantity 5 pc For 2nd in

  • Master Password up in smoke?

    After reading a recent MacWorld article on making your Mac secure, I felt it might be a good idea to add a master password to the Keychain, and so followed instructions to do this, saved it, checked it, all seemed fine. Last night I logged off the ma

  • Can't launch iPhone configuration utility on my pc

    I uninstall & reinstall few times and it doesn't work someone can help ? Thanks.

  • Leave for employee without approver is auto-approved.

    Hi, I'm trying to customize the HR_APPROVAL_CUSTOM pkg whereby I would want the leave for an employee without an approver not to auto-approve and instead raise an error message to sysadmin. Currently, when an employee who applies for leave has no app