User exit for pricing to calculate net sales value and tax at billing level
Hi,
Can anyone give the solution for below thing.
I have written the code for to calculate the net sale a value and tax value based on condition types YTN1 & YTN2 and with pricing procedure "ZXTNIC" under user exit "userexit_field_modification" in include program LV69AFZZ
Calculation as per below
FD:
The user exit will run on the values of the line item and the header of the pricing conditions
The user exit will subtract the current net value from the value of the conditions YTN1 & YTN2, also the Tax value will be added to the value of the conditions YTN1 & YTN2.
Need the Net value = 8,032 and not 8,882 " here 8832 value is before calculation
This value will be calculated as follows = Current Net u2013 YTN1 u2013 YTN2 = 8,882 u2013 0,773 u2013 0,077 = 8,032
Need the Tax value = 2,395 and not 1,545 " here 1545 value is before calculation.
This value will be calculated as follows = Current Tax + YTN1 + YTN2 = 1,545 + 0,773 + 0, 077 = 2,395
When i will execute the VF01 transaction there in initial screen values are not updating automatically.Once we will select item line and then clicking on " item pricing condition" icon i.e., item level , then only the values are updating both in item level and header level.
But when we will execute the VF02 and VF03 the values are updating automatically as per condition.
So please suggest me is there any exit for this requirement.
Regards,
Jayaram
Hi,
You should implement your logic in VOFM Copying routine for billing document.
Regards
Prasenjit
Similar Messages
-
User exit for pricing to calcumlate net sales value and taxat billing level
Hi,
Can anyone suggest me , which user exit i can used for below scenario.
Create a new user exit attached to pricing procedure ZXTNIC in order to exclude the conditions YTN1 & YTN2 from the calculation of the net sales value and include the value of the conditions YTN1 & YTN2 to the calculation of the Tax vale.
From pricing procedure ZXTNIC need the net value to be till line 500 only and exclude the value of the conditions YTN1 & YTN2
BACKGROUND
Inter-company invoice is not calculated correctly in terms on the net sales value. The calculation of the net sales value is correct as some conditions are included in the calculations which must be excluded.
The reason for creating the user exist is that any change in the pricing conditions class can not be used to exclude them from the net price, without totally changing the concept behind the conditions (new conditions, new access sequence in taxes, IC changes and so on).
FUNCTIONAL DETAILS
The user exit will run on the values of the line item and the header of the pricing conditions
The user exit will subtract the current net value from the value of the conditions YTN1 & YTN2, also the Tax value will be added to the value of the conditions YTN1 & YTN2.
Need the Net value = 8,032 and not 8,882
This value will be calculated as follows = Current Net u2013 YTN1 u2013 YTN2 = 8,882 u2013 0,773 u2013 0,077 = 8,032
Need the Tax value = 2,395 and not 1,545
This value will be calculated as follows = Current Tax + YTN1 + YTN2 = 1,545 + 0,773 + 0, 077 = 2,395
Regards,
Jayaramsolved
-
User exit for pricing at billing level
Hi ,
can you pl. suggest me,which user exit i can use for below scenario.
Create a new user exit attached to pricing procedure ZXTNIC in order to exclude the conditions YTN1 & YTN2 from the calculation of the net sales value and include the value of the conditions YTN1 & YTN2 to the calculation of the Tax vale.
From pricing procedure ZXTNIC need the net value to be till line 500 only and exclude the value of the conditions YTN1 & YTN2
BACKGROUND
Inter-company invoice is not calculated correctly in terms on the net sales value. The calculation of the net sales value is correct as some conditions are included in the calculations which must be excluded.
The reason for creating the user exist is that any change in the pricing conditions class can not be used to exclude them from the net price, without totally changing the concept behind the conditions (new conditions, new access sequence in taxes, IC changes and so on).
Regards,
JayaramFirst read the BADI online documentation and then [Implement thef BAdIs in the Enhancement Builder|http://help.sap.com/saphelp_nw04s/helpdata/en/b2/873842134bad04e10000000a1550b0/frameset.htm], put some break-point to check the data sent/received in debug.
Regards,
Raymond -
Need Help for User Exit for Pricing
Dear ABAPers
I created a user exit for pricing where I am comparing a condition type (manually entered(ZD01)) to another condition type(YD01). If the entered value is more than the other condition type than pricing should not be updated.
RATE = 0.
IF KOMP-ZZVBTYP = 'C'.
IF KOMP-PRSFD = 'X' OR
KOMP-PRSFD = 'A'.
IF KOMV-KSCHL = 'ZD01'.
LOOP AT XKOMV WHERE KSCHL EQ 'YD01'.
KOMP-KZWI2 = ( XKOMV-KBETR / 10 ).
ENDLOOP.
RATE = KOMV-KBETR / 10.
IF ( RATE <> 0 ) AND ( RATE < KOMP-KZWI2 ).
MESSAGE W991. "Maximum Allowed Discount Has Exceeded !!!!
CLEAR KOMV-KBETR.
CLEAR KOMV-KWERT.
MODIFY SCREEN.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
It is giving me the message but it is also updating the pricing. I want not to be updated. So in place of modify screen i need to reset pricing procedure.
I need a function module or a abap key word which can reset the pricing procedure.
Thanks in Advance.
regards,
MAMas per i can understand you are coding in user-exits ,.. so if you are giving that
message 'Maximum Allowed Discount Has Exceeded !!!!' type 'E'.
i think it will work. I think there is no way to stop the processing without type e.
regards
shiba dutta -
User Exit for Pricing Condition
Hi all,
I wanted to change the values of few fields in the communication structure KOMK and KOMP for Delivery Order when pricing is being processed.
Is there a User exit for doing the same.
Regards,
Rupesh.hi,
In Pricing in SD the fields on the basis of which pricing is done are derived from the FIELD CATALOG which is a structure KOMG .This structure is used to transfer transaction data to the pricing procedure in SD and is also known as communication structure.This structure KOMG consists of two tables KOMK for Header related fields and KOMP for item related fields.
The fields which are not in either of the two tables KOMK and KOMP
cannot be used in pricing .Sometimes a need arises when the pricing
is to be based on some other criteria which is not present in the form of fields in either of the two tables.
This problem can be solved by using USEREXITS which are provided for pricing in SD.
Pricing takes place both when the SALES ORDER ( Transaction VA01) is created as well as when INVOICING ( Transaction VF01) is done.Hence SAP provides 2 userexits ,one for sales order processing which is
USEREXIT_PRICING_PREPARE_TKOMP or
USEREXIT_PRICING_PREPARE_TKOMK
Depending upon which table (KOMK or KOMP) the new fields were inserted we use either of the above two userexits.These userexits are found in include MV45AFZZ of the standard SAP sales order creation program SAPMV45A.
In the case of userexit which will be called when invoicing is done ,these
are provided in the include RY60AFZZ which is in the standard SAP
program SAPMV45A. The name of the userexits are same. i.e
USEREXIT_PRICING_PREPARE_TKOMP or
USEREXIT_PRICING_PREPARE_TKOMK
These userexits are used for passing the data from the communication structure to the pricing procedure, for this we have to fill the newely
created field in the communication structure KOMG for this we fill the code in the above userexit using the MOVE statement after the data that
has to be passed is taken from the database table by using the SELECT statement. The actual structure which is visible in these userexits and which is to be filled for that particular field is TKOMP or TKOMK.
Before the coding for these userexits is done ,it is necessary to create a new field in either of the two tables KOMK or KOMP .For this purpose
includes are provided in each of them .
To create the field in header data(KOMK) the include provided is KOMKAZ
and to create the field in item data(KOMP) the include provided is KOMPAZ.
One possible example for the need of creating new fields can be e.g. Frieght to be based upon transportation zone ,for this no field is available in field catalog and hence it can be created in KOMK and then above userexits can be used to fill the transportation data to it.
2)The other method of finding userexit is to find the word USEREXIT in the
associated program of the transaction for which we want to determine userexit using SE38.
3)The other method of finding userexits is to find the include in case of SD/MM applications where the userexits are located ,this can be found in the SAP reference IMG generally in the subfolder under SYSTEM MODIFICATION.
Some other examples of userexits in SD are:
USEREXIT_NUMBER_RANGE
This userexit is used to assign a different internal document number to the
sales order(VA01) when it is created depending on some criteria like a different SALES ORGANIZAION(VKORG) .
USEREXIT_SAVE_DOCUMENT_PREPARE
This userexit is used to insert the ABAP code which will be called when
the document (sales order VA01) is just about to be saved.This userexit is used generally for custom checks on different fields , to display some information before the order will be saved or for making changes to certain fields before the sales order will be saved.
Hope this helps, Do reward. -
User exit for updating delivery block of Sales order before Delivery
Hi Folks,
Need to have an user exit for updating Delivery Block indicator for a Sales order Before creating its delivery
I have got an exit in Program SAPMV45A
MV50AFZ1
FORM USEREXIT_REFRESH_DOCUMENT.
that hits before processing the delivery block fro delivery (Correct me if i m wrong with this )
Now i want now how to change the Delivery Block indicator of Sales order in that exit
any FM available ?
Thanks n regards
Sonal...Hi ,
How did you solved this issue?
I am having similar scenario in which while pressing the save button delivery block should update if multiple schedule line exist.
Tried by two different approaches in various user exit without any success.
AFAIK we have two ways to achieve this functionality.
1) Count the no of rows in vbep. If greater than 1 then multiple schedule line exist and we can assign the value to VBAK-LIFSK(delivery block) as per our requirement.
This is not correct. If there are two line items both with single schedule line . This case total no lines in vbep will 2 and above condition will true which is incorrect.
2) There is a indicator for multiple schedule line (VBAPD-EPMEH , xvbap-epmeh ) if it is check then multiple schedule line exist and we can assign the value to VBAK-LIFSK(delivery block) as per our requirement.
If I write code in USEREXIT_SAVE_DOCUMENT_PREPARE.
Multiple schedule line indicator is not populate so can not use 2nd approach.
If I write code in USEREXIT_SAVE_DOCUMENT it of no use as vbak is updated before reaching this user exit.
If I write code in USEREXIT_MOVE_FIELD_TO_VBAK as this user exit is also called while pressing the enter key for this I have use
the condition of fcode but it also fails in some condition.
If fcode eq 'SICH'.
Read table xvbap with key epmeh = 'X'.
IF SY-SUBRC = 0.
VBAK-LIFSK = '03'.
Else.
VBAK-LIFSK = ' '.
Endif.
Endif.
Please help me to get the desired functionality working for all cases.
1) One line item with multiple schedule line
2) Two line item with multiple schedule line
3) One line item having one schedule line and second one having multiple
4)Two line item both with single schedule line. -
User exit for contract start date in sales order change mode.
24.10.2008
Hi Gurus,
I need to disable the 'contract start date' (VEDA-VBEGDAT) field in Contract data tab at header and item level. Can someone suggest a user exit for the same ???
Regards,
UdaynathDear Udyanath,
Please check these User exits with the help of ABAPer
User exits in the program MV45AFZZ
The user exits which you can use for modifications in sales document
processing are listed below.
USEREXIT_FIELD_MODIFICATION
This user exit can be used to modify the attributes of the screen
fields.
To do this, the screen fields are allocated to so-called
modification groups 1 - 4 and can be edited together during a
modification in ABAP. If a field has no field name, it cannot be
allocated to a group.
The usage of the field groups (modification group 1-4) is as
follows:
- Modification group 1: Automatic modification with transaction
MFAW
- Modification group 2: It contains 'LOO' for step loop fields
- Modification group 3: For modifications which depend on check tables or on other fixed information.
USEREXIT_MOVE_FIELD_TO_VBAK
Use this user exit to assign values to new fields at sales document
header level. It is described in the section "Transfer of the
customer master fields into the sales document".
The user exit is called up at the end of the FORM routine
VBAK_FUELLEN.
USEREXIT_MOVE_FIELD_TO_VBAP
Use this user exit to assign values to new fields at sales document
item level. It is described in the section "Copy customer master
fields into the sales document".
The user exit is called up at the end of the FORM routine
VBAP_FUELLEN.
USEREXIT_MOVE_FIELD_TO_VBEP
Use this user exit to assign values to new fields at the level of
the sales document schedule lines.
The user exit is called up at the end of the FORM routine
VBEP_FUELLEN.
USEREXIT_MOVE_FIELD_TO_VBKD
Use this user exit to assign values to new fields for business data of the sales document. It is described in the section "Copy customer
master fields into sales document".
The user exit is called up at the end of the FORM routine
VBKD_FUELLEN.
I hope this will help you,
Regards,
Murali. -
Need a user exit for Export Control check in Sales Order fro VA01/VA02
Hi ,
I need a user exit for Export Legal Control process in Sales Order.since Ship-to country in the Sales Order is not always the ultimate destination country User Exit needs to be built in with following logic
1. Check to see if ultimate destination country field is maintained in Sales Order
2. If a value is maintained then for the Export control checks use ultimate destination country instead of the Ship-To country (step 1)
3. If no value is maintained then use Ship-To country as default
The user exit is called when the user creates or changes a Sales Order.
Can anybody help ?
ThanksHi,
Exit Name Description
SDTRM001 Reschedule schedule lines without a new ATP check
V45A0001 Determine alternative materials for product selection
V45A0002 Predefine sold-to party in sales document
V45A0003 Collector for customer function modulpool MV45A
V45A0004 Copy packing proposal
V45E0001 Update the purchase order from the sales order
V45E0002 Data transfer in procurement elements (PRreq., assembly)
V45L0001 SD component supplier processing (customer enhancements)
V45P0001 SD customer function for cross-company code sales
V45S0001 Update sales document from configuration
V45S0003 MRP-relevance for incomplete configuration
V45S0004 Effectivity type in sales order
V45W0001 SD Service Management: Forward Contract Data to Item
V46H0001 SD Customer functions for resource-related billing
V60F0001 SD Billing plan (customer enhancement) diff. to billing plan
SDAPO001 Activating Sourcing Subitem Quantity Propagation
<b>Reward points</b>
Regarsd -
VT01N User exit for adding additional field to VTTP table and populate the
Hi,
Can any one sujjest what is the use exit/bapi when we add(append) a custom field to vttp table to populate the incremental number based on ship to address when we create a shipment..
need user exit in ...............to populate data to vttp table custom field when we append......hi,
check these exits for vt01n.
Transaction Code - VT01N Create Shipment
Enhancement/ Business Add-in Description
Enhancement
V56USVDP Preparation for updating new objects for transport?
V56USVDO Update new objects for transport
V56USTAT User-individual definition of transportation planning status
V56UNUMB Shipment number allocation
V56UDLUP Obsolete as of 4.6C: Delivery Update on Delivery Routines
V56UCHCO Check shipments are complete
V56UCHCH Shipment processing: Check whether changes were made
V56TDLIF Filter Delivery Items for Shipment
V56SLDET Shipment processing: Leg determination
V56MVT04 Extensions for Collective Processing of Shipments
V56LOCID Shipment Processing: Determine Location Identification
MV56AINI Initialization of transaction control for transportation
V56AFCCH Shipment processing: Check function code allowed
V56AGTAR User Exit for Filtering Shipping Unit Calculation
V56ARCHV Customer-spec. checks for archiving shipments
V56ATKTX Change the number of lines for text input in shipment
V56BMOD Transportation processing: Field modification
V56DISTZ Shipment Processing: Determine Distance
V56FCOPY Shipment processing: Copy delivery data
V56FSTAT Shipment processing: Activities when setting a status
V56L0001 Status of Shipments for a Delivery
V56LDELI Read Delivery Data for Shipment Processing
Business Add-in
BADI_LE_SHIPMENT BadI: Shipment Processing
BADI_V56N User Exit for Message Determination: Shipment -
User exit for pricing in Sales Order
Hi Gurus,
I have a requirement while changing Sales Order and an Inquiry.Below is the requirement.
I have a custom filed at the Sales Order Item level as VBAP-XXXXX. When the user changes this value to a value (say abc) then the NET value in the Conditions tab of the line item should become zero and also the grid of the conditions tab should be displayed as zero.
I have custom item categories for which the Pricing (TVAP-PRSFD) is blank (No pricing). For this type of Item categories I can make the NET price s ZERO by implementing some custom logic in the user exit userexit_new_pricing_vbap. Since this item category is not relavant for pricing then when I carry out new pricing the net value is set to ZERO.
But for other item categories, this field (TVAP-PRSFD) is set to X (Pricing standard). For this item categories I cant make the NET value as zero.
So Can you please let me know the possibility of implementing the above mentioned logic?
Are they any user exit to update the pricing table KOMP?
Are they any user exit to change the TVAP-PRSFD value based on my requirements?
Is there any other way of implementing this logic irrespective of item categories?Hi Vinod,
I am sending you my code please check it,
if TKOMK-SPART = 10.
if XKOMV is not INITIAL.
clear v_JEXP.
READ TABLE XKOMV with key kschl = 'JEXP'.
if sy-subrc = 0.
check XKOMV-kwert = 0.
message i003(ZT) with 'Value should not be 0 for conditioin type JEXP'.
v_JEXP = 'X'.
else.
message i003(ZT) with 'Maintain the mandatory Conditioin type JEXP'.
v_JEXP = 'X'.
endif.
if v_JEXP = 'X'.
XVBUV-MANDT = sy-mandt.
XVBUV-POSNR = '000010'.
XVBUV-TBNAM = 'VBAP'.
XVBUV-FDNAM = 'PRSOK'.
XVBUV-FEHGR = 20.
XVBUV-STATG = '06'.
XVBUV-FCODE = 'PKON'.
XVBUV-SORTF = 9999.
XVBUV-LFDNR = 0000.
XVBUV-UPDKZ = 'I'.
append XVBUV.
endif.
endif.
endif.
Please suggest something to solve this.
Thanks and Regards,
Vicky. -
User Exit for Requested Delivery Date in Sales Order
Hi
Which user exit can be used to change Requested Delivery Date in Sales Order.
Scenario: Sales Document Type: OR has Lead Time: 7 days. System always proposes delivery date after 7 days. We need to change this Lead Time based on plant.
Thanks in advance for your support.
Regards
UmaHello,
try with USEREXIT_MOVE_FIELD_TO_VBEP or USEREXIT_SAVE_DOCUMENT_PREPARE, of program MV45AFZZ.
Hope to be useful.
Best regards,
Andrea -
Regarding user-exit for customer return order in sales order creation
Hi,
My problem is when sales order type ZRE(Customer return) is created with refrence to Invocie i have to check the quantity in the return order is less than the original invoice or not.If quantity in return order is greater than invoice quantity then i have to raise error message.For this which user-exit is suitable in sales order program SAPMV45A.
Thanks,
shyla kumarHi
Use can use MV45AFZZ AND MV45AFZB userexits
Within mv45afzz USE CAN form related to VBAP or
save_document_prepare.
Please reward if useful. -
Required User Exit For Pricing
Hi Folks,
Do we have any user exit to modify the way SAP selects condition records for pricing?
Regards,
Chetan.Hi Dubey,
Please try out as per given below:
If you goto the SAP Application hierachy (SE81)you can go down into individual modules.
Select the area you are interested. (It should turn yellow).
Choose Information System button.
Select Environment->Exit Techniques>Customer Exits--->Enhancements.
You should now belooking at a selection screen with the DEV classes filled in from the Application hierachy.
If you hit Execute you will get the exits for the selected part of the hierachy!
Have a play around with SE81 / Info system it can be very usefull in finding all sorts of interesting things!
Thanks,
Rajesh -
Hi,
I have the requirement that while creating invoice the condition value should be manipulated for one condition type.
I used userexit_xkomv_bewerten_end. I am getting correct output but there is red mark for this means its not activated.
Olease do let me know whether it is corrct user exit or I need to implement some thing in the code.
Regards,
SandeepWhat does your pricing analysis log say? Why can't you use a custom pricing type (and userexit_pricing_rule) assigned to your item level copy control to control the re-pricing process?
-
User-Exit for Pricing Strategy on return order.
hi,
If we have scale pricing implemented for returns how to arrive at the
base price (Pr00) condition record value based on the (Ordered qty - Returned Qty) in this scenario which user exit we shall use??
Thanks in advance,
Regards,
B.AnandhUse transaction VOFM, Formula, scale base and condition base.
Maybe you are looking for
-
HELP Needed with this error: Exception in thread "main" java.lang.NoClass
Folks, I am having a problem connecting to my MSDE SQL 2000 DB on a WindowsXP pro. environment. I am learning Java and writing a small test prgm to connect the the database. The code compiles ok, but when I try to execute it i keep getting this error
-
I see I'm not alone, restarted computer, uninstalled it twice, reinstalled and still wouldn't run.. At lease light room 5.7.1 is still working..
-
MaxDB UpdAllStats - missing optimizer statistics for one name space
Hi experts, every weekend the job UpdAllStats runs in the SAP systems hosted by us (weekdays just PrepUpdStats+UpdStats). Now we're facing the issue that in one system there are no optimizier statistics for all tables in one special name space - let'
-
Not finding the Backend Odata Channel in SPRO
Hello Experts, As i installed the IW_BEP component on backend system , so i would be able to create and assign model class to services and also would be able to create services , but when i hit the Tcode SPRO and try to find the S
-
Computers do not discover Apple Wireless device
I have tried to connect my TC via Ethernet both to a PC and a new iMac and when running the AirPort Utility, it says it cannot find any Apple wireless devices. I believe when trying different settings when it was working, I set it up as being connect