Give Discount/Surcharges to PR00

Hi Experts,
Please can you explain how to give discount to PR00 base value?
For example, currently the pricing logic is PR00 value * quantity = gross value. Any discount or surcharges will be based on this gross value.
How to change it to give discount/surcharges directly to PR00?
Thank you very much.
Regards, Elaine

Thank you...
But I did not make my requirement clearly.
Current logic is -
PR00 = 3.175
Quantity = 1200
Discount = 6%
So the total = 3.17512000.94 = 3581.4
Is there any method that we can change it to this way
PR00 = 3.175
Discount = 6%
So the unit price now is 2.985
total = 2.985*1200 = 3582
Thank you!

Similar Messages

  • Discount/surcharge condition type

    Hello,
    would please advise me how to resolve the following situation.
    I have two condition type in pricing procedure.
    one of them is PR00 a quantity base cond. type. for base price calculation.
    and the second one is a discount.
    I would like to prevent discount condition type determination in case of base price (PB00) cond. type isn't determined in pricing procedure
    Is it possibly to solve it without creation a routine?
    Thank's a lot
    Kind regards
    Vitaly

    Is there other way to solve it without routine creation.?
    What do you mean under "it will improve perfomance"?
    I was thinking about condition supplement but this is not exacty what I would like to have.

  • Give discount at end of the month.

    Hi,
    What are the ways of giving discount to customers once they purchase certain qty of material?
    ie per month 1tons of goods purchased. 200Rs Discount(not in Sales order ,at the end of month)
    i know we can do it through Rebate Agreement,but if same customers are having different agreement then what?
    Reg.
    Amol

    I am assuming you are using Interactive Reporting (IR)
    In the Results section right click and Add Computed Item - in the computed item dialog box click the Functions Button.
    Look at the Date Functions
    You will see
    Returns the date of the last day of the month that contains d
    LastDay 'd'
    in the text area you will select the Date column you want to use to find the last day of month from
    Finally you complete the math to subtract your date from the date provided by the Scalar Function
    Hope this helps
    Wayne

  • Does Game Club give discount on consoles?

    I've been looking through forums and having trouble finding the answer.
    I was going to get the Gamers Club. And I'm looking to buy a PS4. Do I get a discount for using that?  Or just earn points for buying the PS4?
    Thanks ahead of time!

    Hi geekgold73,
    Great question and I believe that enuf pretty much has the bases covered here.
    Gamers Club Unlocked (GCU) benefits, specifically the 20% off, do not apply to gaming consoles. The savings is primarily intended for new, sealed Video Games. However, the links provided above will direct you to IdeaX, which is a part of our forums where you can vote on new ideas. Feel free to head over and share your input.
    Thanks for posting!
    Brian|Senior Social Media Specialist | Best Buy® Corporate
     Private Message

  • How to give discount  only to 1st 50 customers

    please allotment marks if you feel this question help full

    One needs to create sales deals as master data[VB22] in the system,
    For this you first have to define the agreement types you want to use. Types of sales deals are defined exactly as rebate agreement types in Customizing for Sales and Distribution.
    Regards,
    Gauravjit.
    Reward points if the solution is helpful

  • Exemptions from discounts and surcharges

    I work for an entrepreneurial company. We do quite a range of business across many different industry sectors. We support many different types of business deals. One of our biggest challenges is managing pricing.
    Wherever possible we try to set up our pricing calculation based on the most general attributes. For example: Sales Organization \ Price list type.
    Unfortunately, our business is not that simple.  We may have situations where the price may need to be calculated based on the customer\ material, or customer\ plant\ material combinations, etc...  This is not a problem in the standard system. We've just arranged the access sequences in the appropriate manner.
    Our challenge comes in with the range of discounts and surcharges.  Typically, management comes to us and says, "We need to add a surcharge for all customers who buy this product. There are 5,000 customers this would apply to. "
    The approach has been to create a new condition type if necessary, and to organize the access sequences in as general as possible a manner, to minimize maintenance, in order to apply the surcharge.
    After a few hours, a few days, or a few weeks, the sales leadership realizes 10% of the customers need to be exempted from this surcharge.  What's the best approach to do this?
    We have traditionally created a new access sequence for customer\ material and added a new condition record for the combination at a rate of $0.00. The new access is then assigned above the access used to apply the surcharge. The system then finds the $0.00 value record before any others, applies it, and stops. The customer has the surcharge condition applied, but at no value. If the value is $0.00, then the record does not print on any customer facing output. The customer never sees the $0.00 charge, and we satisfy the sales management requirement.
    The downside of this approach is as follows:
    The pricing screen in the sales order gets cluttered with $0.00 value records. (i.e. Fuel surcharges, product surcharges, location surcharges, internal statistical conditions, etc..) Many of these may apply on a single order.  It gets confusing for customer service and others trying to read the pricing screen.
    When a pricing report is run we inevitably get the question why are there so many records with $0.00 value? More confusion and ultimately IT support time.
    It becomes difficult to identify what the final price to a customer is without simulating an order. You must create\simulate an order to get at the net price the customer will pay.  Now we need to introduce the SAP quotation process ( we currently don't use it), or code a program to work up a price. More IT development and or support time.
    Numerous other reasons I can't think of at the moment
    The simple approach would be to go back to sales management, tell them to forget about the discounts & surcharges, just work up a net price and be done with it. Unfortunately, the funds need to be channeled to different account assignments. Accounting wants transparency in the account assignments, and likes to see the application of the charges and discounts separated by condition types.
    Caught between a rock and a hard place, what is a poor SD guy to do? Is there a better way to deal with the exemptions, minimize maintenance, and reduce the level of confusion and noise?
    Any thoughts are appreciated.

    Hi,
    It is not advisable to go for a general access. It should be always from more specific to more general.
    It seems that business process involves more functionality in pricing.
    You can group your customers. You can use the fields like Customer group, Price group, Price list. If you take Customer group, you can maintain u2018nu2019 number of customer group say A, B, C , D, E, F, G, H, I , J. Create an access like Sales org / Distribution channel / customer group / Material group.
    If your client wants to apply 5% surcharge to all customers, create condition records for all (A to J) customer group. If he wants to exempt some of the customer group, change the condition records for that particular customer groups. The client should be given be advice to go for any change in pricing according to the customer group or any other suitable fields (Price group or price list)
    Regards,
    K Bharathi

  • Display discounts and surcharges  for the same vbeln in the same row

    hi experts
    i have to display one discount and surcharges for one vbeln, posnr and one material,
    i have used konv-kschl for condition type and konv-kwert for condition value.
    in my output the conditions what i have given for discounts and surcharges its matching and displaying in different lines for the same vbeln and posnr. usually i should get one line of outputfor one vbeln, but iam getting 3 times repeated
    (one without discounts, surcharges,
    second : same vblen, posnr with discounts,
    third : same vblen, posnr for surcharges )
      please modify the internal table and  conditions below what i have given in my object.
    DATA : BEGIN OF it_konv OCCURS 0,
    knumv LIKE konv-knumv, "Number of the document condition
    kschl LIKE konv-kschl, "Condition type
    kwert LIKE konv-kwert, "Condition value
    kbetr LIKE konv-kbetr,
    kposn LIKE konv-kposn,
    discounts LIKE konv-kwert,
    surcharges LIKE konv-kwert,
    hkunnr LIKE knvh-hkunnr,
    kunnr LIKE knvh-kunnr,
    END OF it_konv.
    LOOP AT it_konv INTO wa_konv.
    CASE wa_konv-kschl.
    WHEN 'ZD01' OR 'ZD02' OR 'ZD03'.
    wa_konv-discounts = wa_konv-kwert.
    WHEN 'ZEXP' OR 'ZEXW' OR 'ZCAF' OR 'ZCAP' OR 'ZCAQ'
    OR 'ZS01' OR 'ZS02' OR 'ZS03'.
    wa_konv-surcharges = wa_konv-kwert.
    WHEN OTHERS.
    DELETE it_konv WHERE kschl = wa_konv-kschl.
    ENDCASE.
    MODIFY it_konv FROM wa_konv TRANSPORTING discounts surcharges.
    CLEAR wa_konv.
    REFRESH wa_konv.
    ENDLOOP.
    As per one of the abap expert who responded to my query is the following.
    DATA : BEGIN OF it_konv OCCURS 0,
    knumv LIKE konv-knumv, "Number of the document condition
    kschl LIKE konv-kschl, "Condition type
    kwert LIKE konv-kwert, "Condition value
    kbetr LIKE konv-kbetr,
    kposn LIKE konv-kposn,
    discounts LIKE konv-kwert,
    surcharges LIKE konv-kwert,
    hkunnr LIKE knvh-hkunnr,
    kunnr LIKE knvh-kunnr,
    END OF it_konv.
    DATA : BEGIN OF wa_konv OCCURS 0,
    kposn LIKE konv-kposn,
    discounts LIKE konv-kwert,
    surcharges LIKE konv-kwert,
    hkunnr LIKE knvh-hkunnr,
    kunnr LIKE knvh-kunnr,
    END OF wa_konv.
    move '1' to it_konv-knumv.
    move 'ZD01' to it_konv-kschl.
    move '1200' to it_konv-kwert.
    move '0010' to it_konv-kposn.
    append it_konv.
    move '2' to it_konv-knumv.
    move 'ZEXP' to it_konv-kschl.
    move '1300' to it_konv-kwert.
    move '0010' to it_konv-kposn.
    append it_konv.
    move '3' to it_konv-knumv.
    move 'ZEXP' to it_konv-kschl.
    move '1400' to it_konv-kwert.
    move '0010' to it_konv-kposn.
    append it_konv.
    LOOP AT it_konv.
    MOVE-CORRESPONDING it_konv to wa_konv.
    CASE IT_konv-kschl.
    WHEN 'ZD01' OR 'ZD02' OR 'ZD03'.
    wa_konv-discounts = IT_konv-kwert.
    WHEN 'ZEXP' OR 'ZEXW' OR 'ZCAF' OR 'ZCAP' OR 'ZCAQ'
    OR 'ZS01' OR 'ZS02' OR 'ZS03'.
    wa_konv-surcharges = IT_konv-kwert.
    ENDCASE.
    COLLECT WA_KONV.
    CLEAR wa_konv.
    ENDLOOP.
    But to try according to the above, i dont have the values for kwert, i know only the condition type (KSCHL). based on this how can i solve my problem
    please clarify
    thanks in advance

    Refer to the suggestion given by Naimesh here Can we modify a sub-total in ALV making use of function GET_GLOBALS_FROM_SLVC_FULLSCR and the method GET_SUBTOTALS. You can see the parameter ep_collect01 refered in case of subtotals. Can you please check ep_collect00 for grand total in your case.
    As said about EP_COLLECT00,here goes a classic example Modify grand total in ALV GRID
    BR
    Keshav
    Edited by: Keshav.T on Sep 21, 2011 9:39 AM

  • Display discounts and surcharges

    hi experts
    i have to display one discount and surcharges for one vbeln,  posnr  and one material,
    i have used konv-kschl for condition type and konv-kwert for condition value.
    in my output the conditions what i have given for discounts and surcharges its matching and displaying in different lines. usually i should one line of output one vbeln, but iam getting 3 times, please modify the conditions below what i have given in my object.
    LOOP AT it_konv INTO wa_konv.
        CASE wa_konv-kschl.
          WHEN 'ZD01' OR 'ZD02' OR 'ZD03'.
            wa_konv-discounts = wa_konv-kwert.
          WHEN 'ZEXP'  OR  'ZEXW' OR  'ZCAF' OR 'ZCAP' OR  'ZCAQ'
               OR  'ZS01' OR  'ZS02' OR   'ZS03'.
            wa_konv-surcharges = wa_konv-kwert.
          WHEN OTHERS.
            DELETE it_konv WHERE kschl = wa_konv-kschl.
        ENDCASE.
        MODIFY it_konv FROM wa_konv TRANSPORTING  discounts surcharges.
        CLEAR wa_konv.
        REFRESH wa_konv.
      ENDLOOP.
    please clarify
    thanks in advance

    dear sir
    i will send my object u plz check. their is value for kbetr
    Table Definitions
    TABLES :  knvh,   "Customer Hierarchies
              konv,   "Conditions (Item)
              vbak,   "Sales Document: Header Data
              vbap,   "Sales Document: Item Data
              vbpa.   "Sales Document: Partner
    Internal Tables declaration
    TYPES : BEGIN OF knvh1,
            hkunnr LIKE knvh-hkunnr,    "Customer number of the higher-level customer hierarchy
            kunnr LIKE knvh-kunnr,      "Customer
           END OF knvh1.
    TYPES : BEGIN OF vbak1,
              kunnr       LIKE vbak-kunnr,
              vbeln       LIKE vbak-vbeln,             "Sales Document
              erdat       LIKE vbak-erdat,             "Date on Which Record Was Created
              posnr       LIKE vbap-posnr,             "Sales Document Item
              bstzd       LIKE vbak-bstzd,             "Purchase order number supplement
              matnr       LIKE vbap-matnr,             "Material Number
              spart       LIKE vbap-spart,             "Division
              vtweg       LIKE vbak-vtweg,             "Distribution Channel
              mwsbp       LIKE vbap-mwsbp,             "Tax amount in document currency
              kwmeng      LIKE vbap-kwmeng,            "Cumulative Order Quantity in Sales Units
              netwr       LIKE vbap-netwr,
              knumv       LIKE vbak-knumv,              "Number of the document condition
              kzwi1       LIKE vbap-kzwi1,              "Rate (grossamount)
              ps_psp_pnr  LIKE vbak-ps_psp_pnr,      "Work Breakdown Structure Element (WBS  Element)/project ID
             sellingprice LIKE vbap-netwr,
              netvalue    LIKE vbap-netwr,           "Net Value of the Sales Order in Document  Currency
              grossamount LIKE vbap-kzwi1,
           END OF vbak1.
    TYPES: BEGIN OF konv1 ,
              knumv LIKE konv-knumv,            "Number of the document condition
              kschl LIKE konv-kschl,            "Condition type
              kwert LIKE konv-kwert,            "Condition value
              kbetr LIKE konv-kbetr,
              kposn LIKE konv-kposn,
              discounts LIKE konv-kwert,
              surcharges LIKE konv-kwert,
             hkunnr LIKE knvh-hkunnr,
            kunnr LIKE knvh-kunnr,
         END OF konv1.
    TYPES : BEGIN OF str,
              kunnr       LIKE knvh-kunnr,
              vbeln       LIKE vbak-vbeln,
              posnr       LIKE vbap-posnr,             "Sales Document Item
              matnr       LIKE vbap-matnr,
             sellingprice LIKE vbap-netwr,
              ps_psp_pnr  LIKE vbak-ps_psp_pnr,
              kwmeng      LIKE vbap-kwmeng,
              bstzd       LIKE vbak-bstzd,
              vtweg       LIKE vbak-vtweg,
              discounts   LIKE konv-kwert,
              mwsbp       LIKE vbap-mwsbp,
              surcharges  LIKE konv-kwert,
              netvalue    LIKE vbap-netwr,
              grossamount LIKE vbap-kzwi1,
         END OF str.
    DATA:wa_knvh TYPE knvh1,
         it_knvh TYPE TABLE OF knvh1.
    DATA: wa_vbak TYPE vbak1,
          it_vbak TYPE TABLE OF vbak1.
    DATA: wa_konv TYPE konv1,
          it_konv TYPE TABLE OF konv1.
    DATA: wa_display1 TYPE str,
          it_display1 TYPE TABLE OF str.
    DATA: wa_display TYPE str,
          it_display TYPE TABLE OF str.
       ALV Declaration
    TYPE-POOLS:slis.
    DATA   t_fld TYPE slis_fieldcat_alv.
    DATA:  repid            LIKE    sy-repid,                "Report ID
           is_layout        TYPE    slis_layout_alv,         "Layout For ALV
           it_fieldcat      TYPE    slis_t_fieldcat_alv,     "ITAB for field
           wa_fieldcat      TYPE    slis_fieldcat_alv,
           it_events        TYPE    slis_t_event,            "ITAB for event
           it_listheader    TYPE    slis_t_listheader.       "Itab for listheader
    DATA:  ls_selfield      TYPE    slis_selfield.
    Selection Screen Definitions
    SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE  b001.
    SELECTION-SCREEN BEGIN OF BLOCK a1 WITH FRAME TITLE  a001.
    PARAMETERS : p_hkunnr TYPE knvh-hkunnr OBLIGATORY.
    SELECT-OPTIONS : s_kunnr FOR knvh-kunnr,
                     s_erdat FOR vbak-erdat,
                     s_p_ps_p FOR vbak-ps_psp_pnr,
                     s_hspart FOR vbap-spart,
                     s_hvtweg FOR vbak-vtweg,
                     s_bstzd FOR vbak-bstzd.
    SELECTION-SCREEN END OF BLOCK a1.
    SELECTION-SCREEN END OF BLOCK b1.
    INITIALIZATION
    INITIALIZATION.
      repid = sy-repid.
      a001 = 'SELECTION CRITERIA'.
    START-OF-SELECTION
    START-OF-SELECTION.
      PERFORM get_data.
      PERFORM condition_check.
      PERFORM process_data.
      PERFORM display_data.
    END-OF-SELECTION.
    **END-OF-SELECTION.
    **&      Form  GET_DATA
          text
    -->  p1        text
    <--  p2        text
    FORM get_data .
      SELECT  hkunnr kunnr  FROM knvh
                            INTO CORRESPONDING FIELDS OF TABLE it_knvh
                            WHERE hkunnr = p_hkunnr AND kunnr IN s_kunnr.
      IF sy-subrc <> 0.
        MESSAGE e012(zmsg).
      ENDIF.
      SELECT  a~vbeln
              a~kunnr
             a~erdat
             a~bstzd
             a~vtweg
             a~knumv
             a~ps_psp_pnr
             b~posnr
             b~matnr
             b~mwsbp
             b~kwmeng
             b~kzwi1
             b~spart
             b~netwr
            FROM vbak AS a INNER JOIN vbap AS b ON bvbeln = avbeln
                      INTO CORRESPONDING FIELDS OF TABLE it_vbak
                     FOR ALL ENTRIES IN it_knvh
                        WHERE a~kunnr = it_knvh-kunnr
                             AND a~erdat IN s_erdat
                             AND a~ps_psp_pnr IN s_p_ps_p .
      SELECT  knumv kposn kschl kbetr kwert   FROM konv INTO CORRESPONDING FIELDS OF TABLE  it_konv
                   FOR ALL ENTRIES IN it_vbak
                   WHERE knumv = it_vbak-knumv .
    ENDFORM.                    " GET_DATA
    *&      Form  condition_check
          text
    -->  p1        text
    <--  p2        text
    FORM condition_check .
    To get the values for selling price, surcharges and discounts
      LOOP AT it_vbak INTO wa_vbak  .
        LOOP AT it_konv INTO wa_konv WHERE knumv = wa_vbak-knumv.
          CASE wa_konv-kschl.
            WHEN 'ZD01' OR 'ZD02' OR 'ZD03'.
              wa_konv-discounts = wa_konv-kwert.
            WHEN 'ZEXP'  OR  'ZEXW' OR  'ZCAF' OR 'ZCAP' OR  'ZCAQ'
                 OR  'ZS01' OR  'ZS02' OR   'ZS03'.
              wa_konv-surcharges = wa_konv-kwert.
            WHEN OTHERS.
              DELETE it_konv WHERE kschl = wa_konv-kschl.
          ENDCASE.
          MODIFY it_konv FROM wa_konv TRANSPORTING  discounts surcharges.
          CLEAR wa_konv.
        ENDLOOP.
    ENDLOOP.
      ENDFORM.                    " condition_check
    **&      Form  process_data
          text
    -->  p1        text
    <--  p2        text
    FORM process_data.
      LOOP AT it_vbak INTO wa_vbak  .
        LOOP AT it_konv INTO wa_konv WHERE knumv = wa_vbak-knumv.
        wa_display1-kunnr         = wa_vbak-kunnr.
        wa_display1-vbeln         = wa_vbak-vbeln.
        wa_display1-posnr         = wa_vbak-posnr.
        wa_display1-matnr         = wa_vbak-matnr.
        wa_display1-sellingprice  = wa_vbak-netwr + wa_vbak-mwsbp.
        wa_display1-ps_psp_pnr    = wa_vbak-ps_psp_pnr.
        wa_display1-kwmeng        = wa_vbak-kwmeng.
        wa_display1-bstzd         = wa_vbak-bstzd.
        wa_display1-vtweg         = wa_vbak-vtweg.
        wa_display1-discounts     = wa_konv-discounts.
        wa_display1-mwsbp         = wa_vbak-mwsbp.
        wa_display1-surcharges    = wa_konv-surcharges.
        wa_display1-netvalue      = wa_vbak-netwr.
        wa_display1-grossamount   = wa_vbak-kzwi1.
        APPEND wa_display1 TO it_display1.
        CLEAR wa_display1.
      ENDLOOP.
    ENDLOOP.
      LOOP AT it_display1 INTO wa_display1.
        READ TABLE it_knvh
                      WITH  KEY kunnr = wa_display1-kunnr INTO wa_knvh.
        wa_display-kunnr         = wa_knvh-kunnr.
        wa_display-vbeln         = wa_display1-vbeln.
        wa_display-posnr         = wa_display1-posnr.
        wa_display-matnr         = wa_display1-matnr.
        wa_display-sellingprice  = wa_display1-sellingprice.
        wa_display-ps_psp_pnr    = wa_display1-ps_psp_pnr.
        wa_display-kwmeng        = wa_display1-kwmeng.
        wa_display-bstzd         = wa_display1-bstzd.
        wa_display-vtweg         = wa_display1-vtweg.
        wa_display-discounts     = wa_display1-discounts.
        wa_display-mwsbp         = wa_display1-mwsbp.
        wa_display-surcharges    = wa_display1-surcharges.
        wa_display-netvalue      = wa_display1-netvalue.
        wa_display-grossamount   = wa_display1-grossamount.
        APPEND wa_display TO it_display.
        CLEAR wa_display.
       DELETE ADJACENT DUPLICATES FROM it_display..
      ENDLOOP.
    ENDFORM.                    " process_data
    **&      Form  display_data
          text
    -->  p1        text
    <--  p2        text
    FORM display_data .
      PERFORM fill_layout_structure.
      PERFORM fill_field_catalog_table.
      PERFORM alv_header USING it_listheader.
      PERFORM events USING it_events.
      PERFORM call_alv_function.
    ENDFORM.                    " display_data
    **SUBROUTINE TO FILL LAYOUT STRUCTURE
    FORM fill_layout_structure .
      CLEAR is_layout.
      is_layout-colwidth_optimize = 'X'.
      is_layout-zebra = 'X'.
    ENDFORM.                    "fill_layout_structure
    ***SUBROUTINE FOR FIELD CATALOG TABLE DEFINITION
    FORM fill_field_catalog_table.
      wa_fieldcat-fieldname = 'KUNNR'.
      wa_fieldcat-seltext_m = 'CUSTOMER'.
      wa_fieldcat-outputlen = '10'.
      wa_fieldcat-tabname = 'IT_DISPLAY'.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR wa_fieldcat.
      wa_fieldcat-fieldname = 'VBELN'.
      wa_fieldcat-seltext_s = 'DOC NO'.
      wa_fieldcat-outputlen = '10'.
      wa_fieldcat-tabname = 'IT_DISPLAY'.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR wa_fieldcat.
      wa_fieldcat-fieldname = 'POSNR'.
      wa_fieldcat-seltext_m = 'ITEM ' .
      wa_fieldcat-outputlen = '6'.
      wa_fieldcat-tabname = 'IT_DISPLAY'.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR wa_fieldcat.
      wa_fieldcat-fieldname = 'MATNR'.
      wa_fieldcat-seltext_m = 'MATERIAL'.
      wa_fieldcat-tabname = 'IT_DISPLAY'.
      wa_fieldcat-outputlen = '18'.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR wa_fieldcat.
      wa_fieldcat-fieldname = 'SELLINGPRICE'.
      wa_fieldcat-seltext_m = 'SELLING PRICE'.
      wa_fieldcat-tabname = 'IT_DISPLAY'.
      wa_fieldcat-outputlen = '21'.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR wa_fieldcat.
      wa_fieldcat-fieldname = 'PS_PSP_PNR'.
      wa_fieldcat-seltext_m = 'PROJECT ID'.
      wa_fieldcat-tabname = 'IT_DISPLAY'.
      wa_fieldcat-outputlen = '24'.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR wa_fieldcat.
      wa_fieldcat-fieldname = 'KWMENG'.
      wa_fieldcat-seltext_m = 'QUANTITY'.
      wa_fieldcat-tabname = 'IT_DISPLAY'.
      wa_fieldcat-ddic_outputlen = '19'.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR wa_fieldcat.
      wa_fieldcat-fieldname = 'BSTZD'.
      wa_fieldcat-seltext_m = 'ORD. SOUR'.
      wa_fieldcat-tabname = 'IT_DISPLAY'.
      wa_fieldcat-outputlen = '4'.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR wa_fieldcat.
      wa_fieldcat-fieldname = 'VTWEG'.
      wa_fieldcat-seltext_m = 'DIST CHANNEL'.
      wa_fieldcat-tabname = 'IT_DISPLAY'.
      wa_fieldcat-outputlen = '2'.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR wa_fieldcat.
      wa_fieldcat-fieldname = 'DISCOUNTS'.
      wa_fieldcat-seltext_m = 'DISCOUNTS'.
      wa_fieldcat-tabname = 'IT_DISPLAY'.
      wa_fieldcat-outputlen = '18'.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR wa_fieldcat.
      wa_fieldcat-fieldname = 'MWSBP'.
      wa_fieldcat-seltext_m = 'GST'.
      wa_fieldcat-tabname = 'IT_DISPLAY'.
      wa_fieldcat-outputlen = '18'.
      wa_fieldcat-ref_fieldname =  'WAERK'.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR wa_fieldcat.
      wa_fieldcat-fieldname = 'SURCHARGES'.
      wa_fieldcat-seltext_m = 'SURCHARGES'.
      wa_fieldcat-tabname = 'IT_DISPLAY'.
      wa_fieldcat-outputlen = '18'.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR wa_fieldcat.
      wa_fieldcat-fieldname = 'NETVALUE'.
      wa_fieldcat-seltext_m = 'NET VALUE'.
      wa_fieldcat-tabname = 'IT_DISPLAY'.
      wa_fieldcat-outputlen = '21'.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR wa_fieldcat.
      wa_fieldcat-fieldname = 'GROSSAMOUNT'.
      wa_fieldcat-seltext_m = 'GROSS AMOUNT'.
      wa_fieldcat-tabname = 'IT_DISPLAY'.
      wa_fieldcat-outputlen = '18'.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR wa_fieldcat.
    ENDFORM.                    "output_data
    ***SUBROUTINE FOR ALV HEADER
    FORM alv_header USING it_listheader TYPE slis_t_listheader.
      DATA : wa_listheader TYPE slis_listheader.
      DATA : days LIKE dtresr-weekday.
      DATA : name1 LIKE kna1-name1.
      SELECT name1 FROM kna1 INTO name1 WHERE kunnr = p_hkunnr.
      ENDSELECT.
      DATA :  v_date(10) TYPE c,
             v_erdat(10) TYPE c,
             v_erdat1(10) TYPE c,
             temp(60) TYPE c,
             temp1(60) TYPE c,
             temp2(60) TYPE c,
             temp3(60) TYPE c.
      WRITE : s_erdat-low TO v_erdat DD/MM/YYYY NO-GAP.
      WRITE : s_erdat-high TO v_erdat1 DD/MM/YYYY NO-GAP.
      WRITE : sy-datum TO v_date DD/MM/YYYY NO-GAP.
      CONCATENATE  sy-uname   days    v_date   sy-uzeit  INTO temp SEPARATED BY space.
      CONCATENATE  v_erdat   v_erdat1 INTO temp1 SEPARATED BY space.
      CONCATENATE  'Hlev customer'  p_hkunnr name1 INTO temp2 SEPARATED BY space.
      CALL FUNCTION 'DATE_TO_DAY'
        EXPORTING
          date    = sy-datum
        IMPORTING
          weekday = days.
      CLEAR wa_listheader.
      REFRESH it_listheader.
      wa_listheader-typ  = 'H'.
      wa_listheader-info = 'Mathur collaborations’' .
      APPEND wa_listheader TO it_listheader.
      wa_listheader-typ  = 'S'.
      wa_listheader-info = temp.
      APPEND wa_listheader TO it_listheader.
      wa_listheader-typ  = 'S'.
      wa_listheader-info = sy-repid.
      APPEND wa_listheader TO it_listheader.
      wa_listheader-typ  = 'S'.
      wa_listheader-info =  temp1.
      APPEND wa_listheader TO it_listheader.
      wa_listheader-typ  = 'S'.
      wa_listheader-info =  s_p_ps_p.
      APPEND wa_listheader TO it_listheader.
      wa_listheader-typ  = 'S'.
      wa_listheader-info = temp2.
      APPEND wa_listheader TO it_listheader.
    ENDFORM.                    "alv_header
    **SUBROUTINE FOR ALV EVENT                                             *
    FORM events USING  it_events TYPE slis_t_event.
      DATA : wa_event TYPE slis_alv_event.
      CLEAR wa_event.
      wa_event-name = 'TOP-OF-PAGE'.
      wa_event-form = 'TOP_OF_PAGE'.
      APPEND wa_event TO it_events.
    ENDFORM.                    " f4000_event
    **SUBROUTINE FOR EVENT INFORMATIONS TO ASSIGN TO THE PARTICULAR EVENT  *
    FORM top_of_page.
      CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
        EXPORTING
          it_list_commentary = it_listheader.
    ENDFORM.                    "COMMENTARY_WRITE
    **FORM FOR ALV FUNCTIONS
    FORM call_alv_function.
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
       EXPORTING
      I_INTERFACE_CHECK                 = ' '
      I_BYPASSING_BUFFER                = ' '
      I_BUFFER_ACTIVE                   = ' '
         i_callback_program               = repid
       i_callback_pf_status_set           = ' '
      I_CALLBACK_USER_COMMAND           = ' '
         i_callback_top_of_page            = 'TOP_OF_PAGE'
      I_CALLBACK_HTML_TOP_OF_PAGE       = ' '
      I_CALLBACK_HTML_END_OF_LIST       = ' '
      I_STRUCTURE_NAME                  =
      I_BACKGROUND_ID                   = ' '
      I_GRID_TITLE                      =
      I_GRID_SETTINGS                   =
         is_layout                         = is_layout
         it_fieldcat                       = it_fieldcat[]
      IT_EXCLUDING                      =
      IT_SPECIAL_GROUPS                 =
      IT_SORT                           =
      IT_FILTER                         =
      IS_SEL_HIDE                       =
      I_DEFAULT                         = 'X'
      I_SAVE                            = ' '
      IS_VARIANT                        =
       it_events                          = it_events[]
      IT_EVENT_EXIT                     =
      IS_PRINT                          =   IS_REPREP_ID
      I_SCREEN_START_COLUMN             = 0
      I_SCREEN_START_LINE               = 0
      I_SCREEN_END_COLUMN               = 0
      I_SCREEN_END_LINE                 = 0
      I_HTML_HEIGHT_TOP                 = 0
      I_HTML_HEIGHT_END                 = 0
      IT_ALV_GRAPHICS                   =
      IT_HYPERLINK                      =
      IT_ADD_FIELDCAT                   =
      IT_EXCEPT_QINFO                   =
      IR_SALV_FULLSCREEN_ADAPTER        =
    IMPORTING
      E_EXIT_CAUSED_BY_CALLER           =
      ES_EXIT_CAUSED_BY_USER            =
        TABLES
          t_outtab                          = it_display
    EXCEPTIONS
      PROGRAM_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.
    ENDFORM.                    "call_alv_function

  • Discount on Discount

    Hi guru's
    i have one query how to give discount based on discount not base price
    to be elaborate
    here the material price is say for example Rs.1000, discount is 10% so material value is Rs.900/-
    now i want to give discount on discount that is on Rs.100/-
    Thanks&regards
    srinivas

    Hi Srinivas
    I will just put the pricing procedure steps in that way if you try i think it should work
         step   cntr     ctype          desc                              from       to   
          10      0          PR00     base price
          15      0                         gross price  
          20      0          K004      material discount                15                
          21     0                          total after material disc       20
          25      0          K007     customer discount               20       
    So now how the system picks is , first the system takes the K004 discount from the gross price amount , and whatever amount you get after deducting the K004 from the PR00 discount that will come in the step  total after material disc . so the system calculates the PR00-K004,amount say as per your query , 1000-10% =900 .so the system calculates the K007 from the step 21 which is
    total after material disc and that amount is 900. so System calcultes K007 on 900.
    Let me know if you have solved in any other way
    Reward if useful
    Regards
    Srinath

  • Discounts to be given during Billing

    Dear Friends,
    I need your help for the following scenario.
    I want to give discounts for the material in the following way,
    upto 5000 Kgs       3 %
    5001 to 10000 Kgs   4%
    I want to give this discount while creating the Invoice ( With tc VF01).I do not want to give this discount in the sales order.
    How to capture this scenarion in SAP?
    Thanks in advance.
    Regards,
    Shrikant

    Hello,
    it is possible.
    You have to create a scale condition with the following characteristics:
    transaction V/06 for the maintainance of the condtion type:
    Cond. class   A Discount or surcharge
    Calculat.type D Gross weight    (0r E net weight)
    Scale basis   D Gross weight scale
    Check value   A Ascending        
    transaction VK11 for the cration of the condition record:
    Scales
    From     0               KG    3%
    From     5001          KG    4%
    Addionally you have to create a requirement, that the conditon is only valid in the billing document. Here it is possible to check the field komk-vbtyp.
    (For example requirement 23 or 24 as describe above)
    I hope that the information are helpful.
    Regards
    Claudia
    If you are satisfied with the answer, please give Reward Points

  • Authorization for discount condition type

    Hi Experts
    1)when create a sales order client want flexibility for discount condition type
    like 10% ,15% , 20% it should not be manual and end user can choose from drop down and
    2) If they want to give excess discount there should be authorization any supervisor can give  excess discount 
    how to map this authorization to condition type
    Regards

    hello again, friend.
    go to IMG > SD > Basic Functions > Pricing > Pricing Control > Define Cond Types... here you will find the settings for the upper and lower limits.  please note that the larger discount rates would be represented by the lower limit.  for surcharges, the lower rate is the lower limit.
    scales in pricing allows you to set different discount/surcharge rates or fixed amounts depending on either value, quantity, weight, etc.  in the same pricing condition record (using VK11 or VK31).  if you look inside your condition type using V/06, you will see under sub-tab Scales if this has been set.
    example:  condition type Z007, with Scale 'Quantity'
    you can set a discount of 2% if item quantity is from 0 to 100 pieces
    you can set a discount of 3% if item quantity is from 101 to 200 pieces, and so forth...
    regards and thanks.

  • Discounts on Terms of payment

    Hello all
    I configured a Term of payment in order to the system gives discounts if the invoice is paid in the following 15 days.
    Everything is running ok, but, does anyone know if I can configure the system for the automatic generation of a credit note because of this discount?
    Thank you in advance
    Regards!

    Hi
    There is no such process
    while making payment posting system will automatically determine the cash as per the assigned Terms payment in customer Master.
    Entry will be like
    Cash/ Bank  a/c ........... Dr.
    Discount Allowed A/c....Dr
      To Customer
    Thanks
    Praveen PC

  • Discount based on partner function

    Hello,
    A customer 2000 generates an order with his normal role of Sold to Part, Ship to Part, Bill to Party & Payer. A Partner function called special stock partner is also assigned to that customer which in itself is another customer 3000. If the customer 2000 generates an order with that special stock partner 3000 an automatic discount condition called ZDI (10% discount) should come up and give the customer 2000 discount. i.e. i want to give discount to customer 2000 if customer 3000 is his special stock partner. How do i make this condition automatic via condition record.
    Regards,
    Shahzad

    Hi,
    1st - Include the field partner function (or customer number) as a ZZ field in the structures KOMG, KOMK. For example ZZTPTNR - Third partner number - CHAR10
    2nd - Create condition table with this partner function / number field ZZTPTNR
    3rd - Create/modify the access sequence to include the new table
    4th - Create/modify the condition type for the discount
    5th - Add the discount condition in your pricing procedure
    6th - Create the condition record for this discount (VK11)
    7th - Fill this field in the userexit MV45AFZZ, form  userexit_pricing_prepare_tkomk with the required partner function or customer number
    Hope this helps your request.
    Regards,
    John

  • Discount at sales order leveal

    i want give discount to the first 10 customers of sales orders.
    how we confiquare it

    Hi
    First,You need to check the "<b>Condition Update</b>" field in the customization for that particular condition type.Then, in the condition record, select the condition, go to additional data and there you can enter the number of sales orders (i.e., 10 in your question). So, that system wont give that discount when you process 11th sales order.
    Or else  You can try with Sales Deals as master data <b>VB22 </b>in the system,
    Message was edited by:
            SHESAGIRI.G

  • Discount in Services

    Hi, we have a business requirements like follows
    Vendor is providing Services to us , the price negociated with vendor is inclusive of MATERIAL and Services and payment will be made based on activity completion.For this we have created a service purchase order with single PO line and multiple services is prepared for this.
    Like in PO line item 10 , we have entered following services
    1) Milestone 1 - > 10% of the  price
    2) Milestone 2  -> 10% of the price
    3) Milestone 3 ->  80% of the price
    so that User can create SES of respective MILESTONE line after completion of work.
    Till time things are OK ....
    Now in order to accomplish those services vendor is procuring some material and our client wants to track the supply and payment seperately for material therefore another Material purchase order is prepared for that , so that at the time of material receipt , MIGO / MIRO can be done.
    Now the problem is ... SES against Service PO and MIGO against material PO will create double vendor liablity and therefore we want to give MIGO value as a discount in each SERVICE Line ( say MILESTONE 1).
    As per my understanding , if we give discount in Std purchase procedure , then system is dividing it propositionally in all SERVICE Lines , while we want to give entire discount in single service line.
    Need your help to assign discounts in SERVICE LINES ( may be using MS0000 procedure , not sure )
    Regards
    Shrey

    Thx KI ...
    Price Change and discount at item level might not be helpful to me ... As I want to track them in future.
    I have modified MS0000 ( Service price procedure )  by addition one discount condition ( ZR00) in that ...now I can supply any discount value ( Absolute) in that , which will reflect in PO line item conditions and Line net price.
    But in case my Service qty is > 1 then system is deducting entire discount in first SES ....
    Like Milestone 1 , Qty 10 EA , Gross price = 100 INR per EA , Discount Absolute = INR 60
    Then system is calculating total Net price is , 10* 100 - 60 = 940
    Now when I create SES for 1 EA , system is calculating value as INR 40.If I changing qty to 2 , SES value gets changed to 140 and so on.
    Therefore system is giving entire discount in first SES of that service ... while I wanted to get that Absolute discount distributed among entire Qty ......and expected results are like
    SES for 1 EA should be 94 INR , not 40 EA
    Is it the std SAP functionality ?
    Regards

Maybe you are looking for

  • Gmail suddenly not working with Apple Mail

    My gmail suddenly is not working with Apple Mail. It said my username or password is wrong, but it was okay this morning. Nevertheless, I deleted my gmail account, and re-setup it using Internet Accounts from System Preference. However, I got the beo

  • I keep getting this error...

    Whenever I try to preview a song in the store it keeps asking for me to authorize the computer. I do so, and this error then comes up saying, "We could not complete your iTunes Store request. A required iTunes component is not installed. (-42401)" It

  • Does noboby know!!! program changes in logic with kontakt3 instrument banks

    Hi all. im having real trouble understanding program changes from the events list in logic pro in conjunction with Kontakt 3. i have a region playing a bar of a violin legato then a bar of staccato then a bar of tremolo (just for example) using konta

  • How to sync my contacts from iphone4s to mac

    MacBook Pro running OS X 10.8.4. Iphone 4S. Unable to import my contacts from Iphone to MacBook

  • New Law, Blocking tethering in Chile Illegal / Bloq. Tethering Chile Ilegal

    As many people should know by now, 2 of the three GSM providers available in Chile actively block Internet Tethering and consequentially personal hotspot available to ios4.3 users on an iPhone4. Well the new net neutrality Law approved a couple weeks