Not Picking up one Index..!

hi,
I am Using Oracle 10g Version--10.2.0.1.0. I am getting one problem with this query what was the problem i don't understand it is not picking up one index which it is there in indexes. X_PCAT--P_CAT is the index and column from PARTY.
This is the Query..!
SELECT P_CODE , P_NAME, P_OB, P_CAT, P_SUB_CAT, P_BANK, P_PHONE1 || ' ' || P_PHONE2 || ' ' || P_PHONER, P_INTRO1, P_INTRO2, P_INTRO3
FROM SYSADM.PARTY WHERE ( P_CAT = 'DAHMEDABAD' ) AND
( P_OB != 0 OR
EXISTS ( SELECT DISTINCT CB_P_CODE FROM SYSADM.CASH_BOOK WHERE P_CODE = CB_P_CODE) OR
EXISTS ( SELECT DISTINCT B_PARTY FROM SYSADM.BILLS WHERE P_CODE = B_PARTY ) ) ORDER BY 4, 5, 1 ;
this is the Explain Plan for the above query..!
SELECT P_CODE , P_NAME, P_OB, P_CAT, P_SUB_CAT, P_BANK, P_PHONE1 || ' ' || P_PHONE2 || ' ' || P_PHONER, P_INTRO1, P_INTRO2, P_INTRO3
FROM SYSADM.PARTY WHERE ( P_CAT = 'DAHMEDABAD' ) AND
( P_OB != 0 OR
EXISTS ( SELECT DISTINCT CB_P_CODE FROM SYSADM.CASH_BOOK WHERE P_CODE = CB_P_CODE) OR
EXISTS ( SELECT DISTINCT B_PARTY FROM SYSADM.BILLS WHERE P_CODE = B_PARTY ) ) ORDER BY 4, 5, 1
call count cpu elapsed disk query current rows
Parse 1 0.00 0.00 0 0 0 0
Execute 1 0.00 0.00 0 0 0 0
Fetch 62 0.14 1.49 3150 12049 0 1237
total 64 0.14 1.50 3150 12049 0 1237
Misses in library cache during parse: 1
Optimizer mode: ALL_ROWS
Parsing user id: 58
Rows Row Source Operation
1237 SORT ORDER BY (cr=12049 pr=3150 pw=0 time=1495964 us)
1237 FILTER (cr=12049 pr=3150 pw=0 time=2962198 us)
2025 TABLE ACCESS FULL PARTY (cr=3527 pr=3150 pw=0 time=2004395 us)
1210 INDEX RANGE SCAN XCB_PARTY (cr=6077 pr=0 pw=0 time=28572 us)(object id 49459)
27 INDEX RANGE SCAN XB_PARTY (cr=2445 pr=0 pw=0 time=11430 us)(object id 49462)
So any wrong in this query.

An explain plan properly created using DBMS_XPLAN.DISPLAY would be immensely helpful.
So would knowing what index it is you think should be used by Oracle to do what?
One thing I can tell you is that the construct P_OB != 0 OR is not one likely to favor index usage unless almost every value in the column is 0 and Oracle's decision to not use an index is affecting you in what way? Is the query taking too long or are you just fixating on the incorrect thought that full table scans are always bad: They are not.
PS: Give serious consideration to patching to 10.2.0.3.

Similar Messages

  • CBO not picking correct indexes or doing Full Scans

    Database version - 10.2.0.4
    OS : Solaris 5.8
    Storage: SAN
    Application : PeopleSoft Financials
    DB size : 450 gb
    DB server : 12 CPU ( 900 Mghz each ), 36 GB RAM
    ASMM - sga_target_size = 5 gb
    Locally managed tablespaces - MANUAL
    - db_file_multiblock_read_count - not set explicitly in spfile ( implicitly defaulted to 128 )
    - other optimizer related parameters are set to default
    - system_statistics - CPUSPEEDNW=456.282722513089, IOSEEKTIM =10, IOTFRSPEED=4096     
    - dictionary object system stats were last gather in Nov 09
    - stats on schema objs are gathered every night using custom script, but I have to say there are some histograms on some tables which were gathered by PS admins
    begin
    dbms_stats.gather_schema_stats(
    ownname=> 'SCHEMANM' ,
    cascade=> DBMS_STATS.AUTO_CASCADE,
    estimate_percent=> DBMS_STATS.AUTO_SAMPLE_SIZE,
    degree=> 10,
    no_invalidate=> DBMS_STATS.AUTO_INVALIDATE,
    granularity=> 'AUTO',
    method_opt=> 'FOR ALL COLUMNS SIZE 1',
    options=> 'GATHER STALE');
    end;
    Details :
    We are experiencing erratic database performance. It was upgraded from 9i to 10g along with PS software upgrade. A job that runs on one day in 12 hrs(that is high in itself) would take more than 24 hrs another day.
    We have Test and Staging envs on other servers which do not have performance issues of production magnitude. The test, staging dbs are clones of prod, created by ftp'ing files from one location to another, not sure if that makes any difference but just pointing out.
    On Prod db some symptoms which baffle me are :
    1) sql executing for over 40 minutes, check the plan and it is using an "incorrect" index, idx1. Hint sql with "correct" index, idx2, and it runs in few seconds. result set <400 rows. Cost with hint with idx2 is HIGHER. This scenario is still understandable as CBO is likely to pick a lower cost.
    - But why is there so much discrepancy in cost and response time?
    - what is influencing the CBO to pick an index which is obviously not the fastest response time?
    2) sql plan shows FTS , execution time , runs forever . But a hint with index in this case shows the cost is LOWER and response time is in seconds, so why is CBO not even evaluating this index path? Because as I understand the CBO, it will always pick the lower cost plan.
    What is influencing the CBO. Is it system stats? or any other database parameter? or the hardware ? the large SGA?? histogram ?? Stats gathering?? is there is any known issue with DBMS_STATS.AUTO_SAMPLE_SIZE and cardinaility?
    Where should I put my focus?
    What am I looking for ?
    I do have Jonathan Lewis's Cost-Based Oracle Fundamentals which I have just started so perhaps I will be enlightened but while I read it, it would be of immense help to get some advice from forum gurus.
    At this time I am not posting any exec plan or code, but I can do so if required.
    Thanks,
    JC

    Picking up just a couple of points - the ones about: why can performance change so much from one day to the next, and how can the optimizer miss a plan which (when hinted) shows a lower cost.
    NOTE: These are only suggestions that may allow you to look at critical code and recognise the pattern of behaviour
    Performance change:
    You are using "gather stale" which means tables won't get new statistics is the volume of change since the last collection is "small". But peoplesoft tables can be big, so some tables may need a lot of data to change (which might take several days or weeks) before they get new stats. The 10g optimizer is able to compare the high-values stored with the predicate values supplied in queries, and decide that since the predicate is higher than the known highest value, it should scale down its estimates of data returned. After a few days when the stats haven't changed, the optimizer suddenly gets to the point where the estimated data size is much too small and the plan changes to something that you can see is bad. The typical example here is a date column that increases with time, and a query on "recent data" - the optimizer basically says: "you want 9th Feb - the high value says 28th Jan, there's virtually no data". Keeping date and sequence-based high-values up to date is important. (See dbms_stats.set_column_stats).
    Lower cost plans available:
    Sometimes this is a bug. Sometimes it's an unlucky side effect. When a query has a large number of tables in a single query block, the optimizer can only examine a limited subset of the possible join orders (for example, a 10-table join has over 3million join orders, and the default limit is 2,000 checked). Because of this limit, Oracle starts working through a few joins orders in a methodical manner, then does a "big jump" to a different set of join orders where it checks a few more join orders, then does another "big jump". It may be that it never gets to your nice plan with the lower cost because it doesn't have time. However, by putting in the hint, you may make some of the orders the optimizer would have examined drop out of the "methodical list" - so it examines a few more in one sequence, or possibly "jumps" to a different sequence that it would not othewise have reached. (I wrote a related blog item some time ago that might make this clearer, even though it's not about exactly the same phenomenon: http://jonathanlewis.wordpress.com/2006/11/03/table-order/ ).
    Your recent comment about dynamic sampling is correct, by the way - by default (which for your version is is level 2 as a system parameter) it will only apply for tables which don't have any statistics. It's only for higher levels, or when explicitly hinted for tables, that it can apply to tables with existing statistics.
    Regards
    Jonathan Lewis
    http://jonathanlewis.wordpress.com
    http://www.jlcomp.demon.co.uk
    "Science is more than a body of knowledge; it is a way of thinking"
    Carl Sagan
    To post code, statspack/AWR report, execution plans or trace files, start and end the section with the tag {noformat}{noformat} (lowercase, curly brackets, no spaces) so that the text appears in fixed format.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • Index not picked when bind parameter can be null?

    Hi,
    In my query i have a primary key say deptid and has an unique index defined.
    when i do a query as
    select * from dept where ((deptid = :pDeptId) or (:pDeptId is null))
    index is not picked up and a full table scan happens.
    Can one explain why?
    Thanks
    Manish

    Solomon Yakobson wrote:
    I purposely chose small table. Yes, optimizer calculated costs are such that FTS cost is same as combined cost of index fast scan + table access by rowid. And that is exactly what I am questioning. Set aside what you call "boundary" cases where rows are sparse enough (e.g. your example with lots of deleted rows) and similar scenarios (e.g. pctfree is very large, etc.) FTS is always less costly than index fast scan + table access by rowid by at least one IO. I understand, I am splitting hairs a bit since the difference is negligible, but still it is a sub-optimal plan.Solomon,
    and yes, in those circumstances you describe the FTS will be chosen, so what is your point? Your test case represents such an "odd" scenario (sparse, large pctfree, etc., less rows than blocks, a clustering factor of the index less than the number of blocks of the table), so what do you want to prove using this test case? It doesn't represent the "normal" circumstances where the FTS is less costly.
    In passing, the cost of the FTS and the combined operation are not the same in my default 10.2.0.4 database, the FTS is more expensive, as I've outlined previously.
    The reason: It takes at least 1 multi-block I/O request to read the 5 blocks of the table. The optimizer assumes that the time it takes to perform a multi-block read request is 26ms when using default NOWORKLOAD system statistics with 8KB default block size. It assumes further it takes 12ms to perform a single-block read request, so the cost (expressed in single-block reads) of performing a single multi-block read request is 2.16. Since Oracle 9i, there is a hidden parameter "_table_scan_cost_plus_one" set to "true", it used to be "false" in 8i, making the cost 3.16, so we end up with a rounded cost of 3 for the FTS.
    The cost of the combined index + table access is 2, one I/O for the index, plus one I/O for the table access. So from an optimizer perspective this plan is not sub-optimal, but the superior one, mainly due to the fact that one gets added to the table scan cost from 9i on, and you have the unusual clustering factor of 1.
    As you can see, it takes a lot of "boundary" conditions that this happens, and it's all down to the fact that the table is so small, that is has only 4 rows in 5 blocks, and the clustering factor of the index is less than the number of blocks of the table, which is quite unusual. A "optimal" clustering factor usually corresponds to the number of blocks of the table, a "bad" clustering factor corresponds to the number of rows.
    Therefore I suggested to "adjust" the clustering factor to a more usual value, but there is actually nothing usual about this test case since you have less rows than blocks.
    So I guess you can say whatever you want about this being a "sub-optimal" plan, but I really don't see the point it makes, given the flawed test case. Run it with a more reasonable setup and the FTS will be used in those cases where it is reasonable according to the inputs the CBO gets.
    Regards,
    Randolf
    Oracle related stuff blog:
    http://oracle-randolf.blogspot.com/
    SQLTools++ for Oracle (Open source Oracle GUI for Windows):
    http://www.sqltools-plusplus.org:7676/
    http://sourceforge.net/projects/sqlt-pp/

  • I reset network settings on my iPhone. However now it looks as if my iPhone and iPad are no longer linked. They are both connected to my apple account but when I send an imessage from one it is not picked up by the other. What do I do?

    I reset network settings on my iPhone. However now it looks as if my iPhone and iPad are no longer linked. They are both connected to my apple account but when I send an imessage from one it is not picked up by the other. What do I do? If anyone can help it would be very much appreciated. Many thanks x

    Check Settings > Messages > Send & Receive on both your iPhone and your iPad to make sure that the following are all true:
    (1) you have selected the same Apple ID on both devices,
    (2) you have the same entries checked under "You can be reached by iMessage at:" on both devices,
    (3) you have the same entry checked under "Start new conversations from:" on both devices,
    and
    (4) that the entry checked in #3 is one of those checked in #2 on both devices.
    When you say it has affected your iCloud account, what effect has it had?

  • Secondary Index Picked with one field short in select query

    Hi,
    We have a select query as follows
    select  single lgort       vgbel        vgpos
        into   (lips-lgort,lips-vgbel,lips-vgpos)
        from    lips
       where         vbeln          Eq p_zlcpp-vbeln
         and         matnr          Eq p_zlcpp-matnr
         and         charg          Eq p_zlcpp-charg
    The secondary index ZB has the fields as follows:
    MANDT     Client
    MATNR     Material Number
    CHARG     Batch Number
    BWART     Movement Type (Inventory Management)
    When seen in the trace it seems the select query picks this secondary index. Whether it is correct? since i find no BWART in the select query. Because of this index the query take large time. I used the Hint statement as follows:
    select  single lgort       vgbel        vgpos
        into   (lips-lgort,lips-vgbel,lips-vgpos)
        from    lips
       where         vbeln          Eq p_zlcpp-vbeln
         and         matnr          Eq p_zlcpp-matnr
         and         charg          Eq p_zlcpp-charg   %_HINTS ORACLE 'INDEX("LIPS" "LIPS~0")' .
    and it now works fast. Please advice the best way to make the select query work on itself without using the hint statement to pick the index LIPS~0 instead of the invalid secondary index ZB.
    Thanks & Regards,
    Selvakumar M.
    Edited by: Selva on Jun 17, 2011 7:35 PM

    Hello Selva,
    your problem here is the decision of the optimizer that does not exactly know the selectivity of the fields.
    If your deliveries are normally small (not too many items), then selecting via the document number will be relatively fast.
    And selecting via the material number + batch will be slow in case if many deliveries are having same product from the same batch delivered.
    I assume that the latest is the case in your system. That's why the selection with ZB index is slow.
    If the data distribution is as I described above, then your hint is quite OK and I advise you to stick to the hint.
    From my PoV this is the better solution rather changing the coding and throwing out MATNR field from the WHERE clause to filter later in ABAP.
    Another solution would be trying to play with histograms. But you'll need %SUBSTITUTE VALUES% or %SUBSTITUTE LITERALS% hint anyway, so I find your solution better.
    So, please stay with hint. Even SAP standard development does it for some select statements.
    Regards,
      Yuri

  • I list books on Amazon when on IE my condition notes were always saved & I could pick any one but when using firefox they not saved how can I fix this?

    I list books on Amazon when on IE my condition notes were always saved & I could pick any one but when using firefox they not saved how can I fix this?

    Clear the cache and the cookies from websites that cause problems.
    "Clear the Cache":
    *Firefox/Tools > Options > Advanced > Network > Cached Web Content: "Clear Now"
    "Remove Cookies" from sites causing problems:
    *Firefox/Tools > Options > Privacy > Cookies: "Show Cookies"
    Make sure that you aren't blocking cookies.
    *http://kb.mozillazine.org/Cookies
    *https://support.mozilla.org/kb/Deleting+cookies
    Start Firefox in <u>[[Safe Mode|Safe Mode]]</u> to check if one of the extensions (Firefox/Tools > Add-ons > Extensions) or if hardware acceleration is causing the problem (switch to the DEFAULT theme: Firefox/Tools > Add-ons > Appearance).
    *Do NOT click the Reset button on the Safe Mode start window or otherwise make changes.
    *https://support.mozilla.org/kb/Safe+Mode
    *https://support.mozilla.org/kb/Troubleshooting+extensions+and+themes

  • LogFileNotFoundException from one index but not another in DPL

    Hi folks,
    I have an entity type in the DPL called an Item. It has various secondary keys. When I try to use the "type" of the item to get all items of a particular type, I get a LogFileNotFoundException (the log file is clearly gone, and we have no processes that could delete them):
    EntityIndex index = itemByType.subIndex(type.ordinal());
    EntityCursor&lt;ItemImpl&gt; cur = index.entities();
    try {
        for(ItemImpl i : cur) {
            items.add(i);
    } finally {
        cur.close();
    }The exception occurs in the implicit hasNext in the for loop:
    Caused by: com.sleepycat.je.DatabaseException: (JE 3.3.75) fetchTarget of 0xf/0x6ccfd parent IN=80127 IN class=com.sleepycat.je.tree.DBIN lastFullVersion=0x21/0x61c37 parent.getDirty()=false state=0 com.sleepycat.je.log.LogFileNotFoundException: (JE 3.3.75) 0xf/0x6ccfd (JE 3.3.75) Couldn't open file /files/data/db/0000000f.jdb: /files/data/db/0000000f.jdb (No such file or directory)
         at com.sleepycat.je.tree.IN.fetchTarget(IN.java:1230)
         at com.sleepycat.je.dbi.CursorImpl.fetchCurrent(CursorImpl.java:2320)
         at com.sleepycat.je.dbi.CursorImpl.getCurrentAlreadyLatched(CursorImpl.java:1427)
         at com.sleepycat.je.dbi.CursorImpl.getNextDuplicate(CursorImpl.java:1745)
         at com.sleepycat.je.Cursor.retrieveNextAllowPhantoms(Cursor.java:2187)
         at com.sleepycat.je.Cursor.retrieveNext(Cursor.java:1991)
         at com.sleepycat.je.SecondaryCursor.retrieveNext(SecondaryCursor.java:1497)
         at com.sleepycat.je.SecondaryCursor.getNextDup(SecondaryCursor.java:676)
         at com.sleepycat.util.keyrange.RangeCursor.doGetNextDup(RangeCursor.java:907)
         at com.sleepycat.util.keyrange.RangeCursor.getNext(RangeCursor.java:445)
         at com.sleepycat.persist.BasicCursor.next(BasicCursor.java:81)
         at com.sleepycat.persist.BasicIterator.hasNext(BasicIterator.java:50)Curiously, if I get the same data by using a different index (one indexed by a type/time composite key), I don't hit any exceptions.
    Some possibly relevant data:
    This occurred shortly after upgrading from .69 to .75. I didn't deploy the update, but I'm told that it worked initially after the update, but then the service was restarted a second time a day or so later (for other unrelated changes) and this exception started to happen sometime after the second restart.
    Restarting the process doesn't seem to change anything.
    There are about 64K "items" in the database, and about 66K of other types.
    We have 15 other databases with the same schema but different data (and roughly the same amount of data as this one). They are all functioning fine, and have had roughly equal amount of load/churn on them as the corrupt database.
    The log file in question exists for most of our other databases, but is missing in a few (which I think should mean that it is reasonable to expect that it could have been "garbage collected" on the corrupt database).
    The database seems to be about 195MB so it is somewhat portable.
    So I have two questions:
    1) Is this likely to be a result of something that I did in my code? Obviously the snippet above didn't use a transaction explicitly, but most other code does, including any writes. (And my understanding is that an implicit transaction is used in that snippet if the DB is transactional otherwise)
    2) Assuming that the log file in question wasn't spuriously deleted by some log file gnome, is there any way that we can recover from this in general? This may be the wrong question, but is it possible to rebuild an index that thinks an old log file is still there?
    Thanks!
    Jeff

    Hello all,
    I'd like to let everyone know that the problem reported by Jeff is the result of a JE bug that was introduced in JE 3.3.62 and recently fixed in JE 3.3.76. JE 3.3.76 is not yet published, and we don't have a date doing that yet, but if would like a copy of it now, please send me email -- mark.hayes at the obvious (oracle) .com.
    Below is the change log entry for the bug. Although the bug occurs rarely, any app that configures duplicates (or a MANY_TO_XXX secondary key relationship) could be impacted. The result of the bug is data loss, and reverting to a backup is necessary.
    Change log entry:
    Fix a bug that caused LogFileNotFoundException in rare circumstances for an Environment having one or more Databases configured for duplicates (or one or more SecondaryIndexes with MANY_TO_XXX relationships). The bug only occurs when a single secondary/duplicate key value is associated with a large number of records/entities; specifically, the sub-Btree for a single duplicate key value must have at least 3 levels. SR #16712
    Thanks, Jeff, for your help on this.
    --mark                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • Photosmart 6520 all in one.does not pick up small photo paper

    New printer,it will print on a4 paper,but will not pick up small6x4,I have taken all other paper out,and tried shutting off and restarting it,I even cleaned the rollers as suggested,still no result,I have only had this three weeks,it did print one picture off when I first tried it,but not now,would be very happy if someone could resolve this for me.
    Regards
    Mr wilks

    Hello Mr. Wilks,
    I am sorry to read about the issue you are having with your new Photosmart 6520 not picking up 4x6 paper. I understand you have cleaned the rollers and that did not resolve the problem. I have researched this and have found a couple of documents that I recommend you look at to ensure all of the print settings are correct when printing on a 4x6 or any other size you wish to print on.
    I am unsure if you have a Windows or a Mac computer, therefore I will post 2 different links for you to look at depending on which operating system you have.
    Here is the document for troubleshooting on Windows: Printing Photos Saved on Your Windows Computer
    Here is the document for troubleshooting on a Mac: Print Photos Saved on Your Computer (Mac)
    I really hope this helps you, feel free to respond if there is anything else I can help with!
    Regards,
    R a i n b o w 7000I work on behalf of HP
    Click the “Kudos Thumbs Up" at the bottom of this post to say
    “Thanks” for helping!
    Click “Accept as Solution” if you feel my post solved your issue, it will help others find the solution!

  • One index not partitioned, but others are

    While researching some deadlock issues with one of our infocubes, we came across an index on the cube that is different than the others.  All of the indexes on this cube are partitioned except for one.  We have looked in several places to try to find a setting that would allow us to change this index to a partitioned index, however we cannot find anything.  The index name is BIC/FZUTCSALES~07, and I believe it is a BW created index that pertains to the 7th dimension.
    Is there a reason why one index would not be partitioned, while all the others are?  Does BW handle the index partitioning, or is this something we should do manually?  If BW handles it, how can we change this index so it is partitioned?
    Any help is appreciated.
    Michael Frank

    Check the SAP Note <a href="https://websmp103.sap-ag.de/~form/handler?_APP=01100107900000000342&_EVENT=REDIR&_NNUM=217397">217397</a> for more info on indexes for infocube. Also you can try fixing the indexes using RSRV and by performing the elementary test for Database-> Database Indices of an InfoCube and Its Aggregates.
    Please assign pts if helpful.

  • TS4065 wat if i have lost my iphone and the person delets my icloud ID and enters his own new one can i still look find the phone using Find my iphone using my earlier ID or will it not pick up my phone as he changed the Icloud ID which was associated to

    wat if i have lost my iphone and the person delets my icloud ID and enters his own new one can i still look find the phone using Find my iphone using my earlier ID or will it not pick up my phone as he changed the Icloud ID which was associated to me ID

    if someone deletes icloud or even if you wipe phone it is not traceable anymore.

  • Hp 7500 all in one - not picking up paper

    I have cleaned the paper rollers and it still won't feed paper through

    Hello meme4_2
    Thank you for the clarification. Are you having problems with the Automatic Document Feeder (ADF) or the regular tray?
    For the ADF I would suggest trying the ADF Does not Pick up Paper article.
    For the regular paper trays I would suggest trying the Out of Paper Error article. While you may not be getting that error the troubleshooting in that article may help resolve your issue.
    Don't forgot to say thanks by giving "Kudos" to those that help solve your problems.
    When a solution is found please mark the post that solves your issue.

  • Pricing not Picked up in Billing for one of the BOM items

    Hello SAPians,
    I have an issue.
    A Standard Charge Estimate was created from Service Order.
    Invoicing was done on the same day of the Standard charge Estimate.  The issue is
    There 3 Materials (BOM)-LUMF.   The price at
    10.  Service item    Rs  0.00    TAP-  (No price)
    20.  Service Item    Rs 184.00 TAD   (Priced)
    30.  Service item    Rs 266.00 TAD   (Priced)
    total order value Rs 450/.   Total Billing amount Rs 266.00 and NOT Rs 450/. 
    The error is item at 20 not picked pricing in Invoicing. Pricing analysis in Invoicing shows "Condition record exists, but has not been set"  Message 108.
    The possibility of User Manually deleting the Condition Type in Billing is reuled out.
    Your guidance and suggestions are appreciated
    Thanks in Advance

    Hi,
    Please read the below details of the message 108 and carry out new pricing in the invoice, this will solve your problem:
    Condition record exists, but has not been set
    This message tells you that the condition record exists, but has not been set in the document. If pricing was carried out again for the document item, then the condition would be set.
    There are different reasons for this:
    1. The condition was deleted manually in the item condition screen.
    2. The condition record was created later. Please note that order processing and pricing have buffer mechanisms. This means that a newly added condition record might only be found after order processing has been left completely and then started again.
    If the condition type is used for subsequent settlement (rebate), there may be subsequent updating of business volume (the agreement is is created retrospectively). The document conditions do not contain the condition record, as the condition record was not created when pricing was carried out. Updating of business volume is carried out using special functions for subsequent settlement.
    3. When an item was added, the condition record was accessed with key fields other than change time. This could lead to different results in the requirements check at the time of adding and the change time. This can occur when modifications are made.
    4. In billing (or when copying orders): Certain condition types were not determined in the source document (this is usually controlled by the pricing requirements). When creating the document, the document flow (TVCPF,TVCPA) is processed using a pricing type that does not redetermine these condition types, although they are supposed to be called via the requirements.
    Hrishikesh

  • ODS not picking one particular master data record

    Hi All,
    Problem is when we run a query on ODS,it is not displaying the one particular data records.Then we check the ods that particular record values are not available,but it is in master data tables.
    My question is what will be the reason for this.we are using Generic extraction.
    thanks

    Hi,
    Check for primary keys of master data tables and key fields of ODS . I think there should be mismatch which is why some records are getting overwritten.
    Also in the ods request check number of records transfered and number of records added.
    ODS key fields should be exactly same as Primary key of master data table otherwise there are chances of loosing data.
    Hope that helps.
    Regards
    Mr Kapadia
    Assigning points is the way to say thanks in SDN.

  • Net.Msmq Binding Not Picking Up Messages in Queue as soon as the application pool gets recycled

    Hi,
    We are trying to implement a wcf service that exposes a net.msmq endpoint.  We are running windows server 2008 R2/IIS 7.5 running on a DOMAIN mode.
    1. Our service is called service.svc and it is deployed under an application called Test in the default website (application pool running under network service)
    2. The url to reach the service webpage is http://machinename/Test/service.svc.
    3. We created a private queue called Test/service.svc and we configured permissions for network service to full control.
    Now, when the application pool is "alive" the service picks up the messages correctly, but as soon as the application pool gets recycled (because of timeout or any other reason), the service stops picking up the messages, that just sit in the queue until the service starts again by browsing to the service webpage (http://machinename/Test/service.svc)
    I know this is a popular question, but I already tried several solutions with no luck (for example, we triedhttp://keithelder.net/blog/archive/2009/06/03/fix-for-wcf-netmsmqbinding-not-picking-up-messages-in-queue.aspx,http://www.codewrecks.com/blog/index.php/2009/03/17/hosting-a-wcf-service-based-on-msmq-in-iis7/,http://social.msdn.microsoft.com/Forums/en-US/wcf/thread/a1df55c4-e642-442a-9057-f0aec278d10c/ and other ones)
    Any Help?
    If this post is helpful, please mark it as such
    Alessandro Cardoso
    MVP | Microsoft Heroes | MCT
    blog: http://itaustralia.spaces.live.com
    http://cardosoalessandro.spaces.live.com

    Hi Steven,
    I am Alessandro's colleague, I am working with him on these net.msmq issues. 
    Our configuration includes a transactional queue called Test/Service.svc (unauthenticated,
    we shut down all security for the moment...does it matter?) and these attributes on the service:
    [ServiceContract]
    public interface IService
    [OperationContract(IsOneWay=true)]
    void ProcessMyMessage(MyClass parameter);
    [ServiceBehavior(InstanceContextMode = InstanceContextMode.PerCall, TransactionIsolationLevel = IsolationLevel.Serializable, TransactionTimeout = "00:03:00")]
    public class Service: IService
    [OperationBehavior(TransactionScopeRequired = true, TransactionAutoComplete = true)]
    public void ProcessMyMessage(MyClass parameter)
    //Do some stuff here
    The service is hosted on IIS 7.5 under an application called Test (so that the full http address of the service is http://machine/Test/Service.svc).
    In the configuration (for both client and service) we specified None for the security mode, "true" value in durable and exactlyOnce
    The Net.msmq Listener Adapter windows service is running fine under the Network Service account (the same as our application pool)
    Is there something we are missing?
    Also, can you explain how a transaction not configured properly can create this behaviour? In my understanding the process of delivering a message happens in 3 steps (I remember a nice picture of this the Juval Lowy book):
    1) Transaction 1: client delivers message to local instance of msmq. The transaction rolls back if the message does not get delivered.
    2) Transaction 2: the local instance of msmq delivers the message to the remote (service) instance of msmq. The transaction rolls back if the message does not get delivered.
    3) Transaction 3: wcf activates my service which picks up the message and process it. The transaction rolls back if the service fails to pick up the message or does not complete the transaction (for example, because of an unhandled exception).
    The message gets delivered to the service machine successfully, so I am assuming that steps 1 and 2 are executed correctly. If my service was not configured to handle transaction properly, wcf should still activate it and do something with it. Or at least,
    if it doesn't get activated at all, this should be the case even when the application pool is well alive and awake, because it should be a configuration problem. Instead, the service works great if the appPool is alive and it never gets activated when the
    appPool is sleeping (absolute nothing in the .svclog trace file generated by the service). Am I saying something wrong?

  • Multi-column Index vs One index for each column

    Hello everyone,
    i have one table about 20 000 000 rows, some developers have to generate reports on it and i want to create indexes on this table.
    The table has 34 columns, no primary key, no unique keys.
    The "where..." clause of the reports usually use 8 columns but some reports uses 8 + some other columns.
    can any one help me on what kind of indexes do i have to create?
    1. one index for each column used in "where clause"
    2. one index for 8 columns and some other indexes for other used columns
    3. one index for all columns
    or something else etc...
    br flag

    i have one table about 20 000 000 rows, some developers have to generate reports on it and i want to create indexes on this table.
    The table has 34 columns, no primary key, no unique keys.
    The "where..." clause of the reports usually use 8 columns but some reports uses 8 + some other columns.
    can any one help me on what kind of indexes do i have to create?
    1. one index for each column used in "where clause"
    2. one index for 8 columns and some other indexes for other used columns
    3. one index for all columns
    or something else etc...What's the version of your data base? what kind of database you have, DWH or OTLP? The answer might depend on the type of database as far as bitmap indexes might suit or might not depending if you are runing DWH or OLTP kind of database
    Let me suppose that you are runing OLTP database and you have a where clause with 8 columns.
    1) are all those where clause equalities (where col1 = and col2 =) or there are inequalities?
    2) could you evaluate the most repetitive columns?
    3) could you know the column that could have the best clustering factor (the column which most follow a certain order in the table)
    Based on that I would suggest to create one b-tree index having 8 columns (even though that it seems for me to high) this index should follow the following points:
    1) put the most repetitive column at the leading edge (and compress the index if necessary)
    2) put the columns that are used in equalitity predicate first
    3) put the column having the best clustering factor first
    The most precise index you have the best access you could gain.
    Of course that you have to know that an index access is not always good and a FULL table scan is not always bad.
    Best regards
    Mohamed Houri
    www.hourim.wordpress.com

Maybe you are looking for

  • Using expression in Default Value for Parameter in BI Publisher Model

    Hi Everyone, I have created a BI publisher data model with bind parameters. It works fine, however, I need to put a default value in the parameter that is the result of a query. I have a month and a year parameter and for month parameter, I want the

  • I tunes only plays one song at a time

    just recently my itunes started playing only one song at a time. it stops playing after one song and does not go through the rest of the playlist. any ideas??

  • Clean-up the BW system before Upgrade

    Hi ,        We are planning to upgrade from 3.1 to 3.5 . We are planning to clean up the BW system before Upgrade. What are the clean up activities to be perform e.g clean up PSA , delete unused objects/queries etc. Please let me know if there is any

  • How do i reorganise my full disk

    I have a 250GB disc on my iMac but I also have a Terra Byte and a 500GB external drive. My files are not well organised and my iMac HD is nearly full. I would like to store my iPhoto library externally but it will not allow me to drag and drop it. Ca

  • First time dealing with Greenshift/Gamma problem in Quicktime/Safari

    I've been editing video on a Mac and in Final Cut Pro since version 2  (I am transitioning to Adobe Premiere Pro so don't judge )and this is the first time I've had a huge problem with a shift in color from what I see on the canvas to what is exporte