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

Similar Messages

  • 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.

  • 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

  • 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

  • Adding Purchase Delivery Note with SerialNumbers via DI Server

    I try to add Purchase Delivery Notes via DI Server. It already works for items that do not need serial or batch numbers. But if I try to add a PDN with an item that needs such numbers, I'm getting an error that the line of the item cannot be added without these numbers.
    Then I tried to add SerialNumbers to my request, but I am still getting the same error.
    The xml template for the SerialNumbers part looks like this:
    <SerialNumbers>
    <row>
      <SystemSerialNumber />
      <ManufacturerSerialNumber />
      <InternalSerialNumber />
      <BatchID />
      <ExpiryDate />
      <ManufactureDate />
      <ReceptionDate />
      <WarrantyStart />
      <WarrantyEnd />
      <Location />
      <Notes />
      <BaseLineNumber />
    </row>
    </SerialNumbers>
    Can someone explain me, how to use it?
    What are the mandatory fields?
    What is <BaseLineNumber>? Is it the line number of the item in the purchase delivery note?
    Do I have to include <SystemSerialNumber> or will this number be generated automatically by SBO?

    Hi Nico,
    you should use the SDK Help Center to determine the mandatory fields...
    When creating an incoming document (Purchase Delivery Note) with serial numbers using the DI API I assign the InternalSerialNumber property only and this works.
    The only Mandatory field when creating an outgoing document is SystemSerialNumber which is the unique key for a serial number...
    As a side note, I am still experiencing some strange behaviour trying to use the DI API to create documents using serial numbers.  I am in contact with SAP regarding this but am getting very slow responses...
    Daniel

  • 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.

  • 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

  • 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.

  • 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

  • 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

  • Restrict Equipment Master (with serial numbers) creation

    Hello All,
    I am faced with an issue where the client will be using Serial Numbers for 2 sets of materials. I have assigned a Serial Number profile to these materials in Material Master.
    I am able to create equipment master data for these materials with serial numbers without any issue.
    However, I am also able to create equipment master data (with serial numbers) for materials to which I have not assigned a Serial Number profile.
    Is there a way to restrict the creation of equipment master data (with serial numbers)  to only those material that have a Serial Number profile assigned in material master data...?
    Thanks
    Jensi

    Thanks for the reply Amuthan.
    Unlike what you wrote in the reply, the system does allow me to create/save a equipment number for those serial numbers that I assign to materials that do not have a serial number profile.
    Is there any validation, any check or something of that sort that I can activate so that the system will prevent assignment of serial numbers (and in turn creation of equipment master data) for those materials which do not have a serial number profile assigned in the material master data?
    Thanks
    Jensi

Maybe you are looking for

  • Photoshop CS4 Crash Using the Pen Tool

    We have experienced an issue where creating a line/path using the Pen tool in Photoshop CS4 caused a system-wide freeze, regardless of operating system, other software installed, etc.... Not even a kernal panic, but just a complete freeze. We found t

  • How is the storage type for a component picked automatically in PO staging

    Hi The Process cycle is : Sales Order created MRP-Planned Order ---Production Order Problem : Transfer Requirement not created for Picking Now if I go to Co03--GOTOWM Pick list , For the component the storage type is notr updated automatically I comp

  • Updating the HR master records from Buffer.

    Hi All, We have requirement to update the 0008 infotype sub type 1 when 0008 infotype sub type 0 record is updated using the dynamic action. We have created the step in the dynamic action with F step and in the sub routine using the HR_INFOTYPE_OPERA

  • How to install 64bit java version

    Dear All, I need config jvm memory greater than 2G because "Account Analyst Report" issue. If I must need to install JAVA version 64bit, how can I do it? Platform is: Oracle Solaris on SPARC (64-bit) Current Java version is: java -version java versio

  • Audio drops every few seconds?

    I have a sisco box, and tonight its starting to drop the audio every few seconds. Kind of like its a skip. I reset the box and all that and its still doing it, does this mean I need a new box?