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

Similar Messages

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

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

  • 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

  • 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

  • Group By reports with Serial Numbers

    hi,
    i am creating group by reports with serial numbers. i use the
    following code to generate the serial numbers using a formula
    column:
    function SNOFormula return Number is
    SNO NUMBER(5);
    begin
    SNO := :SNO + 1;
    RETURN(SNO);
    end;
    I am able to acheive the required output with the above code in
    the case of Normal Tablular reports. But in the case of Group by
    reports, the output goes as follows:
    for example:
    sno,groupno,empno
    1,g1,e1
    e2
    e3
    4,g2,e5
    e6
    Any way out?. pls help.
    Regards,
    Prabhu S

    create a summary column in the group . set the function to
    count. set the source to the group name. set the reset at value
    as report. create a field in the lay our editor left of the
    group field. set the source as the summary column. you will see
    the numbering.
    Ex :
    Query : Select * From Emp;
    Group Field : Deptno
    Summary Field : CS_Count
    Properties of Cs_Count - Function => Count
    Source => DEPTNO
    Reset At => Report
    Now create a field in the lay out editor left side of deptno
    field lets say "SEQ", set the source to Cs_Count.
    It will disply the serial number of the groups.

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

  • How to get item stock from bin location with serial numbers?

    Dear experts
    I want to write query for getting item stock from bin location with serial numbers..
    Thank you
    Santosh Dhere.

    Hi Santosh,
    Try this:
    SELECT T0.[ItemCode], T5.[DistNumber], T5.[MnfSerial], T5.[LotNumber], T3.[OnHandQty]
      , T1.[BinCode], T1.[WhsCode]
    FROM  [dbo].[OIBQ] T0
      INNER  JOIN [dbo].[OBIN] T1  ON  T0.[BinAbs] = T1.[AbsEntry]  AND  T0.[OnHandQty] <> 0
      LEFT OUTER JOIN [dbo].[OBBQ] T2  ON  T0.[BinAbs] = T2.[BinAbs]  AND  T0.[ItemCode] = T2.[ItemCode]  AND  T2.[OnHandQty] <> 0
      LEFT OUTER  JOIN [dbo].[OSBQ] T3  ON  T0.[BinAbs] = T3.[BinAbs]  AND  T0.[ItemCode] = T3.[ItemCode]  AND  T3.[OnHandQty] <> 0
      LEFT OUTER  JOIN [dbo].[OBTN] T4  ON  T2.[SnBMDAbs] = T4.[AbsEntry]  AND  T2.[ItemCode] = T4.[ItemCode]
      LEFT OUTER  JOIN [dbo].[OSRN] T5  ON  T3.[SnBMDAbs] = T5.[AbsEntry]  AND  T3.[ItemCode] = T5.[ItemCode]
    WHERE T1.[AbsEntry] >= (0)  AND  (T3.[AbsEntry] IS NOT NULL)
    UNION ALL
    SELECT T0.[ItemCode], T5.[DistNumber], T5.[MnfSerial], T5.[LotNumber], T0.[OnHandQty]
      , T1.[BinCode], T1.[WhsCode]
    FROM  [dbo].[OIBQ] T0
      INNER  JOIN [dbo].[OBIN] T1  ON  T0.[BinAbs] = T1.[AbsEntry]  AND  T0.[OnHandQty] <> 0
      LEFT OUTER  JOIN [dbo].[OBBQ] T2  ON  T0.[BinAbs] = T2.[BinAbs]  AND  T0.[ItemCode] = T2.[ItemCode]  AND  T2.[OnHandQty] <> 0
      LEFT OUTER  JOIN [dbo].[OSBQ] T3  ON  T0.[BinAbs] = T3.[BinAbs]  AND  T0.[ItemCode] = T3.[ItemCode]  AND  T3.[OnHandQty] <> 0
      LEFT OUTER  JOIN [dbo].[OBTN] T4  ON  T2.[SnBMDAbs] = T4.[AbsEntry]  AND  T2.[ItemCode] = T4.[ItemCode]
      LEFT OUTER  JOIN [dbo].[OSRN] T5  ON  T3.[SnBMDAbs] = T5.[AbsEntry]  AND  T3.[ItemCode] = T5.[ItemCode]
    WHERE T1.[AbsEntry] >= (0)  AND  (T2.[AbsEntry] IS NULL   AND  T3.[AbsEntry] IS NULL)
    UNION ALL
    SELECT T0.[ItemCode], T0.[SRNDistNumber], T0.[SRNMnfSerial], T0.[SRNLotNumber], T0.[IBQOnhandQty] - T0.[OnHandQty]
      , T0.[BinCode], T0.[WhsCode]
    FROM  (
      SELECT T0.[BinAbs], T0.[ItemCode], MAX(T0.[OnHandQty]) AS 'IBQOnhandQty', SUM(T2.[OnHandQty]) AS 'OnHandQty', N'' AS 'BTNDistNumber', N'' AS 'BTNMnfSerial'
      , N'' AS 'BTNLotNumber', N'' AS 'SRNDistNumber', N'' AS 'SRNMnfSerial', N'' AS 'SRNLotNumber', MIN(T5.[AbsEntry]) AS 'AbsEntry', MIN(T1.[BinCode]) AS 'BinCode'
      , 10000044 AS 'SnbType', MIN(T5.[AbsEntry]) AS 'BTNAbsEntry', MIN(T5.[AbsEntry]) AS 'SRNAbsEntry', MIN(T1.[WhsCode]) AS 'WhsCode', MIN(T1.[SL1Code]) AS 'SL1Code'
      , MIN(T1.[SL2Code]) AS 'SL2Code', MIN(T1.[SL3Code]) AS 'SL3Code', MIN(T1.[SL4Code]) AS 'SL4Code', MIN(T1.[SL1Abs]) AS 'SL1Abs'
      , MIN(T1.[SL2Abs]) AS 'SL2Abs', MIN(T1.[SL3Abs]) AS 'SL3Abs', MIN(T1.[SL4Abs]) AS 'SL4Abs'
      FROM  [dbo].[OIBQ] T0
      INNER  JOIN [dbo].[OBIN] T1  ON  T0.[BinAbs] = T1.[AbsEntry]  AND  T0.[OnHandQty] <> 0
      LEFT OUTER  JOIN [dbo].[OBBQ] T2  ON  T0.[BinAbs] = T2.[BinAbs]  AND  T0.[ItemCode] = T2.[ItemCode]  AND  T2.[OnHandQty] <> 0
      LEFT OUTER  JOIN [dbo].[OSBQ] T3  ON  T0.[BinAbs] = T3.[BinAbs]  AND  T0.[ItemCode] = T3.[ItemCode]  AND  T3.[OnHandQty] <> 0
      LEFT OUTER  JOIN [dbo].[OBTN] T4  ON  T2.[SnBMDAbs] = T4.[AbsEntry]  AND  T2.[ItemCode] = T4.[ItemCode]
      LEFT OUTER  JOIN [dbo].[OSRN] T5  ON  T3.[SnBMDAbs] = T5.[AbsEntry]  AND  T3.[ItemCode] = T5.[ItemCode]
      WHERE T1.[AbsEntry] >= (0 )  AND  (T2.[AbsEntry] IS NOT NULL)
      GROUP BY T0.[BinAbs], T0.[ItemCode]
      UNION ALL
      SELECT T0.[BinAbs], T0.[ItemCode], MAX(T0.[OnHandQty]) AS 'IBQOnhandQty', SUM(T3.[OnHandQty]) AS 'OnHandQty', N'' AS 'BTNDistNumber', N'' AS 'BTNMnfSerial'
      , N'' AS 'BTNLotNumber', N'' AS 'SRNDistNumber', N'' AS 'SRNMnfSerial', N'' AS 'SRNLotNumber', MIN(T4.[AbsEntry]) AS 'AbsEntry', MIN(T1.[BinCode]) AS 'BinCode'
      , 10000045 AS 'SnbType', MIN(T4.[AbsEntry]) AS 'BTNAbsEntry', MIN(T4.[AbsEntry]) AS 'SRNAbsEntry', MIN(T1.[WhsCode]) AS 'WhsCode', MIN(T1.[SL1Code]) AS 'SL1Code'
      , MIN(T1.[SL2Code]) AS 'SL2Code', MIN(T1.[SL3Code]) AS 'SL3Code', MIN(T1.[SL4Code]) AS 'SL4Code', MIN(T1.[SL1Abs]) AS 'SL1Abs'
      , MIN(T1.[SL2Abs]) AS 'SL2Abs', MIN(T1.[SL3Abs]) AS 'SL3Abs', MIN(T1.[SL4Abs]) AS 'SL4Abs'
      FROM  [dbo].[OIBQ] T0
      INNER  JOIN [dbo].[OBIN] T1  ON  T0.[BinAbs] = T1.[AbsEntry]  AND  T0.[OnHandQty] <> 0
      LEFT OUTER  JOIN [dbo].[OBBQ] T2  ON  T0.[BinAbs] = T2.[BinAbs]  AND  T0.[ItemCode] = T2.[ItemCode]  AND  T2.[OnHandQty] <> 0
      LEFT OUTER  JOIN [dbo].[OSBQ] T3  ON  T0.[BinAbs] = T3.[BinAbs]  AND  T0.[ItemCode] = T3.[ItemCode]  AND  T3.[OnHandQty] <> 0
      LEFT OUTER  JOIN [dbo].[OBTN] T4  ON  T2.[SnBMDAbs] = T4.[AbsEntry]  AND  T2.[ItemCode] = T4.[ItemCode]
      LEFT OUTER  JOIN [dbo].[OSRN] T5  ON  T3.[SnBMDAbs] = T5.[AbsEntry]  AND  T3.[ItemCode] = T5.[ItemCode]
      WHERE T1.[AbsEntry] >= (0 )  AND  (T3.[AbsEntry] IS NOT NULL)
      GROUP BY T0.[BinAbs], T0.[ItemCode]
      ) T0
    WHERE T0.[IBQOnhandQty] > T0.[OnHandQty]
    Regards,
    JC.

  • 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

  • How do I begin to find lost iPod.  I need instructions.  I have the boxx with serial numbers

    How do I find lost iPod.  I have the app installed on iPod and have the box with serial numbers.

    What To Do If Your iDevice or Computer Is Lost Or Stolen
    If your Mac, iPhone, iPod, iPod Touch, or iPad is lost or stolen what do you do? There are things you should do in advance - before you lose it or it's stolen - and some things to do after the fact. Here are some suggestions:
    Reporting a lost or stolen Apple product
    AT&T, Sprint, and Verizon can block stolen phones/tablets
    What-To-Do-When-Iphone-Is-Stolen
    Lost or Stolen iPhone? Here’s What to do.
    6 Ways to Track and Recover Your Lost/Stolen iPhone
    Find My iPhone
    It pays to be proactive by following the advice on using Find My Phone before you lose your device:
    Find My iPhone
    Setup your iDevice on MobileMe
    OS X Lion- About Find My Mac
    How To Set Up Free Find Your iPhone (Even on Unsupported Devices)
    Third-party solutions for computers:
    VUWER 1.5.4
    Sneaky ******* 0.2.0
    Undercover 4.7
    LoJack for Laptops Premium Mac
    STEM 2.1
    MacPhoneHome 3.5

  • Adobe Activation error I bought a used CS2 application with serial numbers: it loads fine and works, but I cannot activate it and it will run out in 26 days. I bought it on ebat for 40 dollars. I am willing to pay a royalty fee. In 2006, or so, I bought a

    Adobe Activation error I bought a used CS2 application with serial numbers: it loads fine and works, but I cannot activate it and it will run out in 26 days. I bought it on ebat for 40 dollars. I am willing to pay a royalty fee. In 2006, or so, I bought a student version of CS2 at the College bookstore legally and registered it and it is still running on my 2002 eMac, but my Mac cannot communicate with my wireless printer I just got. So I looked for a copy of CS2 to put on my second hand IBM PC.

    Error: Activation Server Unavailable | CS2, Acrobat 7, Audition 3

  • Creation of Recurring Inspection Lots with Serial numbers

    Hello,
    We have the following scenario at our client :
    <i>MIGO_GR</i> is used to create GR for materials with Serial number requirement. The serial numbers can be generated automatically or manually entered on the screen. At this point of time, the Shelf Life expiry date & Next Inspection date are calculated based upon the Production date. The Batch gets created with Next Inspection date, Inspection Lots are created and the Serial numbers are assigned by the system. The stock moves into QI.
    The stock is moved from Quality restricted to Unrestricted stock via <i>QA11</i>. The serial numbers are handled by the system or can be managed on screen.
    Transaction <i>QA07</i> (Deadline Monitoring of Batches) is used to create Recurring Inspection. QA07 gives error message IO304 that "<b>Only 0 serial numbers entered instead of 1</b>". The problem is that system doesn't pick up the corresponding serial numbers.
    OSS # <u>497845</u> mentions that Transaction QA07 can not handle serial number. The serial numbers are very critical to the business process.
    Has anyone come across this situation before ? Please suggest solution or workaround. I tried using BAdI "<b>INSPECTIONLOT_UPDATE</b>" & was able to create Inspection Lots with serial number assignment, also manipulated Batch to change the Next Inspection date. The problem is Material Movement (322) Document does NOT get created.
    Also tried implementing BAdI as per OSS # <u>608830</u> but doesn't give desired results.
    Any help is greatly appreciated.
    Best Regards,
    Homiar Kalwachwala.

    Hello all,
    Just wanted to bring this on top to be noticed.
    Would appreciate any help, suggestions...
    Regards,
    Homiar.

  • 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

  • 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

Maybe you are looking for

  • XML Bursting and attaching PDF file to self service page

    Hi All, We have developed custom report and implemented XML Bursting Program(not intended to send e-mails). If the output of the concurrent program is producing 100 output files, say 100 pdf HR letters, we need to attach each letters to individual em

  • How to send an email/sms in process chain

    Hi, I would like to send an email/SMS in a process chain with same key figures. I get the key figures from a query. But I need a program to send these key figures to email. Is there any programs to send an email like the transaction sbwp? Thanks in a

  • 'N' Step Workflow

    We are on an old EBP 3.0 but are looking at upgrading to SRM 5.0 later in the year.  We currently have a business process change in place which will require us to move to a multi step approval process where we could potentially have a requirement for

  • Communication between a desktop software and a webserver

    I have developed a desktop. i want this software to be a one user license software. The software is suppose to connect to a php webserver were it would obtain it access key before allowing the user to install on the system, so that not more than one

  • Embeding a SAP GUI based Report program into EP portal

    Hi experts,                   I need a help, Is their any way to integrate a GUI based report program into EP portal. If yes can some one post how is it possible to acheive this functionality?.