function C_REPORT(&$My_POST, &$DB, $XML_Variants, $grup) { global $lang; global $translate; if ($lang != "RUS") { $lang = "LAT"; } $this->XML_Variants = $XML_Variants; $this->sugas = gAtskaite::$sugas; $this->MyPOST = $My_POST; $this->grup = $grup; if (strrpos($this->MyPOST['pavadzime'], "KRVII") === false) { $this->braki = gAtskaite::$VIKA_braki; gAtskaite::$LVM_braki = gAtskaite::$VIKA_LVM_braki; } else { $this->braki = gAtskaite::$braki; } $this->XMLVARS(); $this->SetParam(); $this->mtipi['auto'] = $translate['auto_nr2'][$lang]; $this->mtipi['brakis'] = $translate['brakis'][$lang]; $this->mtipi['cenu_matrica'] = $translate['cenu_matrica2'][$lang]; $this->mtipi['kad_piegad'] = $translate['datums2'][$lang]; $this->mtipi['mind_pirms_red'] = $translate['diametrs2'][$lang]; $this->mtipi['fsc'] = $translate['fsc2'][$lang]; $this->mtipi['garums'] = $translate['garums2'][$lang]; $this->mtipi['kravas_id'] = $translate['kravas_id2'][$lang]; $this->mtipi['pavadzime.pavadzime'] = $translate['pavadzime2'][$lang]; $this->mtipi['piegad_kods'] = $translate['piegadatajs2'][$lang]; $this->mtipi['soferis'] = $translate['soferis2'][$lang]; $this->mtipi['suga'] = $translate['suga2'][$lang]; $this->mtipi['skira'] = $translate['skira2'][$lang]; $this->mtipi['iecirknis'] = $translate['iecirknis2'][$lang]; if ($_SERVER['REQUEST_METHOD'] == 'POST' && $this->XML_Variants) { if (trim($this->MyPOST['pieg_lig_num']) == '') { $this->ERRORS .= "Nav norādīts PIEGĀDES LĪGUMA numurs!<br><br>"; } if (trim($this->MyPOST['pavadzime']) != '') { if (!GetFromPavadzime($this->MyPOST['pavadzime'], 'pavadzime')) { $this->ERRORS .= "Norādīts NEEKSISTĒJOŠS PAVADZĪMES numurs!<br><br>"; } } else { $this->ERRORS .= "Nav norādīts PAVADZĪMES numurs!<br><br>"; } } if ($this->MyPOST[subm] && !$this->ERRORS) { // --------------------cik grup??anas l?me?i izmantoti ---------------------------- $this->lsk = 0; while ($this->MyPOST["gtype" . $this->grup . ($this->lsk + 1)] != '') { $this->lsk++; } // --------------------cik grup??anas l?me?i izmantoti ---------------------------- // Pārbauda vai nav vairāku pavazdīmju ar šādu numuru if ($this->MyPOST['pavadzime'] && !$this->MyPOST[pavadzime_id]) { $pav_test_query = "select count(*) as x from pavadzime where pavadzime = '" . trim($this->MyPOST['pavadzime']) . "'"; if ($this->MyPOST[datums_no] != '') { $pav_test_query = $pav_test_query . " and kad_piegad >= '" . $this->MyPOST[datums_no] . "' "; } if ($this->MyPOST[datums_lidz] != '') { $pav_test_query = $pav_test_query . " and kad_piegad <= '" . $this->MyPOST[datums_lidz] . "' "; } $r = mysql_query($pav_test_query); if ($m = mysql_fetch_array($r)) { if ($m[x] > 1) { $this->ERRORS .= "<font color=red>Eksistē " . $m[x] . " pavadzīmes ar numuru " . $this->MyPOST['pavadzime'] . "!</font><br><br>"; } } } //$query = " from balkis,pavadzime where balkis.pavadzime = pavadzime.id "; if ($this->MyPOST[datums_no_diena] != '' || $this->MyPOST[pavadzime_id]) { // $query = " from balkis_temp INNER JOIN pavadzime ON balkis_temp.pavadzime = pavadzime.id WHERE 1=1 "; } else { $query = " from balkis INNER JOIN pavadzime ON balkis.pavadzime = pavadzime.id WHERE 1=1 "; } // nosac?jumi if ($this->MyPOST[datums_no_diena] != '') { $query = $query . " and kad_piegad >= '" . $this->MyPOST[datums_no_gads] . "-" . $this->MyPOST[datums_no_menesis] . "-" . $this->MyPOST[datums_no_diena] . "' "; } if ($this->MyPOST[datums_lidz_diena] != '') { $query = $query . " and kad_piegad <= '" . $this->MyPOST[datums_lidz_gads] . "-" . $this->MyPOST[datums_lidz_menesis] . "-" . $this->MyPOST[datums_lidz_diena] . "' "; } if ($this->MyPOST[piegad_grupa]) { $query = $query . " and pavadzime.piegad_grupa like '" . $this->MyPOST[piegad_grupa] . "%'"; } if ($this->MyPOST[piegadataju_kods]) { $query = $query . " and pavadzime.piegadataju_kods = " . $this->MyPOST[piegadataju_kods]; } if ($this->MyPOST[pavadzime]) { $query = $query . " and pavadzime.pavadzime = '" . $this->MyPOST[pavadzime] . "'"; } if ($this->MyPOST[pavadzime_id]) { $query = $query . " and pavadzime.id = '" . $this->MyPOST[pavadzime_id] . "'"; } if ($this->MyPOST[suga] != '') { $query = $query . " and suga = '" . $this->MyPOST[suga] . "'"; } if ($this->MyPOST[cirsmas_kods] != '') { $query = $query . " and cirsmas_kods like '" . $this->MyPOST[cirsmas_kods] . "'"; } if ($this->MyPOST[brakis] != '') { $query = $query . " and brakis = '" . $this->MyPOST[brakis] . "'"; } if ($this->MyPOST[fsc] != '') { $query = $query . " and fsc = '" . $this->MyPOST[fsc] . "'"; } if ($this->MyPOST[kravas_id]) { $query = $query . " and kravas_id = '" . $this->MyPOST[kravas_id] . "'"; } if ($this->MyPOST[auto]) { $query = $query . " and auto = '" . $this->MyPOST[auto] . "'"; } if ($this->MyPOST[soferis]) { $query = $query . " and soferis = '" . $this->MyPOST[soferis] . "'"; } if ($this->MyPOST[cenu_matrica]) { $query = $query . " and cenu_matrica = '" . $this->MyPOST[cenu_matrica] . "'"; } if ($this->MyPOST[skira]) { $query = $query . " and skira = '" . $this->MyPOST[skira] . "'"; } if (trim($this->MyPOST['batch_fails']) != '') { $query = $query . " and batch_fails in(" . $this->MyPOST[batch_fails] . ")"; } if (trim($this->MyPOST['iecirknis_pieg']) != '') { $query = $query . " and LOWER(iecirknis_pieg)=LOWER('" . trim($this->MyPOST['iecirknis_pieg']) . "')"; } $query2 = str_replace("balkis_temp", "balkis", $query); if ($this->MyPOST[datums_no_diena] != '') { mysql_query("DELETE FROM balkis_temp"); mysql_query("INSERT INTO balkis_temp (SELECT balkis.* " . $query2 . ")"); $query = " from balkis_temp INNER JOIN pavadzime ON balkis_temp.pavadzime = pavadzime.id WHERE 1=1 "; } if ($this->MyPOST[pavadzime]) { mysql_query("DELETE FROM balkis_temp"); mysql_query("INSERT INTO balkis_temp (SELECT balkis.* " . $query2 . ")"); $query = " from balkis_temp INNER JOIN pavadzime ON balkis_temp.pavadzime = pavadzime.id WHERE 1=1 "; } $rtest = mysql_query("select count(*) as x " . $query); if ($m = mysql_fetch_array($rtest)) { if ($m[x] > 1) { $correct_count = $m[x]; } else { $correct_count = 0; } } $this->arr[-1] = array(); // izejas masīva headeri if ($this->XML_Variants) { $diam__ = false; // p?rbaudei vai vajadz?g?s grup??anas XML atskaitei iesl?gtas $gar__ = false; } // pirmās kolonnas atskaitei ko izvēlējies lietotājs //var_dump($this->MyPOST); //print_r($this->MyPOST); for ($i = 0; $i < $this->lsk; $i++) { $this->arr[-1][$i] = $this->mtipi[$this->MyPOST["gtype" . $this->grup . ($i + 1)]]; if ($this->XML_Variants) { //echo "<br>gtype".($i+1)." gvalues".($i+1)." gvalues".($i+1)."_1"." gvalues".($i+1)."_2"; $this->arr[-1][$i] = $this->MyPOST["gtype" . $this->grup . ($i + 1)]; if ($this->MyPOST["gtype" . $this->grup . ($i + 1)] == 'mind_pirms_red') { //echo '****************mind_pirms_red*************'; $this->MyPOST["gvalues" . $this->grup . ($i + 1)] = LVM_distribution($this->MyPOST["gvalues" . $this->grup . ($i + 1)]); $this->MyPOST["gvalues" . $this->grup . ($i + 1) . "_1"] = LVM_distribution($this->MyPOST["gvalues" . $this->grup . ($i + 1) . "_1"], 1); $this->MyPOST["gvalues" . $this->grup . ($i + 1) . "_2"] = LVM_distribution($this->MyPOST["gvalues" . $this->grup . ($i + 1) . "_2"], 2); //echo "<br> IN mind_pirms_red "."gtype".($i+1)."invalue [".(($this->MyPOST["gvalues".($i+1)]) || ($this->MyPOST["gvalues".($i+1)."_1"]) || ($this->MyPOST["gvalues".($i+1)."_2]"]))."]"; if ($this->MyPOST["gvalues" . $this->grup . ($i + 1)] || $this->MyPOST["gvalues" . $this->grup . ($i + 1) . "_1"] || $this->MyPOST["gvalues" . $this->grup . ($i + 1) . "_2"]) { //echo "<br> IN "."gvalues".($i+1); $diam__ = true; } } if ($this->MyPOST["gtype" . $this->grup . ($i + 1)] == 'garums') { $gar__ = true; } if ($this->MyPOST["gtype" . $this->grup . ($i + 1)] == 'brakis') { $brak__ = true; } } else { if ($this->MyPOST["gtype" . $this->grup . ($i + 1)] == "pavadzime.pavadzime") { $this->arr[-1][$i] = $this->mtipi['pavadzime.pavadzime']; } //kaut k?ds exception } } //print_r($this->MyPOST); // pēdējās kolonnas kas visām atskaitēm vienādas $this->arr[-1][$i] = $translate['skaits'][$lang]; $i++; $this->arr[-1][$i] = $translate['bruto'][$lang] . " m3"; $i++; $this->arr[-1][$i] = $translate['virsmers'][$lang] . " m3"; $i++; $this->arr[-1][$i] = $translate['redukcija'][$lang] . " m3"; $i++; $this->arr[-1][$i] = $translate['brakis'][$lang] . " m3"; $i++; $this->arr[-1][$i] = $translate['neto'][$lang] . " m3"; $i++; // $i - tagad kolonnu skaits // //$this->arr[-1] - kolonnu nosaukumi un izvad?m? inform?cija atskait? v?l?k. $this->rowclosed = true; $summa = new CSumma(); $this->arr_index = 0; // $query - satur nosac?jumus,kas jaliek gala katram selektam, nosacijumi izveidoti no formas Nosacijumiem if (!$this->ERRORS) { // rekurs?v?s funkcijas izsaukums $this->print_level($query, $summa, false, 0, ''); } // kopsumma ++$this->arr_index; $this->arr[$this->arr_index] = array(); $this->arr[$this->arr_index][-1] = $translate['v_kopa'][$lang]; $this->arr[$this->arr_index][summa] = $summa; if ($this->XML_Variants) { if (!$gar__) { $this->ERRORS .= "Kļūda! Netiek izmantota grupēšana pēc GARUMA!<br><br>"; } if (!$diam__) { $this->ERRORS .= "Kļūda! Netiek izmantota grupēšana pēc DIAMETRA vai arī garuma intervālu robežas neatbilst standartam!<br><br>"; } if (!$brak__) { $this->ERRORS .= "Kļūda! Netiek izmantota grupēšana pēc BRĀĶA!<br><br>"; } //labots sakarā ar vairākām grupēšanām XML atskaitē $this->arr[$this->arr_index][correct_count] = $correct_count; //if ($correct_count != $summa->skaits) $this->ERRORS.= "Kļūda grupēšanā! Sagrupēti ".(int)$summa->skaits." baļķi no $correct_count.<br><br>"; } } //$this->ErrorCheck(); // if ($this->ERRORS) { return false; } }