BAPI_OUTB_DELIVERY_CHANGE not updating sales orders quantitys
Hi,
When using BAPI_OUTB_DELIVERY_CHANGE to do batch split and modify the delivery quantities its fine but the sales orders is not being update to free items.
Any ideas?
thanks
Jaime
Hello Brad,
if the sales order in item 10 has 10 units the subsequence delivery is made with 10 units but thy only pick 5, the delivery is adjusted to get 5 unit and 5 picked the other 5 "return" to the sales order to be free to make another delivery.
Regards
Jaime
Similar Messages
-
Credit Mgt - VKM4 not Updating sales orders
Hi all,
We have issue in credit management, we are using Dynamic Credit Management at sales order Level, once sales order is block for over credit we will release through VKM3 or VKM4 ,
But Problem system is behaving differently with some credit account for example
We created sales order and it got block for credit and its got release through VKM3, but when are reviewing that order in VKM4
using Overall credit status as D , this problem is happing for only few credit account but also not frequently, i mean to say some time its updating VKM4 after release.
Can any one guide me what could be a issue
Regards
NishadSAP Note 396791
SAP Note 394392
SAP Note 381685
SAP Note 396338
SAP Note 18613
SAP Note 124571
SAP Note 716141
SAP Note 377165
Please check these notes
Hope this helps
Regards
Sai -
XVBAP has the new line item but does not update Sales Order
Hi
I need to update the sales order with a new line item when the line item has a base unit of measure as the sales unit. I need to then convert the base unit to sales unit with a whole figure and the rest can be in the base unit.
I am able to see the update in the xvbap but the line item doesn't get updated.
I am puting this code in a perform within
MV45AFZB within Form USEREXIT_CHECK_VBAP
But I guess I am doing something wrong can someone please take a look at it and tell me what is wrong with the coding.
*& Include ZSD_CREATE_NEW_LINE_ITEM *
*& Form create_new_line_item
text
--> p1 text
<-- p2 text
FORM CREATE_NEW_LINE_ITEM .
CONSTANTS: C_MEINH LIKE MARM-MEINH VALUE 'CSE'.
Variables Used
DATA: WS_WMENG LIKE VBEP-WMENG.
DATA: INPUT LIKE VBAP-KWMENG,
WS_EA LIKE VBAP-KWMENG,
WS_CSE LIKE VBAP-KWMENG.
DATA: WS_MVKE_VRKME LIKE MVKE-VRKME.
Internal Tables and Structures
DATA: WS_XVBAP LIKE XVBAP.
DATA:
it_vbap LIKE vbap OCCURS 0 WITH HEADER LINE,
it_vbep LIKE vbep OCCURS 0 WITH HEADER LINE,
it_xvbap LIKE vbapvb OCCURS 0 WITH HEADER LINE.
DATA: BEGIN OF WS_MARM,
MEINH LIKE MARM-MEINH,
UMREZ LIKE MARM-UMREZ,
UMREN LIKE MARM-UMREN,
END OF WS_MARM.
CLEAR WS_MVKE_VRKME.
SELECT SINGLE VRKME INTO WS_MVKE_VRKME
FROM MVKE
WHERE MATNR EQ XVBAP-MATNR
AND VKORG EQ XVBAK-VKORG
AND VTWEG EQ XVBAK-VTWEG.
IF VBAP-VRKME <> WS_MVKE_VRKME.
LOOP AT XVBAP.
SELECT SINGLE MEINH UMREZ UMREN
FROM MARM
INTO WS_MARM
WHERE MATNR = VBAP-MATNR
AND MEINH = WS_MVKE_VRKME.
IF XVBAP-MEINS <> WS_MVKE_VRKME.
IF NOT XVBAP-KWMENG = 0.
WS_WMENG = XVBAP-KWMENG / WS_MARM-UMREZ.
IF WS_WMENG > 1.
This means that the line item needs to be split into CSE & EA
INPUT = XVBAP-KWMENG.
WS_EA = INPUT / WS_MARM-UMREZ.
WS_CSE = WS_EA.
WS_EA = WS_CSE * WS_MARM-UMREZ.
WS_EA = INPUT - WS_EA.
Now we have the qty. split into EA & CSE. Now to
assign it to xvbap
XVBAP-KWMENG = WS_EA.
XVBAP-VRKME = WS_MVKE_VRKME.
READ TABLE XVBAP WITH KEY POSNR = XVBAP-POSNR.
MODIFY XVBAP INDEX SY-TABIX.
WS_XVBAP = XVBAP.
WS_XVBAP-KWMENG = WS_CSE.
MOVE-CORRESPONDING WS_XVBAP TO XVBAP.
INSERT XVBAP INDEX SY-TABIX.
ENDIF.
ENDIF.
ENDIF.
ENDIF. " IF xvbap-vrkme 'EA'.
ENDFORM. " create_new_line_itemHi Clark,
Pls check the Include MV45AFZZ instead of the one which you are using . Here in this include MV45AFZZ you can have access to the Header and Line items data .
Here in this include
FORM USEREXIT_SAVE_DOCUMENT *
This userexit can be used to save data in additional tables *
when a document is saved. *
If field T180-TRTYP contents 'H', the document will be *
created, else it will be changed. *
This form is called at from form BELEG_SICHERN, before COMMIT *
form userexit_save_document.
Endform.
Either you can write the code you want to update the XVABP table here or you can use the form .
FORM USEREXIT_MOVE_FIELD_TO_VBAP *
This userexit can be used to move some fields into the sales *
dokument item workaerea VBAP *
SVBAP-TABIX = 0: Create item *
SVBAP-TABIX > 0: Change item *
This form is called at the end of form VBAP_FUELLEN. *
form userexit_move_field_to_vbap.
endform.
This are the 2 performs in this include where you can do you code and it will defnitely solve your problem.
Good Luck to you . Let me know if your problem get solved.
Thanks & Regards,
Naidu. -
Update sales order through workflow
Hi,
i developed one workflow for sales order. after all aprovals the sales order is updating upto 2nd change. but 3rd change is not updating sales order.
For updating sales order i am using BAPI_SALES ORDER_CHANGE function module.
Thanks.Hi Abdullah Azzouni
my scenario is when sales order is created or changed my workflow should trigger and make sales order as incomplete with (Z field) by using incompletion Procedure.
Also some other custom fields there for other workflows in salesorder.
In METHOD
select single zfield1
zfield2
zfield3
Zfield4 <- for my workflow
INTO wa_ext_hdr
FROM vbak
WHERE vbeln = object-key-salesdocument.
wa_ext_hdr-zfield ='X'.
wa_ext_hdrx = 'XXXX'.
MOVE 'U' TO wa_headerx-updateflag.
MOVE: BAPE_VBAK TO wa_extflds-structure.
CONCATENATE object-key-salesdocument
wa_ext_hdr INTO
wa_extflds-valuepart1.
APPEND wa_extflds TO i_extflds.
MOVE: BAPE_VBAKX TO wa_extflds-structure.
CONCATENATE object-key-salesdocument
wa_ext_hdrx INTO
wa_extflds-valuepart1.
APPEND wa_extflds TO i_extflds.
CALL FUNCTION 'BAPI_SALESORDER_CHANGE'
EXPORTING
salesdocument = object-key-salesdocument
order_header_in = wa_header
order_header_inx = wa_headerx
behave_when_error = 'P'
TABLES
return = i_return
extensionin = i_extflds.
READ TABLE i_return INTO wa_return WITH KEY type = 'E'.
iF sy-subrc EQ 0.
ELSE.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.
ENDIF.
Can you help on this.
Please suggest me where i am wrong or if you know any other way to achieve this functionality guide me.
Thanks in Advance.
Raj -
Update Sale Order Header Text through Enhancement
Hi Experts,
I Have a requirement to update the sale order Header Text , when the sale order is opened in VA02 and saved.
Here in I tried using edit_text, it updates sale order header text directly in DB during run time even before the save action is completed.
But I need to just fill the header text and that has to be saved during the save action only.
I tried coding the same in the user exit (userexit_save_document) but this user exit gets triggered only when there is some changes made to the document when opened in VA02 & Saved.
Is there any user exist to pass sale Order Header text and save when save button is clicked irrespective of the document been changed or not.
Thanks in advance
SathishHi Brad Bohn,
My actual requirement is to trigger an Idoc when the user goes to VA02 transaction and clicks save.
IDoc gets triggered only when there is some changes to that document, that is through NAST table entry based on the output configurations in NACE transaction.
Now that the user wants to trigger an IDoc even if there is no change (ie. to reprocess the IDoc) when he just opens a sale order in VA02 and click save.
It is not possible to trigger an IDoc through configurations when there is no actual change in VA02 and saved.
So it has to be forcefully sent by making some additions to the Order through coding, so I choose that Text box to fill some additional data and save .
Kindly Let me Know any thing could be done for this scenario.
Thanks in advance
Sathish -
How to update sales orders using B1WS in SAP 8.8 PL18
Hello all.
We are having a problem updating sales orders using Sap Business One Web Service ( B1WS ).
We are running SBO 8.8 PL18, MS-SQL 2008, and all is fine when using the SBO client.
But when it comes to updating sales orders through B1WS we just cannot get it to work.
We can add new orders easily without problems. Updating orders always gives this error:
\[ORDR.PayDuMonth\]\[line: 0\] , 'Field cannot be updated (ODBC -1029)'
We have checked and verified multiple times that our setup is correct.
Also the WDSL files are verified.
We can update orders just fine using the sboclient.
And using B1WS we can basically do everything, besides updating.
We have also tried this on different company db's, so we are quite sure this is not
something related to some general setting we missed, but who knows?
We have tried different ways to "assemble" the order before updating, but it always
ends with the above error.
Here is an example of one of the tests, where we load an order by docentry,
increment the quantity of all open lines by '1', and then try to update it.
protected void Page_Load(object sender, EventArgs e)
// First we login
string sessionId = "";
LoginService.LoginService l_login = new LoginService.LoginService();
LoginService.LoginDatabaseType l_dbtype = LoginService.LoginDatabaseType.dst_MSSQL2008;
LoginService.LoginLanguage _lang = LoginService.LoginLanguage.ln_English;
string _server = "SAP-8_8PL18";
string _licserver = "SAP-8_8PL18:30000";
string _db = "my_test_company";
string _user = "manager";
string _pass = "********";
try
sessionId = l_login.Login(_server, _db, l_dbtype, true, _user, _pass,
_lang, true, _licserver);
catch (Exception ex)
Response.Clear();
Response.Write(ex.Message);
Response.End();
if (sessionId == "")
Response.Clear();
Response.Write("No sessionId");
Response.End();
// We are logged in and have a sessionId
// Now load a valid open order by docentry
try
OrdersServiceRef.OrdersService orderService = new OrdersServiceRef.OrdersService();
orderService.MsgHeaderValue = new OrdersServiceRef.MsgHeader();
orderService.MsgHeaderValue.SessionID = sessionId;
orderService.MsgHeaderValue.ServiceName = OrdersServiceRef.MsgHeaderServiceName.OrdersService;
orderService.MsgHeaderValue.ServiceNameSpecified = true;
OrdersServiceRef.DocumentParams docParams = new OrdersServiceRef.DocumentParams();
docParams.DocEntry = 31; // Docentry of a known open order
docParams.DocEntrySpecified = true;
OrdersServiceRef.Document order = orderService.GetByParams(docParams);
OrdersServiceRef.DocumentDocumentLine line = null;
for (int i = 0; i < order.DocumentLines.Length; i++)
line = order.DocumentLines<i>;
if (line.LineStatus == OrdersServiceRef.DocumentDocumentLineLineStatus.bost_Open)
line.Quantity += 1;
orderService.Update(order);
catch (System.Web.Services.Protocols.SoapException ex)
Response.Clear();
Response.Write(ex.Message);
Response.End();
catch (Exception ex)
Response.Clear();
Response.Write(ex.Message);
Response.End();
Response.Clear();
Response.Write("All OK");
Response.End();
I hope that someone has an idea as to why this happens.
The customer often changes quantity or adds lines on their orders,
and the only way to solve it so far has been to make a new order and
close the old one.
Thanks in advance
J. ThomsenHi,
Welcome you post on the forum.
Have you checked if you only update a specific line instead of a loop?
Thanks,
Gordon -
Error while updating Sales Order : Another user Modified Table (RDR1 )
Hi All,
I am getting an error message while running the following steps.
Steps
1) Pull an entry from sales order.
2) Add new data to line.
3) Update the sales order.
a) Sap updated the data.
b) Through code using DI API we updated some UDF.
4) With out closing / Pressing OK button
5) We added new data to line.
6) Then Press update.
An Error will through by B1 as Another user modified the table(RDR1 ). Before going to the code where we are handling the update of UDF.
But after the 3rd step above when we do
4) Close the window or pressed ok
5) take the sales order window again pull the data
6) Add new Data to line.
7) Update sales order then it will go smoothly.(Updating by B1 and from code )
Can anybody tell me why this happens?And any workarounds to solve this?
Deepeshare u adding a matrix row thru the code? I get this error when I am adding rows and I get the rownumber out of sync.
if so get the max (lineid) from rdr1 and then check against the matrix.rowcount before adding a row. if lineid is greater that matrix.rowcount take lineid + 1 and assign it to the matrix.row, else take the rowcount + 1
if not, and as a workaround, then you can try using the SBO_SP_transactionnotification stored procedure. -
Error message when updating Sales Orders
Hi Experts
Following an issue over the weekend when I was forced to perform a hard reset we are now experiencing error message when trying to update some sales orders.
This entry already exists in the following tables " ADO1 (ODBC - 2035) [Message 131 - 183]
it is not happening on all orders - i think only ones which were on the system prior to the reset.
We also use webtools and the B1SyncService seems to be causing the SAP B1 system to become unusable - following each attempt to sync there is an error in the event log:
Event Type: Error
Event Source: B1SynchService
Event Category: None
Event ID: 0
Date: 29/06/2009
Time: 13:42:38
User: N/A
Computer: SQL01
Description:
A connection was successfully established with the server, but then an error occurred during the login process. (provider: Shared Memory Provider, error: 0 - No process is on the other end of the pipe.)
at netpoint.api.data.DataFunctions.ExecuteScalar(String SQL, String connectionstring)
at NetPoint.SynchSBO.SBOObjects.SBOUtility.SetCompany(Company TheCompany, SecurityTicket securityTicket)
at NetPoint.SynchSBO.Synch.SetCompany()
at NetPoint.SynchSBO.Synch..ctor(SecurityTicket ticket)
at NetPoint.SynchSBO.Synch..ctor(SecurityTicket ticket, Int32 pricinginterval)
at NetPoint.SynchService.NPSynchService.Synch(String profile, Mutex mutex)
at NetPoint.SynchService.NPSynchService.Main(String[] args)
For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.
For now I have had to stop the SyncService to prevent B1 from becoming unusable (users are unable to start any AR module), but even after I have stopped the syncservice I still have the error when updating sales orders.
Regards
JonDear Johnny,
the error reported sounds like a DB Corruption. I would advise you to log a message to SAP Support including all the details in order to obtain the error message. It is also a good idea and it will speed up the process if you include some print screens showing exactly the error message.
Hope my reply helps you to solve the issue.
Regards,
Wesley Honorato -
Updating sales order pricing after partial delivery
I have a requirement where due to an enhancement being implemented I need to be able to update the item pricing on the sales order after the item has been partially-delivered. Currently the standard system
controls do not allow access to the Update Pricing button in the item conditions tab after a partial delivery for the item. Is there any way around this using the standard functionality?
Regards
BK GAIKWADDear,
For update in sales pricing after delivery you require to reverse and delete delivery.
Without delivery deletion it is not possible to update sales order's price.
One more option is you can update your price in billing if you can not accounting of invoice.
Regards,
Sandip -
How to update Sales Order Delivery Block while saving Delivery ?
Hi,
I have a requirement wherein i need to update sales order delivery block field(VBAK-LIFSK) while saving the delivery for the order.
Also I need to remove this block while execution of Backorder Rescheduling program SDV03V02 (Tcode : V_V2),
Can anybody help me out in this?
regards,
NitinHI,
try using BAPI_SALESORDER_CHANGE
pass ur vbeln in SALESDOCUMENT
pass an 'X' to BAPISDH1-DLV_BLOCK
and 'X' to BAPISDH1X-DLV_BLOCK
Also add the UPDATE task clause, you will want to set the flag only when delivery is being saved, not before that. -
Hi all,
While trying to create a delivery note against sale order in VL10G, the message "only 0 ea of material XXX available". In stock material quantity is available. The material has some reservations against it. Will this be resulting in not creating delivery note.
Regards
sappyHello,
Is your material stock against order ie restricted to specific order or is it make to stock ie in Unrestricted.
Please check the availability check in sales order. It will show if any delivery is created but not done PGI. Either delete that delivery & then you will be able to create the delivery for this order.
Let me know if the problem still continues.
Thanks -
Make-to-order. Requirement linked to Quotation and not to Sales Order
After we have changed our Make-To-Order Materials from unvaluated sales order stock to valuated Sales Order Stock we do face a problem with the Requirement for those Sales Orders lines which are started with a Quotation. After running MRP a planned Order is created (ok) but the Planned Order is linked to the Quotation line and not to the Sales order line. When converting the Planned order to a Production order the AFPOD-KDAUF field is the number of the Quotation and unfortunately not the Sales Order number.
The Quotation looks ok. Item category is AGN and Schedule line category is BN (no MRP). When converting the Quotation into a Sales Order the Item category change to TAN and schedule lin category is now CP.
The copy rules QT -> OR (VTAA) shows copying requirement = 501 Schedule qty >0 and DataT = 201 General Schedule line Data
Anyone got a clue about where to look? ¨
Thanks in advance
KenHi Guys
Thanks for your proposals.
The Materials involved are standard items (FINI -> NORM) and our Set-up with item category TAN works perfectly when we create a Sales Order without a Quotation first. And the way we solve the problem manually right now is to convert the Quotation and delete in line item and recreate them manually.
I found that if i delete the requirement type in the Quotation and then convert the Quotation into a Sales Order then the Planned with be linked to the Sales Order = perfect.
Any other ideas
Best
Ken -
Cash discount calculation at invoice level not at sales order level
Dear Friends
while i am executing the sales cycle creten Cash discount conditions are calculating in the Invoice directly not in sales order.
can you please let us know your views oin what basis iot calculating directly in the invoice, since payment terms is there in both sales order and invoice level. but discount is only appearing at invoice level, not in the sale order level..
where these setting incurred in this process. i have verifies all the routies, there is no such kind of logic to calculate in a particular palce.
treat this one as high priority and let me know.
Thanks
Raju.Hi
while i am executing the sales cycle creten Cash discount conditions are calculating in the Invoice directly not in sales order.
can you please let us know your views oin what basis iot calculating directly in the invoice, since payment terms is there in both sales order and invoice level. but discount is only appearing at invoice level, not in the sale order level..
Please check your Pricing Procedure, whetehr against your Cash Discount Condition Type, Requirement 24 or 23 is maintained? If it is maintained remove these requirements and save. Then try to run the transaction.
Regards,
Amitesh Anand -
Update sales order qty through BAPI_SALESORDER_CREATEFROMDAT2
HI
Can anybody help me out. I have the requirement for creating sales order through BAPI_SALESORDER_CREATEFROMDAT2. The sales order is created but with 0 quantity.
I am using fields RNDDLV_QTY and TARGET_QTY and REQ_QTY in schedule lines & also setting the update indicator to 'X' in the corresponding itemx structures.
In fact it used to work earlier and has stopped now. I am also checking if there could be any change in configuration but don't think this should be the reason.
Can someone guide me as to which quantity fields of the BAPI are the right ones to update sales order qty?
thanksHi,
You are using the correct fields i.e. TARGET_QTY and REQ_QTY. Just check if you are passing the same Item Number in both the tables.
Hope it helps...
Lokesh -
Updating Sales Order Status in Batch
Hi
Please let me know if we can update Sales Order Line details like Ship To Address , Date , Status in a batch?
We are using 11.5.10
ThanksUse the Order management API or the OM interface tables.
See irep.oracle.com for details.
Maybe you are looking for
-
Dynamic action on LOV using tabular form
Hello, I realize this has likely been dealt with somewhere already, but I'm going to ask anyway. I have a master/detail form. The detail form has an option to add rows. I have created a dynamic action as defined below... True Action: Sequence: 10 Act
-
Dear Gurus, Why there are only 16 dimensions in SAP BW?Why not less or more? Is there any specific reason for this restriction. Thanks in advance. Best regards Niranjan
-
How can I import photos from iPod that is supervised with Apple Configurator?
I have configured a set of iPod Touches (and iPads) with Apple Configurator. User can take photos. But when the iPods are attached to a PC or Mac (including the Mac they were configured on), no pictures are visible or downloadable. The photos are vis
-
I'm new to apple and idvd. I am making a dvd of some slideshows I made in iphoto, I have the box checked for "Always add original slideshow photos to DVD-ROM" in idvd preferences. I imported the slideshows into idvd, and checked out the dvd-rom file,
-
hi friends for general sales order process we will give proforma invoice or original invoice for the goods transporter. he will use those invoice while crosing the boarders or some checking points but where as in consinement sales order process the i