Table cell is longer than 176 cm in smartforms

Hi all,
While printing the smart form  output it is giving
error : single table cell is longer than 176 cm
I found the problem , one of the table field is getting more records
Those records are not fitting in the screen  , what I will do?
I referred note #690836 in this I found this solution ..
u201Cif the text is really longer than 176 centimeters, it cannot be output in a table row. In this case, you must switch to a normal text output in a loop before outputting the table.u201D
How can I switch to normal text output ,can any one give clear idea  about this
Inside main table i find one loop condition which is printing more data..

the problem is the length is so huge it will probably not fit on a single page...
anyway the smarter way to solve it would be to split the contents of your field into another internal table and put the records of this internal table in different rows of your table
I guess your field is of string type, then you can use function module SO_STRING_TO_TAB to get your contents into SOLI format then it will be easier to output it

Similar Messages

  • How to create a table cell occupy more than one row using PDF.

    Hi,
    I want create a pdf report,which contains a table cell occupied more than one line.
    just like html language: <rowspan = 2>
    merge cells in one row is allowed,we can use merge cells command(like colspan in html).
    but how to mege cells in one column?

    Hi,
    I want create a pdf report,which contains a table cell occupied more than one line.
    just like html language: <rowspan = 2>
    merge cells in one row is allowed,we can use merge cells command(like colspan in html).
    but how to mege cells in one column?

  • Table cell with more than one component

    how can i make table cell with more than one component
    like below, cell in column 3 contains few button
    col0 | col1 | col2 |
    a | b |[btn1] [btn2] [btn3]|
    a | b |[btn1] [btn2] |
    and when i click on the any of the button a dialog box pop up saying something..

    Here's link to someone who did a lot with tables. Not sure about multiple buttons, but it should get you started.
    http://www2.gol.com/users/tame/swing/examples/SwingExamples.html

  • How to keep the focus in a table cell as long as it is invalid?

    Hello,
    if you run the following code and enter some alphabetic characters in the Integer column,
    you can't get out of the cell as long as focus transfer is within the table. But if you click in the textfield,
    the cell is left invalid. (If you click in the textfield immediately after the false edit, the cell even doesn't
    show the red border)
    I tried to attach a focusListener to the table, but that makes editing the table impossible.
    I also could attach a focusListener to each and every other component of the form,
    and checking the table there in focusGained - but that looks rather awkward.
    How would you proceed?
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import javax.swing.table.*;
    public class InvalidInput extends JFrame {
      public InvalidInput() {
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        setLayout(new FlowLayout());
        setSize(200, 200);
        setTitle("InvalidInput");
        final String HEADER[] = {"Integer", "String"};
        DefaultTableModel dtm= createTableModel(HEADER);
        dtm.addRow(new Object[] {new Integer(100), "Item 1"});
        dtm.addRow(new Object[] {new Integer(200), "Item 2"});
        final JTable table= new JTable(dtm);
        table.addFocusListener(new FocusAdapter() {
          public void focusLost(FocusEvent e) {
         System.out.println(table.isEditing());
         if (table.isEditing()) {
           boolean b= table.getCellEditor().stopCellEditing();
           System.out.println(b);
    //       if (!b) table.requestFocusInWindow();
    //       if (!b) table.changeSelection(table.getEditingRow(),
    //                         table.getEditingColumn(), false, false);
           if (!b) {
             DefaultCellEditor editor= (DefaultCellEditor)table.getCellEditor();
             editor.getComponent().requestFocusInWindow();
        JScrollPane scrollPane = new JScrollPane(table);
        scrollPane.setPreferredSize(new Dimension(195,55));
        add(scrollPane);
        JTextField tf= new JTextField(10);
        add(tf);
        setVisible(true);
      public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {
          public void run() {
         new InvalidInput();
      private DefaultTableModel createTableModel(Object[] columnNames) {
        DefaultTableModel tblModel= new DefaultTableModel(columnNames, 0) {
          public Class getColumnClass(int column) {
         return getValueAt(0, column)==null ? Object.class :
                                   getValueAt(0, column).getClass();
        return tblModel;
    }Edited by: Jörg on 04.03.2012 14:52
    A big improvement is to apply
    table.putClientProperty("terminateEditOnFocusLost", Boolean.TRUE);for this at least reverts the erroneous input to the last valid value.
    Still I would prefer either to inform the user of this reversion or to red-border the erroneous cell;
    for sometimes the [OK] button is at the bottom of a long form and putting one's eyes there for
    clicking, one doesn't necessarily notice the reversion which happens at the top.

    Thanks to both of you!
    @Jeanette
    In my real application I use a JFormattedTextField as editor. Checking my overridden stopCellEditing() method I become aware that the contents of JFormattedTextField (getText() or super.getCellEditorValue()) arrives there already reverted. Thus it's no wonder that I cannot return false.
    simply removes the editor on column resizingYikes! - Fortunately the table in question is not resizable.
    SwingX has a NumberEditorExHow would you proceed if you didn't know that class and were looking for it? I still don't manage to navigate successfully on java.net.
    @Walter
    Never thought of this. Seeing that someone is checking for me (red border), I'd rather lazily let him continue doing the job. But a DocumentListener looks like being a way out.

  • Can a Table Cell span more than one page?

    I'm working with tables in Pages to create a list of literature and important takeaways from each article. Sometimes the important information is more than I can fit on one page. However, Pages doesn't seem to be able to handle splitting cells across multiple pages. Instead, it seems to "push" the overflow text beyond the page, so I can't even see it as I'm typing.
    In Word, such situations just cause the table cell to continue on to the next page. But I can't figure out how to do that in Pages. (And I'm a little concerned that there's not a way to handle this.)
    Thanks!
    Gary

    The cell in question does split across 2 pages. "Do I need to" do that isn't really the point.
    My question was whether Pages can handle splitting a table cell across 2 pages.
    Pages can't; Word can.
    (I'm trying to switch over for all of my future work into Pages, so there's a learning curve for me. The type of work I'm doing does have cells that split over 2 pages. In Word, it's not a big deal. Unfortunately, in Pages, I need to split the row in order to do the same thing. Which is kind of a pain, since I'm building the table dynamically and may insert rows above, below or between existing rows. In Word, it automatically handles moving the cells across multiple pages - or merging them back if I edit the text or insert/remove rows above.)

  • How can a table cell span more than one page?

    I need to configure a table of text that permits a single cell containing a large quantity of text to automatically span several pages. This works easily in WORD but not (apparently) in PAGES. I have used the Inspector to check that the table is configured to "Automatically resize to fit content", and that text also wraps in the cells. However, when text entered into a cell reaches the bottom of the page it disappears from view, even though more text can still be added to thst cell. Thus, the contents of the cell do not automatically flow into view on the next page (as automatically does happen in Microsoft Word). The "Pages08 User Manual", page 177, makes no reference to this facility. Neither does the video tutorial on Pages tables. Furthermore, I can find nothing in the "Template Chooser" that I can adapt to my needs. I very much doubt that this is a real limitation in Pages software - so what I am doing wrong?

    Thanks, Peter. Okay, I have tried this but without too much success.
    I set up a landscape, two column page and imported the Russian text. That resulted in 13 pages of Russian text, in both left and right columns. I then added the English at the end of the Russian and now have 26 pages in total. Then, as you suggest, I inserted a Column Break after the Russian. This forced the English to begin afresh on page 14.
    Now I need to find a way of keeping all the Russian text in the left column of all the 26 pages so that I can have the corresponding English translation adjacent in the right column (for all pages 1 - 26). I have explored your suggestion of Layout Breaks but think I have either misunderstood you, or I am doing something fundamentally wrong!
    Okay, so now I need to be a little more specific to help you visualize the problem. On my page 1, left column, I have three paragraphs of Russian. Para 4 begins close to the bottom of the left column and flows, as expected into the right-hand column of page 1. Now, if I insert a Layout Break at the end of para 3, I find paras 1-3 are uniformly shared across both the left and right columns. Para 4 stays in the left column, and understandably has moved up somewhat, but para 5, following correctly below para 4 in the left column now flows into the right column, following on from the end of para 3. There are no visual breaks, so now my page 1 left column reads paras 1, 2, first part of 3, then 4 and first part of 5, while the right column now shows the second part of para 3 and the the second part of para 5. This is confusing to understand and confusing to read. This is no good at all.
    Inserting a Section Break after para 3 results in para 4 beginning in the left column of page 2 and the whole of the right column of page 1 remains blank. It also seems that that right column is now rendered inaccessible and so I will not be able to put the English of paras 1- 3 into it so that they are adjacent to the Russian paras 1-3 in the left column of page 1.
    Inserting a Page Break instead of a Section Break produces the same effect.
    In conclusion, I am still stumped. To keep all the Russian in the left column of all 26 pages, I would need to insert a page break at the end of every page .... but then there would seem to be no way to insert the English into the corresponding right-hand columns, beginning of course on page 1. I am surprised that such a fundamentally useful word-processing facility is so complex (or perhaps impossible) in Pages.
    Thanks, again, Peter. I have to say that you have been more helpful and informed than any others that have tussled with me over this difficulty.

  • Can a table cell be split across pages?

    If I have a table, several rows, and one of the cells is longer than a page, can it be split between pages? I have not  yet found a way to do it. Surely, it can be done.
    Richard

    You have CS5? Make your page size twice the height for that page, then cut page in Acrobat later.
    You would also have to add a manual page number to the 'second' page and restart page numbering...
    Not pretty, but it may suit your needs...

  • Restricting data in the table cell

    Hi,
    I want to know how to restrict the data entereed in the table cell not more than 10 characters. How can i handle this.

    You need to supply your own cell editor instead of using the default one. Create a subclass of JTextField that consumes the keyPressed event when the text length is 10 characters, and call:
    theTableColumn.setCellEditor(new DefaultCellEditor(theTextField));

  • How can I make a table cell extend beyond the page?  The text disappears when the cell becomes larger than the page.

    How can I make a table cell extend beyond a page?  The text disappears when the cell becomes bigger than the page.  I want the table to continue to the next page.

    As a student, you might be able to get Office for Mac from the college bookstore at a substantial discount. Otherwise, I think your best option for documents that need to be shared with Office users is to get one of the free Office clones such as LibreOffice.

  • Runtime error:ABAP program lines are longer than the internal table

    Hi all,
    Below is the code I have written,when Iam running it Iam getting
    'ABAP program lines are longer than the internal table' runtime error.How can I resolve it.
    REPORT  ZTEST1  NO STANDARD PAGE HEADING LINE-SIZE 255.
    TABLES:MARC,CDHDR,CDPOS.
    TYPE-POOLS:SLIS.
    DATA:HEADER TYPE SLIS_T_FIELDCAT_ALV,
         WA TYPE SLIS_FIELDCAT_ALV,
         LAYOUT TYPE SLIS_LAYOUT_ALV.
    TYPES:BEGIN OF MARC_TY,
            MATNR LIKE MARC-MATNR,
            WERKS LIKE MARC-WERKS,
            EKGRP LIKE MARC-EKGRP,
            MINBE LIKE MARC-MINBE,
            EISBE LIKE MARC-EISBE,
            MABST LIKE MARC-MABST,
           END OF MARC_TY.
    TYPES:BEGIN OF MATNR1_TY,
            MATNR1 LIKE CDHDR-OBJECTID,
          END OF MATNR1_TY.
    TYPES:BEGIN OF CDHDR_TY,
             OBJECTCLAS LIKE CDHDR-OBJECTCLAS,
             OBJECTID   LIKE CDHDR-OBJECTID,
             CHANGENR   LIKE CDHDR-CHANGENR,
             USERNAME   LIKE CDHDR-USERNAME,
             UDATE      LIKE CDHDR-UDATE,
            END OF CDHDR_TY.
    TYPES:BEGIN OF CDPOS_TY,
             OBJECTCLAS LIKE CDPOS-OBJECTCLAS,
             OBJECTID   LIKE CDPOS-OBJECTID,
             CHANGENR   LIKE CDPOS-CHANGENR,
             TABNAME    LIKE CDPOS-TABNAME,
             FNAME      LIKE CDPOS-FNAME,
             CHNGIND    LIKE CDPOS-CHNGIND,
             VALUE_NEW  LIKE CDPOS-VALUE_NEW,
             VALUE_OLD  LIKE CDPOS-VALUE_OLD,
            END OF CDPOS_TY.
    **************TABLE TYPES********************************************
    TYPES: MARC_TAB   TYPE TABLE OF MARC_TY,
           MATNR1_TAB TYPE TABLE OF MATNR1_TY,
           CDHDR_TAB  TYPE TABLE OF CDHDR_TY,
           CDPOS_TAB  TYPE TABLE OF CDPOS_TY.
    *******************INTERNAL TABLES************************************
    DATA:MARC_ITAB   TYPE MARC_TAB,
         MATNR1_ITAB TYPE MATNR1_TAB,
         CDHDR_ITAB  TYPE CDHDR_TAB,
         CDPOS_ITAB  TYPE CDPOS_TAB.
    ****************WORK AREAS********************************************
    DATA:MARC_WA   TYPE MARC_TY,
         MATNR1_WA TYPE MATNR1_TY,
         CDHDR_WA  TYPE CDHDR_TY,
         CDPOS_WA  TYPE CDPOS_TY.
    *******************SELECTION-SCREEN***********************************
    SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-000.
      PARAMETERS:PLANT LIKE MARC-WERKS.
      SELECT-OPTIONS:MATERIAL FOR MARC-MATNR.
      SELECT-OPTIONS:DATE FOR CDHDR-UDATE.
    SELECTION-SCREEN END OF BLOCK B1.
    START-OF-SELECTION.
    SELECT MATNR
            WERKS
            EKGRP
            MINBE
            EISBE
            MABST
            FROM MARC INTO TABLE MARC_ITAB
            WHERE MATNR IN MATERIAL
            AND WERKS = PLANT.
      CHECK MARC_ITAB[] IS NOT INITIAL.
      LOOP AT MARC_ITAB INTO MARC_WA.
       MATNR1_WA-MATNR1 = MARC_WA-MATNR.
       APPEND MATNR1_WA TO MATNR1_ITAB.
       CLEAR MATNR1_WA.
    ENDLOOP.
    CHECK MATNR1_ITAB[] IS NOT INITIAL.
    SELECT OBJECTCLAS
            OBJECTID
            CHANGENR
            USERNAME
            UDATE
            FROM CDHDR INTO TABLE CDHDR_ITAB
            FOR ALL ENTRIES IN MATNR1_ITAB
            WHERE OBJECTCLAS = 'MATERIAL'
            AND OBJECTID = MATNR1_ITAB-MATNR1
            AND UDATE IN DATE.
    CHECK CDHDR_ITAB[] IS NOT INITIAL.
    SORT CDHDR_ITAB[]  DESCENDING BY OBJECTID  CHANGENR.
    DELETE ADJACENT DUPLICATES FROM CDHDR_ITAB[] COMPARING OBJECTID.
    SELECT OBJECTCLAS
           OBJECTID
           CHANGENR
           TABNAME
           FNAME
           CHNGIND
           VALUE_NEW
           VALUE_OLD
           FROM CDPOS INTO CORRESPONDING FIELDS OF TABLE CDPOS_ITAB
           FOR ALL ENTRIES IN CDHDR_ITAB
           WHERE OBJECTCLAS = CDHDR_ITAB-OBJECTCLAS
           AND OBJECTID = CDHDR_ITAB-OBJECTID
           AND CHANGENR = CDHDR_ITAB-CHANGENR
           AND TABNAME  = 'MARC'
           AND FNAME    IN ('MINBE','EISBE','MABST','LVORM')
           AND CHNGIND  = 'U'.
    CHECK CDPOS_ITAB[] IS NOT INITIAL.
    *LOOP AT CDPOS_ITAB INTO CDPOS_WA.
    WRITE: / CDPOS_WA-OBJECTCLAS,
             CDPOS_WA-OBJECTID,
             CDPOS_WA-CHANGENR,
             CDPOS_WA-TABNAME,
             CDPOS_WA-FNAME,
             CDPOS_WA-CHNGIND,
             CDPOS_WA-VALUE_NEW,
             CDPOS_WA-VALUE_OLD.
    *ENDLOOP.
    WA-SELTEXT_L = 'OBJECTCLAS'.
    WA-COL_POS   = '1'.
    WA-FIELDNAME = 'OBJECTCLAS'.
    WA-TABNAME   = 'CDPOS_ITAB'.
    WA-OUTPUTLEN = '15'.
    APPEND WA TO HEADER.
    CLEAR WA.
    WA-SELTEXT_L = 'OBJECTID'.
    WA-COL_POS   = '2'.
    WA-FIELDNAME = 'OBJECTID'.
    WA-TABNAME   = 'CDPOS_ITAB'.
    WA-OUTPUTLEN = '20'.
    APPEND WA TO HEADER.
    CLEAR WA.
    WA-SELTEXT_L = 'CHANGENR'.
    WA-COL_POS   = '3'.
    WA-FIELDNAME = 'CHANGENR'.
    WA-TABNAME   = 'CDPOS_ITAB'.
    WA-OUTPUTLEN = '8'.
    APPEND WA TO HEADER.
    CLEAR WA.
    WA-SELTEXT_L = 'TABNAME'.
    WA-COL_POS   = '4'.
    WA-FIELDNAME = 'TABNAME'.
    WA-TABNAME   = 'CDPOS_ITAB'.
    WA-OUTPUTLEN = '5'.
    APPEND WA TO HEADER.
    CLEAR WA.
    WA-SELTEXT_L = 'FNAME'.
    WA-COL_POS   = '5'.
    WA-FIELDNAME = 'FNAME'.
    WA-TABNAME   = 'CDPOS_ITAB'.
    WA-OUTPUTLEN = '7'.
    APPEND WA TO HEADER.
    CLEAR WA.
    WA-SELTEXT_L = 'CHANGING'.
    WA-COL_POS   = '6'.
    WA-FIELDNAME = 'CHANGING'.
    WA-TABNAME   = 'CDPOS_ITAB'.
    WA-OUTPUTLEN = '1'.
    APPEND WA TO HEADER.
    CLEAR WA.
    WA-SELTEXT_L = 'VALUE_NEW'.
    WA-COL_POS   = '7'.
    WA-FIELDNAME = 'VALUE_NEW'.
    WA-TABNAME   = 'CDPOS_ITAB'.
    WA-OUTPUTLEN = '5'.
    APPEND WA TO HEADER.
    CLEAR WA.
    WA-SELTEXT_L = 'VALUE_OLD'.
    WA-COL_POS   = '8'.
    WA-FIELDNAME = 'VALUE_OLD'.
    WA-TABNAME   = 'CDPOS_ITAB'.
    WA-OUTPUTLEN = '5'.
    APPEND WA TO HEADER.
    CLEAR WA.
    CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
    EXPORTING
        I_PROGRAM_NAME               = SY-REPID
        I_INTERNAL_TABNAME           = 'CDPOS_ITAB'
        I_CLIENT_NEVER_DISPLAY       = 'X'
        I_INCLNAME                   = SY-REPID
      CHANGING
        CT_FIELDCAT                  = HEADER[]
    EXCEPTIONS
    IF SY-SUBRC <> 0.
    ENDIF.
    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
      EXPORTING
        I_CALLBACK_PROGRAM                = SY-REPID
        IT_FIELDCAT                       = HEADER[]
      TABLES
        T_OUTTAB                          = CDPOS_ITAB[]
    IF SY-SUBRC <> 0.
    ENDIF.

    Your select querry on MARC is not matching with MARC_TY.
    The field in the MARC table and MARC_TY should be same.
    and also, when you are making select querry on CDPOS table
    with all entries.
    When ever you are using all entries select statement, you should check whether the internal table is having value.
    you should check
    if CDPOS_IT[] is not initial.
    SELECT OBJECTCLAS
    OBJECTID
    CHANGENR
    TABNAME
    FNAME
    CHNGIND
    VALUE_NEW
    VALUE_OLD
    FROM CDPOS INTO CORRESPONDING FIELDS OF TABLE CDPOS_ITAB
    FOR ALL ENTRIES IN CDHDR_ITAB
    WHERE OBJECTCLAS = CDHDR_ITAB-OBJECTCLAS
    AND OBJECTID = CDHDR_ITAB-OBJECTID
    AND CHANGENR = CDHDR_ITAB-CHANGENR
    AND TABNAME = 'MARC'
    AND FNAME IN ('MINBE','EISBE','MABST','LVORM')
    AND CHNGIND = 'U'.
    endif.
    Regards
    Madhan D

  • Source Code Longer Than Table --Dump. Wht to do?

    Hi All,
    I have created a Z-subrouitne pool and coded print program with Entry rountines for smartforms in it. When I tried to maintian the output control, stating the name of program and entry rountine of it, it is throwing dump while saving.
    it is saying:
    <b>The ABAP source code lines are longer than the width of the internal</b>
    The detail is:
    An exception occurred. This exception is dealt with in more detail below       
    . The exception, which is assigned to the class 'CX_SY_READ_SRC_LINE_TOO_LONG',
      was neither                                                                   
    caught nor passed along using a RAISING clause, in the procedure               
      "NAST_FORM_EXISTENCE_CHECK" "(FUNCTION)"                                      
    Since the caller of the procedure could not have expected this exception       
      to occur, the running program was terminated.                                 
    The reason for the exception is:                                               
    You tried to read the program "SAPMZMM_PRINT" from the database. The READ      
      REPORT                                                                        
    statement allows you to copy a program's source code into an internal          
    table. The lines of source code must not be longer than the width of the       
      internal table. <b>The internal table is 72 characters wide. The source          
    code line is 87 wide.    </b>                                                      
    But I kept all the line (and re adjusted the longer one) within 72 char. the why am I  facing this error? please suggest how to correct it.
    Rewards point guranteed.
    Anid.

    HI,
    in order to be sure, open the abap editor and click Utilities->Settings and check Downward-Compat. Line Length (72). Then go to SAPMZMM_PRINT and do a pretty print or  just activate it. This should be ok.
    Kostas

  • Table longer than a page

    How do I get a table longer than a page?
    The table itself contains all the information and can be seen when I select a large type of paper (eg Tabloid). But when the page is shorter than the table (eg Letter), instead of seeing the table spread across 2 pages, I can only see part of it (the part that fits in one page).
    Can still move the table inside the page, but only see a section of it.
    Yaron

    Welcome
    This question was responded several times.
    If you want that a table flows from one page to an other one, the "other one" must be available.
    I am quite sure that your document is a single page one.
    Insert a page break to generate a second page and your table will flow as wished.
    Yvan KOENIG (from FRANCE 13 octobre 2005 17:39:45)

  • Looping table cells....... is it possible to loop more than one table cell?

    Hi there
    Hope everyone is doing well
    I have been using the addt looper wizard and it works great.....
    I usually put all the things I want to loop into one cell.... then select all the things and apply the looper.... which works fine....
    But..... it is hard to align all the elements I want to loop
    I have been using transparent gif images to space the loops evenly but when I space dynamic taxt on top of each other there is a large gap.....
    It is a nightmare to get it looking even
    Ok say I want to loop this.....
    A thumbnail
    Product ID
    Price
    It would look like this
    A thumbnail
    Product ID
    Price
    Because I cannot reduce the space between the lines......
    So I would like to place all the different elements in separate table cells and loop them..... I have tried and get really strange results....
    When you look at most online shops, their product pages have a thumbnail image the id, price, description, etc.... all spaced evenly.... and looks like is looped...... So.... how do I do it?
    Is there any easier way to align the things I want to loop?
    Any help would be great

    Hi there
    I seem to have figured out how to loop cells....
    Should have thought of it earliar but anyway
    Was easy....
    Just create a looped (repeat) region and insert a table into the region and edit the table to align all the looped elements easily....
    Cool

  • How do I read from a text file that is longer than 65536 lines and write the data to an Excel spreadshee​t and have the data write to a new column once the 65536 cells are filled in a column?

    I have data that is in basic generic text file format that needs to be converted into Excel spreadsheet format.  The data is much longer than 65536 lines, and in my code I haven't been able to figure out how to carry over the data into the next column.  Currently the conversion is done manually and generates an Excel file that has a total of 30-40 full columns of data.  Any suggestions would be greatly appreciated.
    Thanks,
    Darrick 
    Solved!
    Go to Solution.

    No need to use nested For loops. No need for any loop anyway. You just have to use a reshape array function. The picture below shows how to proceed.
    However, there may be an issue if your element number is not a multiple of the number of columns : zero value elements will be added at the end of the last column in the generated 2D array. Now the issue depends on the way you intend store the data in the Excel spreadsheet : you could convert the data as strings, replace the last zero values with empty strings, and write the whole 2D array to a file (with the .xls extension ) using the write to spreadsheet function. Only one (minimal) problem : define the number of decimal digits to be used;
    or you could write the numeric array directly to a true Excel spreadsheet, using either the NI report generation tools or ActiveX commands, then replace the last elements with empty strings.
    We need more input from you to decide how to solve these last questions. 
    Message Edité par chilly charly le 01-13-2009 09:29 PM
    Chilly Charly    (aka CC)
             E-List Master - Kudos glutton - Press the yellow button on the left...        
    Attachments:
    Example_VI.png ‏10 KB

  • Do partition scans take longer than a full table scan on an unpartitioned table?

    Hello there,
    I have a range-partitioned table PART_TABLE which has 10 Million records and 10 partitions having 1 million records each. Partition is done based on a Column named ID which is a sequence from 1 to 10 million.
    I created another table P2_BKP (doing a select * from part_table) which has the same dataset as that of PART_TABLE except that this table is not partitioned.
    Now, I run a same query on both the tables to retrieve a range of data. Precisely I am trying to read only the data present in 5 partitions of the partitioned tables which theoretically requires less reads than when done on unpartitioned tables.
    Yet, the query seems to take extra time on partitioned table than when run on unpartitioned table.Any specific reason why is this the case?
    Below is the query I am trying to run on both the tables and their corresponding Explain Plans.
    QUERY A
    =========
    select * from P2_BKP where id<5000000;
    | Id  | Operation         | Name   | Rows  | Bytes | Cost (%CPU)| Time     |                                                                                                                                                                                                                                
    |   0 | SELECT STATEMENT  |        |  6573K|   720M| 12152   (2)| 00:02:26 |                                                                                                                                                                                                                                
    |*  1 |  TABLE ACCESS FULL| P2_BKP |  6573K|   720M| 12152   (2)| 00:02:26 |                                                                                                                                                                                                                                
    QUERY B
    ========
    select * from part_table where id<5000000;
    | Id  | Operation                | Name       | Rows  | Bytes | Cost (%CPU)| Time     | Pstart| Pstop |                                                                                                                                                                                                     
    |   0 | SELECT STATEMENT         |            |  3983K|   436M| 22181  (73)| 00:04:27 |       |       |                                                                                                                                                                                                     
    |   1 |  PARTITION RANGE ITERATOR|            |  3983K|   436M| 22181  (73)| 00:04:27 |     1 |     5 |                                                                                                                                                                                                     
    |*  2 |   TABLE ACCESS FULL      | PART_TABLE |  3983K|   436M| 22181  (73)| 00:04:27 |     1 |     5 |                                                                                                                                                                                                     

    at the risk of bringing unnecessary confusion into the discussion: I think there is a situation in 11g in which a Full Table Scan on a non partitioned table can be faster than the FTS on a corresponding partitioned table: if the size of the non partitioned table reaches a certain threshold (I think it's: blocks > _small_table_threshold * 5) the runtime engine may decide to use a serial direct path read to access the data. If the single partitions don't pass the threshold the engine will use the conventional path.
    Here is a small example for my assertion:
    -- I create a simple partitioned table
    -- and a corresponding non-partitioned table
    -- with 1M rows
    drop table tab_part;
    create table tab_part (
        col_part number
      , padding varchar2(100)
    partition by list (col_part)
        partition P00 values (0)
      , partition P01 values (1)
      , partition P02 values (2)
      , partition P03 values (3)
      , partition P04 values (4)
      , partition P05 values (5)
      , partition P06 values (6)
      , partition P07 values (7)
      , partition P08 values (8)
      , partition P09 values (9)
    insert into tab_part
    select mod(rownum, 10)
         , lpad('*', 100, '*')
      from dual
    connect by level <= 1000000;
    exec dbms_stats.gather_table_stats(user, 'tab_part')
    drop table tab_nopart;
    create table tab_nopart
    as
    select *
      from tab_part;
    exec dbms_stats.gather_table_stats(user, 'tab_nopart')
    -- my _small_table_threshold is 1777 and the partitions
    -- have a size of ca. 1600 blocks while the non-partitioned table
    -- contains 15360 blocks
    -- I have to flush the buffer cache since
    -- the direct path access is only used
    -- if there are few blocks already in the cache
    alter system flush buffer_cache;
    -- the execution plans are not really exciting
    | Id  | Operation           | Name     | Rows  | Cost (%CPU)| Time     | Pstart| Pstop |
    |   0 | SELECT STATEMENT    |          |     1 |  8089   (0)| 00:00:41 |       |       |
    |   1 |  SORT AGGREGATE     |          |     1 |            |          |       |       |
    |   2 |   PARTITION LIST ALL|          |  1000K|  8089   (0)| 00:00:41 |     1 |    10 |
    |   3 |    TABLE ACCESS FULL| TAB_PART |  1000K|  8089   (0)| 00:00:41 |     1 |    10 |
    | Id  | Operation          | Name       | Rows  | Cost (%CPU)| Time     |
    |   0 | SELECT STATEMENT   |            |     1 |  7659   (0)| 00:00:39 |
    |   1 |  SORT AGGREGATE    |            |     1 |            |          |
    |   2 |   TABLE ACCESS FULL| TAB_NOPART |  1000K|  7659   (0)| 00:00:39 |
    But on my PC the FTS on the non-partitioned table is faster than the FTS on the partitions (1sec to 3 sec.) and v$sesstat shows the reason for this difference:
    -- non partitioned table
    NAME                                               DIFF
    table scan rows gotten                          1000000
    file io wait time                                 15313
    session logical reads                             15156
    physical reads                                    15153
    consistent gets direct                            15152
    physical reads direct                             15152
    DB time                                              95
    -- partitioned table
    NAME                                               DIFF
    file io wait time                               2746493
    table scan rows gotten                          1000000
    session logical reads                             15558
    physical reads                                    15518
    physical reads cache prefetch                     15202
    DB time                                             295
    (maybe my choose of counters is questionable)
    So it's possible to get slower access for an FTS on a partitioned table under special conditions.
    Regards
    Martin

Maybe you are looking for

  • Editing song info. doesn't work

    Hi When i try to edit song info. ,I am able to fill the required fields after right clicking and get info. buttons; but once i press ok ; nothin seems to happen. Its as if itunes ignores the change please help

  • Administrator permission Problem

    Hi All I hv a problem. i combined another catalog in my current catalog.after doing this when i start presentation services with administrator then setting tab is not visible for administrator. then how can i get rid of this problem. Regards, SAP

  • Camera connection problem

    I have a Canon EOS 40D which always used to open Image Capture when connected so I could import images.  This is not happening any more though preferences are still set for it to do so. In system profiler the USB tree shows the camera though this is

  • Why can't I open documents from Pages ?

    I downloaded the new Pages software, but can't seem to open any documents previously created - still is telling me I have to download pages?? Help

  • Windows Anytime Upgrade fails (NB505)

    Brand new NB505-N500, wanted to upgrade to Windows 7.  Installed the MS Upgrade Advisor, probably more of formality, everything OK.  However, when I launch the Windows Anytime Upgrade, and select the first choice, "Go online to choose...", I get noth