1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89
|
<?php
include('./../../connect_sql.php');
// -------------------- Création du fichier Excel
set_time_limit(30);
// ----- référence à la bibliothèque de fonctions
require_once 'PHPExcel.php';
require_once './PHPExcel/IOFactory.php';
// ----- création des objets de base et initialisation des informations d'entête
$classeur = new PHPExcel;
$classeur->getProperties()->setCreator("CECSDB");
$classeur->setActiveSheetIndex(0);
$feuille=$classeur->getActiveSheet();
// ----- Mise en forme de cellules et texte
$feuille->getColumnDimension('A')->setWidth(33);
$feuille->getColumnDimension('B')->setWidth(8);
$feuille->getColumnDimension('C')->setWidth(6);
$feuille->getColumnDimension('D')->setWidth(33);
$feuille->getColumnDimension('E')->setWidth(8);
// ----- Ajout des données dans la feuille de calcul
$feuille->setTitle('Tarifs bar');
$feuille->mergeCells('A1:E1');
$feuille->setCellValueByColumnAndRow(0, 1, 'Tarifs bar');
$feuille->setCellValueByColumnAndRow(0, 2, '');
$row=2;
$coll=0;
// -------------------- Lecture de la db
$categorie_article='non';
$reponse_produit=mysqli_query($conn_cecs, "SELECT type_nom, prod_prix_mbr, stock_bar_type_nom, tva.data_tva_taux AS tauxTvaVente
FROM 07_stock_produit prod
INNER JOIN 07_stock_type type ON prod.id_type_prod=type.id_type
INNER JOIN 01_data_tva tva ON prod.id_tva_prod=tva.data_tva_id
INNER JOIN 01_data_tva tva2 ON prod.id_tva_achat_prod=tva2.data_tva_id
INNER JOIN 07_stock_bar_type cat ON prod.prod_bar_cat=cat.stock_bar_type_id
WHERE id_cat_prod='009' && prod_actif='oui' && prod_prix_mbr>0
ORDER BY stock_bar_type_id, type_nom ") or die(mysqli_error($conn_cecs));
while ($in= mysqli_fetch_array($reponse_produit)) {
$article_nom=$in['type_nom'];
$article_htva=$in['prod_prix_mbr'];
$article_tva=$in['tauxTvaVente'];
$article_cat=$in['stock_bar_type_nom'];
$article_nom_afficher=str_replace('_',' ',$article_nom);
$article_tvac=sprintf("%.2f",$article_htva*(1+($article_tva/100)));
$coll ++;
if ($categorie_article!=$article_cat) {
if ($coll==2) { $row ++; $feuille->getRowDimension($row)->setRowHeight(6); }
else { $feuille->getRowDimension($row)->setRowHeight(6); }
$row ++;
$feuille->mergeCells('A'.$row.':E'.$row);
$feuille->setCellValueByColumnAndRow(0, $row, $article_cat);
$row ++;
$feuille->getRowDimension($row)->setRowHeight(6);
$feuille->setCellValueByColumnAndRow(0, $row, '');
$categorie_article=$article_cat;
$row ++;
$coll=0;
}
if ($coll==1) {
$feuille->setCellValueByColumnAndRow(0, $row, $article_nom_afficher);
$feuille->setCellValueByColumnAndRow(1, $row, $article_tvac.' ');
}
if ($coll==2) {
$feuille->setCellValueByColumnAndRow(3, $row, $article_nom_afficher);
$feuille->setCellValueByColumnAndRow(4, $row, $article_tvac.' ');
$coll=0;
$row ++;
}
}
// ----- envoi du fichier au navigateur
header('content-type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="Tarifs.xls"');
header('Cache-Control: max-age=0');
$writer = PHPExcel_IOFactory::createWriter($classeur, 'Excel5');
$writer->save('php://output');
mysqli_close($conn_cecs);
?> |
Partager