Limit Number for Rows in BW Query Result

Hello Experts,
    I am creating a query to be consumed by a web service. Therefore, I want to restrict the number of rows the query can display. Does anyone know a way to limit the result set to display only say FIRST 100 rows of data?
    I have looked at 'safety belt' solution, i.e. limiting number of cells to for example, 5000 cells. However, when the limit is exceeded the query just shows an error message not the first 5000 cells.
thanks,
Kartik

Hi,
You can do some things like..........
Do not display the data in a detailed level.
Use Always Suppress option in the result set.
Also it depends on your Query definition. If your rows contains Branch wise or Region Wise, then your report will be fit in your first level of output. You need not to drilldown further.
Why do you want to consider only first 1000 rows if you are planning to use it by Web service?
I don't know whether it is feasible or not. I have one more alternative for you. You can try to achieve by APD by the Query. Insert a ABAP routine which should consider first 1000 result rows for your Web service. Just throw a light on this idea..............
Regards,
Suman

Similar Messages

  • Conditionally display button based on number of rows in rpt query results?

    I know that I can conditionally display a button based on the number of rows returned in a query entered in the condition. However, I have a report region button that I only want to display if any data was returned by a report query. Since I've already executed the query to generate the report, I do not want to execute it again to determine whether any rows were returned. Is there any way to detect whether any rows were returned for a report other than to reissue the query?

    http://htmldb.oracle.com/pls/otn/f?p=24317:52
    OK, so it looks like it contains the rowcount of the report region rendered just before the variable (apex_application.g_flow_total_row_count) is referenced.
    Sort of like how SQL%ROWCOUNT contains the no. of records affected by the last SQL DML statement.
    Note that the pagination scheme affects the result. In the example above, the 2nd report region is showing 10 rows with a 'Rows X to Y' pagination scheme. So g_flow_total_row_count=11 because I guess the reporting engine has to fetch the 11th row (and discard it) to determine whether to render the 'Next' pagination link.
    If you select a pagination scheme that forces the reporting engine to fetch all the rows 'Rows X to Y of Z', g_flow_total_row_count will always be Z, not the number of rows actually rendered on the screen.
    Thanks

  • How do you limit the number of rows return from query?

    How do you limit the number of rows return from query? Do all databases support this kind of feature?

    i think the standard is limit
    to get the top 30
    select * from mytable LIMIT 30;returns the first 30 rows
    also if you want a range
    select * from mytable LIMIT 10,30;returns 30 rows starting from 10
    this last one is useful for displaying ranges... something similar happens in these forums when viewing topics and messages

  • Limit Number of Rows on a Page

    Hi all,
    I am unable to succeed with the following.
    I have an XML data source which looks like this:
    <?xml version="1.0"?>
    <LIST_GEMPLOYEES>
    <LIST_G_EMPLOYEE>
    <EMPLOYEE_NUMBER>1</EMPLOYEE_NUMBER>
    <EMPLOYEE_NAME>Employee 1</EMPLOYEE_NAME>
    </LIST_G_EMPLOYEE>
    <LIST_G_EMPLOYEE>
    <EMPLOYEE_NUMBER>2</EMPLOYEE_NUMBER>
    <EMPLOYEE_NAME>Employee 2</EMPLOYEE_NAME>
    </LIST_G_EMPLOYEE>
    <!-- many rows here (LIST_G_EMPLOYEE tags) -->
    </LIST_GEMPLOYEES>
    And I want to define a template which only allows 5 rows on a page.
    What I did:
    I should insert a page break after the limit number of rows on a page is reached. This means that, after each group of 5 rows, a page break should be inserted.
    To accomplish this goal, I followed these steps:
    1. Define a field which will contain and initialize the Counter variable before the table which will show the list of employees, by using the syntax:
    Field1: <?xdoxslt:set_variable($_XDOCTX, ’Counter’, 0)?>
    2. Define the table which list all employees in the data source:
    2.1. Use a 2 columns table. In the first column, define 2 fields as follows:
    2.2. In the second column, define 6 fields containing the following code:
    Field2: <?for-each: LIST_G_EMPLOYEE?>
    Field3: <?EMPLOYEE_NUMBER?>
    Field4: <?xdoxslt:set_variable($_XDOCTX, ’Counter’, xdoxslt: get_variable($_XDOCTX, ’Counter’) + 1)?>
    Field5: <?EMPLOYEE_NAME?>
    Field6: <?if: xdoxslt:get_variable($_XDOCTX, ’Counter’) mod 5=0?>
    Field7: <?split-by-page-break:?>
    Field8: <?end if?>
    Field9: <?end for-each?>
    Here is explanation for syntax I used:
    Field1: Declare and init Counter variable to value = 0
    Field2: This fetches through all employees - start a for-each cycle
    Field3: This prints the employee number
    Field4: This increments the Counter variable
    Field5: This prints the employee name
    Field6: This tests whether Counter variable is divided by 5
    Field7: This generates a page break
    Field8: End of condition
    Field9: End of for-each cycle
    Result:
    The first page has just the header and the second page has the header and only record and it goes the same
    for the rest of the pages. Any help is greatly appreciated.
    Thanks.

    Have a look at this post
    http://winrichman.blogspot.com/2008/09/limit-row-per-page.html

  • BEX analyzer -Maximum number of rows (65535) exceeded. Result is incomplete

    Hello Experts,
    I am trying to Run a report on BEx Analyzer.There are around 200,000 records to be displayed in the result.
    I am getting the below error.
    Maximum number of rows (65535) exceeded. Result is incomplete.
    Message no. BRAIN675
    We are on SAP GUI 7.X and Excel 2007
    Is there any setting that I have to change inorder for BEX analyzer to display all the 200,000 records.
    Also any memory setting for the result set to be changed ?
    Please let me know your thoughts
    Thanks
    Doodle

    Hi Doodle,
    The rows limit for Excel 2007 is 1 million so this is not the problem with row limitation. It seems like you have opened the pre-excel 2007 workbook in excel 2007, check your title bar if it says "Compatible Mode". This will limit you to old standard of 65K.
    May be what you can do is , save your file using save as option and try running the workbook.
    Your new file extension will be .xlsx
    Regards,
    Durgesh.
    Edited by: Durgesh Gandewar on Jul 14, 2011 10:03 AM

  • How can I get the number of rows in my sql result, without a loop?

    Hello,
    I've a problem, I would like to get the number of rows in my sql result without make a loop like :
    while (rs.next()){
    int number = rs.getRow();
    Is there any method to do this, on the first element?
    Thx, STeF

    If you want to count how many rows are in result set, I dont think you can, but you could always run a count statement for that sql
    say your sql is
    select field1, field2, field3
    from table1, table2
    where field4=field5 ......
    then you can count the rows this statement returns by
    select count(*) from
    (say your sql is
    select field1, field2, field3
    from table1, table2
    where field4=field5 ......)
    This way you will get the count for just that sql

  • Limit number for new field

    Hello there
    Anybody know what is the limit number for new field in each record type?
    My client wants me to create about 200 new fields in Account record type.
    Is it possible to do so?

    Hi, You can refer this
    https://secure-ausomxdsa.crmondemand.com/docs/1.10.0.1080.0.00/enu/help/CustomFieldHelp.html
    -- Venky CRMIT

  • Need to limit number of rows returned by a query

    Hi. Is there a way to limit the rowsets returned to me in a query? I need to get the first 100, then the next hundred, etc until there are no more rows left to retrieve. Someone told me that I should use a cursor to do this. Does anyone have a specific example? Can this be done with a combination of SQL/JDBC?
    Thanks in advance...bbetta
    null

    if you are talking about limiting the number of rows to be returned to the calling program to a managable number of rowa ...
    for example the result set size would be 5000 rows and you want to get them in batches of 50 or 100 ..
    see the attached link :
    JDBC Code Templates
    http://technet.oracle.com/sample_code/tech/java/sqlj_jdbc/htdocs/templates.htm#BatchSize
    if you want the server side transaction to only return the first 50 or 100 rows even though the result set has more ... then
    another approach is required -- possibly as suggested above ...

  • Limit nbr of rows in a query

    Dears,
    I found 2 solutions to limit the number of rows a query can return:
    - the first one is making use of a condition in the query itself based on RCOUNT
    - a second one is setting the parameter ResultRowLimit in the instanceconfig file.
    Now I was wondering how this works. Suppose that I want to limit my result set to the first 100 rows before retrieving the whole report.
    Making use of the condition it's clear...an extra where-clause is added that will limit the number of rows retrieve.
    But what with the ResultRowLimit parameter. Is the query retrieving all rows and only shows the first 100? Or is the execution of the query really restricted to the first 100 rows?
    Can anyone explain me once?
    Txs!!
    PS if someone knows another solution to limit the query result, just let me know ;-)
    Edited by: ADB on 6-jul-2009 8:07

    Try using Analytic function row_number().
    Regards
    RK

  • Limit number of rows from wildcard expansion- DRG-51030

    We use CONTEXT iindex in 11g to search on a text DB column, "Name".
    This is used in a UI to show autosuggest list of 25 matching names.
    When the end user types an 'a' we want to show a list of the first 25 names that contain an 'a'.
    We hit the issue of too many matches in the wildcard expansion query:
    DRG-51030: wildcard query expansion resulted in too many terms
    This is a frequent use case when the user types just 1 character ('a' will easily match over 50K names in our case).
    Is there a way to make the wildcard expansion query only return the first 25 rows?
    We never show more than 25 names in our UI - so we would like the expansion query to also return max of 25 rows.
    Our query is:
    SELECT ResEO.DISPLAY_NAME,
    ResEO.RESOURCE_ID,
    ResEO.EMAIL
    FROM RESOURCE_VL ResEO
    WHERE CONTAINS (ResEO.DISPLAY_NAME , '%' || :BindName || '%' )>0
    Also,
    Is there a way to use CTXCAT type of index and achieve this (expansion query limit of 25)?
    We are considering switching to CTXCAT index based on documentation that recommends this type of an index for better performance.

    Your best bet may be to look up the words directly in the $I token table.
    If your index is called NAME_INDEX you could do:
    select /* FIRST_ROWS(25) */ token_text from
      (  select token_text
         from dr$name_index$i  
         where token_text like 'A%' )
    where rownum < 26;That should be pretty quick.
    However, if you really want to do %A% - any word which has an A in it - it's not going to be so good, because this will prevent the index being used on the $I table - so it's going to do a full table scan. In this case you really need to think a bit harder about what you're trying to achieve and why. Does it really make any sense to return 25 names which happen to have an A in them? Why not wait until the user has typed a few more characters - 3 perhaps? Or use my technique for one or two letters, then switch over to yours at three characters (or more).
    A couple of notes:
    - Officially, accessing the $I table is not supported, in that it could change in some future version, though it's pretty unlikely.
    - I trust you're using the SUBSTRING_INDEX option if you're doing double truncated searches - a wild card at the beginning and end. If not, your performance is going to be pretty poor.

  • Wish to find out number of rows returned from query

    hi,
    is it possible to determine how many rows have been returned after a query has been executed?
    thank you.

    It doesn't seem like there is a method to do it for you, [...]There can't be such a method that's guaranteed to work for all databases. Many databases just hand you a cursor with the query results, and you have to walk the cursor to find the complete set. It's even possible for the DB to continue computing the query in the background and just give you a cursor to walk and consume what it has already generated.
    So no, you have to walk the result set (effectively pulling everything over to the client) to count the number of rows..

  • Limit no of rows in complex query

    Hi,
    I have below cursor query for which I need to limit no of rows retrieved to a certain value say 5000.
    I'm getting full table scan on table ltc_iss_rec if I do not specify a range
    for ltc_iss_rec.
    Thq query purpose get ref nos whose lc expiry date is less than or equal to
    sysdate -15.
    The max query below is also giving higher cost .
    Question si how to limit rows in cursor without using a range for ltc_iss_rec_id.
    The primary key in ltc_iss_rec is (ltc_iss_rec_id,psd_serial_num)
    Index in ltc_iss_rec is (ltc_iss_rec_id,lc_expr_dt)
    The primary key in psd is (psd_id,psd_serial_no)
    primary key in psd_link is (psd_id,psd_serial_no,link_psd_id,link_psd_ser_no)
    Index in psd_link is (link_psd_id,link_psd_ser_no)
    Index on psd_lcs is (update_serial_no)
    primary key on (psd_lcs) is (psd_id,psd_serial_no,other columns)
    SELECT MIN(ltc_iss_rec_id)
    INTO l_min_ltc_iss_rec_id
    FROM ltc_iss_rec
    WHERE lc_expr_dt <= ADD_MONTHS(SYSDATE,-15);
    SELECT MAX(ltc_iss_rec_id)
    INTO l_max_ltc_iss_rec_id
    FROM
    SELECT ltc_iss_rec_id
    FROM ltc_iss_rec
    WHERE ltc_iss_rec_id >= l_min_ltc_iss_rec_id
    ORDER BY ltc_iss_rec_id
    WHERE ROWNUM < l_iwh_arch_cnt;
    OPEN txn_ref_cur FOR
    SELECT b.ltc_iss_rec_id,b.psd_serial_num,a.sys_id,a.cosmos_ref_no,
    a.src_sys_asgn_ref_no,a.bank_id,b.lc_expr_dt
    FROM psd a,ltc_iss_rec b
    WHERE b.ltc_iss_rec_id >= l_min_ltc_iss_rec_id
    AND b.ltc_iss_rec_id <= l_max_ltc_iss_rec_id
    -- and b.lc_expr_dt <= add_months(sysdate,-15)
    AND a.psd_id = b.ltc_iss_rec_id
    AND a.psd_serial_no = b.psd_serial_num
    AND a.psd_typ_cod = 'ISS'
    AND a.psd_serial_no =
    SELECT NVL(MAX(link_psd_ser_no),'000') FROM psd_link c,psd_lcs d
    WHERE c.psd_id = d.psd_id
    AND c.psd_serial_no = d.psd_serial_num
    AND c.link_psd_id = a.psd_id
    AND c.link_psd_id BETWEEN l_min_ltc_iss_rec_id AND l_max_ltc_iss_rec_id
    AND d.update_serial_num = (
    SELECT MAX(f.update_serial_num) FROM psd_link e, psd_lcs f
    WHERE e.psd_id = f.psd_id
    AND e.psd_serial_no = f.psd_serial_num
    AND e.link_psd_id = a.psd_id
    ORDER BY b.ltc_iss_rec_id;

    Try using Analytic function row_number().
    Regards
    RK

  • Limit number of rows returned in Toad

    Hi,
    I use toad to query a database, in fact, its a data warehouse and each time my query returns a huge number of rows and I have to wait for quite some time. Is there a way of getting only a few rows at a time. I mean, I want to see the complete data returned by in a piecemeal manner, say it fetches me the first 30 rows and I keep seeing this data while it keeps getting the next 30.
    Any suggestions?
    Thanks in advance,
    Rajesh

    The first query will give you a random set of 100 rows from your table. There is no such thing as the "first 100 rows" without an order by in the inner query. The secons query will return nothing.
    SQL> SELECT * FROM (
      2  SELECT indv_id FROM indv_t)
      3* WHERE rownum > 100 and rownum < 200;
    no rows selectedA close approximation of this query that does return rows is:
    SQL> SELECT * FROM (
      2  SELECT indv_id,rownum rn FROM indv_t)
      3* WHERE rn > 100 and rn < 200;
    INDV_ID           RN
    1040             101
    1057             102
    1073             103
    2055             197
    2063             198
    2071             199
    99 rows selected.The only correct, repeatable, efficient way to page data is something like:
    SELECT * FROM
       SELECT *, rownum rn FROM
          your query here WITH AN ORDER BY
       WHERE rn <= :max_value
    WHERE rn >= :min_valueOracle will not guarantee that the same query will return the rows in the same order for every execution without an ORDER BY clause. There are dozens of factors that can influence the query path chosen by the optimizer, and therefore the order of the rows returned. As the optimizer gets more complex (and smarter?), and Oracle adds new acces paths, I xan only assume that the number of factors influencing the access path will continue to grow.
    In short, if you want to talk about first and last rows, you need to sort them first.
    TTFn
    John

  • Styling report rows using the query result

    Hello, is it possible to style a row in a report using the values returned by the underlying sql query?
    For example, if my query returns a column called ROW_CLASS I would like to use the placeholder #ROW_CLASS# to style the row, e.g. specifying the row class.
    Apparently such row attributes are not available to the apex developer. For each single column value I can set the "Tabular Form Attributes" and "Column Formatting", but I cannot set anything on the whole row.
    In other words I can style the TDs but not the TRs.
    I think this is clearly a "missing feature" that should be there, single the APEX engine that turns the query result into the HTML that displays the table can already access the column values via their placeholders. It would be sufficient to add some "row attributes" or "row class" field in the report.
    It could be used for lots of useful things, in my particular case, highlighting rows that contain errors.
    Also there is no way to perform that operation in CSS (e.g. get the TRs which contain at least one TD of class "ROWERROR"). I know it could be done in JS, but that's very messy for such a simple declarative problem.

    GChierico wrote:
    Hello, is it possible to style a row in a report using the values returned by the underlying sql query? Yes, for standard reports, using custom report templates: +{thread:id=2493917}+
    Interactive reports require the use of Dynamic Actions/jQuery.

  • How to limit number of rows(pagination) in the bam report?

    Is there anyway i can limit the number of rows in a report in BAM 10.1.3.4 ?

    In BAM 11g
    There is a property ElementsCountLimit which is configurd in BAMServerConfig.xml
    The number of change lists that are cached before rewriting the cache file.
    The default value is 50. When the 51st change list is received, it is cached by replacing the 1st change list.
    Default: 50

Maybe you are looking for