We have 2 customer discounts Z007 and ZADD, which have been assigned in pricing procedure ZVAA01. PP ZVAA01 is being used for sales order types ZVOR (manual orders) and ZVED (EDI orders) .. for all types of sold-tos. The billing type used is ZF2 for both order types. The billing types too has ZVAA01 as the pricing procedure.
Condition Z007 is determined by condition record, while ZADD is either maintained manually or comes through IDOC-850.
We have a business requirement to add additional 2% to ZADD, in case if the invoice net value is less than or equal to 90% of order value. In other words 2% is towards non fulfilment of customer order. Due to configuration constraint we do not want any additional condition type to be configured. Please suggest a solution. Thanks.
.... Anonymous
Since we have a limitation in the above scenario that the Sales Order and the Billing pricing procedures are same. There is little that can be done through configuration change. This means that we have to handle the scenario through code change.
ReplyDeleteSAP has provided USER EXITS for articulating changes in standard pricing includes. The programs where these are available are RV60AFZZ, MV61AFZA, MV61AFZB & RV61AFZA. There are various forms available in these programs.(Note these programs are also invoked in MM pricing!!)
The form which would serve our scenario is USEREXIT_PRICING_COPY in program RV61AFZA.Within this program we have the KONV structure available to define custom checks & update. This form is the transfer interface for condition values from Source document to Target document; Sales Order to Invoice in this case.
The amount of code required would be minimal; however care should be taken in the functional specs and in hence in ABAP code to limit the changes only to the scenario intended. That is, you have to set filters on field like BUKRS , VKORG, KALSM, KSCHL, AUART, FKART to restrict the changes desired to be applicable to the scenario wanted.
List of User Exits in MM:
ReplyDeleteExit name Short text
AMPL0001 User subscreen for additional data on AMPL
LMEDR001 Enhancements to print program
LMELA002 Adopt batch no. from shipping notification when posting a GR
LMELA010 Inbound shipping notification: Transfer item data from IDOC
LMEQR001 User exit for source determination
LMEWPU06 Customer exit for object determ. (procurement via catalogs)
LMEWPU07 Customer exit to determine allowed catalogs
LMEWRU01 User exits for BAPI BAPI_REQUIREMENT_CREATE
LMEXF001 Conditions in Purchasing Documents Without Invoice Receipt
LWBON001 Extend comm. structure MCKONA (busn. vols., rebate income)
LWBON003 Change settlement data before creation of settlement doc.
LWBON004 Simulation of LIS update for detailed statement
LWBON005 Index entries for settlement documents, arrangement settlem.
LWSUS001 Customer-Specific Source Determination in Retail
M06B0001 Role determination for purchase requisition release
M06B0002 Changes to comm. structure for purchase requisition release
M06B0003 Number range and document number
M06B0004 Number range and document number
M06B0005 Changes to comm. structure for overall release of requisn.
M06E0004 Changes to communication structure for release purch. doc.
M06E0005 Role determination for release of purchasing documents
ME590001 Grouping of requsitions for PO split in ME59
MEAG0001 Distribution of Contract/Scheduling Agreement from CRM
MEETA001 Define schedule line type (backlog, immed. req., preview)
MEFLD004 Determine earliest delivery date f. check w. GR (only PO)
MELAB001 Gen. forecast delivery schedules: Transfer schedule implem.
MEQUERY1 Enhancement to Document Overview ME21N/ME51N
MEREQ001 Customers' Own Data in Purchase Requisition
MEVME001 WE default quantity calc. and over/ underdelivery tolerance
MM06E001 User exits for EDI inbound and outbound purchasing documents
MM06E003 Number range and document number
MM06E004 Control import data screens in purchase order
MM06E005 Customer fields in purchasing document
MM06E007 Change document for requisitions upon conversion into PO
MM06E008 Monitoring of contr. target value in case of release orders
MM06E009 Relevant texts for "Texts exist" indicator
MM06E010 Field selection for vendor address
MM06E011 Activate PReq Block
MMAL0001 ALE source list distribution: Outbound processing
MMAL0002 ALE source list distribution: Inbound processing
MMAL0003 ALE purcasing info record distribution: Outbound processing
MMAL0004 ALE purchasing info record distribution: Inbound processing
MMDA0001 Default delivery addresses
MMFAB001 User exit for generation of release order
MRFLB001
SAPL2012 Customer Exit for Enjoy Purchase Orders via BAPIs
SAPLMEWB Customer exit for processing of reservations via BAPIs
SAPLMEWP Customer exit for processing of purchase orders via BAPIs
SAPLMEWQ Customer exit for processing of requisitions via BAPIs
SAPMMWE1 Create requirement coverage request - materials catalog data
WOG10001 Requirements planning for perishables
WVLB0003 User exits for automatic PO-based load building in 99.A
WVLB0005 User exits in TR WLB5 (manual load bulding)
WVLB000A User exits for control program for load building
This post is very nice, Because your post is giving very nice information. So we are very thankful to you.
ReplyDelete