vendredi 25 octobre 2013

Help pdf problem

ust need your help with my code. My question is how can I get the table header from the previous page and access it on the remaining pages? If I have a large data I want to indicate also the header table in every page. But I don't have an idea how to do it.

Here's the function that build the table:


function BuildTable($header,$data) {


//Colors, line width and bold font

$this->SetFillColor(255,255,255);

$this->SetTextColor(0);

$this->SetDrawColor(0,0,0);

$this->SetLineWidth(.3);

$this->SetFont('Arial','',7);


//Header

// make an array for the column widths


$this->SetFillColor(0,0,0);

$this->SetTextColor(255);

$this->SetDrawColor(0,0,0);

$this->SetLineWidth(.3);

$this->SetFont('','B');


$w = array(15,120,30,30); //CHANGE THIS

// send the headers to the PDF document


for($i = 0; $i < count($header); $i++)


$this->Cell($w[$i],7,$header[$i],1,0,'C',1);

$this->Ln();


//Color and font restoration


$this->SetFillColor(255,255,230);

$this->SetTextColor(0);

$this->SetFont('');

$this->SetTextColor(0);

$fill = false; // used to alternate row color backgrounds


//HERE'S THE PART THAT LOOPS THE DATA

foreach($data as $row){


$this->Cell($w[0],4,$row[0],'LR',0,'C',$fill);

$this->SetFont('');


$this->Cell($w[1],4,$row[1],'LR',0,'L',$fill);

$this->SetFont('');


$this->Cell($w[2],4,$row[2],'LR',0,'R',$fill);

$this->SetFont('');


$this->Cell($w[3],4,$row[3],'LR',0,'R',$fill);

$this->SetFont('');


$this->Ln();

$fill =! $fill;

}


$this->Cell(array_sum($w),0,'','T');


$this->Ln(50);

$this->Ln(50);


}


Below is the call for PDF class


foreach($result->result_array() as $row){


$data[] = array($row['item_qty'],

$row['itemname'],

number_format($row['item_price'],2),

number_format($row['total'],2),


);


}


$pdf = new PDF();

$pdf->AliasNbPages();


$header = array('QTY','ITEM / DESCRIPTION' , 'UNIT PRICE', 'TOTAL AMOUNT');


$pdf->SetFont('Arial','',8);

$pdf->SetFillColor(255,0,0);


$pdf->AddPage('l');


$pdf->Ln();

$pdf = new PDF();

By the way I have also a header and footer function. In first row I need to have 39 rows excluding the table header and the second row and also the remaining should 36 rows.


How can I compute that? Where should I need a computation for that?


Please help me guys thanks.[/QUOTE]






via Symbianize Forum http://www.symbianize.com/showthread.php?t=1072767&goto=newpost

Aucun commentaire:

Enregistrer un commentaire