Item's onorder qty is negative.

hi experts,
I saw some items in my SBO have negative OnOrder quantities. i checked inventory status report and it also shows negative OnOrder quantity, but when I double click the row number to get the detailed information, there are no any quantities in OnOrder column. it's weird.
is this normal or abnormal? how to improve? Thanks....

Hi,
This except is take from the Support Self Help and Library which is located on main support page in the SMP for partners
https://websmp108.sap-ag.de/~sapidb/011000358700000622642008E
NCORRECT COMMITTED/ORDERED QUANTITY
Influence: DB Corruption
Symptoms
Customer might experience one or more of the following scenarios:
Open quantity in Sales order is incorrect
Negative / incorrect quantity in u2018Committedu2019 or u2018Orderedu2019 fields in Item Master Data
Wrong results given by MRP
Available quantity in Pick and Pack manager is incorrect
Cannot issue from WH as going under Minimum Inventory level due to Available quantity is wrong as a result of corrupted Committed / Ordered quantity
Sales / Purchase Analysis for orders give wrong figures
The Orders Balances on the BP Master Data could display negative / incorrect balance
The Open Items List report might show negative / incorrect amounts
The Inventory status report can show differences between the summary and the detailed report (when double-clicking on the row number)
Reason
Incorrect Committed / Ordered quantity of an item is an application error in SAP Business One. The application was fixed in patches.
What to check?
In order to identify affected records, please run the queries below:
Resolution
This is an application error in SAP Business One. The application was fixed in patches.
Please upgrade to the latest available patch and only then contact SAP Support in order to have the Customer data fixed.
Additional Reference Material
Please find more information and scenarios causing this issue in the following SAP notes:
Incorrect Committed / Ordered quantity when changing orders Note 999124
Missing link between base and target documents 1006339
Open items list of orders shows negative / incorrect amounts Note 1020017
Changing quantity of partial delivered Sales order causes incorrect open quantity Note 1027184
Restore Item Balances updates Drop Ship warehouse Note 1042833
Open Quantity in Purchase order after closing a row Note 1050749
Wrong Open Quantity when changing purchase order Note 1053665
Open items list of orders with negative / incorrect values Note 1056987
Incorrect Committed Quantity after Sales Order changes Note 1068929
Incorrect Committed Quantity when changing Sales Order header and row Note 1076849
Incorrect value after Production order updated via DI API Note 1085905
Incorrect Ordered quantity after Receipt from Production Note 1137673
Incorrect Committed quantity after Issue for Production Note 1232036
There are two queries you can run to check this issue:
QUERY 1----
CREATE TABLE temp_calc
(ItemCode nvarchar (20) NOT NULL,
WhsCode nvarchar (8) NOT NULL,
calc_committed numeric(19,6) NOT NULL,
calc_onorder numeric(19,6) NOT NULL,
DECLARE @count_commited numeric(19,6)
DECLARE @count_ordered numeric(19,6)
DECLARE @itemcode nvarchar(20)
DECLARE @whscode nvarchar(8)
DECLARE @buy_number numeric(19,6)
DECLARE @sale_number numeric(19,6)
--create and fill temporary table that holds all BOM ancestors
select i.code as itemcode, father as ancestor, quantity, warehouse
into ancestors
from itt1 i, oitt o
where i.father = o.code
and o.treetype = 'A'
while exists (select 1
                 from ancestors a INNER JOIN itt1 i
                 ON a.ancestor = i.code
                 INNER JOIN  oitt o
                 ON i.father = o.code
                 where not exists (select 1
                                        from ancestors b
                                        where b.itemcode =a.itemcode
                                        and b.ancestor = i.father
                                        and b.warehouse = i.warehouse
                and o.treetype = 'A'
begin
insert into ancestors
select a.itemcode, i.father, i.quantity*a.quantity, i.warehouse
from ancestors a INNER JOIN itt1 i
ON a.ancestor = i.code
where not exists (select 1
                      from ancestors b
                      where b.itemcode =a.itemcode
                      and b.ancestor = i.father
                      and b.warehouse = i.warehouse
end
declare MyCursor      CURSOR
for
select i.ItemCode,i.WhsCode, t.NumInBuy, t.NumInSale
From oitw i, owhs w, oitm t
where i.whscode = w.whscode
and i.itemcode = t.itemcode
and w.dropship <>'Y'
and t.invntitem <> 'N'
order by i.ItemCode,i.WhsCode, t.NumInBuy, t.NumInSale
Open MyCursor
Fetch next From MyCursor
Into @itemcode, @whscode, @buy_number, @sale_number
While ( @@Fetch_Status = 0)
Begin
set @count_commited = 0
set @count_ordered = 0
set @count_commited = 
          --Sales order for not BOMs and sons of Sales type BOMs
               ISNULL((select sum(openqty * (case when r.UseBaseUn = 'Y' then 1 else ISNULL ( @sale_number, 1) end))
               from rdr1 r, oitm t
               where r.itemcode = @itemcode
               and r.whscode = @whscode
               and r.linestatus = 'O'
               --and r.treetype in ('I', 'N')
               and r.itemcode=t.itemcode
               and t.treetype not in ('S','A')
               group by r.itemcode, r.whscode),0)
               --AR Reserved Invoice for not BOMs and sons of Sales type BOMs
               +ISNULL((select sum (i.openqty* (case when i.UseBaseUn = 'Y' then 1 else ISNULL ( @sale_number, 1) end))
               from inv1 i, oinv o, oitm t
               where i.itemcode = @itemcode
               and whscode = @whscode
               and i.docentry = o.docentry
               and o.updinvnt = 'C'--reserved invoice
               and i.openqty > 0
               and i.invntsttus = 'O'
               and i.itemcode=t.itemcode
               and t.treetype not in ('S','A')
               group by i.itemcode, i.whscode),0)
               --Sales order for Assembly type BOMs sons
               + ISNULL((select sum (comittedqty)
                          from (select sum(r.openqty/t.qauntity)*i.quantity
(case when r.UseBaseUn = 'Y' then 1 else ISNULL((select t.NumInSale
                                                                                               from oitm t
                                                                                               where r.itemcode = t.itemcode), 1)end) as comittedqty
                                   ,i.itemcode as itemcode
                                   from rdr1 r, ancestors i, oitt t
                                   where i.itemcode = @itemcode
                                   and case isnull(r.ChgAsmBoMW,'') when 'Y' then r.whscode else i.warehouse end = @whscode
                                   and r.itemcode = i.ancestor
                                   and linestatus = 'O'
                                   and t.code = r.itemcode
                                   and t.treetype = 'A'
                                   group by  i.quantity ,r.itemcode,r.whscode,i.itemcode,r.UseBaseUn) as t
                         group by t.itemcode), 0)
               --Reserve Invoice for Assembly type BOMs sons
               + ISNULL((select sum (comittedqty)
                         from (select sum(r.openqty/t.qauntity)*i.quantity
(case when r.UseBaseUn = 'Y' then 1 else ISNULL((select t.NumInSale
                                                                                               from oitm t
                                                                                               where r.itemcode = t.itemcode), 1)end) as comittedqty
                         ,i.itemcode as itemcode
                         from inv1 r, ancestors i, oinv o, oitt t
                         where i.itemcode = @itemcode
                         and case isnull(r.ChgAsmBoMW,'') when 'Y' then r.whscode else i.warehouse end = @whscode
                         and r.itemcode = i.ancestor
                         and r.docentry = o.docentry
                         and o.updinvnt = 'C'
                         and r.openqty > 0
                         and r.invntsttus = 'O'
                         and t.code = r.itemcode
                         and t.treetype = 'A'
                         group by  i.quantity ,r.itemcode,r.whscode,i.itemcode,r.UseBaseUn) as t
                    group by t.itemcode), 0)
               --Planned/Released Production orders (not Disassembly) for production    --type BOMs sons
               +  ISNULL ((select sum (comittedqty)
                              from      
                                   (select CASE
                                   WHEN isnull(w.issuedqty,0) > w.plannedqty THEN 0        
                                  ELSE w.plannedqty-isnull(w.issuedqty,0)
                                   END as comittedqty , w.itemcode as itemcode
                                   from owor o, wor1 w
                                   where o.docentry = w.docentry
                                   and o.status in ('P', 'R')
                                   and o.type <> 'D'
                                   and w.plannedqty >= 0
                                   and w.warehouse = @whscode
                                   and w.itemcode = @itemcode
                                   group by w.itemcode, w.docentry,w.linenum, w.issuedqty, w.plannedqty)as t
                              group by t.itemcode), 0)
               --Planned/Released Disassembly Production orders for production type
               --BOMs father
               +  ISNULL ((select sum (comittedqty)
                              from      
                                   (select CASE
                                   WHEN (o.cmpltqty+o.RjctQty) > o.plannedqty THEN 0        
                                  ELSE o.plannedqty-(o.cmpltqty+o.RjctQty)
                                   END as comittedqty , o.itemcode as itemcode
                                   from owor o
                                   where o.status in ('P', 'R')
                                   and o.type = 'D'
                                   and o.warehouse = @whscode
                                   and o.itemcode = @itemcode
                                   group by o.itemcode, o.docentry,o.cmpltqty , o.plannedqty,o.RjctQty)as t
                              group by t.itemcode), 0)
set @count_ordered =
               --Purchase order for not BOMs
               ISNULL((select sum(openqty * (case when r.UseBaseUn = 'Y' then 1 else ISNULL ( @buy_number, 1) end))
               from por1 r, oitm t
               where r.itemcode = @itemcode
               and r.whscode = @whscode
               and r.linestatus = 'O'
               and r.itemcode=t.itemcode
               and t.treetype not in ('S','A')
               group by r.itemcode, r.whscode),0)
               --AP Reserved Invoice for not BOMs
               + ISNULL((select sum (i.openqty* (case when i.UseBaseUn = 'Y' then 1 else ISNULL ( @buy_number, 1) end))
               from pch1 i, opch o, oitm t
               where i.itemcode = @itemcode
               and i.whscode = @whscode
               and i.docentry = o.docentry
               and o.updinvnt = 'O'
               and i.openqty > 0
               and i.invntsttus = 'O'
               and i.itemcode=t.itemcode
               and t.treetype not in ('S','A')
               group by i.itemcode, i.whscode),0)
               --Planned/Released Production orders (not Disassembly) for production
               --type BOMs (fathers)
               +  ISNULL ((select sum (orderedqty)
                              from      
                                   (select CASE
                                   WHEN (o.cmpltqty+o.RjctQty) > o.plannedqty THEN 0        
                                  ELSE o.plannedqty-(o.cmpltqty+o.RjctQty)
                                   END as orderedqty , o.itemcode as itemcode
                                   from owor o
                                   where o.status in ('P', 'R')
                                   and o.type <> 'D'
                                   and o.warehouse = @whscode
                                   and o.itemcode = @itemcode
                                   group by o.itemcode, o.docentry,o.cmpltqty , o.plannedqty,o.RjctQty)as t
                              group by t.itemcode), 0)
               --Planned/Released Disassembly Production orders for production type
               --BOMs sons
               + ISNULL ((select sum (orderedqty)
                              from      
                                   (select CASE
                                   WHEN isnull(w.issuedqty,0) > w.plannedqty THEN 0        
                                  ELSE w.plannedqty-isnull(w.issuedqty,0)
                                   END as orderedqty , w.itemcode as itemcode
                                   from owor o, wor1 w
                                   where o.docentry = w.docentry
                                   and o.status in ('P', 'R')
                                   and o.type = 'D'
                                   and w.warehouse = @whscode
                                   and w.itemcode = @itemcode
                                   group by w.itemcode, w.docentry,w.linenum, w.issuedqty, w.plannedqty)as t
                              group by t.itemcode), 0)
               --Planned/Released Production orders (not Disassembly) for production
               --type BOMs negative qty sons
               + ISNULL ((select sum (orderedqty)
                              from      
                                   (select (CASE
                                   WHEN isnull(w.issuedqty,0) < w.plannedqty THEN 0        
                                  ELSE abs(w.plannedqty-isnull(w.issuedqty,0))
                                   END) as orderedqty , w.itemcode as itemcode
                                   from owor o inner join wor1 w
                                   on o.docentry = w.docentry
                                   where o.status in ('P', 'R')
                                   and o.type  <> 'D'
                                   and w.plannedqty < 0
                                   and w.warehouse = @whscode
                                   and w.itemcode = @itemcode
                                   group by w.itemcode, w.docentry,w.linenum, w.issuedqty, w.plannedqty)as t
                              group by t.itemcode), 0)
Insert into temp_calc
select @itemcode, @whscode,@count_commited,@count_ordered
Fetch next From MyCursor
Into @itemcode, @whscode, @buy_number, @sale_number
End
Close MyCursor
select t.itemcode, t.whscode, t.calc_committed as IsCommited_calculation, o.IsCommited as IsCommited_system,
t.calc_onorder as OnOrder_calculation, o.OnOrder as OnOrder_system, o.onhand as OnHand_system, i.canceled ItemCanceled,
(select isnull(max(1),0) from aitm a where a.itemcode = t.itemcode and a.invntitem= 'N') invntItemStatus_changed
from temp_calc t, oitw o, oitm i
where t.itemcode = o.itemcode
and t.whscode = o.whscode
and t.itemcode = i.itemcode
--the line below can be marked as comment in order to see results for all items
and (calc_committed <> o.IsCommited or calc_onorder <> o.OnOrder)
drop table ancestors
drop table temp_calc
DEALLOCATE MyCursor        
QUERY 2----
SELECT DOCENTRY                               
FROM WOR1                                     
WHERE ISSUEDQTY IS NULL OR COMPTOTAL IS NULL 
I think you will need to contact SAP support, however an upgrade is recommened to prevent this from happening in the future, but SAP can correct the data.
Regards,
Paul

Similar Messages

  • Asset Creation in PR and PO and MIGO as a single Line item with "N" qty

    Hi All,
    In Purchase requestion ME51N
    Now we are creating "n" number of assets ( All are same item but "s.no" will vary) with "n" number of line item.
    Instead of this I have to enhance to create only one line item( For same item) with "n" quantity.
    for the ASSET account Assignment we have to create Asset(Temp no) for the each item/quantity(if the same item).
    as well as if they are going to create a PO with ref to PR they have to see all the "n" number of asset no.
    In MIGO creation for each asset we have to assign S.No and Asset Tag.
    How enhance the functionality in PR,PO and MIGO as well as in Invoice.
    Is it any User Exit/BADI is available for PR/POand MIGO to show all the "n" number of assets for a single line item.
    Kindly help me to give details to proceed further.
    Thanks in advance.
    sharma

    Hi Sharma,
    What i understand from your question is, you want to create a single line item in PR and PO. But the qty would be > 1.
    Each single qty would have its own asset number in account asssignment tab of item details of PR & PO.
    This is what you are expecting...Right???????????????
    Then this is possible with certain limitations.
    While creating PR, enter only one item with more qty.
    In item details section, in account assignment tab, on top left corner, there will be a button called Multiple account assignments.
    Click on it, then it looks like a table, where you can enter more than one line. (each line will have its own asset no)
    And choose option Distribute on qty basis for field Distribution.
    So that you can enter 1 qty for each line. ( Ex: if you created one line item in the item level with 10 qty, you need to maintain 10 line here, each qith 1 qty and diff asset no).
    The only limitation to this is, the GRN would be treated as non valueted. So when you make GRN there wwould not be any accounting doc. ( means no use of GR/IR clearing account as like normal for POs)
    when you prepare MIRO, all the assets will be capitalised and vendor credited.
    But in case if you receive partial invoice, then you have choose manually in MIRO. which asset is ot be capitalised.
    After entering the PO number in MIRO, there will be one line will be appeared with full qty. in the same line, move till the end of line, there you will have one button called Account assignments.
    Choose and go there, here you can choose which individual asset line to be considired.
    This will resolve your issue.
    Thanks,
    Srinu
    SRBORIGI_MULTIPLE ACCOUNT ASSIGNMENTS

  • Report on Open Items along with Qty & Value for LA confirmed items

    Hi,
    I would like to know a report of Open POs(No Goods receipt made) but LA confirmed Items along with Values(Amount)
    i.e
    List of confirmed,unsent items along with Values for plant wise or vendor wise or PO Number wise.
    Regards,
    Vengat

    Hi,
    Any other inputs?
    Our client's requirement is to know how many (Both Qty & Value) of items for the input LA confirmed(ASN received) but no GR Made
    Regards,
    Vengat

  • Merge of two same items with different Qty in po

    Hi Experts,
    Is it possible to merge two Same items with different Quantity into 1.
    For Eg:- 2 similar  items  with qty 2 & 3 must show 5 qty appearing once.Is it possible through Transnotification what should be the query.
    Mona

    Hi Mona,
    If you want to display a Purchase Order on screen summarized by item, set the "Summary Type"  to "By Item" (by default it is "No Summary"). The PO lines will then be summarized by item with total quantity for each item.
    If you want to display it on the printout then you need to modify the PLD. It is quite easy actually. You can use the Repetitive Area Footer to display the summary of each item and set all fields in the Repetitive Area to be not visible and set the height to minimum height.
    Cheers,
    Marini

  • Unable to delete PO line item if GR qty is different from IV qty

    Dear all,
    Please help me to check this issue. The PO line item purchased with 10pcs (quantity), and the goods receipt (GR) is 10pcs as well as the invoice verification for 10pcs. However, weeks later, they performed a movement type of 102 to cancel 2pcs back to vendor, but no subsequent movements follow up.
    Now, the user wanted to delete this line item in PO, but the system throw out an error message:
        "Quantity delivered differs from qty. invoiced (Function not possible)"
        Diagnosis: You have attempted to delete an item whose GR and IR quantities differ.
    Is there any work-around or solution of how to delete this PO line item?
    Thank you and appreciate for helps.
    Warm Regards,
    Edwin

    Dear both,
    Thanks for the prompt reply. This particular material is not applying the "GR-based IV" feature. This is why the user is able to cancel the goods receipt without the cancellation of invoice first.
    The reason why the user needs to delete the PO line item for this material is because they need to change the valuation class of the material which they suspect this is the cause. They have clear all the stocks quantity, clear all the relevant open quantity but left this PO line item. They wanted to delete the line item so that they can change the valuation class.
    Does it mean that it has to use credit memo to clear the quantity? This transaction was posted in 2007, what would be the impact to FI if I post credit memo in 2008?
    Thank you very much for your helps.
    Warm Regards,
    Edwin

  • IProcurement cart says item price cannot be a negative value

    Hi All,
    I'm trying to pass an XML shopping cart from supplier hosted site to oracle iProcurement. However, it keeps telling the buyer that the item price is negative (and it should not be ofcourse).
    I'm following the manul exactly and I'm sire the price is positive. Please see below.
    Can anyone help?
    Also i should mention that the cart content is URL-encoded when passed back to oracle i Procurement.
    <price>
         <currency>
              <![CDATA[USD]]>
         </currency>
         <unitprice>
              <![CDATA[9.99]]>
         </unitprice>
    </price>
    Thanks in advance
    chad

    Hi All,
    I'm trying to pass an XML shopping cart from supplier hosted site to oracle iProcurement. However, it keeps telling the buyer that the item price is negative (and it should not be ofcourse).
    I'm following the manul exactly and I'm sire the price is positive. Please see below.
    Can anyone help?
    Also i should mention that the cart content is URL-encoded when passed back to oracle i Procurement.
    <price>
         <currency>
              <![CDATA[USD]]>
         </currency>
         <unitprice>
              <![CDATA[9.99]]>
         </unitprice>
    </price>
    Thanks in advance
    chad

  • PO item received with qty but zero value

    Hi,
    I'm having a PO
    without material number,
    a/c assignment - M  
    Item has been received with qty and respectively value but when it returned (mov - 122) then only qty is appearing in PO history, No values.
    Is there is any specific reason?
    regards,

    Hello,
    Please note the description from the Overview for this SCN Space:
    Official SAP Help Portal Community. Find comments on SAP product documentation (such as SAP Application Help, also known as SAP Library), and read best practices shared by the community.
    Based on the above, I believe you posted your query into the incorrect SCN Space. Please use the Forum Finder for the New SCN document to find your product and post into that SCN Space.
    With best regards,
    Dominik
    SCN Moderator

  • Synched Item Prices are going to Negative Discount if differ from B1 Price

    Hi Everyone,
    I am currently manipulating prices on the Shopping Cart, so that they are not based on Price Lists.  The functionality inside of Web Tools is working great.  I am overriding the values at the appropriate places so it does not recalculate back, but whenever it synchs over to B1, it is incorrect.  For example, I have an item that is $33 inside of the Price List that the Business Partner is associated with, however I am selling it on the Web for $30.00.  It shows up in Web Tools as $30.00 and I get the OrderDetail Lines to show this value, when it synchs, it puts in the $33 and gives me the $3 as a discount.  In addition, there is no discount inside of Web Tools, however, if there is an item group discount applied in SAP, that value is in there, so if that item group got 5% it would show that and then again put the negative discount in the Order Total.  The synch guide says that it takes these values from Web Tools when synching, but this is not occurring.  Can anyone guide me in the right direction on this?  I don't want to write a custom synch to overwrite this information when it should be directly passed from Web Tools.  Please let me know as I have this case in a lot of situations.
    This is using Web Tools 2007 PL 04.
    Thank you!
    Kristen
    Edited by: Kristen Faison on Jan 31, 2008 4:30 PM

    Hi Shane,
    You nailed my problem exactly...  Pricing does not synch from Web Tools to B1 and that will not be changing.  (That is all I am talking about, this has nothing to do with B1 --> WT or hierarchies and expansions).
    I have an item inside of B1 that will need to manually change its price and the same rule will apply for the Web, I need to be able to manually change its price, but because the synch does not take place between WT and B1 on the Price, I get the wrong value passed over and an Order Discount for the difference.  Now, the funny thing is that I have another item that I do the same thing with (it has variable price), but this item is marked only as a Sales Item and that item's price synchs over from WT --> B1.  I have no idea why that is happening correctly and others are not.
    I believe that this is something that should be addressed.  This also ties into the Tax issue at the line item level as well.  If you can define prices and taxes inside of Web Tools those should absolutely be synched over to Business One and overwrite whatever values are in there.  I am not sure why that wouldn't change.  Does it make sense to let the prices of items and taxes to be overridden by B1 based on what is in B1 even though what is in B1 is not matching what is in Web Tools?  I am more confused on why we wouldn't be addressing this as a problem.  You can override prices manually inside of B1, so I would think you would want the same functionality inside of Web Tools.  Not to mention why would you want the order that comes over from WT to look differently inside of B1, which is what is happening and worse yet, why would you want all of the differences to come over in one lump field (Order Level Discounts).
    Hopefully my intention is clear here...  What I believe is the ideal situation is that the order should come over exactly as it is put into WT, nothing should be overridden from B1, not prices, not taxes, nothing.  Otherwise, it is not the same order.  Taxes makes it even worse too because now B1 has complete wrong Sales Tax reports.  I would love to discuss this further as each of my clients has a problem with this.  Only the most simple cases (where everyone is Tax exempt, or they only use simple price lists) does it work out properly and it all stems from allowing B1 to override the order.  I will pass this along to see if there is something that we can do.
    Thanks for the answer Shane and please let me know if what I am suggesting makes sense.
    Thanks,
    Kristen

  • ASCP is not picking Substitute Item if Primary Qty of that item available.

    Hi, We have requirement of using the component substitution functionality while releasing Manufacturing Jobs through ASCP. or Use Substitute Components e.g ITEM A & ITEM B.
    ASCP should use 75% of Item A & 25% of Item B for completion of a Manufacturing Jobs (Pls note that both items have different Item Codes)"
    We can use the component substitution setup, item B can be used without any shortage of item A, Or in other words we require a functionality to allocate the percentage of supplies to manufacturing Jobs, e.g. with a setup, the supply will be distributed to item A and B for 75% and 25% to Manufacturing jobs & when we drill down in each Job order, both items will be used as 75% and 25% respectively.
    Regards
    Umair

    Hi, thanks for your response, our requirement details are as follow
    We have 2 Products Named Product X & Product Z, there are 2 Items (ITEM A & ITEM B) of different manufacturer but can be used in both Products A & Product B,
    Case 1: we have to use 75% of Item A in Product X & 25% of Item B in Product Z.
    Case 2: we have to use 75% of Item B in Product Z & 25% of Item A in Product X
    Further pls guide how we can setup the BOM to have for each unit of end item -> 0.75 usage of item A and 0.25 usage of item B
    Regards
    Umair
    .

  • To Grey out the material , item catagory and qty for BOM items.

    Hi,
      I have situtation where we need to block the changes for the BOM sub items when change of sales document(VA02). Ultimately user should not be able to change the sub items of BOM in VA02.

    Hi Ramakrishna Garapati,
    You can gray off the BOM sub items ultimately this will enable who ever has this profile to use va02, they will not be able to do any changes, if required also. This will restrict everybody under this profiles. In case you need to do some change it does not allow.
    The best possible way is to restrict the user from Transaction VA02, and make it authorized Tcode, i.e. when required need to take the authorisation and do the necessary changes, this way it is tracked.
    We had similar kind of issue, now restricted from using VA02, once authorized you get different login/pwd, specially for that point of time. Once changes done your pwd expires.
    Regards,
    Harish.

  • Invoice output - item list with qty but prices summarized @ item type

    Hi SAP gurus
    Below is my client requirement.This is for invoice of service contract.Consider the example below and p;s guide me how to follow the proceess by possibility?
    Contract no :123
    Material 1 (type A)- Qty -1 - Monthly Support fee - 100$
    Material 2 (Type A)-Qty -3 - Monthly Support fee - 200$
    Material 1 (type B)-Qty -1 - Monthly Support fee - 500$
    Material 2 (Type B)-Qty -1 - Monthly Support fee - 600$
    Material 2 (Type c)-Qty -3 - Monthly Support fee - 900$
    Invoice should look like
    Contract : 123
    Material Type A
    Material 1 - Qty 1
    Material 2 - Qty 3
    Total support fee = (200*3+100)-700$
    Material Type B
    Material 1 - Qty 1
    Material 2 - Qty 1
    Total support fee = 1100$
    Material Type C
    Material 2 - Qty 3
    Total support fee = 2700$
    Net price of the contract: =27001100700 = ]4800$
    Appreciate quick respons.
    Thanks
    Banu

    Hi Banu
    First define 2 external material number for material 1 and material 2.
    In material master assign external material group to material 1 (type a,b,c,....) and for material 2 (type a ,b,c...)
    You can take help of your ABAPer in this issue.
    Now give your requirement to your ABAPer such that program will combine materials based on external material group.
    try and revert

  • Misc.Issue when onhand is Negative

    Hi,
    I am trying to do a Misc Issue on an Item whose available Qty is Negative. I am getting below error "Transaction Qty should be less then or equal to Available Qty" when i do it.
    I am doing the same transaction like mentioned above for another Item whose available qty is negative and i am able to perform Misc Issue.
    Please let me know is there any item Property that needs to be set so that item can be Transacted if Available qty is negative.
    Thanks.
    Edited by: 954506 on Apr 3, 2013 1:56 AM

    Ensure that there are no reservations or move order allocations....
    if they exists, you will not be able to reduce the inventory below 0.
    execute following two queries to verify the existence of reservation/move-order-allocations:
    select * from mtl_reservations where inventory_item_id = ... and organization_id = ...
    select * from mtl_material_transactions_temp where inventory_item_id = ... and organization_id = ... and transaction_status = 2
    thanks,
    Hrishi

  • Open Purchase Order Separation from item Order Qty

    Hi All,
    Kindly  suggest me how to separate open Purchase order from Item Order Qty.if i have 2 WH with different Order qty.in report it will be shown total order qty of both WH's.like
    Item            WH              Order Qty
    A                 01               100
    A                 02                 50
                      or
    A                 01                  0
    i need like this A--150   OR A--50(order qty).
    plz look into my query and suggest me how to do this.
    select distinct t3.CardName as SuplierName,t2.[ItemCode], t2.itemname,t2.[U_pperson]as PP,((SELECT sum(T4.[OnHand])FROM OITW T4 WHERE T2.[ItemCode] = T4.[ItemCode] AND  T4.[WhsCode] = '01')
    +(SELECT sum(T4.[OnHand]) FROM OITW T4 WHERE T2.[ItemCode] = T4.[ItemCode] AND  T4.[WhsCode] = 'EWH')) as Stock,t2.MinLevel as 'Min Bin',(((SELECT sum(T4.[OnHand]) FROM OITW T4 WHERE T2.[ItemCode] = T4.[ItemCode] AND  T4.[WhsCode] = '01')
    +(SELECT sum(T4.[OnHand]) FROM OITW T4 WHERE T2.[ItemCode] = T4.[ItemCode] AND  T4.[WhsCode] = 'EWH'))-t2.MinLevel) as balance,
    sum(t1.openqty)
    as OrderQty,
    t2.MaxLevel as 'Max Bin',(((SELECT  sum(T4.[OnHand]) FROM OITW T4 WHERE T2.[ItemCode] = T4.[ItemCode] AND  T4.[WhsCode] = '01')
    +(SELECT sum( T4.[OnHand]) FROM OITW T4 WHERE T2.[ItemCode] = T4.[ItemCode] AND  T4.[WhsCode] = 'EWH'))-t2.MaxLevel)as 'Balance II' from OPOR t0 inner join POR1 t1 on t0.DocEntry=t1.DocEntry inner join OITM t2 on t2.ItemCode=t1.ItemCode inner join ocrd t3 on t3.CardCode=t2.CardCode inner join OITW t4 on t4.ItemCode=t1.ItemCode and t4.WhsCode=t1.WhsCode   where t2.validFor='y' and  t2.[U_pperson]='p1' or t2.[U_pperson]='p2'  or t2.[U_pperson]='p3' group by t3.CardName,T4.[OnHand],t2.[ItemCode], t2.itemname,t2.[U_pperson],t2.MinLevel,t2.MaxLevel,t1.OpenQty
    Thanks&Regards,
    P.Pratap

    Hi,
    Try this:
    select distinct t3.CardName as SuplierName,t2.[ItemCode], t2.itemname,t2.[U_pperson]as PP,((SELECT sum(T4.[OnHand])FROM OITW T4 WHERE T2.[ItemCode] = T4.[ItemCode] AND  T4.[WhsCode] = '01')
    +(SELECT sum(T4.[OnHand]) FROM OITW T4 WHERE T2.[ItemCode] = T4.[ItemCode] AND  T4.[WhsCode] = 'EWH')) as Stock,t2.MinLevel as 'Min Bin',(((SELECT sum(T4.[OnHand]) FROM OITW T4 WHERE T2.[ItemCode] = T4.[ItemCode] AND  T4.[WhsCode] = '01')
    +(SELECT sum(T4.[OnHand]) FROM OITW T4 WHERE T2.[ItemCode] = T4.[ItemCode] AND  T4.[WhsCode] = 'EWH'))-t2.MinLevel) as balance,
    sum(t1.openqty)
    as OrderQty,
    t2.MaxLevel as 'Max Bin',(((SELECT  sum(T4.[OnHand]) FROM OITW T4 WHERE T2.[ItemCode] = T4.[ItemCode] AND  T4.[WhsCode] = '01')
    +(SELECT sum( T4.[OnHand]) FROM OITW T4 WHERE T2.[ItemCode] = T4.[ItemCode] AND  T4.[WhsCode] = 'EWH'))-t2.MaxLevel)as 'Balance II'
    from
    OPOR t0 inner join POR1 t1 on t0.DocEntry=t1.DocEntry inner join OITM t2 on t2.ItemCode=t1.ItemCode inner join ocrd t3 on t3.CardCode=t2.CardCode inner join OITW t4 on t4.ItemCode=t1.ItemCode and t4.WhsCode=t1.WhsCode   where t2.validFor='y' and  t2.[U_pperson]='p1' or t2.[U_pperson]='p2'  or t2.[U_pperson]='p3'
    group by t3.CardName,t2.[ItemCode], t2.itemname,t2.[U_pperson],t2.MinLevel,t2.MaxLevel
    Thanks & Regards,
    Nagarajan

  • Schedule line item link to delivery qty

    dear all,
    I used the function module RV_SCHEDULE_CHECK_DELIVERIES to find for a sales order all the shedule lines with the delivery qties.
    I faced to a problem to link schedule and delivery for this case :
    schedule item _______date ____________order. qty ___confirmed qty___deliver. qty
    1 ________________11.02.2009 ___________4  ___________4   ___________4
    2 ________________ 12.02.2009      __________7 ___________3 ___________3
    3 ________________15.02.2009 ___________7 ___________0  ___________ 0
    6 ________________16.02.2009 ___________0 ___________0   ___________4
    7 ________________16.02.2009 ___________0  ___________0   ___________7
    4 ________________20.02.2009 ___________9  ___________0  ___________ 0
    5 ________________21.02.2009 ___________9  ___________9   ___________ 0
    I need to keep only the delivered lines, how to remove only the "real" line with no confirmed qty or with no delivered qty.
    How to distinguish the line 3 and 4 because the 3 is delivered with line 7 but the line 4 is not delivered.
    Thanks for your quick answer .
    Véronique
    Edited by: veronique pinelli on Feb 13, 2009 11:22 AM

    Kindly share the solution so as this can be used in future,if any one faces same problem

  • To remove line items from invoice which have 0 qty.

    Dear Friends,
    Requirement: To remove line items from invoice which have 0 qty.
    For this I wrote the code in RV60AFZZ. It is very well happening, but when last line item comes it is failing.
    What I have written is " DELETE XVBRP WHERE FKIMG = '0' ." . This code is deleting all the line items with 0 qty except last line item.
    Actually, this exit works line item wise. Once the line item is appended, the code what I have written is working. For the last line item, record is not appended when this exit is triggerred, thats why last record is not deleted.
    The include where all line items are getting appended in XVBRP is LV60AB03. I modified this also. Same code I have written here to delete the records once it is appended. But after doing this the problem is - invoice is not getting created.
    Please help me in doing this so as to delete this last record also. I tried with other logics also, not able to track the last record.
    Please help me to resolve this problem.
    Thanks.

    Hi,
    Check user exit RV60AFZC.
    RV_INVOICE_DOCUMENT_ADD is the FM which is called to generate number for the invoice after all the line items have been added to vbrp structure. Add a break-point here and check.
    All the best.
    Regards,
    Amit

Maybe you are looking for