Skip to main content
Inspiring
June 28, 2019
Question

Force page break after so many rows with cfquery?

  • June 28, 2019
  • 3 replies
  • 558 views

Hello, we're using Coldfusion and SQL and are trying to make a page with a query with only one table with one row and need it to force a page break after so many rows for example 50. We could also have it force a page break after 8x11 page is filled. I'm using a header and it will never show the header (theas) on page 2 sense it can't figure out where the page break is. Any help would be great.

<head>

<script>

thead {

position: sticky;

top: 0px;

}

</script>

</head>

<thead>

<table width="100%" cellspacing="2" cellpadding="0" border="0"     align="center" bgcolor="#CCCCCC" contenteditable="false">

<td bgcolor="#EDE9C6" width="5px">

  <div align="center"><nobr><font size="-2">fmt</font></div>

</td>

<td style="overflow:hidden;" bgcolor="#EDE9C6" width="23px">

  <div align="center"><strong><font size="-2">    <nobr>            category               </font></strong></div>

</td>

<td bgcolor="EDE9C6" width="20px">

  <div align="center"><nobr><font size="-2">         SKU         </font></div>

</td>

<td bgcolor="EDE9C6" width="25px">

  <div align="center"><strong><nobr><font size="-2">                          artist                       </font></strong></div>

</td>

<td bgcolor="EDE9C6" width="25px">

  <div align="center"><nobr> <font size="-2">                       title                      </font></div>

</td>

<td bgcolor="EDE9C6" width="5px">

  <div align="center"><strong><nobr><font size="-2"><strong>qs     </strong></font></strong></div>

</td>

<td bgcolor="EDE9C6" width="12px">

  <div align="center"><nobr><font size="-2">fa </font></div></td>

<td bgcolor="EDE9C6" width="12px">

  <div align="center"><strong><font size="-2"><strong>ts </strong>    </font></strong></div>

</td>

<td bgcolor="EDE9C6" width="12px">

  <div align="center"><nobr><font size="-2">wtd </font></div>

</td>

<td bgcolor="EDE9C6" width="12px"><div align="center"><strong><font size="-2">mtd </font></strong></div></td>

<td bgcolor="EDE9C6" width="12px"><div align="center"><font size="-2">ytd </font></div></td>

<td bgcolor="EDE9C6" width="20px">

  <div align="center"><font size="-2"><strong>price</strong></font>

    </div></td>

<td bgcolor="EDE9C6" width="15px">

  <div align="center"><font size="-2">check</font>

  </div></td>

</table></thead>

<table width="100%" cellspacing="2" cellpadding="0" border="0" align="center" bgcolor="#CCCCCC" contenteditable="false">

<tbody>

<cfoutput query="myquery">

<tr>

<td bgcolor="ffffff" width="5px">

  <div align="center"><nobr><font size="-2">#fmt#</font></div>

</td>

<td style="overflow:hidden;" bgcolor="ffffff" width="50px">

  <div align="center"><strong><nobr><font size="-2">#Left(catdesc,20)#    </font></strong></div>

</td>

<td bgcolor="ffffff" width="20px">

  <div align="center"><nobr><font size="-2">#fsku#</font></div>

</td>

<td bgcolor="ffffff" width="25px">

  <div align="center"><strong><nobr><font size="-2">#Left(artist,25)#    </font></strong></div>

</td>

<td bgcolor="ffffff" width="25px">

  <div align="center"><nobr><em><font size="-2">#Left(title,25)#</font>    </em></div>

</td>

<td bgcolor="ffffff" width="8px">

  <div align="center"><strong><nobr><font size="-2">#fUpStkQty#</font>    </strong></div>

</td>

<td bgcolor="ffffff" width="12px">

  <div align="center"><nobr><font size="-2"><cfif #Fas# is not "">X<cfelseif #Fas# is "">  </cfif></font></div></td>

<td bgcolor="ffffff" width="12px">

  <div align="center"><strong><font size="-2">#fStockQty#</font></strong>    </div>

</td>

<td bgcolor="ffffff" width="12px">

  <div align="center"><nobr><font size="-2">#fNSWTD1#</font></div>

</td>

<td bgcolor="ffffff" width="12px"><div align="center"><strong><font size="-2">#fNSMTD1#</font></strong></div></td>

<td bgcolor="ffffff" width="12px"><div align="center"><font size="-2">#fNSYTD1#</font></div></td>

<td bgcolor="ffffff" width="20px">

  <div align="center"><strong><font size="-2">$#fcost#</font></strong>

    </div></td>

<td bgcolor="ffffff" width="15px">

  <div align="center"><font size="-2">             </font>

  </div></td>

</cfoutput></tbody>

</table>

    This topic has been closed for replies.

    3 replies

    Participating Frequently
    July 2, 2019

    The only way to get true page breaks for a report type output is to use CFDOCUMENT and output a PDF then you can insert

    <cfdocumentitem type="pagebreak">  to force a page break.

    taunntAuthor
    Inspiring
    July 2, 2019

    I'm trying not to use CFDOCUMENT. I keep having issues with css and it making the font extra small when I try using CFDOCUMENT  with the header and footer options.

    Participating Frequently
    July 2, 2019

    I have never had any luck with separate CSS, seems to work if you add it in line on the elements. You could also take a look at this thread https://forums.adobe.com/thread/121088

    WolfShade
    Brainiac
    July 1, 2019

    Actually, now that I think of it, you'd be better off using a non-scrolling header at the top of the page, and let the database values scroll underneath it, if you have that many records.

    HTH,

    ^ _ ^

    WolfShade
    Brainiac
    July 1, 2019

    This:

    <script>

    thead {

    position: sticky;

    top: 0px;

    }

    </script>

    .. will never work.  You're placing CSS code within a SCRIPT tag.  This will error, every time.

    I also see TD that are not contained within any TR tags.  Where are your rows???

    CORRECTION:  I see it.. the one TR.  So what you provided is just the header.  That many columns, you'll have to set up a horizontal scrollbar, unless each column is only one character wide.

    I don't fully understand your question.  Is it 'pagination' that you want?  Or are you wanting to output a header followed by 50 records followed by a header followed by 50 records, etc.?  If this is for print, that's understandable.  But I don't think CF has a 'page break' like you'd find in Word.  It can't be done, really, due to all the different browsers, monitor displays, resolution, etc.

    The web is quite fluid.

    V/r,

    ^ _ ^