Boa galera rodei atraz de uma maneira para inserir o cabeçalho e o rodapé do fpdf na aplicação blank, como eu não consegui, pois tinha que extender a classe FPDF, e o scriptcase não permite, então fiz tudo na mão. Em caso de melhorias no código, dúvidas, etc… deixa o camentário aê.
[code]/relatorio de encomendas envidas pelo os correios/
//aqui eu inicio o fpdf
sc_include_lib(“fpdf”);
$pdf = new fpdf();
$pdf->SetAutoPageBreak(0);
//Função para limitar a quantidade de carater na celula do fdpf
function limitar($string, $tamanho, $encode = ‘UTF-8’) {
$string = mb_substr($string, 0, $tamanho, $encode);
return $string;
}//fim da função “limitar”
//query para pegar os valores da tabela e somar
$queryvalor = mysql_query(“SELECT SUM(valor)as soma
FROM
encomendas
WHERE
data
BETWEEN
'”.[data_inicial_digitada]."’
AND
‘".[data_final_digitada]."’
");
/Somando o campo “valor” e convertendo para moeda R$/
$cont = mysql_fetch_array($queryvalor);
$valor_total = number_format($cont[“soma”],2,’,’,’.’);
/lookup na tabela “encomendas” pesquisando por um intervalo de datas,
onde as datas estão vindo de uma outra aplicação de controle/
sc_lookup(meus_dados,“SELECT
solicitante,
remetente,
destinatario,
rastreamento,
data,
valor,
observacao
FROM
encomendas
WHERE
data
BETWEEN
'”.[data_inicial_digitada]."’
AND
‘".[data_final_digitada]."’
ORDER BY
data
");//fim do sc_lookup
//aqui eu converto as datas para poder exibir no relatório
$data_inicial = sc_date_conv([data_inicial_digitada],“aaaammdd”,“dd/mm/aaaa”);
$data_final = sc_date_conv([data_final_digitada],“aaaammdd”,“dd/mm/aaaa”);
//variável que me diz a quantidade de linhas a ser impressa
$linhasPpg = 26;
//variável que me diz quando deve ser impresso o cabeçalho e rodapé
$linhasCbl = 999;
//variável para exibir o número da página
$PageNo = 0;
//variável que pega o numero de registro que tenho no banco
$max = sizeof($meus_dados);
/aqui inicia o loop que vai imprimir todo o meu relatório/
for($i= 0; $i < $max;$i++)
{
/aqui onde eu pego os dados do lookup,
colocao em variáveis e limito o tamanho de caracteres/
$myhr_solicitante = limitar({meus_dados[$i][0]},22);
$myhr_remetente = limitar({meus_dados[$i][1]},22);
$myhr_destinatario = limitar({meus_dados[$i][2]},27);
$myhr_rastreamento = limitar({meus_dados[$i][3]},17);
$myhr_data = sc_date_conv({meus_dados[$i][4]},“aaaa-mm-dd”,“dd/mm/aaaa”);
$myhr_valor = number_format({meus_dados[$i][5]},2,’,’,’.’);
$myhr_observacao = limitar({meus_dados[$i][6]},29);
/*aqui estou somando a variável, que vai me dizer
quando eu devo imprimir o cabeçalho e rodapé*/
$linhasCbl = $linhasCbl + 1;
/*------------------------- cabeçalho e rodapé----------------------------------*/
/*------------------------- cabeçalho e rodapé----------------------------------*/
/*condição para imprimir cabeçalho e rodapé,
se a variável para imprimir cabeçalho for maior que
a variavel com a quantidade de linhas a imprimir,
então imprima*/
if ($linhasCbl > $linhasPpg) {
//aqui e pego o número da página, toda a vez que eu iimprimir o cabeçalho
$PageNo = $PageNo + 1;
//adiciono uma pagina para meu relatório
$pdf->AddPage('L','A4');
//carrego as imagens do meu relatório
$pdf->Image('../_lib/img/sys__NM__bg_menu.jpg', 8, 25, 280, 6);
$pdf->Image('../_lib/img/sys__NM__topo-marca.png', 8, 5, 60, 15);
//defino o título do cabeçalho
$pdf->SetFont('Arial', '', 20);
$pdf->SetXY(8,5);
$pdf->Cell(280,10,'Relatório de encomendas Enviadas: ',0,1,'C');
$pdf->Ln(2);
//defino local para exibir das datas do intervalo pesquisado
$pdf->SetFont('Arial','',10 );
$pdf->SetX(220);
$pdf->Cell(16,6,'Período: ',0,0,'L');
$pdf->Cell(20,6,$data_inicial,1,0,'L');
$pdf->Cell(9,6,' até ',0,0,'L');
$pdf->Cell(20,6,$data_final,1,0,'L');
/*--------------- imprimo o rodapé--------------------*/
/*--------------- imprimo o rodapé--------------------*/
$pdf->SetTextColor(0);
$pdf->Setxy(145,200);
$pdf->Cell(45,6,'Página '.$PageNo,0,0,'L');
/*--------------- fim do rodapé -------------------*/
/*--------------- fim do radapé -------------------*/
/*-------- imprimo o cabeçalho da tabela -------*/
$pdf->SetTextColor(255);
$pdf->SetFont('Arial', 'B', 11);
$pdf->Setxy(8,25);
$pdf->Cell(45,6,'Solicitante',1,0,'L');
$pdf->Cell(45,6,'Remetente',1,0,'L');
$pdf->Cell(55,6,'Destinatario',1,0,'L');
$pdf->Cell(35,6,'Rastreamento',1,0,'L');
$pdf->Cell(25,6,'Valor',1,0,'L');
$pdf->Cell(55,6,'Observação',1,0,'L');
$pdf->Cell(20,6,'Data',1,1,'L');
/*aqui eu zero a variável do cabeçalho para não iimprimir,
enquanto não atingir a quantidade maxima de linhas por pagina*/
$linhasCbl = 0 ;
}//aqui eu fecho o loop do cabeçalho e rodapé
/*aqui eu imprimo as linhas da minha tabela*/
$pdf->SetTextColor(0);
$pdf->SetFont('Arial', '', 9);
$pdf->Setx(8);
$pdf->Cell(45,6,$myhr_solicitante,1,0,'L');
$pdf->Cell(45,6,$myhr_remetente,1,0,'L');
$pdf->Cell(55,6,$myhr_destinatario,1,0,'L');
$pdf->Cell(35,6,$myhr_rastreamento,1,0,'L');
$pdf->Cell(5,6,'R$','LTB',0,'L');
$pdf->Cell(20,6,$myhr_valor,'TRB',0,'R');
$pdf->Cell(55,6,$myhr_observacao,1,0,'L');
$pdf->Cell(20,6,$myhr_data,1,1,'L');
}//aqui eu fecho a impressão do relatório
/*e por último, imprimo um resumo de quantos registos foram impressos, e
valor total das encomendas enviadas*/
$pdf->SetFont('Arial', 'B', 11);
$pdf->Cell(0,15,"",0,1);
$pdf->SetX(8);
$pdf->Cell(55,6,'Quantidade de Encomendas: ',0,0,'L');
$pdf->Cell(20,6,$max,0,1,'L');
$pdf->Cell(0,5,"",0,1);
$pdf->SetX(8);
$pdf->Cell(25,6,'Valor Total: ',0,0,'L');
$pdf->Cell(25,6,'R$'.$valor_total,0,0,'L');
$pdf->Output();[/code]
COLOQUEI A IMAGEM DE UM EXEMPLO DO RELATÓRIO IMPRESSO
PS. CÓDIGO ESTÁ TODO COMENTADO…