DIAPI posting Delivery Document with Serial Numbers SP1

Release 2005A, SP1 PL4 seems to have broken code that worked with SP00.  When trying to create a Delivery Document that contains Serial Numbers, an error is generated: Error -1, General Error.  When adding a delievery document which does not contain serial numbers, the document adds successfully.
The following code loops through a recordset to create documents, add expenses and add serial numbers when appropriate.  Is this a new 'feature' or can we make a coding change to eliminate this error?
Sample code:
    Try
      oSalesOrder = oCompany(piCompany).GetBusinessObject(SAPbobsCOM.BoObjectTypes.oOrders)
      RecSet = oCompany(piCompany).GetBusinessObject(SAPbobsCOM.BoObjectTypes.BoRecordset)
      RecSet2 = oCompany(piCompany).GetBusinessObject(SAPbobsCOM.BoObjectTypes.BoRecordset)
      RecSet3 = oCompany(piCompany).GetBusinessObject(SAPbobsCOM.BoObjectTypes.BoRecordset)
      RecSet4 = oCompany(piCompany).GetBusinessObject(SAPbobsCOM.BoObjectTypes.BoRecordset)
      RecSet5 = oCompany(piCompany).GetBusinessObject(SAPbobsCOM.BoObjectTypes.BoRecordset)
      RecSet6 = oCompany(piCompany).GetBusinessObject(SAPbobsCOM.BoObjectTypes.BoRecordset)
      '-- Select Documents to process and loop through recordset
      lsSQL = "SELECT DocEntry FROM DeliveryTable WHERE ProcessResult IS NULL Group by DocEntry"
      RecSet.DoQuery(lsSQL)
      While Not RecSet.EoF
        oSalesOrder.GetByKey(RecSet.Fields.Item(0).Value)
        If bDocuments(piCompany).DelDraft = False Then
          oDelivery = oCompany(piCompany).GetBusinessObject(SAPbobsCOM.BoObjectTypes.oDeliveryNotes)
        Else
          oDelivery = oCompany(piCompany).GetBusinessObject(SAPbobsCOM.BoObjectTypes.oDrafts)
        End If
        oDelivery.CardCode = oSalesOrder.CardCode
        oDelivery.Comments = "Based On Sales Order " & oSalesOrder.DocNum & "."
        oDelivery.DocDate = Today
        oDelivery.ContactPersonCode = oSalesOrder.ContactPersonCode
        oDelivery.DocCurrency = oSalesOrder.DocCurrency
        oDelivery.DocDueDate = Today
        If bDocuments(piCompany).DelDraft = True Then
          oDelivery.DocObjectCode = SAPbobsCOM.BoObjectTypes.oDeliveryNotes
        End If
        '-- Handle Expenses for Document
        Dim ExpenseLoop As Integer
        Dim ExpenseCount As Integer = 0
        For ExpenseLoop = oSalesOrder.Expenses.Count - 1 To 0 Step -1
        ExpenseCount += 1
          '-- Create new Expense if needed
          If ExpenseCount > oDelivery.Expenses.Count Then
            oDelivery.Expenses.Add()
          End If
          oSalesOrder.Expenses.SetCurrentLine(ExpenseLoop)
          '-- Copy all non-readonly properties
          If oSalesOrder.Expenses.LineTotal > 0 Then
            oDelivery.Expenses.BaseDocEntry = oSalesOrder.Expenses.BaseDocEntry
            oDelivery.Expenses.BaseDocLine = oSalesOrder.Expenses.BaseDocLine
            oDelivery.Expenses.BaseDocType = oSalesOrder.Expenses.BaseDocType
            oDelivery.Expenses.DeductibleTaxSum = oSalesOrder.Expenses.DeductibleTaxSum
            oDelivery.Expenses.DistributionMethod = oSalesOrder.Expenses.DistributionMethod
            oDelivery.Expenses.ExpenseCode = oSalesOrder.Expenses.ExpenseCode
            oDelivery.Expenses.LineTotal = oSalesOrder.Expenses.LineTotal
            oDelivery.Expenses.Remarks = oSalesOrder.Expenses.Remarks
            oDelivery.Expenses.TaxCode = oSalesOrder.Expenses.TaxCode
            oDelivery.Expenses.VatGroup = oSalesOrder.Expenses.VatGroup
          End If
        Next ExpenseLoop
        Dim i As Integer = 0
        Dim liMinRef As Integer = -1
        For x = 0 To oSalesOrder.Lines.Count - 1
          lsSQL = "SELECT ISNULL(MIN(CAST(LineRef as int)),999999) as MinLineRef FROM DeliveryTable WHERE DocEntry = " & RecSet.Fields.Item(0).Value & " AND CAST(LineRef as int) > " & liMinRef
          RecSet5.DoQuery(lsSQL)
          If Not RecSet5.EoF Then
            '-- It's possible that the DeliveryTable has less records then the RDR1 table - if that's the case
            '-- we may be at the end, so set the liMinRef field to something out of range
            liMinRef = RecSet5.Fields.Item(0).Value
          End If
          '-- get line items for each document
          lsSQL = "Select * from DeliveryTable WHERE DocEntry = " & RecSet.Fields.Item(0).Value & " AND LineRef = " & x & " AND ProcessResult IS Null"
          RecSet2.DoQuery(lsSQL)
          RecSet2.MoveFirst()
          While Not RecSet2.EoF
            '-- We need to walk through the SO to find the item that we are receiving based on the LineNum
            Dim liCurrentLine As Integer = x
            Dim lbFound As Boolean = False
            While liCurrentLine <= (oSalesOrder.Lines.Count - 1)
              '-- We need to get the PO Line number (x is NOT the LineRef)
              oSalesOrder.Lines.SetCurrentLine(liCurrentLine)
              If oSalesOrder.Lines.LineNum = liMinRef Then
                lbFound = True
                Exit While
              End If
              liCurrentLine += 1
            End While
            If lbFound Then
              i += 1
              If i > oDelivery.Lines.Count Then
                oDelivery.Lines.Add()
              End If
              oDelivery.Lines.BaseEntry = oSalesOrder.DocEntry
              oDelivery.Lines.Quantity = RecSet2.Fields.Item(6).Value
              oDelivery.Lines.BaseType = SAPbobsCOM.BoObjectTypes.oOrders
              oDelivery.Lines.LineTotal = oSalesOrder.Lines.LineTotal * (oDelivery.Lines.Quantity / oSalesOrder.Lines.Quantity)
              oDelivery.Lines.UserFields.Fields.Item("U_WhseLoc").Value = RecSet2.Fields.Item(8).Value
              oDelivery.Lines.AccountCode = oSalesOrder.Lines.AccountCode
              oDelivery.Lines.Address = oSalesOrder.Lines.Address
              oDelivery.Lines.Currency = oSalesOrder.Lines.Currency
              oDelivery.Lines.ItemCode = oSalesOrder.Lines.ItemCode
              oDelivery.Lines.BaseLine = liMinRef
              oDelivery.Lines.ItemDescription = oSalesOrder.Lines.ItemDescription
              oDelivery.Lines.WarehouseCode = oSalesOrder.Lines.WarehouseCode
              lsUserID = RecSet2.Fields.Item("UserID").Value
              '-- manage serial numbers
              j = -1
              lsSQL = "Select * from DeliverySerial WHERE DocEntry = " & oDelivery.Lines.BaseEntry & " AND LineRef = " & liMinRef
              lsSQL += " AND WIPLineRef = " & RecSet2.Fields.Item("WIPLineRef").Value
              RecSet3.DoQuery(lsSQL)
              While Not RecSet3.EoF
                '-- get the next SystemSerialNumber for the Inventory Item
                lsSQL = "EXEC " & gsDB(piCompany) & "xspGetSysSerial " & sparm(oDelivery.Lines.ItemCode) & ", " & sparm(RecSet3.Fields.Item("LotNo").Value)
                lsSQL += ", " & sparm(RecSet3.Fields.Item("ManSerNo").Value) & ", " & sparm(RecSet3.Fields.Item("IntSerNo").Value)
                lsSQL += ", " & RecSet3.Fields.Item("QTY").Value & ", " & sparm(oDelivery.Lines.WarehouseCode) & ", " & sparm(RecSet2.Fields.Item(8).Value)
                RecSet4.DoQuery(lsSQL)
                  j += 1
                  If j + 1 > oDelivery.Lines.SerialNumbers.Count Then
                    oDelivery.Lines.SerialNumbers.Add()
                  End If
                  oDelivery.Lines.SerialNumbers.SetCurrentLine(j)
                  oDelivery.Lines.SerialNumbers.BatchID = RecSet3.Fields.Item("LotNo").Value
                  oDelivery.Lines.SerialNumbers.ManufacturerSerialNumber = RecSet3.Fields.Item("ManSerNo").Value
                  oDelivery.Lines.SerialNumbers.InternalSerialNumber = RecSet3.Fields.Item("IntSerNo").Value
                  oDelivery.Lines.SerialNumbers.SystemSerialNumber = RecSet4.Fields.Item(0).Value
                  oDelivery.Lines.SerialNumbers.BaseLineNumber = oDelivery.Lines.BaseLine
                RecSet3.MoveNext()
              End While
              '-- 'end manage serial numbers
            End If
            RecSet2.MoveNext()
          End While
        Next x
        '-- now add object to SAP
        If 0 <> oDelivery.Add() Then
          Dim liError As Long
          Dim lsError As String
          Call oCompany(piCompany).GetLastError(liError, lsError)
          '-- write error code to table - Delivery document creation was unsuccessful
          lsSQL = "Update DeliveryTable SET ProcessResult = " & liError & ", ProcessDate = GetDate() WHERE DocEntry = " & oSalesOrder.DocEntry & " AND ProcessResult Is Null"
          RecSet2.DoQuery(lsSQL)
          lsuWriteEvent("AR Delivery", bDocuments(piCompany).DelDraft, oSalesOrder.DocEntry, liError, lsError, piCompany)
        Else
          lsuWriteEvent("AR Delivery", bDocuments(piCompany).DelDraft, oSalesOrder.DocEntry, 0, "Success", piCompany)
        End If
        RecSet.MoveNext()
      End While
    Catch
      LogErrorMessage(Err.Description)
    Finally
      If Not RecSet Is Nothing Then
        System.Runtime.InteropServices.Marshal.ReleaseComObject(RecSet)
      End If
      If Not RecSet2 Is Nothing Then
        System.Runtime.InteropServices.Marshal.ReleaseComObject(RecSet2)
      End If
      If Not RecSet3 Is Nothing Then
        System.Runtime.InteropServices.Marshal.ReleaseComObject(RecSet3)
      End If
      If Not RecSet4 Is Nothing Then
        System.Runtime.InteropServices.Marshal.ReleaseComObject(RecSet4)
      End If
      If Not RecSet5 Is Nothing Then
        System.Runtime.InteropServices.Marshal.ReleaseComObject(RecSet5)
      End If
      If Not RecSet6 Is Nothing Then
        System.Runtime.InteropServices.Marshal.ReleaseComObject(RecSet6)
      End If
      If Not oSalesOrder Is Nothing Then
        System.Runtime.InteropServices.Marshal.ReleaseComObject(oSalesOrder)
      End If
      If Not oDelivery Is Nothing Then
        System.Runtime.InteropServices.Marshal.ReleaseComObject(oDelivery)
      End If
      GC.WaitForPendingFinalizers()
    End Try

We have narrowed down the issue to this:
If you are just adding a delivery document with serial numbers, the DIAPI works OK.  If you are adding a delivery document which is based upon a sales order and add the 3 lines that reference it:
oDelivery.Lines.BaseEntry = oSalesOrder.DocEntry
oDelivery.Lines.BaseType = SAPbobsCOM.BoObjectTypes.oOrders
oDelivery.Lines.BaseLine = liMinRef
then you receive a error of -1, General error.  This is functionality that did work in 2004 and 2005 SP00.  I believe this is a bug.

Similar Messages

  • DIAPI posting Delivery Document with Serial Numbers

    Hi,
    I am using SAP 2005A, SP01, Patch 8. I am not able to create a delivery document based on Sales Order with serial number items.
    Code is given below. The error i get is
    Error No: -10, Message: [DLN1.WhsCode][line: 0] , 'The selected quantity of batch/serial numbers is greater than the open quantity.'
    When i checked the openqty in the sales order it is 0 and i guess we cannot set it thru DIAPI. Any solutions?
    Dim oSO As SAPbobsCOM.Documents
    Dim oDlv As SAPbobsCOM.Documents
    oSO = pcompany.GetBusinessObject(SAPbobsCOM.BoObjectTypes.oOrders)
    oDlv = pcompany.GetBusinessObject(SAPbobsCOM.BoObjectTypes.oDeliveryNotes)
    ' iSoDocEntry contains Sales Order no
    If oSO.GetByKey(iSoDocEntry) = True Then
    oDlv.CardCode = oSO.CardCode
    oDlv.DocDueDate = oSO.DocDueDate
    oDlv.Comments = "Based on Sales Order " & iSoDocEntry & "." & oSO.Comments
    oDlv.Address = oSO.Address
    oDlv.ShipToCode = oSO.ShipToCode
    oDlv.Address2 = oSO.Address2
    oDlv.AgentCode = oSO.AgentCode
    oDlv.DocType = SAPbobsCOM.BoDocumentTypes.dDocument_Items
    oDlv.DocumentSubType = SAPbobsCOM.BoDocumentSubType.bod_None
    oDlv.Lines.BaseLine = iRowNo
    oDlv.Lines.BaseType = SAPbobsCOM.BoAPARDocumentTypes.bodt_Order
    oDlv.Lines.BaseEntry = iSoDocEntry
    Dim objSerialNum As SAPbobsCOM.SerialNumbers
    Dim sSerialNumbers(), sSysSerialNumbers(), sInternalSerial() As String
    Dim iCount As Integer
    objSerialNum = oDlv.Lines.SerialNumbers()
    sSerialNumbers = sSupSerial.Split(",") ' Contains the List of Supplier Serial Nos value of the Selected serials
    sSysSerialNumbers = sSysserial.Split(",") ' Contains the List of Sys Serial value of the selected serials
    sInternalSerial = sInternal.Split(",") ' Contains the List of Internal Serial value of the selected serials
    For iCount = 0 To sSysSerialNumbers.Length() - 1
    objSerialNum.InternalSerialNumber = sInternalSerial.GetValue(iCount)
    objSerialNum.ManufacturerSerialNumber = sSerialNumbers.GetValue(iCount)
    objSerialNum.SystemSerialNumber = sSysSerialNumbers.GetValue(iCount)
    objSerialNum.SetCurrentLine(iRowNo)
    objSerialNum.Add()
    Next
    end if
    iReturnValue = oDlv.Add()
    Thanks,
    Jayakumar

    Hey,
    I was having the same problem... With that error though I found that when I wrote the Delivery Obj to an XML file that every time that you add a Serial Number Line you are adding a blank Serial number line, and thus producing that error. I have also seen other post the same problem with the same solution of removing the Add completely for all serial numbers. Just a warning as well. If you want to create a Delivery Withless items then the assosiated SO, There seems to be a bug with SAP that will give you a error stating that some random Item (one that may or may not be in the sales order) does not have a system Serial number avaliable...
    Anyways, that has been my experience,
    Hope this helps
    Jeremy Adam

  • Adding a delivery document with serial numbers

    Hi everyone,
    A delivery document is created in code and the item delivered requires a serial number. In this example there is a quantity of two so two serial numbers will need to be added.
      Dim oCompany As New SAPbobsCOM.Company, lRetCode As Long
            Dim oSerialNumbers As SAPbobsCOM.SerialNumbers
            Dim oDelivery As SAPbobsCOM.Documents
            Dim RetVal As Long
            Dim ErrCode As Long
            Dim ErrMsg As String
                oDelivery = oCompany.GetBusinessObject(SAPbobsCOM.BoObjectTypes.oDeliveryNotes)
                oDelivery.CardCode = "KellyD"
                oDelivery.DocDate = "09/20/2005"
                oDelivery.Lines.ItemCode = "MDASTPE"
                oDelivery.Lines.Quantity = 1
                oDelivery.Lines.TaxCode = 0
                oDelivery.Lines.Price = 300
                oSerialNumbers = oDelivery.Lines.SerialNumbers
                ??What code goes here to enter the serial numbers??
                RetVal = oDelivery.Add
    Any help would be appreciated.
    Thanks.

    Hi
    try this or something alike
    oSerialNumbers.add() ' i'm not sure if its necessary
    oSerialNumbers.SetCurrentLine(0)
    oSerialNumbers.InternalSerialNumber="yourfirstserial"
    oSerialNumbers.add()
    oSerialNumbers.SetCurrentLine(1)
    oSerialNumbers.InternalSerialNumber="yourSecondserial"
    tell me results
    Kind regards
    Salvador Biot

  • Subsequent outbound delivery split with serial numbers

    Hi,
    I have a question about subsequent outbound delivery split with already assigned serial numbers.
    Case:
    First delivery is created and serial numbers are assigned. Now we have to do a subsequent delivery split for that delivery. In SAP standard, it's not possible to do a subsequent delivery split if serial numbers are already assigned.
    Does anyone know how we can handle this?
    Best Regards,
    Florian

    well, seems to be not possible at all.

  • Inbound Delivery (WM) with Serial Numbers and HU's

    Hey,
    I want to use Serial Numbers with Handling Unit Management in WM.
    I want to use MIGO to GR a Purchase Order and then Auto Pack the Inbound Delivery.
    I also want to be able to Auto Pack the HU's with the Serial Numbers that i enter into the WM tab of the MIGO transaction.
    I post the GR of my PO and get my inbound delivery.  The delivery is Packed onto an HU ... BUT the serial numbers i enter are not present in the HU ?!?
    Does anyone know if this is possible via MIGO? or is this available only when receiving IM deliveries??
    thanks,
    Adam.

    Hi Nagesh,
    The process will be to use transaction MIGO for all goods receipts, therefore i would like to automate the Inbound Delivery Create AND pack process so that we minimise the amount of user input.
    Once we have entered the GR for the PO i want to automatically do the following:
    1) Create the inbound delivery (which the system does because the item is going into an HU managed storage location).
    2) Pack the inbound delivery (which the system does because i set the Delivery Type to 'Auto Pack')
    3) Assign entered Serial Numbers to the HU - which at the moment is not happening.
    I thought that by entering the Serial Numbers in the 'Serial Numbers' tab in transaction MIGO that these would be copied into the HU but this is not happening ?!?
    (NB: I have serialisation procedure MMSL: Maintain goods receipt and issue doc. - set on my serial number profile).
    We do not want to go into the Inbound Delivery and manually assign the serial numbers as this adds complexity and is time consuming for the User.
    thanks,
    A

  • Creating a delivery doc with serial numbers

    Hi all,
    I need to create a delivery doc with the corresponding serial numbers? Any BAPI/function module for this?

    Hi Shusma,
    Is your Material master active for serial number management ? If not you need to assign a serialization profile to your material master. Once the material is activated for serialization you can eneter serial numbers while creating inbound deliveries (ASN) or Post GR or update an Outbound delivery before PGI.
    Are you trying to create deliveries via an interface?
    Veera

  • Handling unit with serial numbers in return delivery

    There is a handling unit (HU),whose system status is PSTD(goods issue posted). The delivery is posted. The billing document are issued. Handling unit was packed with materials with equipments and serial numbers.
    Now I am creating another sales document(I want to return the good) and return delivery. No handling unit is attached to return delivery.  (Why not?  Returning original sales document is created with reference to original sales document)
    Now I attach the serial numbers to the return delivery. (the same serial numbers which are included(packed) in the above mentioned HU).  The return delivery is successfully posted. The status of equipment/serial numbers is on stock.
    The problem is that this serial number with equipment is still packed in the original HU.
    How can unpack the equipment from HU?   I think the problem is the status of HU which is PSTD(goods issue posted).
    Or alternative: can I move the HU unit from original delivery and attach it to return delivery?
    The changing of the status of HU is not posssible because the original delivery is posted and I do not want to change this original documents anymore too.

    I am afraid you are right
    - The return delivery was created without HU. ( i mean HU which was originally sold in original delivery. )
    Do you think I should create HU for return delivery with the same/different ID?  How can I transfer equipment from original delivery HU to return delivery and HU ?
    The problem seem to be that the original delivery and HU is locked (sytem status= posted )after posting.  If I cancel posting of return delivery then I can attach a new HU. But the equipment is still part of the original HU.
    Can I move equipment/serial numbers from original to returned HU? Is that possible at all?
    I am talking about phisical  same HU, so I guess there should be not 2 different HUs in the SAP system created.
    I am looking for the scenario to sell equipment in one HU and return it in the same HU with return delivery.
    thank you for your effort and responses

  • Creation of sub item with serial numbers in outbound delivery

    Hi All,
    We need to create a sub item for an Outbound Delivery main item in change mode with serial numbers for sub item.
    Process flow:
    1. Sales order item created with main item
    2. Outbound Delivery created with main item
    3. Outbound Delivery interfaced to external logistics sytem
    4. External logistics system pick the main item and a sub item (packaging) from warehosue and ship to customer
    5. External logistics sytems send delivery pick confirmation interface with main item details and serial numbers for sub item
    Now we have to create a sub item with serial numbers in the delivery referencing the same main item.
    NB: Delivey can have multiple similar main items but there is only material number in SAP for sub item. Hence the requirement to identify relevant sub item serial numbers to each delivery main item.
    Can you kindly tell me in what possible ways we can create sub item with serial numbers for a deliveyr main item in change mode.
    Thanks in advance
    Best  Regards
    Veer

    Hi,
    Does anybody have an answer?
    Thanks in advance.

  • Delivery notes and serial numbers

    Hi
    I have a simple SQL question.
    How do I get the serial numbers in "plain SQL"?
    The SDK "Help Center" shows that I can get the delivey notes from the ODLN table and then dig into the DLN1 rows and get the list of items. However, serial numbers are within the OSRI table (OSRI.IntrSerial).
    How can I "bridge" DLN1 with OSRI? Or, how do I get all serial numbers related to an item of a delivery note in "simple SQL selects"?

    Hi Vieri.
    You have to link to table SRI1 where saves the transactions you made with transactional documents where includes items with serial numbers. The query could be as follows:
    SELECT ODLN.DOCDATE, ODLN.DOCNUM, OSRI.SUPPSERIAL  FROM OSRI
    JOIN SRI1 ON (SRI1.SYSSERIAL = OSRI.SYSSERIAL)
    JOIN ODLN ON (ODLN.DOCENTRY = SRI1.BASEENTRY)
    JOIN DLN1 ON (DLN1.ITEMCODE = OSRI.ITEMCODE)
    WHERE ODLN.DOCENTRY = 5
    ORDER BY ODLN.DOCDATE DESC
    I don´t know by the moment if via SDK you can read this information.
    I hope it helps.
    Best regards.
    Rafael Monge.
    SAP Business One development consultant.

  • To create SD Sales Order with Serial numbers

    Hi Experts,
    I want to create a Sales Order with serial numbers info attached to the items.
    The way, i m following is:
    1. Creating the order with BAPI_SALESORDER_CREATEFORMDAT2 function module and save it.
    2. Then add the serials to the already saved SO.
    3. The delivery document is automatically created through some customizing settings.
    This approach has a problem: After SO being saved, because the delivery document is automatically created through some customizing settings. This means i need update serial numbers in both SO and delivery document as well.
    I'm looking for a way to add the serial numbers to the SO before actually saving it. By this way the serial numbers would be actually added in delivery document too. I think BAPI_SALESORDER_CREATEFROMDAT2 is of no help, in this case.
    Is there any function module?
    Grateful for all suggestions...
    Regards,
    Jeo

    Hi Shiva,
    Thanks for your quick reply.
    I have checked that link which you provided. The link actually tells about how can we add serial no after SO being saved, but i want to add serial nos before SO actually saved.
    The same FM given in the link, i m using and its working fine.
    Can you let me know, how can i add serial nos in SO before saving it?
    Is there any FM exist, that could achieve this? OR How can we achieve this by CALL TRANSACTION, if there is no FM exist for this.
    Regards,
    Jeo

  • Goods Receipt with serial numbers

    Hello everyone
    I'm having problems when i try to add a goods receipt with serial numbers
    Code:
            OReceipt = oCompany.GetBusinessObject(BoObjectTypes.oInventoryGenEntry)
            OReceipt.Series = 18
            OReceipt.DocDate = Date.Now
            OReceipt.TaxDate = Date.Now
            OReceipt.Lines.ItemCode = "MP.PP.241"
            OReceipt.Lines.Quantity = 1
            OReceipt.Lines.SerialNumbers.InternalSerialNumber = "SN-01"
            OReceipt.Lines.SerialNumbers.ManufacturerSerialNumber = "SN-01"
            OReceipt.Lines.AccountCode = "_SYS00000000109"
            OReceipt.Lines.WarehouseCode = "MPfabrik"
            OReceipt.Comments = ".NET"
            res = OReceipt.Add()
    Any help will be greatly appreciated!

    Hi Nestor
    All forums on SCN contain a description of what the forums is for. This forum's  Overview page:
    Looking at the overview, I suspect you want to post your query elsewhere? Perhaps one of  Microsoft's forums?
    - Ludek
    Senior Support Engineer AGS Product Support, Global Support Center Canada
    Follow us on Twitter

  • Physical Inventory with serial numbers

    Hi friends,
    we are trying to post physical inventory with materials having serial numbers.
    However during post the system gives 2 errors.
    1)
    Stock data of serial number 2 not suitable for movement
    Message no. IO231
    "The current stock information for the serial number 2 contradicts the stock information of the movement to be posted... "
    2)
    Serial number 2 cannot be used here
    Message no. IO201
    "You have entered a serial number already present in the system..."
    Let me try to explain the situation.
    For example we have two storage locations.
    A material, say SERIAL, have some stocks in one storage location, say 0001, with serial numbers.
    Assume that in the system serial number 2 of the material SERIAL is in the storage location 0001.
    However, when physically counted, this serial number 2 shows up in the storage location 0002.
    Therefore we would like to enter count for the storage location 0002 to post the serial number 2.
    Doing so, we get the errors above.
    Is there any solution to that problem? Thanks in advance.
    Best regards,
    Yusuf

    Thank you Lakshman,
    yes the stock transfer between storage locations or removal first from storage location 0001 with pyhsical inverntory can be done in the system. However I wonder is there any better way to do this, without making any abap development.
    I would like to make a count for the storage location 0002 as in our case (or this can be a customer consigment either in another case). Here I expect the serial number 2 will be removed from storage location 0001 and will be placed in sorage location 0002 at the same time. Do you know any way of doing this?
    Best regards,
    Yusuf

  • Error when posting AR Invoice with serial

    Hi experts, just want to ask what is the problem when posting AR Invoice with serial number. The error is "Internal error (-5002) occurred [الرسالة 131-183]"
    Here's my code :
                                If Not oSerial Is Nothing Then
                                    oSerial.DefaultView.RowFilter = "product_reference_code = '" & oDrView("product_reference_code") & "' " 'AND site_reference = '" & oDrView("site_reference") & "' "
                                    For Each oDrSerial As DataRowView In oSerial.DefaultView
                                        Try
                                            .Lines.SerialNumbers.Quantity = 1
                                            .Lines.SerialNumbers.InternalSerialNumber = oDrSerial("serial_no")
                                            .Lines.SerialNumbers.Add()
                                        Catch ex As Exception
                                        End Try
                                    Next
                                End If

    Hi Bryan,
    Have you try to debug it , which line is causing problem.
    With serial numbers you don't have to set the qty.
    other fields that need to be set are :
    for (int count = 0 ; count < totalcount; count ++)
         if (count > 0)
              .Lines.SerialNumbers.Add();
         .Lines.SerialNumbers.SystemSerialNumber = SysSerialNum;
         .Lines.SerialNumbers.ManufacturingSerialNumber = ManufacturingNum;
         .Lines.SerialNumbers.InternalSerialNumber = internalserialnumber;
         Count++ ;
    Hope it will help.
    Regards

  • DTW Stock with Serial Numbers

    Hi all, I DTW'd some stock in through the GRPO template. I then AP'd the invoice. Due to some administrative issues I had to credit the Invoice thus reversing the stock. So the Serial Numbers are all reflecting as unavailable.
    I need to re-import the stock with the same serial numbers and different costs. The DTW is giving me an error "(Serial Number) for item (Item Code) in line 1 already exists (in unique field)/Application defined or object defined error65171"
    I realise that these serial numbers are already in the system, but if I manually capture these on the GRPO the the application asks me to confirm this already exists. There are almost 2000 items to capture. Please could someone advise if there is possibly a field on the DTW template (purchase delivery) I could populate that overides this error"

    Are you using the oInventoryGenEntry templates? The serial numbers template I have contains 3 serial numbers - Internal, Manufacturer & System. The system serial number is the unique key and is system generated.
    Try the following to get a list of on hand stock with serial numbers:
    {SELECT T0.ItemCode, T0.ItemName,
          T1.WhsCode, CASE WHEN ISNULL(T2.SysSerial,-1) = -1 THEN T1.OnHand ELSE 1 END [Quantity], T0.AvgPrice,
          T2.SysSerial, T2.IntrSerial
    FROM OITM T0
          INNER JOIN OITW T1 ON T1.ItemCode = T0.ItemCode
          LEFT OUTER JOIN OSRI T2 ON T2.ItemCode = T1.ItemCode AND T2.WhsCode = T1.WhsCode AND T2.[Status] = 0
    WHERE T1.OnHand <> 0    and t0.ManSerNum = 'Y'
    ORDER BY T0.ItemCode, T1.WhsCode, T2.SysSerial}
    You may need to tweak it a bit for your eviironment.

  • DTW General Entry (Goods Receipt) with Serial numbers

    Hi all,
    I want to import 540 items with serial numbers using the General Entry templates. Some items have as many as 200 serial numbers. Total number of serial numbers for 540 items are about 24,000.
    In the Serial Numbers template, will I have to cover 24,000 rows? Is it possible to auto-create the serial numbers with DTW?
    In which field should I put the serial numbers - Internal or System?
    Thanks,
    Ajay Audich

    Hi Ajay Audich,
    You may check this thread first:
    Re: Upload inventory transfer trnsaction with DTW
    Thanks,
    Gordon

Maybe you are looking for

  • Error while creating datasource in planing. very urgent

    while configuring a datasource he gets an error failed to authenticate user admin against NYULDAP . this error her gets after entering the datasource name as EDPM_EDU in the config utility for confuguring a datasource.. please hellp asap.. i checkd t

  • Itunes 7.1.1 and Vista home

    Itunes runs fine. and the ipod runs fine aslong as they are not connected to the computer togeather, when i plug my ipod up to my computer my CPU Process Max out at 100%, when i un-plug my ipod and turn off the service then it goes back to normal, wh

  • How do I sync (copy) my iPhone's content to my PC?

    Here's the deal.  I'm using a computer that currently has an iTunes sync to a device I no longer intend to use.  I have my dad's iPhone in my hand and I want to get some music on it (specifically, I want to rip a CD to it).  I do grasp that iTunes de

  • What does "Adobe CC Cleaner" do?

    what does this program do exactly? from what i understand it removes any trace of registration, is that correct? meaning that it doesn't uninstall the program, only things like the activation of it, right? if so then i like to ask how i do this for i

  • Can I export Bins/folders created in Premiere Pro CS6 to desktop?

    Recently I've started a slideshow project in Premire Pro. I organized all the images in Premiere by bins and started the project, although another software (ProShow Producer 5) have come to my attention, and I would like to continue the project in Pr