Advertisement
Guest User

Untitled

a guest
Aug 27th, 2014
183
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.54 KB | None | 0 0
  1. if($_GET) {
  2. $type = cleanString($_GET['t']);
  3. $objPHPExcel = new PHPExcel();
  4. $objPHPExcel->getProperties()->setCreator("Stock (".$type.")");
  5. $objPHPExcel->getProperties()->setLastModifiedBy($_SESSION['user']['username']);
  6. $objPHPExcel->getProperties()->setTitle("Stock");
  7. $objPHPExcel->getProperties()->setSubject("Stock");
  8. $objPHPExcel->getDefaultStyle()->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_TEXT);
  9.  
  10. $objPHPExcel->setActiveSheetIndex(0);
  11. $objPHPExcel->getActiveSheet()->getStyle("A1:L1")->applyFromArray(array("font" => array("bold" => true)));
  12. $objPHPExcel->getActiveSheet()->setAutoFilter("A1:L1");
  13. $objPHPExcel->getActiveSheet()->getColumnDimension("A")->setWidth(24);
  14. $objPHPExcel->getActiveSheet()->getColumnDimension("B")->setWidth(24);
  15. $objPHPExcel->getActiveSheet()->getColumnDimension("C")->setWidth(24);
  16. $objPHPExcel->getActiveSheet()->getColumnDimension("D")->setWidth(40);
  17. $objPHPExcel->getActiveSheet()->getColumnDimension("E")->setWidth(40);
  18. $objPHPExcel->getActiveSheet()->getColumnDimension("F")->setWidth(40);
  19. $objPHPExcel->getActiveSheet()->getColumnDimension("G")->setWidth(40);
  20. $objPHPExcel->getActiveSheet()->getColumnDimension("H")->setWidth(40);
  21. $objPHPExcel->getActiveSheet()->getColumnDimension("I")->setWidth(40);
  22. $objPHPExcel->getActiveSheet()->getColumnDimension("J")->setWidth(11);
  23. $objPHPExcel->getActiveSheet()->getColumnDimension("K")->setWidth(14);
  24. $objPHPExcel->getActiveSheet()->getColumnDimension("L")->setWidth(13);
  25.  
  26. $objPHPExcel->getActiveSheet()->SetCellValue('A1', 'Material Code');
  27. $objPHPExcel->getActiveSheet()->SetCellValue('B1', 'Description');
  28. $objPHPExcel->getActiveSheet()->SetCellValue('C1', 'Picking Location');
  29. $objPHPExcel->getActiveSheet()->SetCellValue('D1', 'Value');
  30. $objPHPExcel->getActiveSheet()->SetCellValue('E1', 'Quantity');
  31. $objPHPExcel->getActiveSheet()->SetCellValue('F1', 'Category Manager');
  32. $objPHPExcel->getActiveSheet()->SetCellValue('G1', 'Stock Controller');
  33. $objPHPExcel->getActiveSheet()->SetCellValue('H1', 'Supplier');
  34. $objPHPExcel->getActiveSheet()->SetCellValue('I1', 'Delivery Expected');
  35. $objPHPExcel->getActiveSheet()->SetCellValue('J1', 'Substitute');
  36. $objPHPExcel->getActiveSheet()->SetCellValue('K1', 'Comments');
  37. $objPHPExcel->getActiveSheet()->SetCellValue('L1', 'Status');
  38.  
  39. $objPHPExcel->getActiveSheet()->freezePane('B2');
  40.  
  41. $items = $db->fetchAll('SELECT
  42. hsbu.id,
  43. hsbu.material_code,
  44. hsbu.description,
  45. hsbu.pick_location,
  46. hsbu.value,
  47. hsbu.quantity,
  48. hsbu.category_manager,
  49. hsbu.stock_controller,
  50. hsbu.supplier,
  51. hsbau.delivery_expected,
  52. hsbau.substitute,
  53. hsbau.comments,
  54. hsbau.status,
  55. hsbau.prevent_order_indicator
  56. FROM stock'.$type.' hsbu LEFT JOIN stock_additional'.$type.' hsbau ON hsbau.material_code = hsbu.material_code ORDER BY status ASC');
  57.  
  58. foreach($items AS $key=>$item) {
  59. $bk='';
  60. if($item->status == 0)
  61. $bk = 'E5F6FF;';
  62. elseif($item->status == 1)
  63. $bk = 'E9FFD0;';
  64. elseif($item->status == 2)
  65. $bk='FFF0D8;';
  66.  
  67. $objPHPExcel->getActiveSheet()->getStyle("A1:L1")->applyFromArray(array("font" => array("bold" => true)));
  68. $objPHPExcel->getActiveSheet()->getStyle("A" . ($key + 2) .":L" . ($key + 2))->applyFromArray(
  69. array(
  70. "fill" => array(
  71. "type" => PHPExcel_Style_Fill::FILL_SOLID,
  72. "color"=>array(
  73. "rgb"=>$bk
  74. )
  75. )
  76. )
  77. );
  78.  
  79. $objPHPExcel->getActiveSheet()->SetCellValue('A' . ($key + 2), $item->material_code);
  80. $objPHPExcel->getActiveSheet()->SetCellValue('B' . ($key + 2), $item->description);
  81. $objPHPExcel->getActiveSheet()->SetCellValue('C' . ($key + 2), $item->pick_location);
  82. $objPHPExcel->getActiveSheet()->SetCellValue('D' . ($key + 2), $item->value);
  83. $objPHPExcel->getActiveSheet()->SetCellValue('E' . ($key + 2), $item->quantity);
  84. $objPHPExcel->getActiveSheet()->SetCellValue('F' . ($key + 2), $item->category_manager);
  85. $objPHPExcel->getActiveSheet()->SetCellValue('G' . ($key + 2), $item->stock_controller);
  86. $objPHPExcel->getActiveSheet()->SetCellValue('H' . ($key + 2), $item->supplier);
  87. $objPHPExcel->getActiveSheet()->SetCellValue('I' . ($key + 2), $item->delivery_expected);
  88. $objPHPExcel->getActiveSheet()->SetCellValue('J' . ($key + 2), $item->substitute);
  89. $objPHPExcel->getActiveSheet()->SetCellValue('K' . ($key + 2), $item->comments);
  90. $objPHPExcel->getActiveSheet()->SetCellValue('L' . ($key + 2), ' ' . $item->status);
  91.  
  92. }
  93.  
  94. $objWriter = new PHPExcel_Writer_Excel5($objPHPExcel);
  95. $newFile = date("y-m-d") . '-' . rand(9,9999) . '-report.xls';
  96. header('Content-type: application/vnd.ms-excel');
  97. header('Content-Disposition: attachment;filename="'.$newFile.'"');
  98. header('Cache-Control: max-age=0');
  99. header("Pragma: no-cache");
  100. $objWriter->save('php://output');
  101. echo $newFile;
  102. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement