[ Index ] |
|
Code source de vtiger CRM 5.0.2 |
1 <?php 2 /********************************************************************************* 3 ** The contents of this file are subject to the vtiger CRM Public License Version 1.0 4 * ("License"); You may not use this file except in compliance with the License 5 * The Original Code is: vtiger CRM Open Source 6 * The Initial Developer of the Original Code is vtiger. 7 * Portions created by vtiger are Copyright (C) vtiger. 8 * All Rights Reserved. 9 * 10 ********************************************************************************/ 11 require_once ('modules/Reports/Reports.php'); 12 require_once ('include/logging.php'); 13 require_once ('include/database/PearDatabase.php'); 14 global $adb; 15 global $log; 16 $reportid = $_REQUEST["record"]; 17 18 //<<<<<<<selectcolumn>>>>>>>>> 19 $selectedcolumnstring = $_REQUEST["selectedColumnsString"]; 20 //<<<<<<<selectcolumn>>>>>>>>> 21 22 //<<<<<<<reportsortcol>>>>>>>>> 23 $sort_by1 = $_REQUEST["Group1"]; 24 $sort_order1 = $_REQUEST["Sort1"]; 25 $sort_by2 = $_REQUEST["Group2"]; 26 $sort_order2 = $_REQUEST["Sort2"]; 27 $sort_by3 = $_REQUEST["Group3"]; 28 $sort_order3 = $_REQUEST["Sort3"]; 29 //<<<<<<<reportsortcol>>>>>>>>> 30 31 //<<<<<<<reportmodules>>>>>>>>> 32 $pmodule = $_REQUEST["primarymodule"]; 33 $smodule = $_REQUEST["secondarymodule"]; 34 //<<<<<<<reportmodules>>>>>>>>> 35 36 //<<<<<<<report>>>>>>>>> 37 $reportname = $_REQUEST["reportName"]; 38 $reportdescription = $_REQUEST["reportDesc"]; 39 $reporttype = $_REQUEST["reportType"]; 40 $folderid = $_REQUEST["folder"]; 41 //<<<<<<<report>>>>>>>>> 42 43 //<<<<<<<standarfilters>>>>>>>>> 44 $stdDateFilterField = $_REQUEST["stdDateFilterField"]; 45 $stdDateFilter = $_REQUEST["stdDateFilter"]; 46 $startdate = $_REQUEST["startdate"]; 47 $enddate = $_REQUEST["enddate"]; 48 //<<<<<<<standardfilters>>>>>>>>> 49 50 //<<<<<<<columnstototal>>>>>>>>>> 51 $allKeys = array_keys($HTTP_POST_VARS); 52 for ($i=0;$i<count($allKeys);$i++) 53 { 54 $string = substr($allKeys[$i], 0, 3); 55 if($string == "cb:") 56 { 57 $columnstototal[] = $allKeys[$i]; 58 } 59 } 60 //<<<<<<<columnstototal>>>>>>>>> 61 62 //<<<<<<<advancedfilter>>>>>>>> 63 //$adv_filter_col = "kcol"; 64 $allKeys = array_keys($HTTP_POST_VARS); 65 for ($i=0;$i<count($allKeys);$i++) 66 { 67 $string = substr($allKeys[$i], 0, 4); 68 if($string == "fcol") 69 { 70 $adv_filter_col[] = $_REQUEST[$allKeys[$i]]; 71 } 72 } 73 for ($i=0;$i<count($allKeys);$i++) 74 { 75 $string = substr($allKeys[$i], 0, 3); 76 if($string == "fop") 77 { 78 $adv_filter_option[] = $_REQUEST[$allKeys[$i]]; 79 } 80 } 81 for ($i=0;$i<count($allKeys);$i++) 82 { 83 $string = substr($allKeys[$i], 0, 4); 84 if($string == "fval") 85 { 86 $adv_filter_value[] = $_REQUEST[$allKeys[$i]]; 87 } 88 } 89 //<<<<<<<advancedfilter>>>>>>>> 90 if($reportid == "") 91 { 92 $genQueryId = $adb->getUniqueID("vtiger_selectquery"); 93 if($genQueryId != "") 94 { 95 $iquerysql = "insert into vtiger_selectquery (QUERYID,STARTINDEX,NUMOFOBJECTS) values (".$genQueryId.",0,0)"; 96 $iquerysqlresult = $adb->query($iquerysql); 97 $log->info("Reports :: Save->Successfully saved vtiger_selectquery"); 98 if($iquerysqlresult!=false) 99 { 100 //<<<<step2 vtiger_selectcolumn>>>>>>>> 101 if($selectedcolumnstring != "") 102 { 103 $selectedcolumns = explode(";",$selectedcolumnstring); 104 for($i=0 ;$i< count($selectedcolumns) -1 ;$i++) 105 { 106 $icolumnsql = "insert into vtiger_selectcolumn (QUERYID,COLUMNINDEX,COLUMNNAME) values (".$genQueryId.",".$i.",'".$selectedcolumns[$i]."')"; 107 $icolumnsqlresult = $adb->query($icolumnsql); 108 } 109 } 110 $log->info("Reports :: Save->Successfully saved vtiger_selectcolumn"); 111 //<<<<step2 vtiger_selectcolumn>>>>>>>> 112 113 if($genQueryId != "") 114 { 115 $ireportsql = "insert into vtiger_report (REPORTID,FOLDERID,REPORTNAME,DESCRIPTION,REPORTTYPE,QUERYID,STATE)"; 116 $ireportsql .= " values (".$genQueryId.",".$folderid.",'".$reportname."','".$reportdescription."','".$reporttype."',".$genQueryId.",'CUSTOM')"; 117 $ireportresult = $adb->query($ireportsql); 118 $log->info("Reports :: Save->Successfully saved vtiger_report"); 119 if($ireportresult!=false) 120 { 121 //<<<<reportmodules>>>>>>> 122 $ireportmodulesql = "insert into vtiger_reportmodules (REPORTMODULESID,PRIMARYMODULE,SECONDARYMODULES) values (".$genQueryId.",'".$pmodule."','".$smodule."')"; 123 $ireportmoduleresult = $adb->query($ireportmodulesql); 124 $log->info("Reports :: Save->Successfully saved vtiger_reportmodules"); 125 //<<<<reportmodules>>>>>>> 126 127 //<<<<step3 vtiger_reportsortcol>>>>>>> 128 if($sort_by1 != "") 129 { 130 $sort_by1sql = "insert into vtiger_reportsortcol (SORTCOLID,REPORTID,COLUMNNAME,SORTORDER) values (1,".$genQueryId.",'".$sort_by1."','".$sort_order1."')"; 131 $sort_by1result = $adb->query($sort_by1sql); 132 } 133 if($sort_by2 != "") 134 { 135 $sort_by2sql = "insert into vtiger_reportsortcol (SORTCOLID,REPORTID,COLUMNNAME,SORTORDER) values (2,".$genQueryId.",'".$sort_by2."','".$sort_order2."')"; 136 $sort_by2result = $adb->query($sort_by2sql); 137 } 138 if($sort_by3 != "") 139 { 140 $sort_by3sql = "insert into vtiger_reportsortcol (SORTCOLID,REPORTID,COLUMNNAME,SORTORDER) values (3,".$genQueryId.",'".$sort_by3."','".$sort_order3."')"; 141 $sort_by3result = $adb->query($sort_by3sql); 142 } 143 $log->info("Reports :: Save->Successfully saved vtiger_reportsortcol"); 144 //<<<<step3 vtiger_reportsortcol>>>>>>> 145 146 //<<<<step5 standarfilder>>>>>>> 147 $ireportmodulesql = "insert into vtiger_reportdatefilter (DATEFILTERID,DATECOLUMNNAME,DATEFILTER,STARTDATE,ENDDATE) values (".$genQueryId.",'".$stdDateFilterField."','".$stdDateFilter."','".$startdate."','".$enddate."')"; 148 $ireportmoduleresult = $adb->query($ireportmodulesql); 149 $log->info("Reports :: Save->Successfully saved vtiger_reportdatefilter"); 150 //<<<<step5 standarfilder>>>>>>> 151 152 //<<<<step4 columnstototal>>>>>>> 153 for ($i=0;$i<count($columnstototal);$i++) 154 { 155 $ireportsummarysql = "insert into vtiger_reportsummary (REPORTSUMMARYID,SUMMARYTYPE,COLUMNNAME) values (".$genQueryId.",".$i.",'".$columnstototal[$i]."')"; 156 $ireportsummaryresult = $adb->query($ireportsummarysql); 157 } 158 $log->info("Reports :: Save->Successfully saved vtiger_reportsummary"); 159 //<<<<step4 columnstototal>>>>>>> 160 161 //<<<<step5 advancedfilter>>>>>>> 162 for ($i=0;$i<count($adv_filter_col);$i++) 163 { 164 $irelcriteriasql = "insert into vtiger_relcriteria(QUERYID,COLUMNINDEX,COLUMNNAME,COMPARATOR,VALUE) values (".$genQueryId.",".$i.",'".$adv_filter_col[$i]."','".$adv_filter_option[$i]."','".$adv_filter_value[$i]."')"; 165 $irelcriteriaresult = $adb->query($irelcriteriasql); 166 } 167 $log->info("Reports :: Save->Successfully saved vtiger_relcriteria"); 168 //<<<<step5 advancedfilter>>>>>>> 169 170 }else 171 { 172 $errormessage = "<font color='red'><B>Error Message<ul> 173 <li><font color='red'>Error while inserting the record</font> 174 </ul></B></font> <br>" ; 175 echo $errormessage; 176 die; 177 } 178 } 179 }else 180 { 181 $errormessage = "<font color='red'><B>Error Message<ul> 182 <li><font color='red'>Error while inserting the record</font> 183 </ul></B></font> <br>" ; 184 echo $errormessage; 185 die; 186 } 187 echo '<script>window.opener.location.href =window.opener.location.href;self.close();</script>'; 188 } 189 }else 190 { 191 if($reportid != "") 192 { 193 if($selectedcolumnstring != "") 194 { 195 $idelcolumnsql = "delete from vtiger_selectcolumn where queryid=".$reportid; 196 $idelcolumnsqlresult = $adb->query($idelcolumnsql); 197 if($idelcolumnsqlresult != false) 198 { 199 $selectedcolumns = explode(";",$selectedcolumnstring); 200 for($i=0 ;$i< count($selectedcolumns) -1 ;$i++) 201 { 202 $icolumnsql = "insert into vtiger_selectcolumn (QUERYID,COLUMNINDEX,COLUMNNAME) values (".$reportid.",".$i.",'".$selectedcolumns[$i]."')"; 203 $icolumnsqlresult = $adb->query($icolumnsql); 204 } 205 } 206 } 207 208 $ireportsql = "update vtiger_report set"; 209 $ireportsql .= " REPORTNAME='".$reportname."',"; 210 $ireportsql .= " DESCRIPTION='".$reportdescription."',"; 211 $ireportsql .= " REPORTTYPE='".$reporttype."'"; 212 $ireportsql .= " where REPORTID=".$reportid; 213 $ireportresult = $adb->query($ireportsql); 214 $log->info("Reports :: Save->Successfully saved vtiger_report"); 215 216 $idelreportsortcolsql = "delete from vtiger_reportsortcol where reportid=".$reportid; 217 $idelreportsortcolsqlresult = $adb->query($idelreportsortcolsql); 218 $log->info("Reports :: Save->Successfully deleted vtiger_reportsortcol"); 219 220 if($idelreportsortcolsqlresult!=false) 221 { 222 //<<<<step3 vtiger_reportsortcol>>>>>>> 223 if($sort_by1 != "") 224 { 225 $sort_by1sql = "insert into vtiger_reportsortcol (SORTCOLID,REPORTID,COLUMNNAME,SORTORDER) values (1,".$reportid.",'".$sort_by1."','".$sort_order1."')"; 226 $sort_by1result = $adb->query($sort_by1sql); 227 } 228 if($sort_by2 != "") 229 { 230 $sort_by2sql = "insert into vtiger_reportsortcol (SORTCOLID,REPORTID,COLUMNNAME,SORTORDER) values (2,".$reportid.",'".$sort_by2."','".$sort_order2."')"; 231 $sort_by2result = $adb->query($sort_by2sql); 232 } 233 if($sort_by3 != "") 234 { 235 $sort_by3sql = "insert into vtiger_reportsortcol (SORTCOLID,REPORTID,COLUMNNAME,SORTORDER) values (3,".$reportid.",'".$sort_by3."','".$sort_order3."')"; 236 $sort_by3result = $adb->query($sort_by3sql); 237 } 238 $log->info("Reports :: Save->Successfully saved vtiger_reportsortcol"); 239 //<<<<step3 vtiger_reportsortcol>>>>>>> 240 241 $idelreportdatefiltersql = "delete from vtiger_reportdatefilter where datefilterid=".$reportid; 242 $idelreportdatefiltersqlresult = $adb->query($idelreportdatefiltersql); 243 244 //<<<<step5 standarfilder>>>>>>> 245 $ireportmodulesql = "insert into vtiger_reportdatefilter (DATEFILTERID,DATECOLUMNNAME,DATEFILTER,STARTDATE,ENDDATE) values (".$reportid.",'".$stdDateFilterField."','".$stdDateFilter."','".$startdate."','".$enddate."')"; 246 $ireportmoduleresult = $adb->query($ireportmodulesql); 247 $log->info("Reports :: Save->Successfully saved vtiger_reportdatefilter"); 248 //<<<<step5 standarfilder>>>>>>> 249 250 //<<<<step4 columnstototal>>>>>>> 251 $idelreportsummarysql = "delete from vtiger_reportsummary where reportsummaryid=".$reportid; 252 $idelreportsummarysqlresult = $adb->query($idelreportsummarysql); 253 254 for ($i=0;$i<count($columnstototal);$i++) 255 { 256 $ireportsummarysql = "insert into vtiger_reportsummary (REPORTSUMMARYID,SUMMARYTYPE,COLUMNNAME) values (".$reportid.",".$i.",'".$columnstototal[$i]."')"; 257 $ireportsummaryresult = $adb->query($ireportsummarysql); 258 } 259 $log->info("Reports :: Save->Successfully saved vtiger_reportsummary"); 260 //<<<<step4 columnstototal>>>>>>> 261 262 263 //<<<<step5 advancedfilter>>>>>>> 264 265 $idelrelcriteriasql = "delete from vtiger_relcriteria where queryid=".$reportid; 266 $idelrelcriteriasqlresult = $adb->query($idelrelcriteriasql); 267 268 for ($i=0;$i<count($adv_filter_col);$i++) 269 { 270 $irelcriteriasql = "insert into vtiger_relcriteria(QUERYID,COLUMNINDEX,COLUMNNAME,COMPARATOR,VALUE) values (".$reportid.",".$i.",'".$adv_filter_col[$i]."','".$adv_filter_option[$i]."','".$adv_filter_value[$i]."')"; 271 $irelcriteriaresult = $adb->query($irelcriteriasql); 272 } 273 $log->info("Reports :: Save->Successfully saved vtiger_relcriteria"); 274 //<<<<step5 advancedfilter>>>>>>> 275 276 }else 277 { 278 $errormessage = "<font color='red'><B>Error Message<ul> 279 <li><font color='red'>Error while inserting the record</font> 280 </ul></B></font> <br>" ; 281 echo $errormessage; 282 die; 283 } 284 }else 285 { 286 $errormessage = "<font color='red'><B>Error Message<ul> 287 <li><font color='red'>Error while inserting the record</font> 288 </ul></B></font> <br>" ; 289 echo $errormessage; 290 die; 291 } 292 echo '<script>window.opener.location.href = window.opener.location.href;self.close();</script>'; 293 } 294 ?>
titre
Description
Corps
titre
Description
Corps
titre
Description
Corps
titre
Corps
Généré le : Sun Feb 25 10:22:19 2007 | par Balluche grâce à PHPXref 0.7 |