Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- require_once '../core.php';
- if (!isset ($_REQUEST['query'])) { die (); }
- $idS = $_SESSION['idS'];
- $idUser = $_SESSION['idUser'];
- $db_name = $_SESSION ['db_name'];
- $UserIP = $_SESSION['UserIP'];
- $fld_list = array();
- function PreviouslyMonth($value)
- {
- if($value!=1){
- $value--;
- }else{
- $value=12;
- }
- return $value;
- }
- function MonthChangeIntToSS($month){
- if($month!=10&&$month!=11&&$month!=12){
- $month='0'.(String)$month;
- }
- return $month;
- }
- function MonthChangeIntToString($month){
- switch ($month) {
- case '1':
- $month=iconv("UTF-8", "windows-1251",'Январь');
- break;
- case '2':
- $month=iconv("UTF-8", "windows-1251",'Февраль');
- break;
- case '3':
- $month=iconv("UTF-8", "windows-1251",'Март');
- break;
- case '4':
- $month=iconv("UTF-8", "windows-1251",'Апрель');
- break;
- case '5':
- $month=iconv("UTF-8", "windows-1251",'Май');
- break;
- case '6':
- $month=iconv("UTF-8", "windows-1251",'Июнь');
- break;
- case '7':
- $month=iconv("UTF-8", "windows-1251",'Июль');
- break;
- case '8':
- $month=iconv("UTF-8", "windows-1251",'Август');
- break;
- case '9':
- $month=iconv("UTF-8", "windows-1251",'Сентябрь');
- break;
- case '10':
- $month=iconv("UTF-8", "windows-1251",'Октябрь');
- break;
- case '11':
- $month=iconv("UTF-8", "windows-1251",'Ноябрь');
- break;
- case '12':
- $month=iconv("UTF-8", "windows-1251",'Декабрь');
- break;
- default:
- die();
- break;
- }
- return $month;
- }
- switch (strip_tags(trim(ms_escape_string($_REQUEST['query'])))) {
- case 'main':
- $event = iconv("UTF-8", "cp1251", "Начало формирования файла выгрузки для отчета по Общей статистике аптеки");
- $query = iconv("UTF-8", "cp1251", $_SESSION['query']['main']);
- $strd = (isset($_SESSION['strd']['main']))?$_SESSION['strd']['main']:'';
- $endd = (isset($_SESSION['endd']['main']))?$_SESSION['endd']['main']:'';
- $name = 'TSA_'.$strd.'_'.$endd.'_'.$idUser;
- $csv_output = '';
- $csv_output .=iconv("UTF-8", "windows-1251",'№ п/п;');
- $csv_output .=iconv("UTF-8", "windows-1251",'Аптека;');
- $csv_output .=iconv("UTF-8", "windows-1251",'Выручка, р.;');
- $csv_output .=iconv("UTF-8", "windows-1251",'Прибыль, р.;');
- $csv_output .=iconv("UTF-8", "windows-1251",'Приведенная маржа, р.;');
- $csv_output .=iconv("UTF-8", "windows-1251",'Наценка, %;');
- $csv_output .=iconv("UTF-8", "windows-1251",'Кол-во чеков, шт.;');
- $csv_output .=iconv("UTF-8", "windows-1251",'Кол-во чеков в день, шт.;');
- $csv_output .=iconv("UTF-8", "windows-1251",'Сумма по чеку, р.;');
- $csv_output .=iconv("UTF-8", "windows-1251",'Остаток по товару|розница, р.;');
- $csv_output .=iconv("UTF-8", "windows-1251",'Остаток по товару|опт с НДС, р.;');
- $csv_output .=iconv("UTF-8", "windows-1251",'кол-во ННТ на остатке;');
- $csv_output .=iconv("UTF-8", "windows-1251",'кол-во ННТ, участвующих в продаже;');
- $csv_output .=iconv("UTF-8", "windows-1251",'Скидка, р.;');
- $csv_output .=iconv("UTF-8", "windows-1251",'Скидка в % от выручки;');
- $csv_output .=iconv("UTF-8", "windows-1251",'Наполняемость чека;');
- $csv_output .=iconv("UTF-8", "windows-1251",'Оборачиваемость;');
- $csv_output .=iconv("UTF-8", "windows-1251",'Рабочие дни;');
- $csv_output = substr($csv_output,0,-1);
- $csv_output .= "\n";
- $res = odbc_exec ($connection,$query);
- $count = odbc_num_fields($res);
- while ($row = odbc_fetch_row($res)) {
- for ($i=1;$i<$count+1;$i++) {
- $csv_output .= str_replace('.',',',odbc_result( $res, $i )).';';
- }
- $csv_output = substr($csv_output,0,-1);
- $csv_output .= "\n";
- }
- odbc_next_result($res);
- while ($row = odbc_fetch_row($res)) {
- for ($i=1;$i<$count+1;$i++) {
- $csv_output .= str_replace('.',',',odbc_result( $res, $i )).';';
- }
- }
- break;
- case 'pharmacyanalysis':
- $event = iconv("UTF-8", "cp1251", "Начало формирования файла выгрузки для отчета по Анализу деятельности аптек");
- $query = iconv("UTF-8", "cp1251", $_SESSION['query']['pharmacyanalysis']);
- $newquery=explode('\'',$query);
- $newquery=str_replace(',', '_', $newquery[1]);
- $CSVHeadMonth=explode('_',$newquery);
- $countCSVHeadMonth=count($CSVHeadMonth);
- $yearEnd=substr($CSVHeadMonth[1], 0,4);
- $yearStart=$yearEnd-1;
- for($i=0;$i<$countCSVHeadMonth;$i++){
- $monthInt[$i]=substr($CSVHeadMonth[$i], 4,5);
- }
- $name = 'TSA_'.$newquery.'_'.$idUser;
- $res = odbc_exec ($connection,$query);
- $count = odbc_num_fields($res);
- $csv_output = '';
- $csv_outputStart='';
- $csv_outputEnd='';
- $flagy=0;
- //Turning on Inception mode,by Dicaprio - Switch in switch ,i must go deeper
- switch($_REQUEST['typeReport']){
- case 'b_margin':
- //MORE DEEPER!!!
- switch ($flagy) {
- case '0'://At first sight will work fine - don't believe your eyes!
- $csv_output .=iconv("UTF-8", "windows-1251",'№ п/п;');
- $csv_output .=iconv("UTF-8", "windows-1251",'Аптека;');
- for($i=0;$i<$countCSVHeadMonth;$i++){
- $monthName=MonthChangeIntToString($monthInt[$i]);
- $nameStart=$monthName.','.$yearStart.';';
- $csv_outputStart .=/*iconv("UTF-8", "windows-1251",*/$nameStart/*)*/; //FKNG 1251 - iconv error with text
- $csv_outputStart .=/*iconv("UTF-8", "windows-1251",*/$nameStart/*)*/;
- $nameEnd=$monthName.','.$yearEnd.';';
- //Double meaning becouse i am an indian man
- for($j=0;$j<8;$j++){
- $csv_outputEnd .=/*iconv("UTF-8", "windows-1251",*/$nameEnd/*)*/;
- }//I have no choise!!;(
- }
- $csv_output .=$csv_outputStart;
- $csv_output .=$csv_outputEnd;
- $csv_output = substr($csv_output,0,-1);
- $csv_output .= "\n";
- $flagy++;
- $csv_output .=iconv("UTF-8", "windows-1251",' ;');
- $csv_output .=iconv("UTF-8", "windows-1251",' ;');
- for($i=0;$i<$countCSVHeadMonth;$i++){
- $csv_output .=iconv("UTF-8", "windows-1251",'Маржа;');
- $csv_output .=iconv("UTF-8", "windows-1251",'Наценка;');
- }
- for($i=0;$i<$countCSVHeadMonth;$i++){
- $monthName=MonthChangeIntToString($monthInt[$i]);
- $previouslyMonthInt=PreviouslyMonth($monthInt[$i]);
- $monthNamePreviously=MonthChangeIntToString($previouslyMonthInt);
- $csv_output .=iconv("UTF-8", "windows-1251",'Маржа;');
- $csv_output .=iconv("UTF-8", "windows-1251",'Наценка;');
- $csv_output .=iconv("UTF-8", "windows-1251",'Прирост маржа').$yearStart.'/'.$yearEnd.';';
- $csv_output .=iconv("UTF-8", "windows-1251",'Прирост выручка').$yearStart.'/'.$yearEnd.';';
- $csv_output .=iconv("UTF-8", "windows-1251",'Прирост покупателей').$yearStart.'/'.$yearEnd.';';
- $csv_output .=iconv("UTF-8", "windows-1251",'Прирост маржа').$monthName.' '.$yearEnd.'/'.$monthNamePreviously.' '.$yearEnd.';';
- $csv_output .=iconv("UTF-8", "windows-1251",'Прирост выручка').$monthName.' '.$yearEnd.'/'.$monthNamePreviously.' '.$yearEnd.';';
- $csv_output .=iconv("UTF-8", "windows-1251",'Прирост покупателей').$monthName.' '.$yearEnd.'/'.$monthNamePreviously.' '.$yearEnd.';';
- }
- $csv_output = substr($csv_output,0,-1);
- $csv_output .= "\n";
- $flagy++;
- break;
- case '2':
- while ($row = odbc_fetch_row($res)) {
- for ($i=1;$i<$count+1;$i++) {
- if(odbc_field_name( $res, $i )=='Nopp'){
- $csv_output .= str_replace('.',',',odbc_result( $res, $i )).';';
- }elseif (odbc_field_name( $res, $i )=='Pharmacy') {
- $csv_output .= str_replace('.',',',odbc_result( $res, $i )).';';
- }
- for($g=0;$g<$countCSVHeadMonth;$g++){
- $previouslyMonthInt=PreviouslyMonth($monthInt[$i]);
- $monthRowPreviously=MonthChangeIntToSS($previouslyMonthInt);
- $monthRow=MonthChangeIntToSS($monthInt[$i]);
- if (odbc_field_name( $res, $i )=='Margin_'.$yearStart.$monthRow) {
- $csv_output .= str_replace('.',',',odbc_result( $res, $i )).';';
- }
- if (odbc_field_name( $res, $i )=='Markup_'.$yearStart.$monthRow) {
- $csv_output .= str_replace('.',',',odbc_result( $res, $i )).';';
- }
- //EIGHT ROW
- if (odbc_field_name( $res, $i )=='Margin_'.$yearEnd.$monthRow) {
- $csv_output .= str_replace('.',',',odbc_result( $res, $i )).';';
- }
- if (odbc_field_name( $res, $i )=='Markup_'.$yearEnd.$monthRow) {
- $csv_output .= str_replace('.',',',odbc_result( $res, $i )).';';
- }
- //More stronger
- if (odbc_field_name( $res, $i )=='MarginDelta_'.$yearEnd.$monthRow.'_'.$yearStart.$monthRow) {
- $csv_output .= str_replace('.',',',odbc_result( $res, $i )).';';
- }
- if (odbc_field_name( $res, $i )=='RevenueDelta_'.$yearEnd.$monthRow.'_'.$yearStart.$monthRow) {
- $csv_output .= str_replace('.',',',odbc_result( $res, $i )).';';
- }
- if (odbc_field_name( $res, $i )=='ChecksDelta_'.$yearEnd.$monthRow.'_'.$yearStart.$monthRow) {
- $csv_output .= str_replace('.',',',odbc_result( $res, $i )).';';
- }
- if (odbc_field_name( $res, $i )=='MarginDelta_'.$yearEnd.$monthRow.'_'.$yearEnd.$monthRowPreviously) {
- $csv_output .= str_replace('.',',',odbc_result( $res, $i )).';';
- }
- if (odbc_field_name( $res, $i )=='RevenueDelta_'.$yearEnd.$monthRow.'_'.$yearEnd.$monthRowPreviously) {
- $csv_output .= str_replace('.',',',odbc_result( $res, $i )).';';
- }
- if (odbc_field_name( $res, $i )=='ChecksDelta_'.$yearEnd.$monthRow.'_'.$yearEnd.$monthRowPreviously) {
- $csv_output .= str_replace('.',',',odbc_result( $res, $i )).';';
- }
- }
- }
- $csv_output = substr($csv_output,0,-1);
- $csv_output .= "\n";
- }
- break;
- default:
- break;
- }
- unset($flagy);
- break;
- case 'b_revenue':
- break;
- case 'b_numberOfChecks':
- break;
- default:
- die();
- }
- break;
- default:
- die();
- }
- $zip = new ZipArchive;
- $zipRes = $zip->open('../files/'.$name.'.zip', ZipArchive::CREATE);
- if ($zipRes === TRUE) {
- $zip->addFromString($name.'.csv', $csv_output);
- $zip->close();
- }
- $event = iconv("UTF-8", "cp1251", "Конец формирования файла выгрузки");
- echo $name;
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement