diff --git a/modules/Reports/ReportRun.php b/modules/Reports/ReportRun.php index ce8ad9fb1980b638e0bbb8e43b68b7db4e60cf00..c8842d54e41f3ba845c882928b4dfe42bd4812fa 100644 --- a/modules/Reports/ReportRun.php +++ b/modules/Reports/ReportRun.php @@ -3549,227 +3549,7 @@ class ReportRun extends CRMEntity { } } return $totalpdf; - /** - * Setting ouputformat == 'CSV' - * for multiple handling of sum, avg, min , max for csv format type - */ - } elseif ($outputformat == 'CSV') { - Vtiger_Utils::writeLogFile('bro1.log',$outputformat,true); - - $escapedchars = Array('_SUM', '_AVG', '_MIN', '_MAX'); - $totalpdf = array(); - $sSQL = $this->sGetSQLforReport($this->reportid, $filtersql, "COLUMNSTOTOTAL"); - if (isset($this->totallist)) { - if ($sSQL != '') { - $result = $adb->pquery($sSQL, array()); - $y = $adb->num_fields($result); - $custom_field_values = $adb->fetch_array($result); - - static $mod_query_details = array(); - foreach ($this->totallist as $key => $value) { - $fieldlist = explode(':', $key); - $key = $fieldlist[1].'_'.$fieldlist[2]; - if (!isset($mod_query_details[$this->reportid][$key]['modulename']) && !isset($mod_query_details[$this->reportid][$key]['uitype'])) { - $mod_query = $adb->pquery('SELECT DISTINCT(tabid) AS tabid, uitype AS uitype FROM vtiger_field WHERE tablename = ? AND columnname=?', array($fieldlist[1], $fieldlist[2])); - $moduleName = getTabModuleName($adb->query_result($mod_query, 0, 'tabid')); - $mod_query_details[$this->reportid][$key]['translatedmodulename'] = getTranslatedString($moduleName, $moduleName); - $mod_query_details[$this->reportid][$key]['modulename'] = $moduleName; - $mod_query_details[$this->reportid][$key]['uitype'] = $adb->query_result($mod_query, 0, 'uitype'); - } - - if ($adb->num_rows($mod_query) > 0) { - $module_name = $mod_query_details[$this->reportid][$key]['modulename']; - $translatedModuleLabel = $mod_query_details[$this->reportid][$key]['translatedmodulename']; - $fieldlabel = trim(str_replace($escapedchars, ' ', $fieldlist[3])); - $fieldlabel = str_replace('_', ' ', $fieldlabel); - if ($module_name) { - $field = $translatedModuleLabel.' '.getTranslatedString($fieldlabel, $module_name); - } else { - $field = getTranslatedString($fieldlabel); - } - } - // Since there are duplicate entries for this table - if ($fieldlist[1] == 'vtiger_inventoryproductrel') { - $module_name = $this->primarymodule; - } - $uitype_arr[str_replace($escapedchars, ' ', $module_name.'_'.$fieldlist[3])] = $mod_query_details[$this->reportid][$key]['uitype']; - $totclmnflds[str_replace($escapedchars, ' ', $module_name.'_'.$fieldlist[3])] = $field; - } - - $sumcount = 0; - $avgcount = 0; - $mincount = 0; - $maxcount = 0; - for ($i = 0; $i < $y; $i++) { - $fld = $adb->field_name($result, $i); - if (strpos($fld->name, '_SUM') !== false) { - $sumcount++; - } else if (strpos($fld->name, '_AVG') !== false) { - $avgcount++; - } else if (strpos($fld->name, '_MIN') !== false) { - $mincount++; - } else if (strpos($fld->name, '_MAX') !== false) { - $maxcount++; - } - $keyhdr[decode_html($fld->name)] = $custom_field_values[$i]; - } - - $rowcount = 0; - foreach ($totclmnflds as $key => $value) { - $col_header = trim(str_replace($modules, ' ', $value)); - $fld_name_1 = $this->primarymodule.'_'.trim($value); - $fld_name_2 = $this->secondarymodule.'_'.trim($value); - if ($uitype_arr[$key] == 71 || $uitype_arr[$key] == 72 || $uitype_arr[$key] == 74 || - in_array($fld_name_1, $this->append_currency_symbol_to_value) || in_array($fld_name_2, $this->append_currency_symbol_to_value)) { - $col_header .= ' ('.$app_strings['LBL_IN'].' '.$current_user->currency_symbol.')'; - $convert_price = true; - } else { - $convert_price = false; - } - $value = trim($key); - $totalpdf[$rowcount]['Field Names'] = $col_header; - $originalkey = $value.'_SUM'; - $arraykey = $this->replaceSpecialChar($value).'_SUM'; - if (isset($keyhdr[$arraykey])) { - if ($convert_price) { - if ($operation == 'CsvExport') { - $conv_value = CurrencyField::convertToUserFormat($keyhdr[$arraykey], null, false, true); - if ($uitype_arr[$key] == 74) { - $conv_value = CurrencyField::appendCurrencySymbol($conv_value, $userCurrencySymbol); - } - } else { - $conv_value = CurrencyField::convertToUserFormat($keyhdr[$arraykey]); - if (in_array($uitype_arr[$key], array(71, 72, 74))) { - $conv_value = CurrencyField::appendCurrencySymbol($conv_value, $userCurrencySymbol); - } - } - } else { - if ($operation == 'CsvExport') { - $conv_value = CurrencyField::convertToUserFormat($keyhdr[$arraykey], null, true, true); - if ($uitype_arr[$key] == 74) { - $conv_value = CurrencyField::appendCurrencySymbol($conv_value, $userCurrencySymbol); - } - } else { - $conv_value = CurrencyField::convertToUserFormat($keyhdr[$arraykey], null, true); - if (in_array($uitype_arr[$key], array(71, 72, 74))) { - $conv_value = CurrencyField::appendCurrencySymbol($conv_value, $userCurrencySymbol); - } - } - } - $totalpdf[$rowcount][$originalkey] = $conv_value; - } else if ($sumcount) { - $totalpdf[$rowcount][$originalkey] = ''; - } - - $originalkey = $value.'_AVG'; - $arraykey = $this->replaceSpecialChar($value).'_AVG'; - if (isset($keyhdr[$arraykey])) { - if ($convert_price) { - if ($operation == 'CsvExport') { - $conv_value = CurrencyField::convertToUserFormat($keyhdr[$arraykey], null, false, true); - if ($uitype_arr[$key] == 74) { - $conv_value = CurrencyField::appendCurrencySymbol($conv_value, $userCurrencySymbol); - } - } else { - $conv_value = CurrencyField::convertToUserFormat($keyhdr[$arraykey]); - if (in_array($uitype_arr[$key], array(71, 72, 74))) { - $conv_value = CurrencyField::appendCurrencySymbol($conv_value, $userCurrencySymbol); - } - } - } else { - if ($operation == 'CsvExport') { - $conv_value = CurrencyField::convertToUserFormat($keyhdr[$arraykey], null, true, true); - if ($uitype_arr[$key] == 74) { - $conv_value = CurrencyField::appendCurrencySymbol($conv_value, $userCurrencySymbol); - } - } else { - $conv_value = CurrencyField::convertToUserFormat($keyhdr[$arraykey], null, true); - if (in_array($uitype_arr[$key], array(71, 72, 74))) { - $conv_value = CurrencyField::appendCurrencySymbol($conv_value, $userCurrencySymbol); - } - } - } - $totalpdf[$rowcount][$originalkey] = $conv_value; - } else if ($avgcount) { - $totalpdf[$rowcount][$originalkey] = ''; - } - - $originalkey = $value.'_MIN'; - $arraykey = $this->replaceSpecialChar($value).'_MIN'; - if (isset($keyhdr[$arraykey])) { - if ($convert_price) { - if ($operation == 'CsvExport') { - $conv_value = CurrencyField::convertToUserFormat($keyhdr[$arraykey], null, false, true); - if ($uitype_arr[$key] == 74) { - $conv_value = CurrencyField::appendCurrencySymbol($conv_value, $userCurrencySymbol); - } - } else { - $conv_value = CurrencyField::convertToUserFormat($keyhdr[$arraykey]); - if (in_array($uitype_arr[$key], array(71, 72, 74))) { - $conv_value = CurrencyField::appendCurrencySymbol($conv_value, $userCurrencySymbol); - } - } - } else { - if ($operation == 'CsvExport') { - $conv_value = CurrencyField::convertToUserFormat($keyhdr[$arraykey], null, true, true); - if ($uitype_arr[$key] == 74) { - $conv_value = CurrencyField::appendCurrencySymbol($conv_value, $userCurrencySymbol); - } - } else { - $conv_value = CurrencyField::convertToUserFormat($keyhdr[$arraykey], null, true); - if (in_array($uitype_arr[$key], array(71, 72, 74))) { - $conv_value = CurrencyField::appendCurrencySymbol($conv_value, $userCurrencySymbol); - } - } - } - $totalpdf[$rowcount][$originalkey] = $conv_value; - } else if ($mincount) { - $totalpdf[$rowcount][$originalkey] = ''; - } - - $originalkey = $value.'_MAX'; - $arraykey = $this->replaceSpecialChar($value).'_MAX'; - if (isset($keyhdr[$arraykey])) { - if ($convert_price) { - if ($operation == 'CsvExport') { - $conv_value = CurrencyField::convertToUserFormat($keyhdr[$arraykey], null, false, true); - if ($uitype_arr[$key] == 74) { - $conv_value = CurrencyField::appendCurrencySymbol($conv_value, $userCurrencySymbol); - } - } else { - $conv_value = CurrencyField::convertToUserFormat($keyhdr[$arraykey]); - if (in_array($uitype_arr[$key], array(71, 72, 74))) { - $conv_value = CurrencyField::appendCurrencySymbol($conv_value, $userCurrencySymbol); - } - } - } else { - if ($operation == 'CsvExport') { - $conv_value = CurrencyField::convertToUserFormat($keyhdr[$arraykey], null, true, true); - if ($uitype_arr[$key] == 74) { - $conv_value = CurrencyField::appendCurrencySymbol($conv_value, $userCurrencySymbol); - } - } else { - $conv_value = CurrencyField::convertToUserFormat($keyhdr[$arraykey], null, true); - if (in_array($uitype_arr[$key], array(71, 72, 74))) { - $conv_value = CurrencyField::appendCurrencySymbol($conv_value, $userCurrencySymbol); - } - } - } - $totalpdf[$rowcount][$originalkey] = $conv_value; - } else if ($maxcount) { - $totalpdf[$rowcount][$originalkey] = ''; - } - $rowcount++; - } - $totalpdf[$rowcount]['sumcount'] = $sumcount; - $totalpdf[$rowcount]['avgcount'] = $avgcount; - $totalpdf[$rowcount]['mincount'] = $mincount; - $totalpdf[$rowcount]['maxcount'] = $maxcount; - } - } - return $totalpdf; - - }elseif ($outputformat == "TOTALHTML") { + } elseif ($outputformat == "TOTALHTML") { $escapedchars = Array('_SUM', '_AVG', '_MIN', '_MAX'); $sSQL = $this->sGetSQLforReport($this->reportid, $filtersql, "COLUMNSTOTOTAL"); @@ -4672,44 +4452,6 @@ class ReportRun extends CRMEntity { } } fclose($fp); - /** - * Adding $totalcsv to generate report getting data from fromat = "CSV" - */ - $totalcsv = $this->GenerateReport("CSV", $filterlist, false, false, false, 'CsvExport'); - if(!empty($totalcsv)) { - - $fp = fopen($fileName, 'a+'); - fputcsv($fp, array()); - - $size = sizeof($totalcsv); - - $headerCount = $totalcsv[$size - 1]; - - $headers = array('Field Names' => 'Field Names'); - - if($headerCount['sumcount'] > 0)$headers = array_merge($headers,array('SUM' => 'SUM')); - if($headerCount['avgcount'] > 0)$headers = array_merge($headers,array('AVG' => 'AVG')); - if($headerCount['mincount'] > 0)$headers = array_merge($headers,array('MIN' => 'MIN')); - if($headerCount['maxcount'] > 0)$headers = array_merge($headers,array('MAX' => 'MAX')); - - unset($totalcsv[$size - 1]); - - $colTotHdrs = array('0' => $headers); - - - foreach ($colTotHdrs as $key => $hdr) { - $hdr_values = $hdr; - fputcsv($fp, $hdr_values); - } - - foreach ($totalcsv as $key => $value) { - $csv_values = array_map('decode_html', $value); - fputcsv($fp, $csv_values); - } - ob_clean(); - fclose($fp); - } - } function getGroupByTimeList($reportId) {