INDIRECT for more than 1000 Rows

Here's a puzzler!
Why does this not work for values at G6579 of more than 1000, i.e., for Cells below C1000.
=IF(G6579<=0,CHAR(32),INDIRECT("C"&G6579))
It works fine for all the rows above 6579 which find rows above C1000. The Cells in column C have values, but at Row 6579 and below, this formula generates "This formula contains an invalid reference".
Have I hit a limit on allowable INDIRECT argument values?
Dick

Dick Huitema wrote:
YVAN:
May you explain why you use CHAR(32) to define a string of one space ?
DICK:
I want the cell left blank; if there's a better way, I'm all ears. I might then be able to use the test you recommended (using LEN)... although I haven't needed one so far.
Further thoughts?
BARRY:
Previous thoughts, actually. Yvan, as he mentioned, had suggested using the empty string ( "" ) >instead of a space.
=IF(G6579<=0,"",INDIRECT("C"&1000))
Must have had your earplugs in at the time. ;-)</div>
Yup! And the sleep mask must have been on, too!
Sorry Yvan... I didn't quite understand what "empty string" meant and thought you were trying to suggest using LEN... which made no sense, of course.
An empty string is a string which contains nothing, the one defined by ""
=CHAR(32) defines a string of one space character, the one which is often created using =" "
In many tables, we need to take care of empty cells.
The true definition of an empty cell is a cell which contains nothind.
This status may be checked thanks to the function ISBLANK(theCell).
Alas, as there is no function allowing us to define the value of a cell to nothing (I'm desparately waiting for the function BLANK()) we have to use the canada dry blank cell.
My own choice is to set the content of the cell to the empty string ("") . You used the space (" ").
I described the way o check if a cell if "blank in the extended fashion"
LEN(of a true empty cell) is zero, because the length of nothing is nil.
LEN(of a cell containing "") is zero, because it's the definition of the empty string.
So, the single instruction LEN(theCell) give us the wanted informatioN
If you use the space string, the test is more complex. The one which I sdescribed was wrong because it didn't treated the case of a table using both empty strings and space strings.
It would be
=IF(OR(LEN(theCell)=0,theCell=" "),theCellIisEmpty,theCellIsNotEmpty)
Yvan KOENIG (VALLAURIS, France) lundi 12 juillet 2010 19:15:08

Similar Messages

  • Trouble with the SQL smt to :list tables having more than 1000 rows

    Please I trying to list only tables having more than 1000 rows, but the sql stmt below doesn't work, can someone gives me a tips
    select table_name from user_tables where table_name in ( select table_name from user_tables where rownum > 1000 ) : The result is no rows!
    But I know that I have at lest 50 tables having more than 1000 rows
    Thanks a lot for the help

    If your tables are reasonably analyzed, then you can simply query:
    SELECT table_name,
           num_rows
      FROM user_tables
    WHERE num_rows >= 1000This will give you quite a reasonable estimate.
    Otherwise you have to go for dynamic sql or use the data dictionary to help you generate suitable scripts ....

  • Update columns in Table A based on columns in Table B for more than 500K rows

    Guys,
    I need to update 9 columns in table A based on value from table B for for more than 500K rows.
    So what is best way to achieve this. I am thinking of writing a Procedure with cursor to update the rows of table A.
    When i googled about it, they say cursor will decrease the performance. So i have no clue how to go for this.
    Rough code which i though
    1) Procedure  with no parameter
    2) Will declare 9 variable to store value from cursor
    3) cursor will fetch row by row based on join condition between table a and table b
    4) i will pass column values from table B to variables
    5) will make an update statement for table A
    Please let me know if above method is correct or is there any other way to do this without using cursor.

    Guys,
    Below is the rough code i wrote as per my requirement. Does it look correct? As of now i dont have any platform to test it so any help with the below code is highly appreciated.  As i said i need to update more than 500K rows by matching Table
    A and Table B.  One more thing which i would like to add in below code, is to get log of all the rows that are in table B but not exist in table A.  Table A already has more than million data in it.
    Also not sure how the loop in below code willl run when @rowcount is become to zero?
    Please let me know if i need to consider performance related impact while running the script.
    GO
    SET SERVEROUTPUT ON
    CREATE PROCEDURE ONETIMEUPDATE
     DECLARE @cnt INT;
     SET @cnt = 1;
     DECLARE @MSG varchar(255);
     DECLARE @COUNT_VAR INT;
     SET @COUNT_VAR=0;
     WHILE @cnt > 0
        BEGIN
      Update TOP (50000) A
      Set A.Col1=B.Col1,
          A.COL2=B.COL2,
          A.COL3=B.COL3,
          A.COL4=B.COL4,
          A.COL5=B.COL5,
          A.COL6=B.COL6,
          A.COL7=B.COL7
      From TableA A
             Inner Join TableB B
             on A.ID = B.ID--ID
             WHERE A.Col1 <> B.Col1
                    OR A.Col2 <> B.Col2;
              SET @cnt = @@ROWCOUNT;
             IF @@ROWCOUNT=25000
               @COUNT_VAR=@COUNT_VAR + @@ROWCOUNT
               SELECT @MSG = CONVERT(varchar, @COUNT_VAR) + "Rows Updated" -- I WANT TO DISPLAY UPDATE after EVERY 25000 ROWS
              PRINT @MSG
      IF @@ROWCOUNT=0
         BEGIN    
               COMMIT
                       END
                    WAITFOR DELAY '00:00:01'  --wait for a second before the next update
                END;
     END;

  • Update the authorization object value for more than 1000 role

    I need to remove one of the activity value (06) from authorization object S_SCD0.
    I do a search and found out that there are more than 1000 roles which having the activity value = 06 for authorization object S_SCD0.
    However, I don't think I can create a SCAT script to update all these 1000 roles and I believe its going to be a very tedious if I am going to manually change it one-by-one. Hence, I am wondering is there any standard program/function which I can use to automate the above changes for all these 1000 over roles.
    Kindly advise.
    Thanks

    Direct update the table is the easiest way, but should be discourage for the obvious reason.
    Should take a step back, take a long term view, when you need to update 1000 roles, maybe a role redesign might be needed. For example, if you can change the role model to derive role model, once update to the parent role will take care of all the child role.
    Thanks,
    Lye

  • LSMW not creating session for more than 1000 records

    Hi all
    I am doing LSMW for equipment creation (IE01) using recording
    all are correct if i upload I have 2400 records to be uploaded,in the last step
    it showing "BDC_Insert,Transcation is invalid"
    If i upload for less then 1000 records like 950, its succefully creating
    sessions.
    PLease its very urgent, let me know
    Thanks in advance

    Hi Chandra,
    In filed mapping step END_OF_RECORD change the value of field g_cnt_transactions_group to value more than 5000. I think this value is less than 1000 for your case.
    at_first_transfer_record.           
    if g_cnt_transactions_group = 5000. 
      g_cnt_transactions_group = 0.     
      transfer_record.                  
    endif.                              
    If you are not able to see the END_OF_RECORD  in field mapping do the following steps:
    Extras menu-> Layout check all check boxes it will appear.
    Regards,
    Rajesh Sanapala.

  • Single invoice for more than 1000 Billing items

    Hi,
    We have below requirement:
    We are doing RRB (Resource Related billing). We create thousands of Debit memo request for the customer. Each Debit memo has atleast 9 items. that means  in total we have 9000 items to bill in single invoice. We know that there are SAP limitations of 999 items in Invoice (billing doc type ZF1 ).
    Is there any workaround that i still print all the line items in Single invoice. without disturbing below:
    1. FICO Posting
    2. Invoice Corrections/Cancellation/reversals
    3. Reporting.

    Hi Amit ,
    yes it is possible , as per the Note 36363,
    You need to insert the field PAOBJNR in the table TTYPV.
    Pls Ask your ABAPER to it then you need to test it by using more than 999 line Item in the Order .
    Regards
    Sundar

  • READ...BINARY SEARCH for more than 1 row.

    Hi,
    i have an internal table that contains several same entries. now i want to search the table with READ ... BINARY SEARCH ( or in another efficient way ) and get all those entries and not just one/the first one.
    how could i do that ? thanks in advance!

    hi leider,
    plz c the below sample code.
    loop at i_head into workarea.
    READ TABLE i_zvfx_gts008_itm INTO wa_zvfx_gts008_itm
                                     WITH KEY
                                     bukrs     = wa_zvfx_gts008_head-bukrs
                                  zzinvoice = wa_zvfx_gts008_head-zzinvoice
                                     BINARY SEARCH.
        IF sy-subrc EQ 0.
          LOOP AT i_zvfx_gts008_itm INTO wa_zvfx_gts008_itm FROM sy-tabix.
            IF ( wa_zvfx_gts008_itm-bukrs NE wa_zvfx_gts008_head-bukrs ) OR
          ( wa_zvfx_gts008_itm-zzinvoice NE wa_zvfx_gts008_head-zzinvoice ).
              EXIT.
            ENDIF.
    endloop.
    this is something like avoiding loop at where condition.
    plz reward points if found helpful.

  • Can columns be more than 1000 in a select query (oracle 11 g)

    I am getting this error: "ORA-01792: maximum number of columns in a table or view is 1000"
    I have a dynamic query where number of column can increase according to the user input.
    They can expect more than 1000 columns. Is it possible to fetch more than 1000 rows in a query?
    I appreciate all your help.
    Edited by: user10232912 on Apr 26, 2012 2:07 AM

    >
    They can expect more than 1000 columns.
    Then they are idiots. IMO.
    Open challenge. Show me an entity with a 1000 attributes and I will show you a flawed data
    model and a total lack of grasping fundamentals of implementing that into a relation database product like Oracle.I second that - as someone who once had to ETL a system which had a table with 35.000 fields - that's 35K.
    It was a system which made extensive use of arrays - and arrays of arrays of arrays...
    Paul...

  • More than 1000 Line items

    Hi
    User has done the billing for 1300  line items by using transaction code VF01. After completing that process there is a option TO release Accounting, when user select on that button system throwing an error "Maximum number of items in FI
    reached".
    We know that from FI side system will not allow more than 999 line items. Since we are using 4.7 version.
    Invoice have already send to the customer. So, How to solve this issue.
    Please provide me the solution as early as possible.
    Your help would really appreciated.
    Regards,
    Schilukuri

    Hi to everyone,
    My issue has been resolved.
    My requirement is User has done billing (VF01) for more than 1000 line items. After that he was doing that billing document to release to accounting. That time system was throwing an error message." Maximum number of items in FI
    reached"
    Solution:
    Use Transaction OBCY and give work area VBRK  and there you have to give Table name BSEG and give Field name whichever the fields you want to give to group the same line items.(Document may have some same line items).
    refer SAP Note:36353.
    Regards,
    Schilukuri

  • Vector or ArrayList  use for dropdown with more than 1000 entries

    Hi Friends
    I am having more than 1000 entries of different TimeZone's which i need to display in a dropdown list.
    i am not able to decide whether i need to use a Vector or Arraylist for storing these values.
    please let me know which one will be best suited to use in case the list entry is more than 1000 characters.
    waiting for a positive reply from your side.
    Thanks & Regards
    Vikeng

    A JComboBox can be constructed from a Vector (rather than any other sort of List) without having to implement your own ComboBoxModel. (JList is similar).
    I agree with kajbj - a control like this with a thousand entries is rather poor interface design. One exception might be if the entries are sorted in some way, and you "jump" to the appropriate place in the list as the user types.

  • Allow for more than ONE item in a single row?

    Allow for more than ONE item in a single row? I can't use this wonderful program unless I can get more than one field on a row (i.e. 1st name, mi, last name etc)

    Thanks for your feedback. This is something we definetely want to provide next year (can't say when yet).
    If others are interested in this feature please vote on it within the idea tab: http://forums.adobe.com/ideas/1046
    That helps us prioritize our work based on customer demand.
    Randy

  • What is the exception for finding more than one row?

    What is the exception if you do a select and get more than one row? no_data_found is the exception for not finding any, what is the exception for finding "too much". Thx

    Funnily enough there is a complete list of predefined exceptions in the documentation .
    Cheers, APC

  • TS2446 hi my apple id has been disable, as i has purchased more than 1000$ from app store and i have to update my apps and also i have planning to purchased more apps i will be appreciate if you activate my apple id. i am impatiently waiting for new iphon

    hi
    my apple id has been disable,
    as i has purchased more than 1000$ from app store and i have to update my apps and also i have planning to purchased more apps i will be appreciate if you activate my apple id.
    i am impatiently waiting for new iphone.
    i hope to buy many apps with this apple id and enjoy  them
    Viva Apple

    These are user-to-user forums, you are not talking to Apple here.
    Depending on why it's been disabled, you might be able to re-enable it via this page : http://appleid.apple.com
    Or you might need to contact Apple : http://www.apple.com/support/itunes/contact/ - click on Contact iTunes Store Support on the right-hand side of the page

  • ORA-24335 - cannot support more than 1000 columns - How to solve this?

    Hi,
    I got error message 'ORA-24335 - cannot support more than 1000 columns ' when i try to insert x no of rows for a table with following code:
    INSERT ALL
    INTO tableA Values ('A', 'B', 'C', 1, 2, 3)
    INTO tableA Values ('D', 'E', 'F', 4, 5, 6)
    INTO tableA Values ('G', 'H', 'I', 7, 8, 9)
    SELECT *
    FROM DUAL
    How to solve above?
    What does it really mean? It's not as easy as if my table has 10 columns than I can't insert more than 100 rows (1000 columns divided with 10 columns = maximun 100 rows to insert), or?
    Is there a better/more appropriate way to do insert many rows?
    Should I do my inserts with an OracleTransaction (My application is developed with C# and asp.net), as ~follows
    BEGIN
    INSERT INTO tableA Values ('A', 'B', 'C', 1, 2, 3)
    INSERT INTO tableA Values ('D', 'E', 'F', 4, 5, 6)
    INSERT INTO tableA Values ('G', 'H', 'I', 7, 8, 9)
    COMMIT
    END
    Thx in advance!
    Edited by: user8819407 on 2010-mar-07 15:40

    Hi,
    So how did you solve the problem? Can you please give an example?
    I have the same problem inserting over 1000 values into my Oracle DB. The table only has 51 columns but to speed up the insert command, I use bulk inserts via insert all command. I need to insert 100 rows at a time for a total of 5100 values.
    Example:
    SQLCmd = INSERT ALL INTO MYTABLE (VAL_ID,VAL_NAME,VAL_NUM,VAL_TIME,VAL_CMM,VAL_TIME1,VAL_TRIP,VAL_REMAINING,VAL_AGE,VAL_COUNT,VAL_RSTS,VAL_VOLT,VAL_RF,VAL_DC,VAL_HOPS,VAL_STATUS,VAL_ELAPSED,MODIFY_TIME) VALUES (?,?,?,TO_DATE(?,?),?,TO_DATE(?,?),?,?,?,?,?,?,?,?,?,?,?,SYSTIMESTAMP)
    INTO MYTABLE (VAL_ID,VAL_NAME,VAL_NUM,VAL_TIME,VAL_CMM,VAL_TIME1,VAL_TRIP,VAL_REMAINING,VAL_AGE,VAL_COUNT,VAL_RSTS,VAL_VOLT,VAL_RF,VAL_DC,VAL_HOPS,VAL_STATUS,VAL_ELAPSED,MODIFY_TIME) VALUES (?,?,?,TO_DATE(?,?),?,TO_DATE(?,?),?,?,?,?,?,?,?,?,?,?,?,SYSTIMESTAMP)
    INTO MYTABLE (VAL_ID,VAL_NAME,VAL_NUM,VAL_TIME,VAL_CMM,VAL_TIME1,VAL_TRIP,VAL_REMAINING,VAL_AGE,VAL_COUNT,VAL_RSTS,VAL_VOLT,VAL_RF,VAL_DC,VAL_HOPS,VAL_STATUS,VAL_ELAPSED,MODIFY_TIME) VALUES (?,?,?,TO_DATE(?,?),?,TO_DATE(?,?),?,?,?,?,?,?,?,?,?,?,?,SYSTIMESTAMP)
    INTO MYTABLE (VAL_ID,VAL_NAME,VAL_NUM,VAL_TIME,VAL_CMM,VAL_TIME1,VAL_TRIP,VAL_REMAINING,VAL_AGE,VAL_COUNT,VAL_RSTS,VAL_VOLT,VAL_RF,VAL_DC,VAL_HOPS,VAL_STATUS,VAL_ELAPSED,MODIFY_TIME) VALUES (?,?,?,TO_DATE(?,?),?,TO_DATE(?,?),?,?,?,?,?,?,?,?,?,?,?,SYSTIMESTAMP)
    SELECT 1 FROM DUAL
    SQLVals = 1 22C38299 80700334 04-19-2012 13:55:33 mm-dd-yyyy hh24:mi:ss MCC93000 04/19/2012 13:55:42 mm-dd-yyyy hh24:mi:ss 12 4 0.792191 23 1 0.00 -113.50 13.48 9 1 9
    1 36PR7038 8070EDC2 04-19-2012 12:24:35 mm-dd-yyyy hh24:mi:ss MCC60360 04/19/2012 12:24:41 mm-dd-yyyy hh24:mi:ss 7 4 0.757501 3 2 13.88 -114.80 14.06 5 1 6
    1 42C63512 8050166F 04-19-2012 16:02:50 mm-dd-yyyy hh24:mi:ss MCC52420 04/19/2012 16:02:57 mm-dd-yyyy hh24:mi:ss 10 4 0.778471 8 1 0.00 -122.30 13.05 8 1 7
    1 33MR3076 80803E75 04-19-2012 13:13:16 mm-dd-yyyy hh24:mi:ss MCC60330 04/19/2012 13:13:22 mm-dd-yyyy hh24:mi:ss 13 5 0.636721 28 3 0.00 -122.19 0.70 8 1 6
    Then I call: &DBInsert($sqlCmd, @sqlVals);
    This is the error I get: ORA-24335: cannot support more than 1000 columns.
    I need to insert about 879,500 rows (51 cols per row). The values I read from a text file in sets of about 48,000 and put them into a hash. I tried inserting one row at a time, but it takes too long, about 28 hrs! Then, I tried the bulk update with only 6 rows and the total time was about 25 minutes. Which is acceptable to us.
    Thanks!

  • Report with more than 500 rows

    I have a report with more than 500 rows and i donot know the total number of records returned from sql query before hand. Is there any way to dynamically set the MAX ROW COUNT in the report - layout and pagination.
    Thanks a lot
    Sudha

    Hi All,
    The main problem for the scenario is that....Say you first create a SQL query based report with setting the row per page 15 .Now after the region is displayed if u go through the report attributes of the page and change the no. of row per page and apply changes the same will not going to reflect in the report display page.
    For ur case just select the no. of page u want to show while creating SQL Query based report region say 1000 and after creating the region go to the report attributes -> Layout and Pagination -> Max Row Count : 9000 (say).
    I have solved the problem after creating 700 rows and the all rows displayed in the page fine........If u have further issue plz revert back to me.
    Thats solve ur problem i think.....
    Thanks n Regards,
    ROSY

Maybe you are looking for