Files
crm.e5.pl/modules/EcmReports/ReportStockDocMoves.php

547 lines
24 KiB
PHP
Raw Permalink Normal View History

2024-04-27 09:23:34 +02:00
<?php
ini_set('memory_limit', '-1');
ini_set('max_execution_time', '-1');
if (!defined('sugarEntry') || !sugarEntry)
die('Not A Valid Entry Point');
function getStocksList() {
$db = $GLOBALS['db'];
$queryStocks = "SELECT id, name FROM ecmstocks WHERE deleted= 0";
$rowsStocks = $db->query($queryStocks);
$stocks = array();
while ($rowStocks = $db->fetchByAssoc($rowsStocks)) {
$stocks [$rowStocks ["id"]] = $rowStocks ["name"];
}
return $stocks;
}
function getStockIndexList() {
$db = $GLOBALS['db'];
$queryStockIndex = "SELECT id, name FROM ecmproductstockindexs;";
$rowsStockIndex = $db->query($queryStockIndex);
$StockIndexList = array();
while ($rowStocksIndex = $db->fetchByAssoc($rowsStockIndex)) {
$StockIndexList [$rowStocksIndex ["id"]] = $rowStocksIndex ["name"];
}
return $StockIndexList;
}
function getKartotekaMaterialowaQuery($unknow) {
if (!isset($unknow) || count($unknow) == 0 || (in_array('', $unknow))) {
} else {
if (in_array('NULL', $unknow) && count($unknow) == 1) {
$query .= " AND doc.ecmproductstockindex_id IS NULL ";
} else if (in_array('NULL', $unknow) && count($unknow) > 1) {
$queryUnknow = " (";
foreach ($unknow as $key => $value) {
if ($value != 'NULL') {
$queryUnknow .= "'" . $value . "',";
}
}
$queryUnknow = rtrim($queryUnknow, ",");
$queryUnknow .= ") ";
$query .= " AND (doc.ecmproductstockindex_id IS NULL OR doc.ecmproductstockindex_id IN " . $queryUnknow . ") ";
} else {
$queryUnknow = " (";
foreach ($unknow as $key => $value) {
$queryUnknow .= "'" . $value . "',";
}
$queryUnknow = rtrim($queryUnknow, ",");
$queryUnknow .= ") ";
$query .= " AND doc.ecmproductstockindex_id IN " . $queryUnknow . " ";
}
}
return $query;
}
// Tworzy kawałek zapytania dla magazynów
// np: ('magazyn1','magazyn2',...)
function getStockQuery($stockSelected) {
if (isset($stockSelected) && count($stockSelected) > 0) {
$queryStockSelected = " (";
foreach ($stockSelected as $key => $value) {
$queryStockSelected .= "'" . $value . "',";
}
$queryStockSelected = rtrim($queryStockSelected, ",");
$queryStockSelected .= ") ";
} else {
$stockList = getStocksList();
$queryStockSelected = " (";
foreach ($stockList as $key => $value) {
$queryStockSelected .= "'" . $key . "',";
}
$queryStockSelected = rtrim($queryStockSelected, ",");
$queryStockSelected .= ") ";
}
return $queryStockSelected;
}
function getDataRwPwKs($documentsSelected, $stockSelected, $date_from, $date_to, $stockIndexSelected,$catId) {
if (!isset($documentsSelected) && isset($stockSelected) && isset($date_from) && isset($date_to)) {
return null;
}
$db = $GLOBALS['db'];
global $app_list_strings;
$documentsList = array(// dokumenty
'EcmStockDocInsideOuts' => 'RW',
'EcmStockDocInsideIns' => 'PW',
'EcmStockDocMoves' => 'MM',
'EcmStockDocCorrects' => 'KS',
'EcmStockDocIns' => 'PZ',
'EcmStockDocOuts' => 'WZ',
'EcmInvoiceOuts' => "FK",
'EcmReceipts' => 'Paragon'
);
$query = "SELECT "
. "doc.id AS docid, "
. "doc.ecmproductstockindex_name AS docstockindex, "
. "doc.name AS docname, "
. "DATE_FORMAT(doc.register_date,'%d.%m.%Y') AS docregister_date, "
. "doc.document_no AS docdocument_no, "
. "doc.stock_id AS docstock_id, "
. "o.type AS otype, "
. "o.quantity AS oquantity, "
. "o.price AS oprice, "
. "o.product_id AS oproduct_id, "
. "o.product_name AS oproduct_name, "
. "o.product_code as oproduct_code, "
. "p.unit_id as punit_id ";
if($documentsSelected=='EcmStockDocInsideIns'){
$query .= " ,IFNULL(o.work_price,0) as work_price ";
}
$query .= "FROM "
. "ecmstockoperations o, "
. "ecmproducts p, "
. "" . strtolower($documentsSelected) . " doc ";
if($catId){
$query.= ",ecmproductcategories_bean cat ";
}
$query.= "WHERE o.parent_id = doc.id ";
if($catId){
$query.= " and cat.bean_id = p.id ";
$query.= " and cat.ecmproductcategory_id = '".$catId."' ";
}
$query.=" AND p.id = o.product_id "
. "AND doc.deleted=0 "
. "AND o.deleted=0 "
. "AND doc.stock_id IN " . getStockQuery($stockSelected) . " "
. "AND doc.register_date >='" . $date_from . "' "
. "AND doc.register_date <= '" . $date_to . "'";
$query .= getKartotekaMaterialowaQuery($stockIndexSelected);
$query .= " GROUP BY o.id ORDER BY doc.register_date, o.product_code, o.product_name, doc.name";
$resultRows = $db->query($query);
$stockList = getStocksList();
while ($row = $db->fetchByAssoc($resultRows)) {
if($documentsSelected=='EcmStockDocCorrects'){
$c = new EcmStockDocCorrect();
$c->retrieve($row['docid']);
if($c->type=='6ed5b076-ddd1-9809-b236-54e5b2bcbd97'){
if($row['otype']==0){
$data['doc'][$row['docid']]['wartosc'] += $row['oquantity'] * $row['oprice'];
$data['prod'][$row['oproduct_id']]['wartosc'] += $row['oquantity'] * $row['oprice'];
} else {
$data['doc'][$row['docid']]['wartosc'] -= $row['oquantity'] * $row['oprice'];
$data['prod'][$row['oproduct_id']]['wartosc'] -= $row['oquantity'] * $row['oprice'];
$data['prod'][$row['oproduct_id']]['ilosc'] += $row['oquantity'];
}
} else {
$data['doc'][$row['docid']]['wartosc'] += $row['oquantity'] * $row['oprice'];
$data['prod'][$row['oproduct_id']]['wartosc'] += $row['oquantity'] * $row['oprice'];
$data['prod'][$row['oproduct_id']]['ilosc'] += $row['oquantity'];
}
unset($c);
} else {
$data['doc'][$row['docid']]['wartosc'] += $row['oquantity'] * $row['oprice'];
$data['prod'][$row['oproduct_id']]['wartosc'] += $row['oquantity'] * $row['oprice'];
$data['prod'][$row['oproduct_id']]['ilosc'] += $row['oquantity'];
$data['prod'][$row['oproduct_id']]['work_price'] += $row['work_price'];
}
$data['prod'][$row['oproduct_id']]['kod'] = $row['oproduct_code'];
$data['prod'][$row['oproduct_id']]['nazwa'] = $row['oproduct_name'];
$data['prod'][$row['oproduct_id']]['id'] = $row['oproduct_id'];
$data['prod'][$row['oproduct_id']]['data'] = $row['docregister_date'];
$data['prod'][$row['oproduct_id']]['numer'] = $row['docdocument_no'];
$data['prod'][$row['oproduct_id']]['kartoteka'] = $row['docstockindex'];
$data['prod'][$row['oproduct_id']]['jm'] = $app_list_strings['ecmproducts_unit_dom'][$row['punit_id']];
$data['doc'][$row['docid']]['magazyn'] = $stockList[$row['docstock_id']];
$data['doc'][$row['docid']]['nazwa'] = $row['docname'];
$data['doc'][$row['docid']]['otyp'] = $row['otype'];
$data['doc'][$row['docid']]['typ'] = $documentsList[$documentsSelected];
$data['doc'][$row['docid']]['id'] = $row['docid'];
$data['doc'][$row['docid']]['data'] = $row['docregister_date'];
$data['doc'][$row['docid']]['numer'] = $row['docdocument_no'];
$data['doc'][$row['docid']]['kartoteka'] = $row['docstockindex'];
}
return $data;
}
function getDataMm($documentsSelected, $stockSelected, $date_from, $date_to, $mmSelected) {
if (!isset($documentsSelected) && isset($stockSelected) && isset($date_from) && isset($date_to)) {
return null;
}
$db = $GLOBALS['db'];
global $app_list_strings;
$documentsList = array(// dokumenty
'EcmStockDocInsideOuts' => 'RW',
'EcmStockDocInsideIns' => 'PW',
'EcmStockDocMoves' => 'MM',
'EcmStockDocCorrects' => 'KS',
'EcmStockDocIns' => 'PZ',
'EcmStockDocOuts' => 'WZ',
'EcmInvoiceOuts' => "FK",
'EcmReceipts' => 'Paragon'
);
$query = "SELECT "
. "doc.id AS docid, "
. "doc.ecmproductstockindex_name AS docstockindex, "
. "doc.name AS docname, "
. "DATE_FORMAT(doc.register_date,'%d.%m.%Y') AS docregister_date, "
. "doc.document_no AS docdocument_no, "
. "doc.stock_in_id AS docstock_in_id,"
. "doc.stock_out_id AS docstock_id,"
. "o.type AS otype, "
. "o.quantity AS oquantity, "
. "o.price AS oprice, "
. "o.product_id AS oproduct_id, "
. "o.product_name AS oproduct_name, "
. "o.product_code as oproduct_code, "
. "p.unit_id as punit_id "
. "FROM "
. "ecmstockoperations o, "
. "ecmproducts p, "
. "" . strtolower($documentsSelected) . " doc "
. "WHERE o.parent_id = doc.id "
. "AND p.id = o.product_id "
. "AND doc.deleted=0 "
. "AND o.deleted=0 "
. "AND doc.stock_out_id IN " . getStockQuery($stockSelected) . " "
. "AND doc.stock_in_id IN " . getStockQuery($mmSelected) . " "
. "AND doc.register_date >='" . $date_from . "' "
. "AND doc.register_date <= '" . $date_to . "'"
. "AND o.type=0 "
. "ORDER BY doc.register_date, o.product_code, o.product_name, doc.name ";
$resultRows = $db->query($query);
$stockList = getStocksList();
while ($row = $db->fetchByAssoc($resultRows)) {
$data['doc'][$row['docid']]['wartosc'] += $row['oquantity'] * $row['oprice'];
$data['prod'][$row['oproduct_id']]['wartosc'] += $row['oquantity'] * $row['oprice'];
$data['prod'][$row['oproduct_id']]['ilosc'] += $row['oquantity'];
$data['prod'][$row['oproduct_id']]['kod'] = $row['oproduct_code'];
$data['prod'][$row['oproduct_id']]['nazwa'] = $row['oproduct_name'];
$data['prod'][$row['oproduct_id']]['id'] = $row['oproduct_id'];
$data['prod'][$row['oproduct_id']]['data'] = $row['docregister_date'];
$data['prod'][$row['oproduct_id']]['numer'] = $row['docdocument_no'];
$data['prod'][$row['oproduct_id']]['kartoteka'] = $row['docstockindex'];
$data['prod'][$row['oproduct_id']]['jm'] = $app_list_strings['ecmproducts_unit_dom'][$row['punit_id']];
$data['doc'][$row['docid']]['magazyn'] = $stockList[$row['docstock_id']];
$data['doc'][$row['docid']]['magazynIn'] = $stockList[$row['docstock_in_id']];
$data['doc'][$row['docid']]['nazwa'] = $row['docname'];
$data['doc'][$row['docid']]['typ'] = $documentsList[$documentsSelected];
$data['doc'][$row['docid']]['id'] = $row['docid'];
$data['doc'][$row['docid']]['data'] = $row['docregister_date'];
$data['doc'][$row['docid']]['numer'] = $row['docdocument_no'];
$data['doc'][$row['docid']]['kartoteka'] = $row['docstockindex'];
}
return $data;
}
function getDataPzWzFk($documentsSelected, $stockSelected, $date_from, $date_to, $accountId, $accountName) {
//var_dump(!isset($documentsSelected) && !isset($stockSelected) && !isset($date_from) && !isset($date_to));
if (!isset($documentsSelected) && !isset($stockSelected) && !isset($date_from) && !isset($date_to)) {
return null;
}
$db = $GLOBALS['db'];
global $app_list_strings;
$documentsList = array(// dokumenty
'EcmStockDocInsideOuts' => 'RW',
'EcmStockDocInsideIns' => 'PW',
'EcmStockDocMoves' => 'MM',
'EcmStockDocCorrects' => 'KS',
'EcmStockDocIns' => 'PZ',
'EcmStockDocOuts' => 'WZ',
'EcmInvoiceOuts' => "FK",
'EcmReceipts' => 'Paragon'
);
$query = "SELECT "
. "doc.id AS docid, "
. "doc.name AS docname, "
. "DATE_FORMAT(doc.register_date,'%d.%m.%Y') AS docregister_date, "
. "doc.document_no AS docdocument_no, "
. "doc.stock_id AS docstock_id, "
. "o.type AS otype, "
. "o.quantity AS oquantity, "
. "o.price AS oprice, "
. "o.product_id AS oproduct_id, "
. "o.product_name AS oproduct_name, "
. "o.product_code as oproduct_code, "
. "doc.parent_id as docparent_id, "
. "doc.parent_name as docparent_name, ";
$query .= "p.unit_id as punit_id "
. "FROM "
. "ecmstockoperations o, "
. "ecmproducts p, "
. "" . strtolower($documentsSelected) . " doc "
. "WHERE o.parent_id = doc.id "
. "AND p.id = o.product_id "
. "AND doc.deleted=0 "
. "AND o.deleted=0 ";
if($documentsSelected=='EcmInvoiceOuts'){
$query .= " AND doc.canceled=0 ";
}
if (isset($accountId) && strlen($accountId) > 0) {
$query .= "AND doc.parent_id='" . $accountId . "' ";
}
$query.= "AND doc.stock_id IN " . getStockQuery($stockSelected) . " "
. "AND doc.register_date >='" . $date_from . "' "
. "AND doc.register_date <= '" . $date_to . "'";
if($documentsSelected == 'EcmStockDocOuts' && $_REQUEST['wz_category'] != ""){
$query.= " AND doc.category = '" . $_REQUEST['wz_category'] . "' ";
}
$query .= " ORDER BY doc.register_date, o.product_code, o.product_name, doc.name";
$resultRows = $db->query($query);
$stockList = getStocksList();
while ($row = $db->fetchByAssoc($resultRows)) {
$data['prod'][$row['oproduct_id']]['kod'] = $row['oproduct_code'];
$data['prod'][$row['oproduct_id']]['nazwa'] = $row['oproduct_name'];
$data['prod'][$row['oproduct_id']]['id'] = $row['oproduct_id'];
$data['prod'][$row['oproduct_id']]['data'] = $row['docregister_date'];
$data['prod'][$row['oproduct_id']]['otype'] = $row['otype'];
$data['prod'][$row['oproduct_id']]['numer'] = $row['docdocument_no'];
$data['prod'][$row['oproduct_id']]['jm'] = $app_list_strings['ecmproducts_unit_dom'][$row['punit_id']];
$data['doc'][$row['docid']]['magazyn'] = $stockList[$row['docstock_id']];
$data['doc'][$row['docid']]['accountId'] = $row['docparent_id'];
$data['doc'][$row['docid']]['accountNazwa'] = $row['docparent_name'];
$data['doc'][$row['docid']]['nazwa'] = $row['docname'];
$data['doc'][$row['docid']]['typ'] = $documentsList[$documentsSelected];
$data['doc'][$row['docid']]['id'] = $row['docid'];
$data['doc'][$row['docid']]['doccategory'] = $app_list_strings['ecmstockdocouts_category_list'][$row['doccategory']];
$data['doc'][$row['docid']]['data'] = $row['docregister_date'];
$data['doc'][$row['docid']]['numer'] = $row['docdocument_no'];
if ($documentsSelected == 'EcmInvoiceOuts' && $row['otype'] == '0') {
$data['doc'][$row['docid']]['wartosc'] -= $row['oquantity'] * $row['oprice'];
$data['prod'][$row['oproduct_id']]['wartosc'] -= $row['oquantity'] * $row['oprice'];
$data['doc'][$row['docid']]['typ'] = 'KF';
$data['prod'][$row['oproduct_id']]['ilosc'] -= $row['oquantity'];
} else {
$data['prod'][$row['oproduct_id']]['ilosc'] += $row['oquantity'];
$data['doc'][$row['docid']]['wartosc'] += $row['oquantity'] * $row['oprice'];
$data['prod'][$row['oproduct_id']]['wartosc'] += $row['oquantity'] * $row['oprice'];
}
}
return $data;
}
//
// ***************************************************************************
//Pobieranie danych z filtrowania
if ($_REQUEST['date_from'] == '') {
$_REQUEST['date_from'] = date('01.m.Y');
} else {
$date_from = date('Y-m-d', strtotime($_REQUEST['date_from']));
}
if ($_REQUEST['date_to'] == '') {
$_REQUEST['date_to'] = date('t.m.Y');
} else {
$date_to = date('Y-m-d', strtotime($_REQUEST['date_to']));
}
$stockSelected = $_REQUEST['stockSelected'];
$documentsSelected = $_REQUEST['documentsSelected'];
$stockIndexSelected = $_REQUEST['stockIndexSelected'];
$catId= $_REQUEST['productCategoryId'];
$catName= $_REQUEST['productCategoryName'];
$viewSelected = $_REQUEST['viewSelected'];
$mmSelected = $_REQUEST['mmSelected'];
$accountId = $_REQUEST['accountId'];
$accountName = $_REQUEST['accountName'];
//Przygotowywanie innych potrzebnych zmiennych
$data = array();
$datatmp = array();
$db = $GLOBALS['db'];
global $mod_strings, $app_list_strings;
$stockList = getStocksList(); // magazyny
$stockIndexList = getStockIndexList(); //Kartoteki Materialowe
$documentsList = array(// dokumenty
'EcmStockDocInsideOuts' => 'RW',
'EcmStockDocInsideIns' => 'PW',
'EcmStockDocMoves' => 'MM',
'EcmStockDocCorrects' => 'KS',
'EcmStockDocIns' => 'PZ',
'EcmStockDocOuts' => 'WZ',
);
$viewList = array(//Lista widokow
'documents' => 'Dokumenty',
'positions' => 'Pozycje',
);
//Pobieranie i przetwarzanie danych
if ($documentsSelected == 'EcmStockDocInsideOuts' || $documentsSelected == 'EcmStockDocInsideIns' || $documentsSelected == 'EcmStockDocCorrects') {
$data = getDataRwPwKs($documentsSelected, $stockSelected, $date_from, $date_to, $stockIndexSelected,$catId);
} elseif ($documentsSelected == 'EcmStockDocMoves') {
$data = getDataMm($documentsSelected, $stockSelected, $date_from, $date_to, $mmSelected,$catId);
} elseif ($documentsSelected == 'EcmStockDocIns' || $documentsSelected == 'EcmStockDocOuts' || $documentsSelected == 'EcmInvoiceOuts' || $documentsSelected == 'EcmReceipts') {
$data = getDataPzWzFk($documentsSelected, $stockSelected, $date_from, $date_to, $accountId, $accountName,$catId);
}
$kategorie_wz[""] = "";
foreach($app_list_strings['ecmstockdocouts_category_list'] as $k => $v){
$kategorie_wz[$k] = $v;
}
// create & execute smarty
$smarty = new Sugar_Smarty ();
$smarty->assign("MOD", $mod_strings);
$smarty->assign("APP_LIST_STRINGS", $app_list_strings);
$smarty->assign("DATA", $data);
$smarty->assign("kategorie_wz", $kategorie_wz);
$smarty->assign("wz_category_selected", $_REQUEST['wz_category']);
$smarty->assign("stocksList", $stockList);
$smarty->assign("stockSelected", $stockSelected);
$smarty->assign("documentList", $documentsList);
$smarty->assign("documentSelected", $documentsSelected);
$smarty->assign("stockIndexList", $stockIndexList);
$smarty->assign("stockIndexSelected", $stockIndexSelected);
$smarty->assign("productCategoryName", $catName);
$smarty->assign("productCategoryId", $catId);
$smarty->assign("viewList", $viewList);
$smarty->assign("viewSelected", $viewSelected);
$smarty->assign("date_from", $_REQUEST['date_from']);
$smarty->assign("date_to", $_REQUEST['date_to']);
$smarty->assign("aktualnaData", date("d.m.Y"));
$smarty->assign("mmSelected", $mmSelected);
$smarty->assign("accountId", $accountId);
$smarty->assign("accountName", htmlentities($accountName));
// Eksport do PDF
if ($_REQUEST['toPDF'] == '1') {
if ($_REQUEST['to_xls'] == '1') {
$header=array();
$header[]='numer dokumentu';
$header[]='data';
$header[]='kontrahent';
$header[]='opis';
$header[]='wartość';
$header[]='magazyn';
$filename='modules/Home/Files/obroty_wg_magazynu_'.date('d_m-Y').'.csv';
$fp=fopen($filename,'w');
foreach ($header as $k=>$v){
$header[$k]=iconv('UTF-8','windows-1250',$header[$k]);
}
fwrite($fp, implode(";",$header).PHP_EOL);
foreach ($data['doc'] as $key=>$val){
$line=array();
$line[]='"=""'.preg_replace("/[^A-ZłŁąĄęĘżŻ,:.źŹ%ćĆńŃśŚóÓa-z0-9\-\/]/",' ',preg_replace("/\r\n|\r|\n/",' ',html_entity_decode($val['typ'].' '.$val['numer']))).'"""';
$line[]=$val['data'];
$line[]='"=""'.preg_replace("/[^A-ZłŁąĄęĘżŻ,:.źŹ%ćĆńŃśŚóÓa-z0-9\-\/]/",' ',preg_replace("/\r\n|\r|\n/",' ',html_entity_decode($val['accountNazwa']))).'"""';
$line[]='"=""'.preg_replace("/[^A-ZłŁąĄęĘżŻ,:.źŹ%ćĆńŃśŚóÓa-z0-9\-\/]/",' ',preg_replace("/\r\n|\r|\n/",' ',html_entity_decode($val['nazwa']))).'"""';
$line[]=str_replace(".",",",$val['wartosc']);
$line[]=preg_replace("/[^A-ZłŁąĄęĘżŻ,:.źŹ%ćĆńŃśŚóÓa-z0-9\-\/]/",' ',preg_replace("/\r\n|\r|\n/",' ',html_entity_decode($val['magazyn'])));
foreach ($line as $k=>$v){
$line[$k]=iconv('UTF-8','windows-1250',$line[$k]);;
}
fwrite($fp, implode(";",$line).PHP_EOL);
}
header("Location: ". $filename);
} else {
if ($documentsSelected == 'EcmStockDocInsideOuts' || $documentsSelected == 'EcmStockDocInsideIns' || $documentsSelected == 'EcmStockDocCorrects') {
$txt = 'Kartoteka materiałowa: ';
if (isset($stockIndexSelected)) {
if (count($stockIndexSelected) == count($stockIndexList) + 1) {
$txt .= 'Wszystkie';
} else {
foreach ($stockIndexSelected as $key => $value) {
if ($value == 'NULL') {
$txt .= 'Bez kartoteki materiaĹowej ,';
} else {
$txt .= $stockIndexList[$value] . ' ,';
}
}
}
} else {
$txt .= 'Wszystkie';
}
$txt = rtrim($txt, ",");
} elseif ($documentsSelected == 'EcmStockDocMoves') {
$txt = 'Do magazynu: ';
if (isset($mmSelected)) {
if (count($mmSelected) == count($stockList)) {
$txt .= 'Wszystkie';
} else {
foreach ($mmSelected as $key => $value) {
$txt .= $stockList[$value] . ' ,';
}
}
} else {
$txt .= 'Wszystkie';
}
$txt = rtrim($txt, ",");
} elseif ($documentsSelected == 'EcmStockDocIns' || $documentsSelected == 'EcmStockDocOuts' || $documentsSelected == 'EcmInvoiceOuts' || $documentsSelected == 'EcmReceipts') {
if (isset($accountName) && strlen($accountName) > 1) {
$txt = 'Kontrahent: ' . $accountName;
} else {
$txt = 'Kontrahent: Wszyscy';
}
}
$smarty->assign("nazwaFirmy", "E5 Polska");
$output = $smarty->fetch('modules/EcmReports/tpls/ReportStockDocMovesPDF.html');
include_once ("include/MPDF57/mpdf.php");
unset($smarty);
$p = new mPDF('', 'A4', null, 'helvetica', 10, 10, 26, 10, 5, 5);
$p->setFooter('{PAGENO}');
$p->setHTMLHeader('<div style="text-align: left; border-bottom: 1px solid #000000; font-weight: bold; font-size: 10pt;">
<table>
<tr>
<td style="font-weight: bold; font-size: 9pt;">Obroty wg dokumentów ' . $documentsList[$documentsSelected] . '</td>
</tr>
<tr>
<td style="font-weight: bold; font-size: 9pt;">' . "E5 Polska" . '</td>
</tr>
<tr>
<td style="font-weight: bold; font-size: 9pt;">Data wygenerowania: ' . date("d.m.Y") . ' Okres: ' . $_REQUEST['date_from'] . ' do ' . $_REQUEST['date_to'] . '</td>
</tr>
<tr>
<td style="font-weight: bold; font-size: 9pt;">' . $txt . ' </td>
</tr>
</table>
</div>');
$p->writeHTML($output);
$p->Output("ObrotWgDokumentow_" . $documentsList[$documentsSelected] . "_" . $_REQUEST['date_from'] . "-" . $_REQUEST['date_to'].".pdf", "I");
}
} else {
$smarty->display('modules/EcmReports/tpls/ReportStockDocMoves.html');
}
?>