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.
Similar Messages
-
User exit for setting tax indicator in Sale order
Hi All,
I want to know if there is a way (user exit) that could look at the Sales Order Type , particular Item Pricing Condition and Ship-to party State and set the materialu2019s tax classification (VBAP/TAXM1) to u201C0u201D (Exempt) ?
Thanks in Advance!
Sonali.Hi Ramesh,
I have put the code in the user exit, and I am able to set the tax classification indicator but I have a problem... Before setting the indicator I need to check for the Usage code of the line item (This code I am using instead of checking the Pricing condition) . I am able to read all the values of line item in VBAP structure in the user exit except for the first time this user exit is hit as soon as a line item is entered it is not picking up the Usage code. That field is blank.
But if add another line item and go into the user exit I can see the previous line item Usage code in XVBPA table.
Do you have any idea why usage code is missing in VBAP structure in the user exit or is there any other table or structure where I can get the usage code?
Thanks in Advance!
Sonali. -
User exit to update characteristic attributes in sales order
Hi all,
I am having one queer requirement.
We are having variant configuration. We are manufactiuring a material which is having lenght as one of the characteristic.
While creating the sales order the user will enter the value against length. This we have to pull in the inspection lot with range.
For ex. if the length required by customer is 1000 mm then depending upon the tolerance limit say +/-1.5 %, another characteristic should get updated with the allowed range (here in this example the lower range 985 and upper range 1015) against another characteristic.
This characteristis will sever as class characteristic for QM master inspection characteristic.
Here the problem is the functionality can't be mapped with object dependency in satandard SAP (you can't derive range with object dependency), so I am looking for user exit to update the second characteristic depending upon the value of first characteristic and allowed percentage.
The user exit should be effective for sales order creation as well as sales order change.
Please help.Hello Nikhil,
I am looking for the tolerance limit to upadte against one char only and not two separate chars.
If the range is against only one char (and that too again in numeric format and not characteristic format) same shall can be pulled against master inspection characteristic in inspection lot.
Looking forward for the soution.
Mimiri -
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 -
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. -
User exit for storage location determination in sales order
Hi SAP SD Experts,
Please give me the exact user exit name where we can use for the automatic storage location determination in the sales order.
Thanks & Regards,
Rajesh Kumar Raju,Dear Rajesh Kumar Raju
Go to IMG-->Logistics Execution >Shipping> Picking -->Determine Picking Location -->Define Rules for Picking Location Determination. There you have to assign the MALA rule to your delivery type
Also maintain in OMJ8 and in material master under MRP2 view the default storage location in the field "Prod. stor. location"
thanks
G. Lakshmipathi -
Schedule Background Job : Remove delivery Block in Sales order
Hi Gurus,
I have a requirement to select all sales orders as per a condition and remove delivery block at
VA02-> Go to -> Header -> Status
For that I have to write a program which will be run only in background and i have to schedule background job for the same.
I have a parameter at selection - No of records
If no of records = 500 , I have to submit 500 jobs ie one job each for each sales order for removing delivery block.
I need to know
1) Which function module/bapi I can use to remove delivery block at sales order header level.
For blocked delivery the status is 'BSTK" . to remove block i need to change status to "RSTK".
2) How to schedule a background job for my program and how to submit one job each for each sales order.
Regards
Avi.Hi Avi,
Would like to seek for your advice. I am facing the same scenario too which is to delete the delivery block but is deletion of the delivery block is done in the user exit MV45AFZZ. The subroutine which needs to have the extra logic of deleting the delivery block is USEREXIT_SAVE_DOCUMENT_PREPARE.
Need your advice on how do you solve this scenario? Thanks in advance. -
Credit block a sales order or delivery individually
Hi
If I just wanted to block a sales order or delivery because of a credit issue, but did not want the customer to go on credit block/hold, is the only way to do this use the delivery and billing block. I can't remember being aware of any other blocks we can use
Please advise.
thanksHi Kyliesjordan
It depends on if you want the customer's credit exposure be impacted or not. If you are not bothered about the credit limit, then you can go for order blocks as mentioned by you.
If you want the system to be updated for credit exposure then you can configure simple/automatic credit checks as per your requirement.
Best Regards
Sathees Gopalan -
Automating delivery blocks in sales orders
Hi,
We have a delivery made with ref to a sales order. The goods are third party warehouse managed.When the goods are no longer needed, a third party warehouse sends an idoc in our system. This idoc deletes the delivery in our sap system and as soon as the delivery is deleted, the system also puts a delivery block(VBAK-LIFSK) in sales order at header level so that no further deliveries are made with ref to sales order.
There is an issue at present that this delivery block is not set in sales order when the delivery is deleted.
could anybody pls help where the code might have been written to automatically put the delivery block in sales order when the delivery is deleted.
regardsHi,
Just code the delivery block logic in DO user exit MV50AFZ1 routine "userexit_delete_document".
Thus, when DO deleted then system will auto set delivery block to SO.
Hope this help.
Cheers, -
Removing of Delivery block in Sales Order using Authorization
Hello,
I have a urgent requirement on removing a Delivery block using authorization.
The object V_VBAK_AAT is assigned to me and the ACTVT : 43 is permitted so I can release the block.
As this was not working I have created my own object with values ACTVT as 01, 02 , 43 and LIFSK : 1-10,11,12-99 .
I am trying to remove the block from VA14L from VA14L I select my order with respect to delivery block and it navigates to VA02.
From VA02 I am trying to remove the block.
As this requirement may be simple but it is blocking my development.
Thanks.Please correct whether I understood your issue correctly or not.
You have developed the program only to put delivery block to Sales Order. This block should be approved by Authorized people for allowing the users to create delivery else Sales order delivery should not be possible. Is that program has any other additional functionality other than setting Delivery block??
To keep delivery impossible till the Authorized person approves Sales order, you have the option of User Status. Process for creation of User Status for your requirement
Create User Status Profile in OIBS
Keep BLCK (Blocked for Delivery) & APPR (Approved for Delivery) as 2 statuses (No. of status can be as per your requirement. Here, simply I have 2 statuses)
Assign Object types as "Sales Order Header" (if you want the Authorized people to approve at header level) or "Sales Order Item" (if you want the Authorized people to approve at Item level, may be for partial delivery)
Keep BLCK as Initial status & Double click on BLCK status & click New entries on "Business transactions"
There are many Business transactions such as "Create Delivery" / "Create Goods Issue for delivery". As per your requirement, select Forbidden option in one of the above mentioned business transaction
Create Authorization Key in BS52 for Authorized People, say, as MNGR (Manager)
Assign that Authorization Key to APPR user status in User status profile
Using PFCG, you can create separate role by assigning this Authorization key
This can be different kind of solution from your way. For reference, you can refer below document. Document content points some other space & transaction. But you can relate to above steps mentioned.
User Status in SAP -
User exit to copy the data from sales order to billing document
hi everyone,
Is there an user exit to copy the data from sales order to billing document?
Regards
Prabudhhi
copy control would be the better option to choose.. but still u can a give a search in list below and opt for the right one..Refer to the link below..
http://www.planetsap.com/Userexit_List.htm
User exits for Sales order
1USEREXIT_DELETE_DOCUMENT
2USEREXIT_FIELD_MODIFICATION
3.USEREXIT_MOVE_FIELD_TO_VBAK
4.USEREXIT_NUMBER_RANGE
5.USEREXIT_SAVE_DOCUMENT
User exits for billing
1.USEREXIT_ACCOUNT_PREP_KOMKCV (Module pool SAPLV60A, program RV60AFZZ)
2.USEREXIT_ACCOUNT_PREP_KOMPCV
3USEREXIT_NUMBER_RANGE_INV_DATE (Module pool SAPLV60A, program RV60AFZC)
4USEREXIT_PRINT_ITEM (Module pool SAPLV61A, program RV61AFZB
5.USEREXIT_PRINT_HEAD (Modulpool SAPLV61A, Programm RV61AFZB)
Reward if Useful
Thanx & Regards..
Naren.. -
VL01N user exit to copy pricing conditions from sales order
Does anyone know which user exit could be used to copy sales order line item conditions to delivery note conditions screen.
The sales order screen is SAPLV69A field KOMV-KSCHL
The delivery note screen is SAPLV69A field KOMV-KSCHL
ThanksHi,
Just goto include - LV69AFZZ
And Check ..
userexit_pricing_check - USEREXIT_PRICING_CHECK
Thanks -
User Exit for Updating Delivery Plant at Item Level in Sales Order
Hello Experts
There is a requirement to determine the delivery plant for each item level and than update the items with newly determined plant. There is a user exit MV45AFZZ routine FORM USEREXIT_MOVE_FIELD_TO_VBAP. to update the item level entries in Sales Order in VA01 or VA02. Is this the right place to do this?, if yes , do i need to perform any other standard logic (like re determine Shipping points , schedule lines ) for newly determined plant? If not , can you please suggest any other place , BADI or user exit to change the delivery plant of sales order.
Thanks a lot....
-HarkamalBest place is MV45AFZZ-USEREXIT_SAVE_DOCUMENT_PREPARE. Populates the values just before saving the document. You can have your own deriving logic. Make sure that peice of code is trigger only for Sales Order create or change (VA01/VA02).
Are you kidding??? You do realize that this is AFTER all validations against configuration, ATP, pricing, etc. have been performed??!!! Never, ever change a critical value like plant in the SAVE user exits... -
User Exits for Invoice creation ,cancellation and sales return
Hi Gurus,
Pl help me it's very urgent.
I did not find any user exit invoice creation so i wrote the following code in include program
MV60AF0B_BELEG_SICHERN.
This code is to update the Z*table while saving invoice ,cancellation and sales return.
The code modification is like below
FORM BELEG_SICHERN *
Buchen Fakturabelege *
FORM BELEG_SICHERN.
READ TABLE XVBRK INDEX 1.
IF SY-SUBRC NE 0.
CALL FUNCTION 'DEQUEUE_ALL'.
MESSAGE S032.
EXIT.
ENDIF.
IF SAMH_MOD = ON.
EXPORT XKOMFK TO MEMORY ID 'SDBILLDL'.
ENDIF.
DATA: CALC_TYPE.
IF REBATE_DETERMINED = 'Y'.
CALC_TYPE = 'A'.
ELSE.
CALC_TYPE = 'I'.
ENDIF.
*{ INSERT RD1K903017 1
Work Area*********************
data : wa_xvbrk type VBRKVB.
data : wa_xvbrp type vbrpvb.
data : wa_zmigo type zmigo.
data : wa_vbrp type vbrp.
Internal table Creation*******
DATA: BEGIN OF tab_XVBRP OCCURS 100.
INCLUDE STRUCTURE VBRPVB.
DATA: END OF tab_XVBRP.
data : begin of tab_vbeln occurs 10,
vbeln type vbrk-vbeln,
knumv type vbrk-knumv,
end of tab_vbeln.
data : tab_zmigo type table of zmigo.
data : tab_vbrp type table of vbrp.
*****Data declaration*************
data : v_no_of_inv type i.
data : v_vbeln_no(10) type n.
data : v_last_inv_no(10) type n.
data : v_first_inv_no(10) type c.
data : v_tot_qty type i.
data : v_frbnr type mkpf-frbnr.
*******Ranges*********************
ranges : r_vbeln for vbrk-vbeln.
*****Populating IT****************
tab_xvbrp[] = xvbrp[].
describe table xvbrk lines v_no_of_inv.
*} INSERT
CALL FUNCTION 'RV_INVOICE_DOCUMENT_ADD'
EXPORTING
VBSK_I = VBSK
WITH_POSTING = 'A'
PREISFINDUNGSART = CALC_TYPE
IMPORTING
VBSK_E = VBSK
TABLES
XKOMFK = XKOMFK
XTHEAD = XTHEAD
XVBFS = XVBFS
XVBSS = XVBSS
XVBRK = XVBRK
XVBRP = XVBRP
XVBPA = XVBPA
XKOMV = XKOMV.
*{ INSERT RD1K903017 2
data : v_count type i,v_fkimg type i .
data : v_no_of_records(10) type n.
wa_xvbrk = xvbrk.
********Selecting the last rec no from ZMIGO
select max( sr_no ) from zmigo into v_no_of_records.
*****If Distribution channel is not ZB*********
if wa_xvbrk-vtweg ne 'ZB' and ( wa_xvbrk-fkart = 'ZRIN' or wa_xvbrk-fkart = 'ZRTE' ).
if v_no_of_inv = 1. " Process only when there is one invoice
loop at tab_xvbrp into wa_xvbrp where ( matnr ne 'CDGSTP0001' and
matnr ne 'CD-RW' and
matnr ne 'CD-RW65OHS' and
matnr ne 'CABLE' and
matnr ne 'CD-R' and
matnr ne 'CDQ80N4' and
matnr ne 'GENERAL' and
matnr ne 'NERO' and
matnr ne 'OTHERS' and
matnr ne 'SPARE PARTS' and
matnr ne 'PROMO ITEM' and
matnr ne 'PROMO-1' and
matnr ne 'PROMO-2' and
matnr ne 'PROMO-3' and
matnr ne 'PROMO-4' and
matnr ne 'PROMO-5' and
matnr ne 'PROMO-6' and
matnr ne 'PROMO-7' and
matnr ne 'PROMO-8' and
matnr ne 'PROMO-9' and
matnr ne 'PROMO-10' ).
v_fkimg = wa_xvbrp-fkimg .
v_fkimg = v_fkimg / 1000.
do v_fkimg times.
v_no_of_records = v_no_of_records + 1.
wa_zmigo-sr_no = v_no_of_records.
wa_zmigo-po_no = wa_xvbrk-vbeln.
wa_zmigo-item_no = wa_xvbrp-posnr.
wa_zmigo-mblnr = wa_xmkpf-mblnr.
wa_zmigo-doc_type = wa_xvbrk-fkart.
wa_zmigo-posting_date = wa_xvbrk-fkdat.
wa_zmigo-created_on = sy-datum.
wa_zmigo-created_time = sy-uzeit.
wa_zmigo-bill_lno = v_frbnr.
wa_zmigo-material = wa_xvbrp-matnr.
wa_zmigo-inv_no = wa_xvbrk-vbeln.
wa_zmigo-inv_item_no = wa_xvbrp-posnr.
wa_zmigo-plant = wa_xvbrp-werks.
wa_zmigo-inv_date = wa_xvbrk-fkdat.
wa_zmigo-customer = wa_xvbrk-kunag.
wa_zmigo-unit = 1.
wa_zmigo-mtype = '601'.
insert into zmigo values wa_zmigo.
enddo.
clear : wa_zmigo.
endloop.
clear : v_count,v_fkimg,wa_zmigo.
refresh tab_zmigo[].
clear v_no_of_inv.
else. "When there are Split Invoices
v_last_inv_no = wa_xvbrk-vbeln.
v_vbeln_no = v_last_inv_no - v_no_of_inv + 1.
v_first_inv_no = v_vbeln_no.
sort tab_xvbrp by vbeln.
loop at tab_xvbrp into wa_xvbrp where ( matnr ne 'CDGSTP0001' and
matnr ne 'CD-RW' and
matnr ne 'CD-RW65OHS' and
matnr ne 'CABLE' and
matnr ne 'CD-R' and
matnr ne 'CDQ80N4' and
matnr ne 'GENERAL' and
matnr ne 'NERO' and
matnr ne 'OTHERS' and
matnr ne 'SPARE PARTS' and
matnr ne 'PROMO ITEM' and
matnr ne 'PROMO-1' and
matnr ne 'PROMO-2' and
matnr ne 'PROMO-3' and
matnr ne 'PROMO-4' and
matnr ne 'PROMO-5' and
matnr ne 'PROMO-6' and
matnr ne 'PROMO-7' and
matnr ne 'PROMO-8' and
matnr ne 'PROMO-9' and
matnr ne 'PROMO-10' ).
v_fkimg = wa_xvbrp-fkimg .
v_fkimg = v_fkimg / 1000.
do v_fkimg times.
v_no_of_records = v_no_of_records + 1.
wa_zmigo-sr_no = v_no_of_records.
wa_zmigo-po_no = v_vbeln_no. "wa_vbrp-vbeln.
wa_zmigo-item_no = wa_xvbrp-posnr.
wa_zmigo-mblnr = wa_xmkpf-mblnr.
wa_zmigo-doc_type = wa_xvbrk-fkart.
wa_zmigo-posting_date = wa_xvbrk-fkdat.
wa_zmigo-created_on = sy-datum.
wa_zmigo-created_time = sy-uzeit.
wa_zmigo-bill_lno = v_frbnr.
wa_zmigo-material = wa_xvbrp-matnr.
wa_zmigo-inv_no = v_vbeln_no.
wa_zmigo-inv_item_no = wa_xvbrp-posnr.
wa_zmigo-plant = wa_xvbrp-werks.
wa_zmigo-inv_date = wa_xvbrk-fkdat.
wa_zmigo-customer = wa_xvbrk-kunag.
wa_zmigo-unit = 1.
wa_zmigo-mtype = '601'.
insert into zmigo values wa_zmigo.
enddo.
clear : wa_zmigo.
at end of vbeln.
v_vbeln_no = v_vbeln_no + 1.
endat.
clear : v_count,v_fkimg,wa_zmigo.
refresh tab_zmigo[].
endloop.
endif. "End of first 2nd IF.
clear : v_no_of_inv, v_vbeln_no.
endif.
****************Sales return************************************
if wa_xvbrk-fkart = 'ZRRE' and wa_xvbrk-vtweg ne 'ZB'.
loop at tab_xvbrp into wa_xvbrp where ( matnr ne 'CDGSTP0001' and
matnr ne 'CD-RW' and
matnr ne 'CD-RW65OHS' and
matnr ne 'CABLE' and
matnr ne 'CD-R' and
matnr ne 'CDQ80N4' and
matnr ne 'GENERAL' and
matnr ne 'NERO' and
matnr ne 'OTHERS' and
matnr ne 'SPARE PARTS' and
matnr ne 'PROMO ITEM' and
matnr ne 'PROMO-1' and
matnr ne 'PROMO-2' and
matnr ne 'PROMO-3' and
matnr ne 'PROMO-4' and
matnr ne 'PROMO-5' and
matnr ne 'PROMO-6' and
matnr ne 'PROMO-7' and
matnr ne 'PROMO-8' and
matnr ne 'PROMO-9' and
matnr ne 'PROMO-10' ).
v_fkimg = wa_xvbrp-fkimg.
v_fkimg = v_fkimg / 1000.
v_tot_qty = v_tot_qty + v_fkimg.
do v_fkimg times.
v_no_of_records = v_no_of_records + 1.
wa_zmigo-sr_no = v_no_of_records.
wa_zmigo-po_no = wa_xvbrk-vbeln.
wa_zmigo-item_no = wa_xvbrp-posnr.
wa_zmigo-doc_type = wa_xvbrk-fkart.
wa_zmigo-posting_date = wa_xvbrk-fkdat.
wa_zmigo-created_on = sy-datum.
wa_zmigo-created_time = sy-uzeit.
wa_zmigo-material = wa_xvbrp-matnr.
wa_zmigo-inv_no = wa_xvbrk-vbeln.
wa_zmigo-inv_item_no = wa_xvbrp-posnr.
wa_zmigo-plant = wa_xvbrp-werks.
wa_zmigo-inv_date = wa_xvbrk-fkdat.
wa_zmigo-customer = wa_xvbrk-kunag.
wa_zmigo-unit = 1.
wa_zmigo-mtype = '651'.
condense wa_xvbrk-xblnr.
wa_zmigo-reference = wa_xvbrk-xblnr.
********Bill of lading no**
select single bill_lno from zmigo_final into v_frbnr where inv_no = wa_xvbrk-xblnr and material = wa_xvbrp-matnr.
if sy-subrc eq 0.
wa_zmigo-bill_lno = v_frbnr.
endif.
insert into zmigo values wa_zmigo.
enddo.
clear : wa_zmigo,wa_xvbrp , v_fkimg, v_frbnr.
endloop.
endif.
*******Invoice Cancellation*****************************
if wa_xvbrk-fkart = 'ZRS1' and wa_xvbrk-vtweg ne 'ZB'.
delete tab_xvbrp[] where shkzg eq 'X'.
loop at tab_xvbrp into wa_xvbrp where ( matnr ne 'CDGSTP0001' and
matnr ne 'CD-RW' and
matnr ne 'CD-RW65OHS' and
matnr ne 'CABLE' and
matnr ne 'CD-R' and
matnr ne 'CDQ80N4' and
matnr ne 'GENERAL' and
matnr ne 'NERO' and
matnr ne 'OTHERS' and
matnr ne 'SPARE PARTS' and
matnr ne 'PROMO ITEM' and
matnr ne 'PROMO-1' and
matnr ne 'PROMO-2' and
matnr ne 'PROMO-3' and
matnr ne 'PROMO-4' and
matnr ne 'PROMO-5' and
matnr ne 'PROMO-6' and
matnr ne 'PROMO-7' and
matnr ne 'PROMO-8' and
matnr ne 'PROMO-9' and
matnr ne 'PROMO-10' ).
v_fkimg = wa_xvbrp-fkimg.
v_fkimg = v_fkimg / 1000.
v_tot_qty = v_tot_qty + v_fkimg.
do v_fkimg times.
v_no_of_records = v_no_of_records + 1.
wa_zmigo-sr_no = v_no_of_records.
wa_zmigo-po_no = wa_xvbrk-vbeln.
wa_zmigo-item_no = wa_xvbrp-posnr.
wa_zmigo-doc_type = wa_xvbrk-fkart.
wa_zmigo-posting_date = wa_xvbrk-fkdat.
wa_zmigo-created_on = sy-datum.
wa_zmigo-created_time = sy-uzeit.
wa_zmigo-material = wa_xvbrp-matnr.
wa_zmigo-inv_no = wa_xvbrk-vbeln.
wa_zmigo-inv_item_no = wa_xvbrp-posnr.
wa_zmigo-plant = wa_xvbrp-werks.
wa_zmigo-inv_date = wa_xvbrk-fkdat.
wa_zmigo-customer = wa_xvbrk-kunag.
wa_zmigo-unit = 1.
condense wa_xvbrk-zuonr.
wa_zmigo-reference = wa_xvbrk-zuonr.
wa_zmigo-mtype = '602'.
********Bill of lading no**
select single bill_lno from zmigo_final into v_frbnr where inv_no = wa_xvbrk-xblnr and material = wa_xvbrp-matnr.
if sy-subrc eq 0.
wa_zmigo-bill_lno = v_frbnr.
endif.
insert into zmigo values wa_zmigo.
enddo.
clear : wa_zmigo,wa_xvbrp , v_fkimg.
endloop.
endif.
clear : v_no_of_records.
*} INSERT
CALL FUNCTION 'STACK_RESET'.
R185D-DATALOSS = SPACE.
FOLGEAUFRUF102 = SPACE.
PERFORM SETPAR_INIT.
*{ INSERT RD1K903017 3
*} INSERT
LEAVE.
ENDFORM.
This program is working fine for single user but in production where no of people are creating the invoices from different places the data is not getting updated in table ZMIGO.
sometime populating with wrong data , partial data and sometimes no updation at all.
I have used the table locking system enqueue and dequeue FM's before n after updation but still the same
thing is happening.
What could be the reason.
Looking for help very urgent any other alternate option.Hi,
Go thru these..
Enhancement
SDVFX009 Billing doc. processing KIDONO (payment reference numbe
SDVFX010 User exit item table for the customer lines
SDVFX011 Userexit for the komkcv- and kompcv-structures
V05I0001 User exits for billing index
V05N0001 User Exits for Printing Billing Docs. using POR Procedu
V60A0001 Customer functions in the billing document
V60P0001 Data provision for additional fields for display in lis
V61A0001 Customer enhancement: Pricing
SDVFX001 User exit header line in delivery to accounting
SDVFX002 User exit for A/R line (transfer to accounting)
SDVFX003 User exit: Cash clearing (transfer to accounting)
SDVFX004 User exit: G/L line (transfer to accounting)
SDVFX008 User exit: Processing of transfer structures SD-FI
SDVFX007 User exit: Billing plan during transfer to Accounting
SDVFX006 User exit: Tax line (transfer to accounting)
SDVFX005 User exit: Reserves (transfer to accounting)
Business Add-in
SD_CIN_LV60AU02 BADI for billing
If it is helpful rewards points
Regards
Pratap.M -
BADI or User Exit for updating MSEG
Hi,
We are using ECC 6.0 and here is the scenario that we have to update custom fields into VBAP, LIPS and MSEG tables when these fields are entered on the sales order screen VA01,VA02.These field are added on this screen using Additional Data B screen.Also, These fields are there in VBAP and LIPS through Append Structure and MSEG through CI_COBL.Is there any BADI or USER EXIT for this.Thanks in Advance.
Priya.Hi
You can use exit ZXMBCU02 ( Function EXIT_SAPMM07M_001
in SAP enhancement MBCF0002 ). Here also whtever changes you make to I_MSEG will be lost as MSEG is an importing parameter. You can do something like this.
FIELD-SYMBOLS <F1> TYPE MSEG.
DATA NAME(50) VALUE '(SAPMM07M)MSEG'.
ASSIGN (NAME) TO <F1>.
<F1>-KOSTL = 'XXXX'.
( In above example MSEG-KOSTL will be set as XXXX, you can change any of MSEG fields in above way. ).
Cheers
Maybe you are looking for
-
Report Document not show on Crystal Report Viewer in C#
My program is modified from VB.NET. Now I struck with Crystal Report that Crystal Report Viewer didn't show Report Document. Printing code is composed of two forms. One assign parameters and objects need. Other is Crystal Report Viewer form, CrystalR
-
Hi Experts, When I attempt to attach a document to a PO (ME21N/ME22N) I get an error message say: Read Error During PC Upload : Include File in PC Application The funny thing is, some users can make attachments, others cannot. Is this a profile or au
-
Office for Mac issues with Lion
Since installing Lion, I no longer have access to my Office for Mac Excel, Word, or PowerPoint...is there a simple fix for this?
-
What plug ins, extensions, settings, etc. mess with Disqus?
I have Firefox 22 on Widows 8 with a bunch of plug ins, add ons. But even when i disable the those i still can't log in to Disqus to comment on sites that use it for their comment section ... i have contacted them and gotten no resolution ....
-
Impact on Keynote 09 after software change into OSX 10.6.2
I noticed unpleasant surprise on my latest slides presentation apparently connected with the just done update to the latest Snow Leopard software version - any of the description (titles) on the individual slides has been lost. They are still visible