Excel flashing when using table write

I'm monitoring 100 channels or so of data and would like to use Excel as the display. Using the "table write" vi, in the excel specific reports addon causes Excel to flash on every update.  Updates take place every second so it's pretty irritating.  The "text write" vi is too slow to use.  Is there some way to use the table write vi without Excel flashing on every update?  I tried the excel command Application.ScreenUpdating = False  in a macro in my template but that doesn't do anything.
Thanks, Mike

Hard to tell without seeing your actual VI but my guess is that you are using the Excel Easy Table.vi in a loop. If you open the diagram of this vi you will see that there is a subVI called Set Report Font.vi in it, so for each iteration of your loop this subVI is reformatting the report font. That is probably what causes the blinking that you see. As a possible workaround you can create your own version of this vi without the Set Report Font function (note: it is a bad idea to try to modifiy directly the toolkit vi).
Ben64

Similar Messages

  • Is there a flash when using the camera on the iPad?

    Is there a flash when using the camera on the iPad?

    Unlike iPhone, there's no LED flash on iPad. But iPad's specs indicate that it does have a backside illumination sensor to increase the amount of light captured and thereby improve low-light performance. Apple say:
    "The 5‑megapixel iSight camera features a backside illumination sensor that captures great-looking pictures whether by sunlight or candlelight." (Source)

  • Help: Jbo Exception non blocking when using table cell renderer?

    Hi,
    JClient 9.5.2.
    When using Table Cell Renderer on an table cell attribute that is defined mandatory and activating the insert button, the (oracle.jbo.AttrValException) JBO-27014 exception is caught but it is not blocking and a new row is still inserted.
    The JClient component demo, table attribute list, has the same behaviour.
    You can add multiple rows even if not all required attributes have been documented.
    Can a Swing specialist help me on this one?
    Example of Table Cell Renderer:
    public class TableBasicStatusRenderer extends DefaultTableCellRenderer
    public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus,
    int row, int column)
    JLabel lb = new JLabel((String) StaticData.getStatusName(value)); // retrieves label from Map
    return lb;
    Regards
    Frederic

    Hi,
    I found something interesting, it could be a WORKAROUND!
    I noticed that in another detail panel with table layout the JBO exception was blocking and adding another row before completing the row was NOT possible.
    In the create method of the entity object of the displayed View Object I iterate over the detail row iterator to retrieve a maximum value.
    By the end of the method the pointer is positionned after the last row.
    So I added to the detail panel that doesn't block following code:
    In create method of detail Entity Object Impl (only one entity object involved for this View)
    // Retrieve master EntityObjectImpl from association:
    PostalTariffImpl postalTariffImpl = getPostalTariffAssoc();
    // Retrieve detail default row iterator
    RowIterator ri = postalTariffImpl.getPostalDetailGroupAssoc();
    // Position pointer after last row
    ri.last();
    ri.next();
    Question: Why does this solve the problem?
    Regards
    Frederic
    PS Les mysteres de l'informatique!

  • Error when using Table view

    Hi Folks,
    I m getting this problem frequently when i m using table view in reports. Im using SQl server2008 and working on BIApps.
    View Display Error
    Odbc driver returned an error (SQLExecDirectW).
    Error Details
    Error Codes: OPR4ONWY:U9IM8TAC:OI2DL65P
    State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. [nQSError: 43113] Message returned from OBIS. [nQSError: 43119] Query Failed: [nQSError: 16001] ODBC error state: 28000 code: 18456 message: [Microsoft][ODBC SQL Server Driver][SQL Server]Login failed for user 'DWH'.. (HY000)
    SQL Issued: SELECT 0 s_0, "Financials - AP Overview"."Time"."Fiscal Quarter" s_1, "Financials - AP Overview"."Time"."Fiscal Year" s_2, "Financials - AP Overview"."Facts - AP Turnover"."Days Payables Outstanding" s_3 FROM "Financials - AP Overview" FETCH FIRST 65001 ROWS ONLY
    Thanks in advance.
    Raghava.

    Hi,
    As per you query shown above, I am assuming that the query limit exceeds the maximum number of rows to show in your result. because it showing only 65001 rows fetched but your data may be more than that.
    So try to extend the maximum rows for table view in instanceconfig.xml file.
    Regards,
    Pandian

  • Screen flashes when using selection tool in Photoshop CC

    Does anyone know why my Windows PC screen flashes when I try to use the selection tools in Photoshop CC?

    Hi - thanks for your comments. It was happening on all of the selection tools however I have solved the problem by changing the 'Advanced Graphics Processor Setting' to 'Basic' in Photoshop CC.
    Thanks anyway

  • Button "Position" can't work in sm30 when use Table maintenance generator

    Hello guys,
      i have created a table and use 'Table Maintenance Generator' to generate the code. When i run sm30 and click the button 'Position', it can not work.
       i enter '/h' to debug it and find the value'POSI' is not assigned to ok_code.
        Some tables created before are OK. What's the matter with it?
    Many Thanks

    hello daniel,
    there is very possibility that some inconsistency might be occured while generating table maintenance generator. So i would advice u to create ur table maintenance generator once more after deleting the current one.
    Reward properly.

  • Why do shadows appear before the letters when using the write-on effect

    I am using the write-on effect.  I am casting shadows on a wall but the shadows of the letters are appearing whole prior to the letters being written.  How can I get the shadows to appear in sync?

    I apologize for not supplying enough information.  I am using AE CS6 and I am using 3D layers with lights. I have also used a single layer for each letter in the message that is slowly appearing.  The lights are creating the shadows but are rendering the shadow before the effect write-on, as the shadow letter appears first.  Then the letter is drawn second.  I thought it must be something in the render order, but I couldn't figure out how to make it happen correctly.
    After I posted my question, I found an Adobe video tutorial on render-order.  Although the video didn't address my problem, it did remind me that an effect that I could use - drop shadows.  I inserted the drop shadow effect above the write-on effect on each letter and the world is good.  The shadow appears at the same time as the letter.  And with a whole lot less effort.
    I appreciate you taking the time to think about the problem.  If there is a simple solution I would still be interested in knowing what it might be.
    Steve

  • Add header line to excel sheet when using FM RH_START_EXCEL_WITH_DATA

    Hi
    I'm using FM RH_START_EXCEL_WITH_DATA to download an internal table to EXCEL. But when excel is started it's without a header line.
    What I would like to do, is to take the field-names/field-text from the abap dictionary, and use them as the header line. How do I achieve this ?
    Regards
    Morten Nielsen

    Hi ,
    See this sample code.
    Tables : zacg_cca,zacg_exsh.
    data: P_file like RLGRAP-FILENAME.
    Data: Begin of it_header occurs 0,
          Header(15) ,
          end of it_header.
    Data : begin of it_final occurs 0,
           ccode type zacg_cca-ccode,
           mat_cd type zacg_cca-mat_cd,
           ingr_desc type zacg_cca-ingr_desc,
           conc type  zacg_cca-conc,
           quantity type zacg_cca-quantity,
           percqty type zacg_cca-percqty,
           flag ,
           APP_DATE type zacg_cca-app_date,
           rsamnos type zacg_cca-rsamnos,
           end of it_final.
           SELECTION-SCREEN : BEGIN OF BLOCK blk WITH FRAME TITLE text-000.
           select-options : s_Date for zacg_cca-app_date.
           SELECTION-SCREEN  : END OF BLOCK blk.
           it_header-Header = 'Samp_code'.
           Append it_header.
           it_header-Header = 'Mat_code'.
           Append it_header.
           it_header-Header = 'Ingr_Desc'.
           Append it_header.
           it_header-Header = 'Conc'.
           Append it_header.
           it_header-Header = 'Quan'.
           Append it_header.
           it_header-Header = 'Perc'.
           Append it_header.
           it_header-Header = 'Flag'.
           Append it_header.
           it_header-Header = 'Date'.
           Append it_header.
           it_header-Header = 'Rsamnos'.
           Append it_header.
             it_header-Header = 'Mat_code'.
           Append it_header.
           select ccode
                  mat_cd
                  ingr_desc
                  conc
                  quantity
                  percqty
                  app_date
                  rsamnos
                  from zacg_cca  into corresponding
            fields of table
           it_final where  zacg_cca~app_date in s_date.
           loop at it_final.
           it_final-flag = 'T'.
           modify it_final.
           it_final-quantity = it_final-quantity * 2 .
           Modify it_final.
           endloop.
           CALL FUNCTION 'MS_EXCEL_OLE_STANDARD_DAT'
             EXPORTING
               FILE_NAME                       = 'E:\IT\P_FILE'
             CREATE_PIVOT                    = 0
             DATA_SHEET_NAME                 = ' '
             PIVOT_SHEET_NAME                = ' '
             PASSWORD                        = ' '
             PASSWORD_OPTION                 = 0
            TABLES
             PIVOT_FIELD_TAB                 =
              DATA_TAB                        = it_final[]
              FIELDNAMES                      = it_header[]
            EXCEPTIONS
              FILE_NOT_EXIST                  = 1
              FILENAME_EXPECTED               = 2
              COMMUNICATION_ERROR             = 3
              OLE_OBJECT_METHOD_ERROR         = 4
              OLE_OBJECT_PROPERTY_ERROR       = 5
              INVALID_PIVOT_FIELDS            = 6
              DOWNLOAD_PROBLEM                = 7
              OTHERS                          = 8
           IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    Regards
    ABG

  • "cannot perform a DML operation inside a query" error when using table func

    hello please help me
    i created follow table function when i use it by "select * from table(customerRequest_list);"
    command i receive this error "cannot perform a DML operation inside a query"
    can you solve this problem?
    CREATE OR REPLACE FUNCTION customerRequest_list(
    p_sendingDate varchar2:=NULL,
    p_requestNumber varchar2:=NULL,
    p_branchCode varchar2:=NULL,
    p_bankCode varchar2:=NULL,
    p_numberOfchekbook varchar2:=NULL,
    p_customerAccountNumber varchar2:=NULL,
    p_customerName varchar2:=NULL,
    p_checkbookCode varchar2:=NULL,
    p_sendingBranchCode varchar2:=NULL,
    p_branchRequestNumber varchar2:=NULL
    RETURN customerRequest_nt
    PIPELINED
    IS
    ob customerRequest_object:=customerRequest_object(
    NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
    condition varchar2(2000 char):=' WHERE 1=1 ';
    TYPE rectype IS RECORD(
    requestNumber VARCHAR2(32 char),
    branchRequestNumber VARCHAR2(32 char),
    branchCode VARCHAR2(50 char),
    bankCode VARCHAR2(50 char),
    sendingDate VARCHAR2(32 char),
    customerAccountNumber VARCHAR2(50 char),
    customerName VARCHAR2(200 char),
    checkbookCode VARCHAR2(50 char),
    numberOfchekbook NUMBER(2),
    sendingBranchCode VARCHAR2(50 char),
    numberOfIssued NUMBER(2)
    rec rectype;
    dDate date;
    sDate varchar2(25 char);
    TYPE curtype IS REF CURSOR; --RETURN customerRequest%rowtype;
    cur curtype;
    my_branchRequestNumber VARCHAR2(32 char);
    my_branchCode VARCHAR2(50 char);
    my_bankCode VARCHAR2(50 char);
    my_sendingDate date;
    my_customerAccountNumber VARCHAR2(50 char);
    my_checkbookCode VARCHAR2(50 char);
    my_sendingBranchCode VARCHAR2(50 char);
    BEGIN
    IF NOT (regexp_like(p_sendingDate,'^[[:digit:]]{4}/[[:digit:]]{2}/[[:digit:]]{2}$')
    OR regexp_like(p_sendingDate,'^[[:digit:]]{4}/[[:digit:]]{2}/[[:digit:]]{2}[[:space:]]{1}[[:digit:]]{2}:[[:digit:]]{2}:[[:digit:]]{2}$')) THEN
    RAISE_APPLICATION_ERROR(-20000,cbdpkg.get_e_m(-1,5));
    ELSIF (p_sendingDate IS NOT NULL) THEN
    dDate:=TO_DATE(p_sendingDate,'YYYY/MM/DD hh24:mi:ss','nls_calendar=persian');
    dDate:=trunc(dDate);
    sDate:=TO_CHAR(dDate,'YYYY/MM/DD hh24:mi:ss');
    condition:=condition|| ' AND ' || 'sendingDate='||'TO_DATE('''||sDate||''',''YYYY/MM/DD hh24:mi:ss'''||')';
    END IF;
    IF (p_requestNumber IS NOT NULL) AND (cbdpkg.isspace(p_requestNumber)=0) THEN
    condition:=condition|| ' AND ' || ' requestNumber='||p_requestNumber;
    END IF;
    IF (p_bankCode IS NOT NULL) AND (cbdpkg.isspace(p_bankCode)=0) THEN
    condition:=condition|| ' AND ' || ' bankCode='''||p_bankCode||'''';
    END IF;
    IF (p_branchCode IS NOT NULL) AND (cbdpkg.isspace(p_branchCode)=0) THEN
    condition:=condition|| ' AND ' || ' branchCode='''||p_branchCode||'''';
    END IF;
    IF (p_numberOfchekbook IS NOT NULL) AND (cbdpkg.isspace(p_numberOfchekbook)=0) THEN
    condition:=condition|| ' AND ' || ' numberOfchekbook='''||p_numberOfchekbook||'''';
    END IF;
    IF (p_customerAccountNumber IS NOT NULL) AND (cbdpkg.isspace(p_customerAccountNumber)=0) THEN
    condition:=condition|| ' AND ' || ' customerAccountNumber='''||p_customerAccountNumber||'''';
    END IF;
    IF (p_customerName IS NOT NULL) AND (cbdpkg.isspace(p_customerName)=0) THEN
    condition:=condition|| ' AND ' || ' customerName like '''||'%'||p_customerName||'%'||'''';
    END IF;
    IF (p_checkbookCode IS NOT NULL) AND (cbdpkg.isspace(p_checkbookCode)=0) THEN
    condition:=condition|| ' AND ' || ' checkbookCode='''||p_checkbookCode||'''';
    END IF;
    IF (p_sendingBranchCode IS NOT NULL) AND (cbdpkg.isspace(p_sendingBranchCode)=0) THEN
    condition:=condition|| ' AND ' || ' sendingBranchCode='''||p_sendingBranchCode||'''';
    END IF;
    IF (p_branchRequestNumber IS NOT NULL) AND (cbdpkg.isspace(p_branchRequestNumber)=0) THEN
    condition:=condition|| ' AND ' || ' branchRequestNumber='''||p_branchRequestNumber||'''';
    END IF;
    dbms_output.put_line(condition);
    OPEN cur FOR 'SELECT branchRequestNumber,
    branchCode,
    bankCode,
    sendingDate,
    customerAccountNumber ,
    checkbookCode ,
    sendingBranchCode
    FROM customerRequest '|| condition ;
    LOOP
    FETCH cur INTO my_branchRequestNumber,
    my_branchCode,
    my_bankCode,
    my_sendingDate,
    my_customerAccountNumber ,
    my_checkbookCode ,
    my_sendingBranchCode;
    EXIT WHEN (cur%NOTFOUND) OR (cur%NOTFOUND IS NULL);
    BEGIN
    SELECT requestNumber,
    branchRequestNumber,
    branchCode,
    bankCode,
    TO_CHAR(sendingDate,'yyyy/mm/dd','nls_calendar=persian'),
    customerAccountNumber ,
    customerName,
    checkbookCode ,
    numberOfchekbook ,
    sendingBranchCode ,
    numberOfIssued INTO rec FROM customerRequest FOR UPDATE NOWAIT;
    --problem point is this
    EXCEPTION
    when no_data_found then
    null;
    END ;
    ob.requestNumber:=rec.requestNumber ;
    ob.branchRequestNumber:=rec.branchRequestNumber ;
    ob.branchCode:=rec.branchCode ;
    ob.bankCode:=rec.bankCode ;
    ob.sendingDate :=rec.sendingDate;
    ob.customerAccountNumber:=rec.customerAccountNumber ;
    ob.customerName :=rec.customerName;
    ob.checkbookCode :=rec.checkbookCode;
    ob.numberOfchekbook:=rec.numberOfchekbook ;
    ob.sendingBranchCode:=rec.sendingBranchCode ;
    ob.numberOfIssued:=rec.numberOfIssued ;
    PIPE ROW(ob);
    IF (cur%ROWCOUNT>500) THEN
    CLOSE cur;
    RAISE_APPLICATION_ERROR(-20000,cbdpkg.get_e_m(-1,4));
    EXIT;
    END IF;
    END LOOP;
    CLOSE cur;
    RETURN;
    END;

    Now what exactly would be the point of putting a SELECT FOR UPDATE in an autonomous transaction?
    I think OP should start by considering why he has a function with an undesirable side effect in the first place.

  • Pages running slowly when using tables

    Hi,
    Pages is running very slowly whenever I try to type into a table. It also will do things like doing commands twice i.e. doubling the letters I press.
    My software and app is up to date, and nothing I have found here has fixed it.
    since iOS 7 Pages has also been a lot slower than it used to be.
    Thanks.

    Are you sure that the internet is running slowly?  Or, because you're using an external monitor, you're using more memory than before and you're having some issues with memory access?  You can open Activity Monitor and see how much free memory you have.
    One other thing.  Are you using discrete video when you're connected to a monitor?  Or are you using the integrated Intel HD3000 video.

  • Getting ORA-00600 when using table functions

    Hello,
    I am trying to use simple table function:
    create or replace type StatCall AS OBJECT (
    dial_number varchar2(255),
    start_date date,
    duration number(20)
    create or replace type StatCallSet AS TABLE OF StatCall;
    create or replace package ref IS
    type refcall_t IS REF CURSOR RETURN calls%ROWTYPE;
    end ref;
    create or replace function GetStats(p ref.refcall_t) return StatCallSet pipelined is
    out_rec StatCall;
    in_rec p%ROWTYPE;
    BEGIN
    LOOP
    FETCH p INTO in_rec;
    EXIT WHEN p%NOTFOUND;
    out_rec.dial_number := in_rec.dial_number;
    out_rec.start_date := in_rec.start_date;
    out_rec.duration := in_rec.duration;
    PIPE ROW(out_rec);
    END LOOP;
    CLOSE p;
    RETURN;
    END;
    select * from TABLE(GetStats(CURSOR(select * from call)));
    And I get:
    ORA-00600: internal error code, arguments: [17285], [0xFFFFFFFF7C4900A8], [1], [0x3943BA5E0], [], [], [], []
    Oracle 9.2.0.2
    Are there any ideas about how to fix this?

    What version of the database?
    Which flavor of Disco (Plus, Desktop, Viewer)?
    Standars EUL or Apps EUL?
    Can you post the code for the calculation?
    ORA-600 errors, as you mentioned, are internal, and may require opening a dialog with Oracle support. Then again, it could be something else in the calculation that is causing the sky to fall.

  • Excel Error When Using Microsoft Data Link

    I   have   a   user   who   is   running   the   following:
    Windows   7   w/64   bit   OS
    MS   Office   2010
    SAS   9.3   Software
    They   created   a   database   in   Excel   and   have   integrated   the   information   with   SAS   9.3   database.   
    For   some   reason,   now   when   they   try   to   'Refresh'   data   in   the   Excel   spreadsheet,   Excel  
    freezes   and   then   crashes.
    I   believe   it's   because   the   'Microsoft   Data   Link'   is   failing,   during   set-up.    Below   are  
    the   error   messages   they   get,   when   trying   to   set-up   the   'Microsoft   Data   Link'   with   the  
    SAS   9.3   software:
    ERROR   MESSAGES:
    1.   Microsoft   Data   Link   Error:   Test   connection   failed   because   of   an   error   in   setting   the  
    window   handle   property.    Multipl-step   OLE   DB   operation   generated   errors.    Check   each   OLE   DB  
    status   value,   if   available.    No   work   was   done.    Continue   with   test   connection?    Yes   or  
    No.
    2.   Microsoft   Data   Link:   Test   connection   succeeded   but   some   settings   were   not   accepted   by  
    the   provider.
    I   don't   know   where   to   begin   troubleshooting   this   issue,   as   I   don't   use   the   SAS  
    9.3   software,   nor   have   I   ever   attempted   to   use   the   'Microsoft   Data   Link'   option   in  
    Excel.
    TROUBLESHOOTING   I'VE   TRIED:
    Repair   of   MS   Office   2010
    Uninstall/Reinstall   Excel   2010
    Any   assistance   would   be   appreciated.

    Hi,
    In regarding of the issue, please provide us more information to assist you better.
    Did this issue occur with other database program? Such as Access, SQL sever or other?
    If the Excel still crashes, I recommend we collect the Event log and App crash dump file to do further troubleshooting. You can try to analyze dump by
    yourself if you would like to:
    How to analyze app crash dump file:
    http://blogs.technet.com/b/askperf/archive/2007/05/29/basic-debugging-of-an-application-crash.aspx
    Also you can send them to us via Email ([email protected])
    If the issue occur with the  SAS 9.3 software, I recommend you connect it's provider or support to get more help.
     Did you
     use 'Microsoft Data Link' like this?
    If it was, we may need to debug the connecting string, you can post the question to Visual Studio forum.
    Hope it's helpful.
    Regards,
    George Zhao
    TechNet Community Support
    It's recommended to download and install
    Configuration Analyzer Tool (OffCAT), which is developed by Microsoft Support teams. Once the tool is installed, you can run it at any time to scan for hundreds of known issues in Office
    programs.

  • How to implement Excel like functionality using Table?

    I have a requirement to implement excel like functionality in a table, i.e when I update the amount in the first row and tab out, the values in the rows below should get affected.
    Could any one suggest idea how to get this done?

    Hi Timo,
    Thanks for your Reply.
    Can you please provide the code for capturing the key stroke in java script and queue it in the server and calling only the adf data table values from it.
    Thanks And Regards,
    Lovenish Garg
    Edited by: lovenish on 21-Jan-2011 04:25

  • How do I accurately detect overset contents when using tables?

    Hello, all. I am familiar with how to detect overset contents of a text frame, namely:
    if ( myTextFrame.parentStory.contents.length > myTextFrame.contents.length) {
      alert('There is overset text');
    } else {
      alert('There is no overset text');
    However, the contents of my story are three tables, rather than text. Each table contains dozens of cells filled with text. Yet the "length" property of the frame is only 3! How do I accurately read the length of the content given that most of it is in tables so that I can test for overset text?
    In case it helps anyone, a more detailed description is:
    If there are three tables in the story, and only 2 fit on a page-sized text frame, the length property of that frame will be 2. Kind of weird, but not a problem yet.
    In the same scenario, however, if the third table BEGINS on the page but spills over (creating an overset situation), the length property of that frame will be 3 -- causing the test think there is NO overset text! InDesign simply sees 3 characters in the story, and only 3 characters on that page.
    When I look at the "contents" property of the story, it just reads 3 squarish characters. They're obviously some kind of special character. InDesign apparently takes the concept of "table" and just writes a placeholder character for it in the "contents" property.
    Am I going to have to create some routine to loop through every cell of every table and somehow add it all up to get a proper length? How do I just test for overset-ness?
    Thank you!

    Actually, Harbs, I'd already just burst my own bubble by running additional tests! So I have to revise my whole set of instructions.
    IGNORE EVERYTHING I WROTE ABOVE.
    Here is the revised solution, based on the initial solution proposed by Dirk and then revised to work around Harbs bug discoveries. It is essentially a corrected version of Dirks line. Instead of saying:
    app.activeDocument.stories.item(0).tables.lastItem().cells.lastItem().insertionPoints.last Item().parentTextFrames.length
    you would say:
    app.activeDocument.stories.item(0).tables.lastItem().cells.lastItem().parent.parent.insert ionPoints.lastItem().parentTextFrames.length
    That's just the short version. Here's the full code and explanation:
    Summary of problem:
    InDesign treats a table as a single special character, so it does not accurately report the "overflows" property of a text frame containing a table which spills beyond its margins. A text frame will show as not overflowing (i.e. myTextFrame.overflows will return false) if its final table simply begins within its margins--even if most of the table spills well beyond the text frame. So a ten-page table that starts on page one will only considered by InDesign scripting as being one character long (and therefore shown as fitting completely in first frame even when it doesn't). The solution for this, as discovered by Dirk, is to test whether the final cell of the table is in an overflow area.
    The solution:
    You cannot just test whether the cell is overflowing, or whether the parent text frame is overflowing, because InDesign will misreport them and their contents when they are in an overflow area, making it impossible to distinguish a cell overflow from a containing-text-frame overflow. So we just check the parent text frame of the final insertion point, which is after the last table, and see if its length is zero (meaning has no visible contents). If so, the insertion point is in an overflow area!
    So the test to run is this:
    var finalCell = myTextFrame.parentStory.tables.lastItem().cells.lastItem();
    if(finalCell.parent.parent.insertionPoints.lastItem().parentTextFrames.length==0) {  ...your code here...  }
    Of course you'll replace myTextFrame with the one you're dealing with in your own script.
    Example usage:
    This is how I implemented this in my own script. I have an array of text frames which I pass to this function, and by the time I call the function this array contains only one element, just the first large text frame (with my long table already placed inside it). It also relies on a helper function drawTableFrame which is simple and I'll leave out; it just adds a text frame to the new page and sizes it. And of course myDocument I've long ago set to be the document I'm working in.
    // Takes array of text frames, checks for overflow, and adds pages as needed
    function addOverflowPages(whichFrameArray) {
        var i = 0;
        var finalCell = whichFrameArray[0].parentStory.tables.lastItem().cells.lastItem();
        while (finalCell.parent.parent.insertionPoints.lastItem().parentTextFrames.length==0) {
            i++;
            var newpage = myDocument.pages.add(); // add new page
            whichFrameArray.push(drawTableFrame(newpage)); // draw new frame
            whichFrameArray[i].previousTextFrame = whichFrameArray[i-1]; // link new frame to previous one
    I hope this one is solid at last. I have tested it with empty final cell, full final cell, partially-overflowing final cell, and totally-overflowing final cell, and they all work for me. Thanks again to everyone for pointing me in the right direction!

  • Page break handeling when using table type field

    Hello everyone
    I've created an adobe form using tcode SFP.
    A table, "T1", is containing fields where one of it is a TABLE TYPE (Let give the following name "T1-FT1").
    So the structure can look like:
    T1-F1
    T1-F2
    T1-FT1-FTF1
    T1-FT1-FTF2
    basically the structure is like to have documents containing several items where those items have several serial number.
    I need to have page break per documents, per items and serial number where those one have specific header page different than the document itself.
    I need to have a page break per T1 records with specifc header.
    So for each new records of T1, I have to create a new page with it's specific header.
    The table T1-FT1 is starting on the current page, but if I have to many records to stay on the page I need to create another page with it's specific header that is different than the page 1.
    My problem is the page break handling.
    I can have the pagination tab at the Table1 and row1 level but I don't have the pagination tab at the T1-FT1 level.
    Here is what my hierarchy:
    _MasterPage
    __Page1
    __Page2
    _MainSubForm
    __Subform1
    ___Table1
    ____Row1
    _____Subform
    ______Table2
    ________Row2
    Example of Data:
    T1-F1 ___ T1-F2 __ T1-FT1-FTF1 __ T1-FT1_FTF2
    A _______ B _____  1 ___________  1
    A _______ B _____  1 ___________  2
    B _______ C _____  1 ___________  1
    B _______ D _____  1 ___________  2
    B _______ D _____  1 ___________  3
    The final page break layout should look like:
    Page1
    Header1
    A B
    ___ 1 1
    ___ 1 2
    Page2
    Header1
    B C
    ___ 1 1
    ___ 1 2
    Page 3
    Header2
    B C
    ___ 1 3
    Because there is not enough room on page 2 for the last record of the table T1-FT1, a new header is used on page 3.
    Actually several problems occurs. I cannot have the proper page break set to avoid empty pages as first or last page.
    The pagination tab stop to be available after the Row1. So we cannot set page break at the table2 and row2.
    The page break contidion doesn't work. "Well I didn't succeed to make it work".
    Any idea on how to handle those page break at table2 level?
    Is anyone had to create a PDF form where we have the date into several level of structure?
    Regards
    dstj
    Edited by: dstj on Feb 18, 2010 10:59 PM
    Edited by: dstj on Feb 18, 2010 11:00 PM

    I have the exact same issue. Could not find a solution. In my case, there are multiple subforms printed one below the other. If an expandable subform overflows into a new page, the last line overlaps with the text of next subform. I have added blank spaces between the subforms but, that does not solve the issue.
    Finally, I have managed to minimize the occurrence of the issue by doing the following. Only turn on the flag "Allow Page breaks within content" for subforms that can really spread over many pages. All other subforms, turn the flag off. This minimizes the possibility of overlapping.

Maybe you are looking for