Skip to main content
Participating Frequently
June 16, 2010
Question

Problems with PDF

  • June 16, 2010
  • 1 reply
  • 576 views

I am having two problems creating PDF files.

First, in some cases, the last line of text (not footer) is being chopped and the remainder printed on the next page (not heading).  Second problem is my rightmost column is an amount.  Sometimes I print totals, sometimes detail.  The column is right aligned.  However the column does not line up.

Here is an example of the column not lining up:

And here is an example of the chopped page:

Here is my code that creates this.  Can anyone help me fix these two problems?

Thanks!
-Dave

<cfset object_total =0>
<cfset goal_total =0>
<cfset fund_total =0>
<cfset report_total =0>

<cfdocument format="PDF" saveasname="Payroll report.pdf" pagetype="letter" >

  <cfoutput query="payroll_resource_sorted" group="dummy">
    <cfdocumentsection margintop="1.4" marginbottom="0.5">
      <cfdocumentitem type="header">
        <cfset todaydate = Now()>
        <cfset head="Fund: " & nvl("#my_fund#")>
        <cfset head=head & " Resource: " & nvl("#my_resource#") & "    ">
        <cfset head=head & "Year: " & nvl("#my_year#") & "    ">
        <cfset head=head & "Goal: " & nvl("#my_goal#") & "    ">
        <cfset head=head & "Function: " & nvl("#my_function#") & "    ">
        <cfset head=head & "Object: " & nvl("#my_object#") & "    ">
        <cfset head=head & "Location: " & nvl("#my_location#")>

        <center><h1><font face="arial">Montebello Unified School District</font></h1></center>
        <center><h2><font face="arial">Selected Payroll Distribution</font></h2></center>
        <center><h2><font face="arial">Date: #dateformat(now())#</font></h2></center>
        <center><h3><font  face="arial"> #head# </font></h3>
         </center>
      <table width="98%" border="0">
        <tr>
          <th align="left" colspan="12"><font face="arial" size ="4">Pseudo</font></th>
          <th align="left"colspan="48"><font face="arial" size ="4">Account Number</font></th>
          <th align="left"colspan="10"><font face="arial" size ="4">Reg</font></th>
          <th align="left" colspan="38"><font face="arial" size ="4">Name</font></th>
          <th align="left"colspan="11"><font face="arial" size ="4">From</font></th>
          <th align="left"colspan="12"><font face="arial" size ="4">To</font></th>
          <th align="left"colspan="12"><font face="arial" size ="4">Pay</font></th>
          <th align="left"colspan="12"><font face="arial" size ="4">% Dist</font></th>
          <th colspan="6"><font face="arial" size ="4">Amount</font></th>
        </tr>
      </table>
      </cfdocumentitem>
      <cfdocumentitem type="footer">
        <center>  <font face="arial" size="-2">Page #cfdocument.currentpagenumber#</font> </center>
      </cfdocumentitem>
      <table width="98%" border="0">
        <cfoutput>
        <tbody>
        <cfif '#prev_object#' neq '#payroll_resource_sorted.objectcd#'>
          <cfset total_needed = 1>
        </cfif>
        <cfif '#prev_goal#' neq '#payroll_resource_sorted.goalcd#'>
    <cfset total_needed = 2>
  </cfif>
        <cfif "#payroll_resource_sorted.fundcd#" eq "01">
     <cfif "#payroll_resource_sorted.fundcd#" lt "2000">
       <cfset curr_fund = "01-0000->01-1999">
     <cfelse>
       <cfset curr_fund = "01-2000->01-9999">
     </cfif>
   <cfelse>
     <cfset curr_fund = "#payroll_resource_sorted.fundcd#">
  </cfif>
        <cfif prev_fund neq curr_fund>
          <cfset total_needed = 3>
        </cfif>

        <cfif total_needed neq 0>
    <tr>
      <td><font face="arial" size ="1">&nbsp</font>  </td>
      <td><font face="arial" size ="1">&nbsp</font>  </td>
      <td><font face="arial" size ="1">&nbsp</font>  </td>
      <td><font face="arial" size ="1">&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp   OBJECT #prev_object# total</font></td>
      <td><font face="arial" size ="1">&nbsp</font>  </td>
      <td><font face="arial" size ="1">&nbsp</font>  </td>
      <td><font face="arial" size ="1">&nbsp</font>  </td>
      <td><font face="arial" size ="1">&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp</font>  </td>
            <td valign="top" align="right" colspan = "16">
              <font face="arial" size ="1" >#decimalformat(object_total)#</font>
      <cfset prev_object = '#payroll_resource_sorted.objectcd#'>
      <cfset object_total = 0>
    </tr>
     </cfif>
        <cfif total_needed gt 1>
    <tr>
      <td>  </td>
      <td>  </td>
      <td>  </td>
      <td><font face="arial" size ="1"> &nbsp&nbsp&nbsp&nbsp GOAL #prev_goal# total</font></td>
      <td>  </td>
      <td>  </td>
      <td>  </td>
      <td>  </td>
            <td valign="top" align="right" colspan = "16">
              <font face="arial" size ="1" >#decimalformat(goal_total)#</font>
      <cfset prev_goal = '#payroll_resource_sorted.goalcd#'>
      <cfset goal_total = 0>
      </tr>
     </cfif>
        <cfif total_needed gt 2>
    <tr>
      <td>  </td>
      <td>  </td>
      <td>  </td>
      <td><font face="arial" size ="1">&nbsp&nbsp FUND #prev_fund# total</font></td>
      <td>  </td>
      <td>  </td>
      <td>  </td>
      <td>  </td>
            <td valign="top" align="right" colspan = "16">
              <font face="arial" size ="1" >#decimalformat(fund_total)#</font>
      <cfset prev_fund= '#curr_fund#'>
      <cfset fund_total = 0>
    </tr>
     </cfif>
     <cfif total_needed neq 0>
       <tr>
         <td> </td>
       </tr>
     </cfif>
        <cfset total_needed = 0>
        <cfif #payroll_resource_sorted.fundcd# is '99'>
    <tr>
      <td>  </td>
      <td>  </td>
      <td>  </td>
      <td><font face="arial" size ="1">REPORT TOTAL</font></td>
      <td>  </td>
      <td>  </td>
      <td>  </td>
      <td>  </td>
            <td valign="top" align="right" colspan = "16">
              <font face="arial" size ="1" >#decimalformat(report_total)#</font>
    </tr>
        <cfelse>
   <tr>
     <td valign="top" align="left">
    <font face="arial" size ="1">#payroll_resource_sorted.pseudo_num#</font>
    <cfset object_total = object_total + payroll_resource_sorted.tranamt>
    <cfset goal_total = goal_total + payroll_resource_sorted.tranamt>
    <cfset fund_total = fund_total + payroll_resource_sorted.tranamt>
    <cfset report_total = report_total + payroll_resource_sorted.tranamt>
     </td>
     <td>
    <font face="arial" size ="1">  #payroll_resource_sorted.fundcd#-
       #payroll_resource_sorted.resourcecd#-
       #payroll_resource_sorted.yearcd#-
       #payroll_resource_sorted.goalcd#-
       #payroll_resource_sorted.functioncd#-
       #payroll_resource_sorted.objectcd#-
       #payroll_resource_sorted.locationcd# </font>
     </td>
     <td valign="top">
    <font face="arial" size ="1">#payroll_resource_sorted.regnum#</font>
     </td>
     <td valign="top">
    <font face="arial" size ="1">#left(payroll_resource_sorted.name,20)#</font>
     </td>
     <td valign="top">
    <font face="arial" size ="1">#payroll_resource_sorted.from_date#</font>
     </td>
     <td valign="top">
    <font face="arial" size ="1">#payroll_resource_sorted.to_date#</font>
     </td>
     <td valign="top">
    <font face="arial" size ="1">#payroll_resource_sorted.asof_date#</font>
     </td>
     <td valign="top">
    <font face="arial" size ="1">#decimalformat(payroll_resource_sorted.distrib * 100)#</font>
     </td>
     <td valign="top" align="right" colspan = "16">
    <font face="arial" size ="1" >#decimalformat(payroll_resource_sorted.tranamt)#</font>
     </td>
   </tr>
        </cfif>
       </tbody>
       </cfoutput>
      </table>
    </cfdocumentsection>
  </cfoutput>

</cfdocument>

    This topic has been closed for replies.

    1 reply

    Participating Frequently
    June 16, 2010

    I had a similar form of outputting the data, I used a Coldfusion Report Builder created a .cfr file worked Like a charm ! but the Cf should be RDS enabled here...

    Participating Frequently
    June 16, 2010

    Well, RDS would work but would limit some of the things I want to do further with this report.  I'd really like to get the pdf

    working properly.  Any other ideas?