Delivery note-subcontracting order

hi,
We have a a subcontract order, and in ME20 created delivery note.  The delivery note and subsequent PGI document is not appearing in the purchase order history of Subcontracting order, is this standard SAP.
Regards
Sappy

Dear sappy,
For sending material to subcontractor, use transaction code MIGO-Transfer posting OR MB1B with movement type 541.
Once you post the document check vendor stock availability by using Transaction MBLB.
The document No will update purchase order history.
Regards
M P D Kamath

Similar Messages

  • Delivery for Subcontracting Orders - SC

    Hi,
    I have create a subcontracting PO.
    I would like to ask which should be the proper way of creating the outbound delivery?
    I've seen that in a ME2O there is a button to make the post Good Issue and another to create the delivery, but as the transaction is called "Stock Monitor for Vendor" I believe it must be another place to create the delivery.
    Nevertheless, when I try to create the delivery I'm getting the message: "Essential transfer parameters are missing in record:  000001"
    Thanks

    Hi,
    To create a delivery (against Subcontracting PO), the following data has to be maintained in the system:
    1. The plant must be assigned a sales organization, a distribution channel, and a division. You can define this in Customizing for Purchasing, in the step Set Up Stock Transport Order.
    2. A delivery type has to be defined for the plant from which the items are to be delivered. You can define this in Customizing for Purchasing, in the step Set Up Subcontract Order.
    3. If you want to reference a reservation when you create a delivery, you also have to set the Predecessor necessary indicator to L (Provision to subcontractor necessary) when defining the delivery type. This means that the requirements generated by the reservations can be correctly offset against the deliveries created. You can define this in Customizing for Shipping, in the step Define Delivery Types.
    4. The vendor for the stock with subcontractor must be entered as the customer in the organizational units in the delivering plant, such as sales organization, distribution channel, and division.
    5. The material to be provided has to be entered for the organizational units in the delivering plant, such as sales organization, distribution channel, and division.
    6. The combination of shipping condition (from the subcontractoru2019s customer master record), loading group (from the material master record for the components to be provided), and the plant have to be assigned to a shipping point. You can define this in Customizing for Shipping, in the step Assign Shipping Points.
    To create a delivery (in ME2O), choose Edit ® Create delivery. A dialog box appears, in which you can enter the data required to post the delivery. The system posts the delivery in the background and, after posting, it informs you in a dialog box how many items were posted.

  • Shipping point error while creating delivery for subcontracting order

    Hi,
    I am trying to send Materials Provided to a Subcontractor via an SD Delivery using std SAP functionality using IDES preconfigured system.
    In transaction ME2O, while creating delivery, i am facing following error:
    Essential transfer parameters are missing in record:  000002
    The dignosis gives following details.
    Diagnosis
    Information necessary for this delivery is missing.
    Please help to sort out the problem.
    Regards
    SAmeer

    Hi Sameer
    please check OSS notes 102104 for detail help about this error.
    regards
    Srinivas

  • Delivery Notes Generation Via Pick List

    Am trying to generate delivery notes off pick tickets and i can't find any code example. I now came up with the following code but am having issues when items are in multiple Bin Locations.
    Public Sub Sales2Delivery() '(ByVal OrderID As String)
            Dim OrderID As String = ""
            Try
                Using connection As New SqlConnection(StaginConn)
                    'Dim command As New SqlCommand("SELECT DocEntry from ORDR with (nolock) WHERE NumAtCard = '" & OrderID & "'", connection)
                    Dim command As New SqlCommand("SET DATEFORMAT DMY; select distinct top 5 o.DocEntry, o.NumAtCard from ordr O with (nolock) join RDR1 R with (nolock) on R.DocEntry = O.DocEntry join OPKL P with (nolock) on P.AbsEntry = R.PickIdNo where u_shipstate = 'Delivered' and CAST(O.docdate as date) >= '30/04/2014' and P.Status = 'Y';", connection)
                    connection.Open()
                    Dim reader As SqlDataReader = command.ExecuteReader()
                    ' Call Read before accessing data.
                    While reader.Read()
                        Dim BusinessOrders As Documents = DirectCast(vCompany.GetBusinessObject(BoObjectTypes.oOrders), Documents)
                        Dim BusinessDelivery As Documents = DirectCast(vCompany.GetBusinessObject(BoObjectTypes.oDeliveryNotes), Documents)
                        Dim orders As Documents = BusinessOrders
                        orders.GetByKey(Convert.ToInt32(reader(0)))
                        OrderID = Convert.ToString(reader(1))
                        Dim Delivery As Documents = BusinessDelivery
                        Delivery.CardCode = orders.CardCode
                        Delivery.CardName = orders.CardName
                        Delivery.NumAtCard = orders.NumAtCard
                        'Delivery.DocNum = orders.DocNum
                        Delivery.HandWritten = BoYesNoEnum.tNO
                        Delivery.Series = 8
                        Delivery.DocDate = DateTime.Today
                        Delivery.DocDueDate = DateTime.Today
                        Delivery.TaxDate = DateTime.Today
                        Delivery.Address = orders.Address
                        Delivery.Address2 = orders.Address2
                        Delivery.Comments = "Based on Sales Order #" + orders.NumAtCard & "."
                        Delivery.DocCurrency = orders.DocCurrency
                        Delivery.DocDueDate = orders.DocDueDate
                        Delivery.DocObjectCode = SAPbobsCOM.BoObjectTypes.oDeliveryNotes
                        Delivery.ShipToCode = orders.ShipToCode
                        Dim lines As Document_Lines = orders.Lines
                        'If (count > 0) Then
                        '    lines.Add()
                        '    lines.SetCurrentLine((lines.Count - 1))
                        'End If
                        Dim oPickList As PickLists = DirectCast(vCompany.GetBusinessObject(BoObjectTypes.oPickLists), PickLists)
                        oPickList.GetByKey(orders.Lines.PickListIdNumber)
                        For i As Int32 = 0 To (lines.Count - 1)
                            If i > 0 Then
                                Delivery.Lines.Add()
                                Delivery.Lines.SetCurrentLine(i)
                            End If
                            ' Set the Current Lines on the order
                            orders.Lines.SetCurrentLine(i)
                            Try
                                oPickList.Lines.SetCurrentLine(i)
                                Delivery.Lines.BaseEntry = oPickList.Lines.OrderEntry
                                Delivery.Lines.BaseLine = oPickList.Lines.OrderRowID
                                Delivery.Lines.Quantity = oPickList.Lines.PickedQuantity
                                Delivery.Lines.BaseType = DirectCast(SAPbobsCOM.BoObjectTypes.oOrders, Integer)
                                Delivery.Lines.BinAllocations.BinAbsEntry = oPickList.Lines.BinAllocations.BinAbsEntry
                                Dim rs As SAPbobsCOM.Recordset = vCompany.GetBusinessObject(SAPbobsCOM.BoObjectTypes.BoRecordset)
                                rs.DoQuery("select itemcode, price, dscription from RDR1 R where R.LineNum = " & oPickList.Lines.OrderRowID & " and R.PickIdNo = " & oPickList.Lines.AbsoluteEntry)
                                While (rs.EoF <> True)
                                    Delivery.Lines.ItemCode = rs.Fields.Item(0).Value.ToString 'orders.Lines.ItemCode
                                    Delivery.Lines.UnitPrice = CType(rs.Fields.Item(1).Value.ToString, Double) 'orders.Lines.UnitPrice
                                    Delivery.Lines.ItemDescription = rs.Fields.Item(2).Value.ToString 'orders.Lines.ItemDescription
                                    rs.MoveNext()
                                End While
                                rs = Nothing
                            Catch ex As Exception
                                Continue For
                                My.Computer.FileSystem.WriteAllText(_LogPath, ErrDetails.ToString, True)
                            End Try
                        Next
                        If Delivery.Add() <> 0 Then
                            ErrDetails.AppendLine(" Unable to create Delivery note for Order: " & OrderID & " <br /> " & vCompany.GetLastErrorCode() & ":" & vCompany.GetLastErrorDescription())
                        Else
                            ErrDetails.AppendLine("Successfully created Delivery note for Order:" & OrderID) ' & " as requested by " & UserEmail & ".")
                        End If
                        orders = Nothing
                        Delivery = Nothing
                        BusinessOrders = Nothing
                        BusinessDelivery = Nothing
                        My.Computer.FileSystem.WriteAllText(_LogPath, ErrDetails.ToString, True)
                    End While
                    'orders = Nothing
                    'BusinessOrders = Nothing
                End Using
            Catch ex As Exception
                ErrDetails.AppendLine(" Error generating Delivery note for Order: " & OrderID & " <br /> " & ex.ToString())
                My.Computer.FileSystem.WriteAllText(_LogPath, ErrDetails.ToString, True)
            Finally
                If Not String.IsNullOrWhiteSpace(ErrDetails.ToString) Then
                    My.Computer.FileSystem.WriteAllText(_LogPath, (ChrW(13) & ChrW(10) & ChrW(13) & ChrW(10) & "Errors encountered while registering data on " & System.DateTime.Now.ToString("F") & ".Errors:" & ChrW(13) & ChrW(10) & Me.ErrDetails.ToString), True)
                Else
                    My.Computer.FileSystem.WriteAllText(_LogPath, (ChrW(13) & ChrW(10) & ChrW(13) & ChrW(10) & "Application Ran successfully on " & System.DateTime.Now.ToString("F") & "."), True)
                End If
            End Try
        End Sub
    The Error message am getting is 1470000368 - The quantity allocated to bin locations must be positive.

    Am getting this error now is
    "1470000341 - Fully allocate item "1017494" to bin locations in warehouse "Isolo". Issue is we have items in multiple Bin locations and the items have been picked via the pick ticket. Is it also possible to generate the delivery note off the Pick List.
    The new code am using is
        Public Sub Sales2Delivery() '(ByVal OrderID As String)
            Dim OrderID As String = ""
            Try
                Using connection As New SqlConnection(StaginConn)
                    'Dim command As New SqlCommand("SELECT DocEntry from ORDR with (nolock) WHERE NumAtCard = '" & OrderID & "'", connection)
                    Dim command As New SqlCommand("SET DATEFORMAT DMY; select distinct top 5 o.DocEntry, o.NumAtCard from ordr O with (nolock) join RDR1 R with (nolock) on R.DocEntry = O.DocEntry join OPKL P with (nolock) on P.AbsEntry = R.PickIdNo where u_shipstate = 'Delivered' and CAST(O.docdate as date) >= '30/04/2014' and P.Status = 'Y' and o.DocStatus = 'O';", connection)
                    connection.Open()
                    Dim reader As SqlDataReader = command.ExecuteReader()
                    ' Call Read before accessing data.
                    While reader.Read()
                        Dim BusinessOrders As Documents = DirectCast(vCompany.GetBusinessObject(BoObjectTypes.oOrders), Documents)
                        Dim BusinessDelivery As Documents = DirectCast(vCompany.GetBusinessObject(BoObjectTypes.oDeliveryNotes), Documents)
                        Dim orders As Documents = BusinessOrders
                        orders.GetByKey(Convert.ToInt32(reader(0)))
                        OrderID = Convert.ToString(reader(1))
                        Dim Delivery As Documents = BusinessDelivery
                        Delivery.CardCode = orders.CardCode
                        Delivery.CardName = orders.CardName
                        Delivery.NumAtCard = orders.NumAtCard
                        'Delivery.DocNum = orders.DocNum
                        Delivery.HandWritten = BoYesNoEnum.tNO
                        'Delivery.Series = 8
                        Delivery.DocDate = DateTime.Today
                        Delivery.DocDueDate = DateTime.Today
                        Delivery.TaxDate = DateTime.Today
                        Delivery.Address = orders.Address
                        Delivery.Address2 = orders.Address2
                        Delivery.Comments = "Based on Sales Order #" + orders.NumAtCard & "."
                        Delivery.DocCurrency = orders.DocCurrency
                        Delivery.DocDueDate = orders.DocDueDate
                        Delivery.DocObjectCode = SAPbobsCOM.BoObjectTypes.oDeliveryNotes
                        Delivery.ShipToCode = orders.ShipToCode
                        Dim lines As Document_Lines = orders.Lines
                        'If (count > 0) Then
                        '    lines.Add()
                        '    lines.SetCurrentLine((lines.Count - 1))
                        'End If
                        Dim oPickList As PickLists = DirectCast(vCompany.GetBusinessObject(BoObjectTypes.oPickLists), PickLists)
                        oPickList.GetByKey(orders.Lines.PickListIdNumber)
                        For i As Int32 = 0 To (lines.Count - 1)
                            If i > 0 Then
                                Delivery.Lines.Add()
                                Delivery.Lines.SetCurrentLine(i)
                            End If
                            ' Set the Current Lines on the order
                            orders.Lines.SetCurrentLine(i)
                            Try
                                oPickList.Lines.SetCurrentLine(i)
                                Delivery.Lines.BaseEntry = oPickList.Lines.OrderEntry
                                Delivery.Lines.BaseLine = oPickList.Lines.OrderRowID
                                Delivery.Lines.Quantity = oPickList.Lines.PickedQuantity
                                Delivery.Lines.BaseType = DirectCast(SAPbobsCOM.BoObjectTypes.oOrders, Integer)
                                'Dim rs As SAPbobsCOM.Recordset = vCompany.GetBusinessObject(SAPbobsCOM.BoObjectTypes.BoRecordset)
                                'rs.DoQuery("select itemcode, price, dscription from RDR1 R where R.LineNum = " & oPickList.Lines.OrderRowID & " and R.PickIdNo = " & oPickList.Lines.AbsoluteEntry)
                                'While (rs.EoF <> True)
                                Delivery.Lines.ItemCode = orders.Lines.ItemCode
                                Delivery.Lines.UnitPrice = orders.Lines.UnitPrice
                                Delivery.Lines.ItemDescription = orders.Lines.ItemDescription
                                '            rs.MoveNext()
                                '            End While
                                'rs = Nothing
                            Catch ex As Exception
                Continue For
                My.Computer.FileSystem.WriteAllText(_LogPath, ErrDetails.ToString, True)
            End Try
                        Next
                        If Delivery.Add() <> 0 Then
                            ErrDetails.AppendLine(" Unable to create Delivery note for Order: " & OrderID & " <br /> " & vCompany.GetLastErrorCode() & ":" & vCompany.GetLastErrorDescription())
                        Else
                            ErrDetails.AppendLine("Successfully created Delivery note for Order:" & OrderID) ' & " as requested by " & UserEmail & ".")
                        End If
                        orders = Nothing
                        Delivery = Nothing
                        BusinessOrders = Nothing
                        BusinessDelivery = Nothing
                        My.Computer.FileSystem.WriteAllText(_LogPath, ErrDetails.ToString, True)
                    End While
                    'orders = Nothing
                    'BusinessOrders = Nothing
                End Using
            Catch ex As Exception
                ErrDetails.AppendLine(" Error generating Delivery note for Order: " & OrderID & " <br /> " & ex.ToString())
                My.Computer.FileSystem.WriteAllText(_LogPath, ErrDetails.ToString, True)
            Finally
                If Not String.IsNullOrWhiteSpace(ErrDetails.ToString) Then
                    My.Computer.FileSystem.WriteAllText(_LogPath, (ChrW(13) & ChrW(10) & ChrW(13) & ChrW(10) & "Errors encountered while registering data on " & System.DateTime.Now.ToString("F") & ".Errors:" & ChrW(13) & ChrW(10) & Me.ErrDetails.ToString), True)
                Else
                    My.Computer.FileSystem.WriteAllText(_LogPath, (ChrW(13) & ChrW(10) & ChrW(13) & ChrW(10) & "Application Ran successfully on " & System.DateTime.Now.ToString("F") & "."), True)
                End If
            End Try
        End Sub

  • Creating delivery notes for providing material to vendor (subcontracting)

    Hi,
    I am pretty new in the PP module of SAP, and have a general question regarding the subcontracting process for single operations in a production order.
    Assuming the raw material has id A and the final material has id B. My routing consists of several operations that have to be performed to transform A into B. One of the operations has to be done with subcontracting (key PP02), and the system creates the purchase requisition / purchase order for it. I have operations before and after it. 
    Now I need to send the parts to the vendor, and want to create some kind of delivery notes (paper), which helps controlling the shipping etc., how can I do this? All I have right now is the purchase order, which does not contain any information about the material, but only about the service to be performed by the vendor.
    I already thought about assigning a bom for providing material in the purchase order. But then I would need a material ID for the semi-final part which is somewhere between A and B and would need to have it on stock.
    What is the standard way of doing this?
    Thanks in advance!
    Kind regards!
    Daniel

    Hi Nandha!
    Thanks for your quick response.
    If I check the "Subcontracting" button on the tab Ext. processing in the production order, I need to assign components in the purchase order which will be provided to the vendor. These components either have to be on stock, or would be processed by MRP and planned orders would be created. That is not what I need.
    I have only one single part which consists of a raw material and only gets modified by the operations. No other component will be added at the vendor. So which material ID should I assign to the purchase order in order to just send the semi-finished pieces to the vendor? I cannot assign the raw-material again, because it would create another demand in the MRP again! I also cannot put the semi-finished parts on stock, because I don't have a material id for the part in this status.
    Thanks & regards!
    Daniel

  • Subcontract PO error VU013 when creating delivery note using ME2o

    FYI to the forum, I had a user getting error VU 013 "Document is incomplete: You cannot save the delivery" when attempting to create a delivery note to send components to a subcontract vendor using ME2o.
    I spent quite a bit of time researching this on this site and did not find a solution to my problem. As it turns out, the issue was that this part had a serialization profile which required serial numbers to be assigned in the delivery note. Our workaround solution was to change the serialization profile to one which did not make it obligatory on the DN. We then issued the DN and manually assigned the serial number to it, then finally changed the material master back to the obligatory profile.
    Ideally, we would have liked the error message to indicate exactly what made the document incomplete (i.e. missing serial number in this case). I am not sure how to do that. Also, I found information regarding activating enhancement for serial numbers in purchasing (in EhP4). Presumably, this would allow me to specify the serial number(s) of the components to be issued to the vendor in the purchase order, and therefore automatically copy this into the subsequent DN. I activated this functionality, but did not get it to work. (Serial number maintenance was not visible in my PO.)
    If anyone has successfully dealt with either of these things (changing the error message, or activating the functionality) let me know. Otherwise, I will close the thread, as I just wanted to notify people of my findings regarding reasons for the error, and my workaround.

    I think the solution from OSS note will help to know the exact reason of the VU013 error:
    335504 - Not possible to save delivery because of VU013
    and OSS note
    1029482 - ME2O: ME 346, although serial number usage optional
    gives more insight and suppress the error message

  • Intra company stock transport order with delivery to subcontracting vendor

    Hi Friends,
    We have an issue with Intra company stock transport scheduling agreement with delivery to subcontracting vendor.
    We have a scenario where the component is provided by another plant (Plant A -Intra company) directly to subcontracting vendor and the subcontracting vendor processes the component and sends us(
    Plant B) the finished good.
    We have a subcontracting scheduling agreement created with the subcontracting vendor with Item category u201CLu201D for plant B .(Document type LPA)
    And we created the stock transport scheduling agreement with document type LU (Between Plant A to Plant B) by entering the subcontracting vendor number to the "EMLIF- Vendor to be supplied/who is to receive delivery" field but the check box "LBLKZ-Subcontracting vendor" is hidden in the delivery address tab.
    Field selection with document type (LU) and Field selection with transaction code (ME37) did not help to bring the field to the delivery address tab.
    As a result, when we do PGI from the supplying plant, the stock is posted to "in transit" (Movement type 641) instead of "Component provided to vendor" (Movement type 641 u2013 O)
    The same behavior for purchase order with document type UB as well/
    Is the movement type u201C641-O u201C supported by standard SAP or do we have any other workaround to address the requirement. ?
    Now we are in ECC 6.0 EHP3.
    Your inputs will be highly appreciated.
    Regards
    Gobinathan G

    Hello,
    This EhP4 feature addresses only the one step Stock Transport Order to subcontracting vendor for intra company.
    Does anybody know how to do a two steps Stock Transport Order to subcontracting vendor for intra company?
    By "two steps" I mean:
    1- Goods Issue from supplying plant A to in-transit stock of the subcontracting vendor at receiving plant B.
    2- Inbound Delivery Notification (IDN) at receiving plant B + Goods receipt against this IDN into the subcontracting stock at receiving plant B.
    Thanks and regards,
    Stéphane

  • MIGO - GR Against Purchase Order -  Delivery Note # not to Repeat !!

    Hi all,
    Here is a interesting requirement from the business user!!
    Scenario: Currently they are making Goods receipt against Purchase order in Transaction MIGO. Delivery Note # (LFSNR) is entered during Posting.
    Problem: Recently they did MIGO for Purchase order, by mistake they did Goods receipt twice for same vendor delivery note # !
    Question: Can you please suggest a way to validate the Delivery note # field of MIGO, Such that it is unique. If the number is Repeated for the Same Vendor, system should throw a error message, stating that Delivery note # already exists. So that it avoids posting of GR for same delivery note even by mistake !!
    I thought of validating this entry in MSEG Table, but problem is it will delay the posting of document !!
    Is there a standard user exit or setting to validate this field during posting!!
    Thanks in advance.
    Regards,
    Thiyagu

    Joven,
    If you see transaction VL31, Creation of Inbound Delivery, SAP did the validation for EXTERNAL ID in the Input screen of the Transaction. If we try to repeat the External id #, system throws error message as below.
    "The external ID of the delivery note is not unique (see inb. dely
    0180267952)"  Message no. BORGR547
    When we make Goods receipt against Inbound Delivery instead Purchase order. We may over come the problem some how. Reason is that during Inbound Delivery creation itself External ID is validated. During GR against Inbound Delivery this External Id gets copied as Delivery Note #, so this is the alternative i thought !!
    Thanks,
    Thiyagu

  • Delivery note from sale order

    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
    sappy

    Hello,
    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

  • Joining Sales Orders and Delivery Notes in Query

    Hi Experts
    Please could someone provide me with the correct SQL syntax for joining tables ORDR, RDR1, ODLN and DLN1 in a query?
    I need to show a list of the (rows of all open sales orders) and (closed sales order (which have a delivery note) between certain dates).
    Thanks
    Jon

    Hi Gordon
    Thanks for your help.  Could you help me a little further?  I am writing the query to show me a mixture of (Open Order rows which contain item code 'C&P') and (closed orders between 2 dates which also contain C&P) - both need to have the customer having property 54 set as 'Y'
    Working with what you sent me it almost works but for some reason I cannt fathom it won't show the open orders only the closed.  I think it may have some do with my last JOIN
    This is what I have:
    SELECT T0.DocNum 'Delivery No', T0.DocDate 'Delivery Date',  T3.Quantity 'Delivery Quantity', T1.DocNum 'S/O No', T1.DocDate 'SO Date', T1.DocStatus, T3.ItemCode, T3.Dscription, T2.Quantity 'SO Quantity', T2.Quantity-T3.Quantity 'Balance Quantity', T2.LineTotal'C&P Price After Discount', T2.DiscPrcnt, T2.Project, T4.QryGroup54'Carriage Deal', t2.freetxt, t1.comments
    FROM DBO.DLN1 T3
    INNER JOIN DBO.ODLN T0 ON T3.DOCENTRY = T0.DOCENTRY LEFT JOIN DBO.RDR1 T2 ON T3.BaseENTRY = T2.DOCENTRY AND T2.ItemCode = T3.ItemCode LEFT JOIN DBO.ORDR T1 ON T2.DOCENTRY = T1.DOCENTRY INNER JOIN OCRD T4 ON T0.CardCode = T4.CardCode
    WHERE (T2.ItemCode LIKE 'C&P%%' AND T1.DocStatus='O' and t4.qrygroup54='Y')  or (T2.[ItemCode] LIKE 'C&P%%' AND T1.[DocStatus] = 'C' and T4.QryGroup54='Y' and (T0.DocDate Between '[%0]' and '[%1]'))
    Thanks
    Jon

  • Status of sales order and delivery notes

    Hello,
    what is the status of sales orders that permit to create delivery notes for this sales orders.
    And what is the status that block us to create delivery Notes.
    Regards.
    Zied.

    Hi..
    1. The over all status of the sales order in header shuld be Being processed...Rejection status shud be  nothing rejected..Delivery status shuld be Not delivered....Credit status shuld be Approved/released
    2. Status will be Blocked if any block is assing to the sales order or else it wud be Not blocked
    Reg,
    JJ
    Edited by: Jagsap on Nov 25, 2009 11:03 AM

  • Best Buy Appliance Delivery Not Doing What They Said They Would Do. Order Cancelled.

    I recently purchased a refrigerator from bestbuy.com and chose the option to have it delivered on Tuesday the second of December (today). I received an order confirmation e-mail from best buy on the day of purchase (November 28) which stated the following (taken directly from the e-mail):
    The scheduled appointment date of your item(s) below is Tuesday, December 2, 2014
    We'll call you by 9PM the night before your appointment with an estimated arrival time window at the phone number(s) you provided at the time of purchase (with either live or pre-recorded calls).
    Thank you for shopping with us.
    Sincerely,
    Karalyn Sartor
    Vice President Customer Care
    Yesterday, on Monday the 1st of December, I got a knock on the door from the Best Buy delivery team. They had my refrigerator and were here to deliver it. I was not ready for them to deliver the refrigerator at that time, at all, as I was not expecting it. I asked the driver to please deliver it on the scheduled date. The change in scheduling happened without a postive notification.
    I checked afterward and saw that their was en e-mail sent during the evening of November 30 informing me that the refrigerator would be delivered on Monday the 1st. This e-mail was in my spam folder and I did not see it. I did not expect it either as I was under the impression that I would be called by phone prior to delivery (as stated in the original purchase confirmation e-mail). So some mistake/change in scheduling happened. Not a big deal to me.
    Thirty minutes ago I called the 1-888 number mentioned in the e-mail to inquire about what time I could expect my refrigerator to be delivered. I was told it was rescheduled for December 20th, which is not acceptable to me.
    I was told the earliest delivery date that they could honor would be for monday the 8th of December. That is unacceptable to me as well. I was advised I had no other options for delivery other than to receive it on the 8th of December, 6 days after the aggreed upon delivery date.
    In the end I cancelled the order. As a customer I do not like to be treated this way (to be told one thing at first (delivery date and that I would be called by phone), to have that one thing change, and to not be told in a *reasonable* manner that the one thing had changed.
    Best Buy customer service, If you would like to contact me you have my e-mail address. You also have my correct phone number for calling me, which your system verified when it looked up my order by phone. Until then, please consider me an unsatisfied customer that will look very closely at other buying options for all my future appliance and home electronics needs.
    Thank You.
    P.S. - The person I spoke to on the phone to inquire about and cancel my order was very courteous and professional.

    To Whom It May Concern,
    I posted earlier regarding a refrigerator delivery problem. http://forums.bestbuy.com/t5/Delivery-Installation/Best-Buy-Appliance-Delivery-Not-Doing-What-They-S...
    I've since read a few of the other posts and think I see some common issues that many others have been having:
    1. Not calling the customer. We (customers) expect someone will call us the day before a scheduled delivery date to confirm the item is being delivered and approximately what time to expect it. The confirmation e-mail you send even states that this will happen.
    2. Not notifying the customer regarding changes. We (customers) expect someone will notify us if delivery dates are changed. This is especially important if the delivery date has been moved forward, as in my case. My particular problem would have been avoided entirely if someone from Best Buy would have notified me that the refrigerator I ordered would arrive one day ahead of schedule. An e-mail is not a good enough notification when you move the shipping date forward. How do you even know I have read/received it and will be home?
    3. Not working with the customer. I've read a few forum posts where some mistake has happened, and now shipping is delayed by a signifcant amount of time (a week or more). If you (Best Buy) had some better way of working with whoever does your delivery for you, things would be better.
    In my example the original delivery date was for today (Dec 2nd). You decided to deliver a day early on the 1st without making sure I knew you were coming on a differnet day than scheduled. So I wasn't ready. At this point I believe you (Best Buy) should have tried to correct this by rescheduling the delivery so that it happened on the original delivery date, December 2nd. You could have also arranged to deliver it later that same day, I would have been ok with that and had time to make things ready. Instead the delivery got rescheduled for the 20th of December by the system, and your customer service could only move it up to December 8. In a situation like this I think it would be better if you worked more with the customer (pay a driver an hour or two of overtime to get the goods delivered on the day you said you would or delay someone else who placed their order after I placed mine). Instead I was given one and only option, delivery on December 8.
    In the end I took the other option, cancelling my order. You have lost my business on this sale and I now have a lower opinion of Best Buy as a company and a brand than I did before. This could have been avoided if you did any of the above three things.
    Thank you for your time.

  • Automatic form generation on creation transfer order for delivery note?

    Hi,
    I have to create a form that should automatically be generated on the creation of a transfer order for delivery note. How do I trigger this automatic creation of the form? And how can the transfer order number be passed to my print program?
    Thx!

    hi christophe,
    To issue the delivery output, go to transaction VL02N.
    Then go to EXTRAS-> OUTPUT->HEADER->EDIT
    In the Message output screen enter the relevant output type created for the delivery.
    Choose the relevant medium of output.
    Choose Simple Mail, in this case the field NAST-NACHA will be having a value of 7.
    Specify the Partner Function; in this case it is MA -> Mail partner address
    Select the Communication Method for the output type maintained.
    This will take you to the SAPOFFICE screen.
    Enter there the  E-Mail Address to which you want to send the delivery document as PDF.
    A mail will be sent to the e-mail address of the E-Mail Address specified, with the delivery output form as a PDF attachment.
    hope it will help u ..
    *& Report  ZZ_TEST                                                     *
    REPORT  zz_test                                 .
    INCLUDE zz_test_top.
    INCLUDE zz_test01.
          FORM entry                                                    *
    -->  RETURN_CODE                                                   *
    -->  US_SCREEN                                                     *
    FORM entry USING return_code us_screen.
      CLEAR retcode.
      xscreen = us_screen.
      PERFORM processing USING us_screen.
      CASE retcode.
        WHEN 0.
          return_code = 0.
        WHEN 3.
          return_code = 3.
        WHEN OTHERS.
          return_code = 1.
      ENDCASE.
    ENDFORM.                    "entry
    *&  Include           ZZ_TEST_TOP                                      *
      TABLES : nast,
               tnapr.
    TYPES : BEGIN OF t_SOUDNAMEI1.
            INCLUDE STRUCTURE SOUDNAMEI1.
    TYPES : END OF t_SOUDNAMEI1.
    Internal Table declarations
      DATA: i_otf TYPE itcoo OCCURS 0 WITH HEADER LINE,
      i_tline TYPE TABLE OF tline WITH HEADER LINE,
      i_receivers TYPE TABLE OF somlreci1 WITH HEADER LINE,
      i_record LIKE solisti1 OCCURS 0 WITH HEADER LINE,
    *Objects to send mail.
      i_objpack LIKE sopcklsti1 OCCURS 0 WITH HEADER LINE,
      i_objtxt LIKE solisti1 OCCURS 0 WITH HEADER LINE,
      i_objbin LIKE solisti1 OCCURS 0 WITH HEADER LINE,
      i_reclist LIKE somlreci1 OCCURS 0 WITH HEADER LINE,
      i_lips LIKE lips OCCURS 0 WITH HEADER LINE,
      i_SOUDNAMEI1 TYPE STANDARD TABLE OF t_SOUDNAMEI1.
    Work Area declarations
      DATA:w_objhead TYPE soli_tab,
      wa_control_parameters TYPE ssfctrlop,
      wa_output_options TYPE ssfcompop,
      w_return TYPE ssfcrescl,
      w_doc_chng TYPE sodocchgi1,
      w_data TYPE sodocchgi1,
      w_buffer TYPE string,"To convert from 132 to 255
      wa_SOUDNAMEI1 TYPE t_SOUDNAMEI1,
    Variables declarations
      w_form_name TYPE rs38l_fnam,
      w_len_in LIKE sood-objlen,
      w_len_out LIKE sood-objlen,
      w_len_outn TYPE i,
      w_lines_txt TYPE i,
      w_lines_bin TYPE i,
      retcode      TYPE sy-subrc,
      xscreen      TYPE c,
      w_spld TYPE usr01-spld,
      w_receiver TYPE SOXNA-FULLNAME,
      w_OBJ_RECORD TYPE OBJ_RECORD,
      w_user type sy-uname,
      w_email TYPE ad_smtpadr.
    Constants Declaration
      CONSTANTS : c_x TYPE c VALUE 'X',
                  c_atrate(1) TYPE c VALUE '@'.
    *&  Include           ZZ_TEST01                                        *
          FORM PROCESSING                                               *
    FORM processing USING proc_screen.
      SELECT * FROM lips
        INTO TABLE i_lips
        WHERE vbeln = nast-objky.
    Call Function module to Getfunction Module name Generated by Smartform
      CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
        EXPORTING
          formname           = tnapr-sform
        IMPORTING
          fm_name            = w_form_name
        EXCEPTIONS
          no_form            = 1
          no_function_module = 2
          OTHERS             = 3.
      IF sy-subrc <> 0.
        retcode = sy-subrc.
      ENDIF.
      CLEAR : wa_control_parameters,
              wa_output_options.
      CASE nast-nacha.
        WHEN '1'.
          wa_control_parameters-device    = 'PRINTER'.
        WHEN '7'.
          DATA: l_email TYPE ad_smtpadr.
          wa_output_options-tdnoprev = c_x.
          wa_control_parameters-getotf  = c_x.
    To get the default output device maintained in the
    User profile
         SELECT SINGLE spld FROM usr01
          INTO w_spld
          WHERE bname EQ nast-usnam.
          IF sy-subrc EQ 0.
            MOVE w_spld TO  wa_output_options-tddest   .
          ENDIF.
          wa_output_options-tdnoprev = c_x.
          wa_control_parameters-getotf  = c_x.
    To get the email address maintained for the particular output
          CALL FUNCTION 'NAST_GET_MESSAGE_OBJECT_RECV'
            EXPORTING
              pi_objkey             = nast-tdname
            IMPORTING
              pe_addr               = w_receiver
            CHANGING
              pc_objhandle          = w_obj_record
            EXCEPTIONS
              maildata_not_readable = 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.
          IF w_receiver NA c_atrate.
    To retrieve the E-Mail Id in case we get the User name from NAST
            CLEAR wa_soudnamei1.
            REFRESH i_soudnamei1.
            MOVE w_receiver TO wa_soudnamei1-fullname.
    To get the user name
            CALL FUNCTION 'SO_NAME_CONVERT_API1'
              EXPORTING
                name            = wa_soudnamei1
              TABLES
                names           = i_soudnamei1
              EXCEPTIONS
                user_not_exist  = 1
                parameter_error = 2
                x_error         = 3
                OTHERS          = 4.
            IF sy-subrc <> 0.
              MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
               WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
            ENDIF.
            CLEAR wa_soudnamei1.
            READ TABLE i_soudnamei1 INTO wa_soudnamei1 INDEX 1.
            MOVE wa_soudnamei1-sapname TO w_user.
    To get the e-mail Id maintained in the user profile
            CALL FUNCTION 'FTR_CORR_CHECK_EMAIL_SAP_USER'
              EXPORTING
                i_user              = w_user
              IMPORTING
                e_email_address     = l_email
              EXCEPTIONS
                mail_address        = 1
                determination_error = 2
                OTHERS              = 3.
            IF sy-subrc <> 0.
              MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
               WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
            ENDIF.
            MOVE l_email TO w_receiver.
          ENDIF.
          MOVE  w_receiver TO w_email.
      ENDCASE.
      wa_control_parameters-no_dialog = c_x.
      wa_control_parameters-langu     = nast-spras .
      wa_output_options-tdteleland    = nast-tland.
      wa_output_options-tdtelenum     = nast-telfx .
      wa_output_options-tdsenddate    = nast-erdat .
      wa_output_options-tdsendtime    = nast-eruhr .
      wa_output_options-tddataset     = nast-dsnam .
      wa_output_options-tdsuffix1     = nast-dsuf1 .
      wa_output_options-tdsuffix2     = nast-dsuf2 .
      wa_output_options-tdimmed       = nast-dimme .
      wa_output_options-tddelete      = nast-delet .
      wa_output_options-tdautority    = nast-tdautority.
      wa_output_options-tdcovtitle    = nast-tdcovtitle .
      wa_output_options-tdcover       = nast-tdocover .
      wa_output_options-tdreceiver    = nast-tdreceiver.
      wa_output_options-tddivision    = nast-tddivision.
      wa_output_options-tdcopies      = nast-anzal .
      wa_output_options-tdnewid       = c_x.
      wa_output_options-tdarmod       = nast-tdarmod.
      wa_output_options-tdnoarmch     = c_x.
      CALL FUNCTION w_form_name
        EXPORTING
         archive_index      = toa_dara
         archive_parameters = arc_params
          control_parameters = wa_control_parameters
          output_options     = wa_output_options
          user_settings      = ' '
        IMPORTING
          job_output_info    = w_return
        TABLES
          it_lips            = i_lips
        EXCEPTIONS
          formatting_error   = 1
          internal_error     = 2
          send_error         = 3
          user_canceled      = 4
          OTHERS             = 5.
      IF nast-nacha EQ 7 AND sy-subrc EQ 0.
        i_otf[] = w_return-otfdata[].
        CALL FUNCTION 'CONVERT_OTF'
          EXPORTING
            format                = 'PDF'
            max_linewidth         = 132
          IMPORTING
            bin_filesize          = w_len_in
          TABLES
            otf                   = i_otf
            lines                 = i_tline
          EXCEPTIONS
            err_max_linewidth     = 1
            err_format            = 2
            err_conv_not_possible = 3
            OTHERS                = 4.
        IF sy-subrc <> 0.
          MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
          WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
        ENDIF.
    Convert PDF from 132 to 255.
        LOOP AT i_tline.
    Replacing space by ~
          TRANSLATE i_tline USING ' ~'.
          CONCATENATE w_buffer i_tline INTO w_buffer.
        ENDLOOP.
    Replacing ~ by space
        TRANSLATE w_buffer USING '~ '.
        DO.
          i_record = w_buffer.
    Appending 255 characters as a record
          APPEND i_record.
          SHIFT w_buffer LEFT BY 255 PLACES.
          IF w_buffer IS INITIAL.
            EXIT.
          ENDIF.
        ENDDO.
        REFRESH: i_reclist,
        i_objtxt,
        i_objbin,
        i_objpack.
        CLEAR w_objhead.
    Object with PDF.
        i_objbin[] = i_record[].
        DESCRIBE TABLE i_objbin LINES w_lines_bin.
    Document information.
        w_doc_chng-obj_name = 'Smartform'.
        w_doc_chng-expiry_dat = sy-datum + 10.
        CONCATENATE 'Delivery' 'Note'
        INTO w_doc_chng-obj_descr.
    *w_doc_chng-obj_descr = 'Smart form output'.
        w_doc_chng-sensitivty = 'F'. "Functional object
        w_doc_chng-doc_size = w_lines_txt * 255.
    Pack to main body as RAW.
    Obj. to be transported not in binary form
        CLEAR i_objpack-transf_bin.
    Start line of object header in transport packet
        i_objpack-head_start = 1.
    Number of lines of an object header in object packet
        i_objpack-head_num = 0.
    Start line of object contents in an object packet
        i_objpack-body_start = 1.
    Number of lines of the object contents in an object packet
        i_objpack-body_num = w_lines_txt.
    Code for document class
        i_objpack-doc_type = 'RAW'.
        APPEND i_objpack.
    Packing as PDF.
        i_objpack-transf_bin = 'X'.
        i_objpack-head_start = 1.
        i_objpack-head_num = 1.
        i_objpack-body_start = 1.
        i_objpack-body_num = w_lines_bin.
        i_objpack-doc_type = 'PDF'.
        i_objpack-obj_name = 'Smartform'.
        CONCATENATE 'Delivery' 'Note' '.pdf'
        INTO i_objpack-obj_descr.
        i_objpack-doc_size = w_lines_bin * 255.
        APPEND i_objpack.
    Document information.
        CLEAR i_reclist.
    e-mail receivers.
        i_reclist-receiver = w_email.
        i_reclist-express = 'X'.
        i_reclist-rec_type = 'U'. "Internet address
        APPEND i_reclist.
    sending mail.
        CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
          EXPORTING
            document_data              = w_doc_chng
            put_in_outbox              = 'X'
          TABLES
            packing_list               = i_objpack
            object_header              = w_objhead
            contents_bin               = i_objbin
       contents_txt               = i_objtxt
            receivers                  = i_reclist
          EXCEPTIONS
            too_many_receivers         = 1
            document_not_sent          = 2
            document_type_not_exist    = 3
            operation_no_authorization = 4
            parameter_error            = 5
            x_error                    = 6
            enqueue_error              = 7
            OTHERS                     = 8.
        IF sy-subrc <> 0.
          MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
          WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
        ENDIF.
      ENDIF.
    ENDFORM.                    "processing

  • IDOC for transfer order for delivery note LT03

    Hi All,
    I need to generate an outbound IDOC upon transfer order creation in Tcode LT03.
    I found there are two types of IDOC discussed in this forum before. One is the Canceling Transfer Order IDOC and another one is the Confirmation Transfer Order IDOC.
    I'm not sure whether these relevant to what I need or not.
    Can i know what FM, message type and basic type should I use for this situation?
    (generate an outbound IDOC upon transfer order creation in Tcode LT03)
    Please advice.
    Thanks.
    Best Regards,
    JL
    Message was edited by:
            KAR SENG LAW

    I found something here,
    Someone is using FM: L_IDOC_INPUT_WMTORD, message type WMTORD and basic type WMTOID01 in doing this when trying to send an Idoc to an external system when a transfer order for a delivery note is created (LT03). Is it OK ?
    need advice.
    Thanks again.

  • Stock Transfer Order for Delivery Note

    Hello
    i have facing some problem in client
    i have seen one STO with Plant to Plant but iam afraid that the supplying plant and receiving plant are same , (took it as BP01 supplying plant BP01 receiving plant)
    in that STO they have mentioned 3 materials (three line items) for two line items he has created the Delivery Note, for third  line item  system will not allow to create delivery note why? i ahve checked the purchase order history
    1) is it possible in SAP STO (plant to plant) they are same?
    2)if no why system will alow him to create for two line items for delivery?
    3) if they were created the delivery for two line items , why not third line item?
    (i have stock of all materials is OK),

    Hi,
    It is OK for the STO to have the same issuingh and receiving plants (although if you do this deliberately it does indicate that the org structure is suspect)
    As for the third delivery not being able to be processed, there are so many reasons and so I would need the EXACT message you are getting for this.
    You say that there is enough stock but is it in the right place and is it all available (remember that available stock is not the same as unrestricted stock, there may be other requirements that have reduced the available stock even though the physical stock is still sufficient).
    But without the message details I can't be much more help.
    Steve B

Maybe you are looking for