Fornece opções fáceis de personalização para o documento exportado usando pré e pós-processadores ou objetos.
$render=explode(" ",$_POST['partial_render']);
if($_POST['source']=='tbl'){
$_SESSION['inicio']=$_POST['tbl_first'];
$_SESSION['paginas']=$paginas=$_POST['tbl_rows'];
}
if($_POST['source']=='tbl2'){
$_SESSION['inicio']=$_POST['tbl2_first'];
$_SESSION['paginas']=$paginas=$_POST['tbl2_rows'];
}
if(isset($_SESSION['inicio'])){
//valor normal
}else{
$_SESSION['inicio']='0';
}
if(isset($_SESSION['paginas'])){
//valor normal
}else{
$_SESSION['paginas']='10';
}
$elementos='id_produto, codigo, p.produto, c.categoria, quantidade';
if($_POST['source']=='xls2' or $_POST['source']=='pdf2'){
$elementos='id_produto, p.produto, c.categoria, quantidade';
}
$result = "SELECT ".$elementos." FROM produtos p inner join categorias c on p.categoria=c.id_categoria inner join estoque e on p.estoque=e.id_estoque LIMIT ".$_SESSION['inicio'].',' .$_SESSION['paginas'];
$total = $pdo->query($result);
$result = $pdo->query($result);
if($_POST['source']=='tbl'){
$resposta='';
while ($linha = $result->fetch(PDO::FETCH_ASSOC)){
$resposta.='
<tr data-ri="'.$linha['id_produto'].'" class="ui-widget-content ui-datatable-even" role="row">
<td role="gridcell" class="">'.$linha['codigo'].'</td>
<td role="gridcell" class="">'.$linha['produto'].'</td>
<td role="gridcell" class="">'.$linha['categoria'].'</td>
<td role="gridcell" class="">'.$linha['quantidade'].'</td>
</tr>';
}
}
if($_POST['source']=='tbl2'){
$resposta='';
while ($linha = $result->fetch(PDO::FETCH_ASSOC)){
$resposta.='
<tr data-ri="'.$linha['id_produto'].'" class="ui-widget-content ui-datatable-even" role="row">
<td role="gridcell" class="">'.$linha['produto'].'</td>
<td role="gridcell" class="">'.$linha['categoria'].'</td>
<td role="gridcell" class="">'.$linha['quantidade'].'</td>
</tr>';
}
}
if($_POST['source']=='xls' or $_POST['source']=='xls2'){
$render[0]='vazio';
$resposta='vazio';
$tasks = array();
while ($row = $result->fetch(PDO::FETCH_ASSOC)){
$tasks[]=$row;
}
$conteudo='';
$heading = false;
if(!empty($tasks))
foreach($tasks as $row) {
if(!$heading) {
$conteudo.= implode("\t", array_keys($row)) . "\n";
$heading = true;
}
$conteudo.= implode("\t", array_values($row)) . "\n";
}
$eval='DinarteCoelho.download(\'data:application/vnd.ms-excel;base64,'.base64_encode($conteudo).'\', \'application/vnd.ms-excel\', \'produtos.xls\', \'dinartecoelho.download_ui_data_dataexporter_customizedDocuments.php\')';
}
if($_POST['source']=='pdf' or $_POST['source']=='pdf2'){
$render[0]='vazio';
$resposta='vazio';
include_once '../../../pdf-php-master/src/Cezpdf.php';
$pdf = new CezPDF('a4');
$pdf->selectFont('Helvetica');
$data = array();
while ($row = $result->fetch(PDO::FETCH_ASSOC)){
$data[]=$row;
}
$pdf->ezText("\n<b>Tabela de Produtos</b>", 12);
$pdf->ezText("<b>Dados da consulta</b>", 10);
$pdf->ezTable($data, $cols, '', ['showHeadings' => 1, 'shaded' => 1, 'gridlines' => 31, 'cols' => 1, 'innerLineThickness' => 1, 'outerLineThickness' => 1]);
$eval='DinarteCoelho.download(\'data:application/pdf;base64,'.base64_encode($pdf->output()).'\', \'application/pdf\', \'produtos.pdf\', \'dinartecoelho.download_ui_data_dataexporter_customizetDocuments.php\')';
}
dc.cw("DataTable", "widget_tbl", {
id: "tbl"
, paginator: {
id: ['paginacao_topo', 'paginacao_base']
, rows: <?php echo $num_pag;?>
, rowCount: <?php echo $total_rgtr;?>
, page: 0
, currentPageTemplate: '({currentPage} of {totalPages})'
}
, groupColumnIndexes: []
, disableContextMenuIfEmpty: false
});
dc.cw("DataTable", "widget_tbl2", {
id: "tbl2"
, paginator: {
id: ['paginator_top', 'paginator_bottom']
, rows: <?php echo $num_pag;?>
, rowCount: <?php echo $total_rgtr;?>
, page: 0
, currentPageTemplate: '({currentPage} of {totalPages})'
}
, groupColumnIndexes: []
, disableContextMenuIfEmpty: false
});