示例#1
0
function createNewTable($table,$new_id)
{
    global $table_prefix;
    $results = gaz_dbi_query ("SHOW CREATE TABLE ".$table);
    $row = gaz_dbi_fetch_array($results);
    return(preg_replace("/$table_prefix\_[0-9]{3}/",$table_prefix.sprintf('_%03d',$new_id),$row['Create Table']).";\n\n");
}
示例#2
0
    function selMasterAcc($name,$val,$val_hiddenReq='',$class='FacetSelect')
    {
        global $gTables,$admin_aziend;
        $data_color=Array(1=>"88D6FF",2=>"D6FF88",3=>"D688FF",4=>"FFD688",5=>"FF88D6",
                          6=>"88FFD6",7=>"FF88D6",8=>"88FFD6",9=>"FF88D6");
        $refresh ='';
        if (!empty($val_hiddenReq)) {
            $refresh = "onchange=\"this.form.hidden_req.value='$name'; this.form.submit();\"";
        }
        $query = 'SELECT * FROM `'.$gTables['clfoco']."` WHERE codice LIKE '%000000' ORDER BY codice ASC";
        echo "\t <select name=\"$name\" class=\"$class\" $refresh >\n";
        echo "\t\t <option value=\"\">---------</option>\n";
        $result = gaz_dbi_query($query);
        while ($r = gaz_dbi_fetch_array($result)) {
            $v=intval($r['codice']/1000000);
            $c=intval($v/100);
            $selected = '';
            if($r['codice'] == $val) {
               $selected = "selected ";
            }
            $selected .= " style=\"background:#".$data_color[$c]."; color:#000000;";
            if($v==$admin_aziend['mascli'] || $v==$admin_aziend['masfor']) {
               $selected .= " color: red; font-weight: bold;\" ";
               $view=$v.'-'.strtoupper($r['descri']);
            } else {
               $view=$v.'-'.$r['descri'];
               $selected .= "\" ";
            }

            echo "\t\t <option value=\"".$r['codice']."\" $selected >$view</option>\n";
            $c=$v;
        }
        echo "\t </select>\n";
        }
示例#3
0
function getConfig($var)
{
    global $table_prefix;
    $query = "SELECT * FROM `".$gTables['company_config']."` WHERE var = '$var'";
    $result = gaz_dbi_query ($query);
    $data = gaz_dbi_fetch_array($result);
    return $data;
}
示例#4
0
 function ticketPayments($name,$val,$class='FacetSelect')
 {
     global $gTables;
     $query = 'SELECT codice,descri,tippag FROM `'.$gTables['pagame']."` WHERE tippag = 'D' OR tippag = 'C' OR tippag = 'K' ORDER BY tippag";
     echo "\t <select name=\"$name\" class=\"$class\">\n";
     $result = gaz_dbi_query($query);
     while ($r = gaz_dbi_fetch_array($result)) {
         $selected = '';
         if($r['codice'] == $val) {
             $selected = "selected";
         }
         echo "\t\t<option value=\"".$r['codice']."\" $selected >".$r['descri']."</option>\n";
     }
     print "\t </select>\n";
 }
function getData($id_rig)
{
    /*
     * restituisce tutti i dati relativi al rigo contabile del pagamento 
    */
    global $gTables;
    $anagrafica = new Anagrafica();
    $paymov = new Schedule;
    $sqlquery= "SELECT ".$gTables['tesmov'].".*, ".$gTables['paymov'].".*, ".$gTables['rigmoc'].".import 
    FROM ".$gTables['rigmoc']." LEFT JOIN ".$gTables['paymov']." ON ".$gTables['paymov'].".id_rigmoc_pay = ".$gTables['rigmoc'].".id_rig
    LEFT JOIN ".$gTables['tesmov']." ON ".$gTables['rigmoc'].".id_tes = ".$gTables['tesmov'].".id_tes
    WHERE ".$gTables['rigmoc'].".id_rig = $id_rig ORDER BY expiry ASC";
    $rs = gaz_dbi_query($sqlquery);
    $a=array();
    $i=1;
    while ($r = gaz_dbi_fetch_array($rs)) {
        $a[$i] = $r;
        $a[$i]['t'] = $paymov->getDocumentData($r['id_tesdoc_ref']);
        $i++;
    }
    return array('d'=>$a,'partner'=>$anagrafica->getPartner($a[1]['clfoco']));
}
示例#6
0
function createRowsAndErrors($min_limit){
    global $gTables,$admin_aziend,$script_transl;
    $nuw = new check_VATno_TAXcode();
    $sqlquery= "SELECT ".$gTables['rigmoi'].".*, ragso1,ragso2,sedleg,sexper,indspe,regiva,allegato,
               citspe,prospe,country,codfis,pariva,".$gTables['tesmov'].".clfoco,".$gTables['tesmov'].".protoc,
               ".$gTables['tesmov'].".numdoc,".$gTables['tesmov'].".datdoc,".$gTables['tesmov'].".seziva,
               ".$gTables['tesmov'].".caucon,".$gTables['tesdoc'].".numfat AS n_fatt,
			   datreg,datnas,luonas,pronas,counas,id_doc,iso,black_list,cod_agenzia_entrate,
               operat, impost AS imposta,".$gTables['rigmoi'].".id_tes AS idtes,
               imponi AS imponibile FROM ".$gTables['rigmoi']."
               LEFT JOIN ".$gTables['tesmov']." ON ".$gTables['rigmoi'].".id_tes = ".$gTables['tesmov'].".id_tes
               LEFT JOIN ".$gTables['tesdoc']." ON ".$gTables['tesmov'].".id_doc = ".$gTables['tesdoc'].".id_tes
               LEFT JOIN ".$gTables['aliiva']." ON ".$gTables['rigmoi'].".codiva = ".$gTables['aliiva'].".codice
               LEFT JOIN ".$gTables['clfoco']." ON ".$gTables['tesmov'].".clfoco = ".$gTables['clfoco'].".codice
               LEFT JOIN ".$gTables['anagra']." ON ".$gTables['anagra'].".id = ".$gTables['clfoco'].".id_anagra
               LEFT JOIN ".$gTables['country']." ON ".$gTables['anagra'].".country = ".$gTables['country'].".iso
               WHERE YEAR(datreg) = ".intval($_GET['anno'])."
                 AND ( ".$gTables['tesmov'].".clfoco LIKE '".$admin_aziend['masfor']."%' OR ".$gTables['tesmov'].".clfoco LIKE '".$admin_aziend['mascli']."%')
                 AND ".$gTables['clfoco'].".allegato > 0 
               ORDER BY regiva,operat,country,datreg,seziva,protoc";
    $result = gaz_dbi_query($sqlquery);
    $castel_transact= array();
    $error_transact= array();
    if (gaz_dbi_num_rows($result) > 0 ) {
       // inizio creazione array righi ed errori
       $progressivo = 0;
       $ctrl_id = 0;
       $value_imponi = 0.00;
       $value_impost = 0.00;

       while ($row = gaz_dbi_fetch_array($result)) {
         if ($row['operat'] >= 1) {
                $value_imponi = $row['imponibile'];
                $value_impost = $row['imposta'];
         } else {
                $value_imponi = 0;
                $value_impost = 0;
         }
         if ($ctrl_id <> $row['idtes']) {
            // se il precedente movimento non ha raggiunto l'importo lo elimino
            if (isset($castel_transact[$ctrl_id])
                && $castel_transact[$ctrl_id]['operazioni_imponibili'] < 0.5
				&& $castel_transact[$ctrl_id]['operazioni_esente'] < 0.5
				&& $castel_transact[$ctrl_id]['operazioni_nonimp'] < 0.5
                && $castel_transact[$ctrl_id]['contract'] < 0.5) {
                unset ($castel_transact[$ctrl_id]);
                unset ($error_transact[$ctrl_id]);
            }
            if (isset($castel_transact[$ctrl_id])
                && $castel_transact[$ctrl_id]['quadro'] == 'DF' 
                && $castel_transact[$ctrl_id]['operazioni_imponibili'] < $min_limit
                && $castel_transact[$ctrl_id]['contract'] < $min_limit ){
                unset ($castel_transact[$ctrl_id]);
                unset ($error_transact[$ctrl_id]);
            }
            // inizio controlli su CF e PI
            $resultpi = $nuw->check_VAT_reg_no($row['pariva']);
            $resultcf = $nuw->check_VAT_reg_no($row['codfis']);
            if ($admin_aziend['country'] != $row['country']) {
                 // È uno non residente 
                  if (!empty($row['datnas'])) { // È un persona fisica straniera
                     if (empty($row['pronas']) || empty($row['luonas']) || empty($row['counas'])) {
                         $error_transact[$row['idtes']][] = $script_transl['errors'][9];
                     }
                  }                
            } elseif (empty($resultpi) && !empty($row['pariva'])) {
              // ha la partita IVA ed è giusta 
              if( strlen(trim($row['codfis'])) == 11) {
                 // È una persona giuridica

                  if (intval($row['codfis']) == 0 && $row['allegato'] < 2 ) { // se non è un riepilogativo 
                     $error_transact[$row['idtes']][] = $script_transl['errors'][1];
                  } elseif ($row['sexper'] != 'G') {
                     $error_transact[$row['idtes']][] = $script_transl['errors'][2];
                  }
              } else {
                 // È una una persona fisica
                  $resultcf = $nuw->check_TAXcode($row['codfis']);
                  if (empty($row['codfis'])) {
                      $error_transact[$row['idtes']][] = $script_transl['errors'][3];
                  } elseif ($row['sexper'] == 'G' and empty($resultcf)) {
                     $error_transact[$row['idtes']][] = $script_transl['errors'][4];
                  } elseif ($row['sexper'] == 'M' and empty($resultcf) and
                      (intval(substr($row['codfis'],9,2)) > 31 or
                      intval(substr($row['codfis'],9,2)) < 1) ) {
                      $error_transact[$row['idtes']][] = $script_transl['errors'][5];
                  } elseif ($row['sexper'] == 'F' and empty($resultcf) and
                      (intval(substr($row['codfis'],9,2)) > 71 or
                      intval(substr($row['codfis'],9,2)) < 41) ) {
                      $error_transact[$row['idtes']][] = $script_transl['errors'][6];
                  } elseif (! empty ($resultcf)) {
                      $error_transact[$row['idtes']][] = $script_transl['errors'][7];
                  }
              }
            } else {
                 // È un soggetto con codice fiscale senza partita IVA 
		 $resultcf = $nuw->check_TAXcode($row['codfis']);
              if( strlen(trim($row['codfis'])) == 11) { // È una persona giuridica
				    $resultcf = $nuw->check_VAT_reg_no($row['codfis']);
				 }
                  if (empty($row['codfis'])) {
                      $error_transact[$row['idtes']][] = $script_transl['errors'][3];
                  } elseif ($row['sexper'] == 'G' and !empty($resultcf)) {
                     $error_transact[$row['idtes']][] = $script_transl['errors'][4];
                  } elseif ($row['sexper'] == 'M' and empty($resultcf) and
                      (intval(substr($row['codfis'],9,2)) > 31 or
                      intval(substr($row['codfis'],9,2)) < 1) ) {
                      $error_transact[$row['idtes']][] = $script_transl['errors'][5];
                  } elseif ($row['sexper'] == 'F' and empty($resultcf) and
                      (intval(substr($row['codfis'],9,2)) > 71 or
                      intval(substr($row['codfis'],9,2)) < 41) ) {
                      $error_transact[$row['idtes']][] = $script_transl['errors'][6];
                  } elseif (!empty ($resultcf)) {
                      $error_transact[$row['idtes']][] = $script_transl['errors'][7];
                  }
            }
            // fine controlli su CF e PI
            $castel_transact[$row['idtes']] = $row;
            $castel_transact[$row['idtes']]['riepil'] = 0; 
            // determino il tipo di soggetto residente all'estero
            $castel_transact[$row['idtes']]['istat_country'] = 0;
            // --------- TIPIZZAZIONE DEI MOVIMENTI -----------------
            $castel_transact[$row['idtes']]['quadro'] = 'ZZ';
            if ($row['country'] <> $admin_aziend['country'] ) {
                // NON RESIDENTE
                $castel_transact[$row['idtes']]['istat_country']=$row['country']; 
                $castel_transact[$row['idtes']]['cod_ade']=$row['cod_agenzia_entrate']; 
                $castel_transact[$row['idtes']]['quadro'] = 'FN';
            } else {
                if ($row['regiva']==4 && (!empty($row['n_fatt']))) { // se è un documento allegato ad uno scontrino utilizzo il numero fattura in tesdoc
                    $castel_transact[$row['idtes']]['numdoc']=$row['n_fatt'].' scontr.n.'.$row['numdoc'];
                    $castel_transact[$row['idtes']]['seziva']='';
		}
                if ($row['pariva'] >0){ 
                    // RESIDENTE con partita IVA
                    if ($row['regiva'] < 6){ // VENDITE - Fatture Emesse o Note Emesse
			if ($row['operat']==1){ // Fattura
                            $castel_transact[$row['idtes']]['quadro'] = 'FE';
                        } else {                // Note
                            $castel_transact[$row['idtes']]['quadro'] = 'NE';
                        } 
                    } else {                // ACQUISTI - Fatture Ricevute o Note Ricevute
                        if ($row['operat']==1){ // Fattura
                            $castel_transact[$row['idtes']]['quadro'] = 'FR';
                        } else {                // Note
                            $castel_transact[$row['idtes']]['quadro'] = 'NR';
                        } 
                        
                    }
                 } else { // senza partita iva
                        if ($row['allegato']==2){ // riepilogativo es.scheda carburante
                            $castel_transact[$row['idtes']]['quadro'] = 'FR'; 
                            $castel_transact[$row['idtes']]['riepil'] = 1; 
                        } elseif ( empty($resultcf) && strlen($row['codfis'])==11){ // associazioni/noprofit
                            // imposto il codice fiscale come partita iva
                            if ($row['regiva'] < 6){ // VENDITE - Fatture Emesse o Note Emesse
                                if ($row['operat']==1){ // Fattura
                                    $castel_transact[$row['idtes']]['quadro'] = 'FE';
                                } else {                // Note
                                    $castel_transact[$row['idtes']]['quadro'] = 'NE';
                                } 
                            } else {                // ACQUISTI - Fatture Ricevute o Note Ricevute
                                // nei quadri FR NR è possibile indicare la sola partita iva
                                $castel_transact[$row['idtes']]['pariva'] = $castel_transact[$row['idtes']]['codfis'];
                                $castel_transact[$row['idtes']]['codfis']=0;
                                if ($row['operat']==1){ // Fattura
                                    $castel_transact[$row['idtes']]['quadro'] = 'FR';
                                } else {                // Note
                                    $castel_transact[$row['idtes']]['quadro'] = 'NR';
                                } 
                            }
                        }  elseif (empty($resultcf) && strlen($row['codfis'])==16){ // privato servito con fattura
                            if ($row['operat']==1){ // Fattura
                                $castel_transact[$row['idtes']]['quadro'] = 'FE';
                            } else {                // Note
                                $castel_transact[$row['idtes']]['quadro'] = 'NE';
                            } 
                        }  else {                // privati con scontrino
                            $castel_transact[$row['idtes']]['quadro'] = 'DF';
                        } 
                 }
            }
           
            // ricerco gli eventuali contratti che hanno generato la transazione
            $castel_transact[$row['idtes']]['n_rate'] = 1;
            $castel_transact[$row['idtes']]['contract'] = 0;
            if ($row['id_doc'] > 0 ) {
                $contr_query= "SELECT ".$gTables['tesdoc'].".*,".$gTables['contract'].".* FROM ".$gTables['tesdoc']."
                            LEFT JOIN ".$gTables['contract']." ON ".$gTables['tesdoc'].".id_contract = ".$gTables['contract'].".id_contract 
                            WHERE id_tes = ".$row['id_doc']." AND (".$gTables['tesdoc'].".id_contract > 0 AND tipdoc NOT LIKE 'VCO')";
                $result_contr = gaz_dbi_query($contr_query);

                if (gaz_dbi_num_rows($result_contr) > 0 ) {
                    $contr_r=gaz_dbi_fetch_array($result_contr);
                    // devo ottenere l'importo totale del contratto
                    $castel_transact[$row['idtes']]['contract']=$contr_r['current_fee']*$contr_r['months_duration'];
                    $castel_transact[$row['idtes']]['n_rate'] = 2;
                }
            }
            // fine ricerca contratti
                 if (!empty($row['sedleg'])){
                     if ( preg_match("/([\w\,\.\s]+)([0-9]{5})[\s]+([\w\s\']+)\(([\w]{2})\)/",$row['sedleg'],$regs)) {
                        $castel_transact[$row['idtes']]['Indirizzo'] = $regs[1];
                        $castel_transact[$row['idtes']]['Comune'] = $regs[3];
                        $castel_transact[$row['idtes']]['Provincia'] = $regs[4];
                     } else {
                       $error_transact[$row['idtes']][] = $script_transl['errors'][10];
                     }
                 }
                 // inizio valorizzazione imponibile,imposta,senza_iva,art8
                 $castel_transact[$row['idtes']]['operazioni_imponibili'] = 0;
                 $castel_transact[$row['idtes']]['imposte_addebitate'] = 0;
                 $castel_transact[$row['idtes']]['operazioni_esente'] = 0;
                 $castel_transact[$row['idtes']]['operazioni_nonimp'] = 0;
                 $castel_transact[$row['idtes']]['tipiva'] = 1;
                 switch ($row['tipiva']) {
                        case 'I':
                        case 'D':
                             $castel_transact[$row['idtes']]['operazioni_imponibili'] = $value_imponi;
                             $castel_transact[$row['idtes']]['imposte_addebitate'] = $value_impost;
                             if ($value_impost == 0){  //se non c'è imposta il movimento è sbagliato
                                $error_transact[$row['idtes']][] = $script_transl['errors'][11];
                             }
                        break;
                        case 'E':

                             $castel_transact[$row['idtes']]['tipiva'] = 3;
                             $castel_transact[$row['idtes']]['operazioni_esente'] = $value_imponi;
                             if ($value_impost != 0){  //se c'è imposta il movimento è sbagliato
                                $error_transact[$row['idtes']][] = $script_transl['errors'][12];
                             }
                        break;
                        case 'N':
                             $castel_transact[$row['idtes']]['tipiva'] = 2;
                             $castel_transact[$row['idtes']]['operazioni_nonimp'] = $value_imponi;
                             if ($value_impost != 0){  //se c'è imposta il movimento è sbagliato
                                $error_transact[$row['idtes']][] = $script_transl['errors'][12];
                             }
                        break;
                 }
            } else { //movimenti successivi al primo ma dello stesso id
                 // inizio addiziona valori imponibile,imposta,esente,non imponibile
                 switch ($row['tipiva']) {
                        case 'I':
                        case 'D':
                             $castel_transact[$row['idtes']]['operazioni_imponibili'] += $value_imponi;
                             $castel_transact[$row['idtes']]['imposte_addebitate'] += $value_impost;
                             if ($value_impost == 0){  //se non c'è imposta il movimento è sbagliato
                                $error_transact[$row['idtes']][] = $script_transl['errors'][11];
                             }
                        break;
                        case 'E':
                             $castel_transact[$row['idtes']]['operazioni_esente'] += $value_imponi;
                             if ($value_impost != 0){  //se c'è imposta il movimento è sbagliato
                                $error_transact[$row['idtes']][] = $script_transl['errors'][12];
                             }
                        break;
                        case 'N':
                             $castel_transact[$row['idtes']]['operazioni_nonimp'] += $value_imponi;
                             if ($value_impost != 0){  //se c'è imposta il movimento è sbagliato
                                $error_transact[$row['idtes']][] = $script_transl['errors'][12];
                             }
                        break;
                 }
                 // fine addiziona valori imponibile,imposta,esente,non imponibile
            }

              
              // fine valorizzazione imponibile,imposta,esente,non imponibile
              $ctrl_id = $row['idtes'];
       }
       // se il precedente movimento non ha raggiunto l'importo lo elimino
       if (isset($castel_transact[$ctrl_id])
           && $castel_transact[$ctrl_id]['operazioni_imponibili'] < 0.5
           && $castel_transact[$ctrl_id]['operazioni_esente'] < 0.5
           && $castel_transact[$ctrl_id]['operazioni_nonimp'] < 0.5
           && $castel_transact[$ctrl_id]['contract'] < 0.5) {
           unset ($castel_transact[$ctrl_id]);
           unset ($error_transact[$ctrl_id]);
       }
       if (isset($castel_transact[$ctrl_id]) && $castel_transact[$ctrl_id]['quadro'] == 'DF' 
           && $castel_transact[$ctrl_id]['operazioni_imponibili'] < $min_limit
           && $castel_transact[$ctrl_id]['contract'] < $min_limit ){
           unset ($castel_transact[$ctrl_id]);
           unset ($error_transact[$ctrl_id]);
       }
    } else {
              $error_transact[0] = $script_transl['errors'][15];
    }
    // fine creazione array righi ed errori

    return array($castel_transact,$error_transact);
}
示例#7
0
<?php
require("../../library/include/datlib.inc.php");
$admin_aziend=checkAdmin();
$clfoco =  filter_var(intval($_GET['clfoco']),FILTER_SANITIZE_MAGIC_QUOTES);
$tes_exc =  filter_var(substr($_GET['id_tesdoc_ref'],0,15),FILTER_SANITIZE_MAGIC_QUOTES);
$return_arr = array();
$sqlquery= "SELECT ".$gTables['paymov'].".*,".$gTables['rigmoc'].".*,".$gTables['tesmov'].".*,".$gTables['anagra'].".ragso1,".$gTables['anagra'].".ragso2 FROM ".$gTables['paymov']."
            LEFT JOIN ".$gTables['rigmoc']." ON ( ".$gTables['rigmoc'].".id_rig = ".$gTables['paymov'].".id_rigmoc_doc OR ".$gTables['rigmoc'].".id_rig = ".$gTables['paymov'].".id_rigmoc_pay ) 
            LEFT JOIN ".$gTables['tesmov']." ON ".$gTables['tesmov'].".id_tes = ".$gTables['rigmoc'].".id_tes
            LEFT JOIN ".$gTables['clfoco']." ON ".$gTables['clfoco'].".codice = ".$gTables['tesmov'].".clfoco  
            LEFT JOIN ".$gTables['anagra']." ON ".$gTables['anagra'].".id = ".$gTables['clfoco'].".id_anagra  
            WHERE codcon=".$clfoco." AND ".$gTables['paymov'].".id_tesdoc_ref NOT LIKE '$tes_exc' ORDER BY ".$gTables['tesmov'].".datreg DESC, id_tesdoc_ref DESC, id_rig";
$result = gaz_dbi_query($sqlquery);

while($row = gaz_dbi_fetch_array($result)) {
            array_push($return_arr,$row);
}
echo json_encode($return_arr);
?>

示例#8
0
function createTable($table)
{
    $results = gaz_dbi_query ("SHOW CREATE TABLE ".$table);
    $row = gaz_dbi_fetch_array($results);
    echo $row['Create Table'];
    echo ";\n\n";
}
示例#9
0
function ValoriConti($datainizio,$datafine,$datadopo,$mastrocli,$mastrofor,$dettcf) //funzione per la creazione dell'array dei conti con saldo diverso da 0 e ordinati per tipo e numero di conto
{
    global $gTables;
    $sqlquery = 'SELECT codcon, SUM(import) AS somma, darave '.
                'FROM '.$gTables['rigmoc'].' LEFT JOIN '.$gTables['tesmov'].' ON '.
                $gTables['rigmoc'].'.id_tes = '.$gTables['tesmov'].'.id_tes '.
                'WHERE datreg BETWEEN '.$datainizio.' AND '.$datafine.' '.
                'AND caucon <> \'CHI\' AND caucon <> \'APE\' '.
                'OR (caucon = \'APE\' AND datreg BETWEEN '.$datainizio.' AND '.$datadopo.') '.
                'GROUP BY codcon, darave '.
                'ORDER BY codcon desc, darave';
    $rs_castel = gaz_dbi_query($sqlquery);
    $ctrlcodcon=0;
    $ctrlsaldo=0;
	$totclienti=0;
	$totfornitori=0;
    $costi =  array();
    $ricavi =  array();
    $attivo =  array();
    $passivo =  array();
    $clienti =  array();
    $fornitori =  array();
    while ($castel = gaz_dbi_fetch_array($rs_castel)) {
         if ($dettcf==2 && substr($castel["codcon"],0,3)==$mastrocli) {
               $codcon=$mastrocli*1000000;
		 } elseif ($dettcf==2 && substr($castel["codcon"],0,3)==$mastrofor) {
               $codcon=$mastrofor*1000000;
		 } else {
               $codcon=$castel["codcon"];
		 }


         if ($codcon != $ctrlcodcon and $ctrlcodcon != 0 ) {
            if ($ctrlsaldo != 0) {
               $ctrltipcon = substr($ctrlcodcon,0,1);
               switch  ($ctrltipcon){
                       case 4:  //economici
                       case 3:
                       if  ($ctrlsaldo > 0) {
                           $costi[$ctrlcodcon]=number_format($ctrlsaldo,2,'.','');
                       } else {
                           $ricavi[$ctrlcodcon]=number_format($ctrlsaldo,2,'.','');
                       }
                       break;
                       default: //patrimoniali
					   if  ($dettcf==3 && substr($ctrlcodcon,0,3)==$mastrocli) {
                            $clienti[$ctrlcodcon]=number_format($ctrlsaldo,2,'.','');
							$totclienti += $ctrlsaldo;
					   } elseif ($dettcf==3 && substr($ctrlcodcon,0,3)==$mastrofor) {
                            $fornitori[$ctrlcodcon]=number_format($ctrlsaldo,2,'.','');
							$totfornitori += $ctrlsaldo;
					   } else {
                          if  ($ctrlsaldo > 0) {
                              $attivo[$ctrlcodcon]=number_format($ctrlsaldo,2,'.','');
                          } else {
                              $passivo[$ctrlcodcon]=number_format($ctrlsaldo,2,'.','');
                          }
					   }
                       break;
                }
            }
            $ctrlsaldo=0;
        }
        if ($castel["darave"] == 'D') {
            $ctrlsaldo += $castel["somma"];
        } else {
            $ctrlsaldo -= $castel["somma"];
        }
        $ctrlcodcon=$codcon;
    }
    if ($ctrlsaldo != 0) {
        $ctrltipcon = substr($ctrlcodcon,0,1);
        switch  ($ctrltipcon){
                case 4:  //economici
                case 3:
                       if  ($ctrlsaldo > 0) {
                           $costi[$ctrlcodcon]=number_format($ctrlsaldo,2,'.','');
                       } else {
                           $ricavi[$ctrlcodcon]=number_format($ctrlsaldo,2,'.','');
                       }
                break;
                default: //patrimoniali
					   if  ($dettcf==3 && substr($ctrlcodcon,0,3)==$mastrocli) {
                            $clienti[$ctrlcodcon]=number_format($ctrlsaldo,2,'.','');
							$totclienti += $ctrlsaldo;
					   } elseif ($dettcf==3 && substr($ctrlcodcon,0,3)==$mastrofor) {
                            $fornitori[$ctrlcodcon]=number_format($ctrlsaldo,2,'.','');
							$totfornitori += $ctrlsaldo;
					   } else {
                          if  ($ctrlsaldo > 0) {
                              $attivo[$ctrlcodcon]=number_format($ctrlsaldo,2,'.','');
                          } else {
                              $passivo[$ctrlcodcon]=number_format($ctrlsaldo,2,'.','');
                          }
					   }
                       break;
        }
    }
	if ($dettcf==3) {
       $attivo[$mastrocli*1000000]=number_format($totclienti,2,'.','');
       $passivo[$mastrofor*1000000]=number_format($totfornitori,2,'.','');
    }
    ksort($costi);
    ksort($ricavi);
    ksort($attivo);
    ksort($passivo);
    ksort($clienti);
    ksort($fornitori);
    $conti = array("cos" => $costi,"ric" => $ricavi,"att" => $attivo,"pas" => $passivo,"cli" => $clienti,"for" => $fornitori);
    return $conti;
}
示例#10
0
     $where = "( tipdoc like 'F__' OR tipdoc = 'DDT' OR tipdoc = 'VCO' ) ";
} else {
     $where = " tipdoc like 'A__' ";
}
$sqlquery = 'SELECT datemi,clfoco,tiprig,codart,'.$gTables['rigdoc'].'.descri,'.$gTables['rigdoc'].'.unimis,catmer,quanti,prelis,'
            .$gTables['tesdoc'].'.sconto as scotes, '.$gTables['rigdoc'].'.sconto as scorig,'.
            $gTables['clfoco'].'.codice,'.$gTables['tesdoc'].'. id_tes, ragso1, ragso2 FROM '.$gTables['rigdoc'].' LEFT JOIN '.
            $gTables['tesdoc'].' ON '.$gTables['rigdoc'].'.id_tes = '.$gTables['tesdoc'].
            '.id_tes LEFT JOIN '.$gTables['artico'].' ON '.$gTables['rigdoc'].'.codart = '.
            $gTables['artico'].'.codice LEFT JOIN '.$gTables['clfoco'].' ON '.
            $gTables['tesdoc'].'.clfoco = '.$gTables['clfoco'].
            '.codice LEFT JOIN '.$gTables['anagra'].' ON '.
            $gTables['anagra'].'.id = '.$gTables['clfoco'].
            '.id_anagra WHERE YEAR(datemi) = '.$form['annimp'].' AND tiprig BETWEEN 0 AND 1 AND '.$where.
            'ORDER BY catmer, codart, datemi DESC';
$rs_documenti = gaz_dbi_query($sqlquery);
// preparo il castelletto delle vendite degli articoli partendo dai movimenti
$totali=array();
$totali['valore'] = 0;
$totali['quanti'] = 0;
$totali['max_valore'] = 0;
$totali['max_quanti'] = 0;
$totali['max_valcode'] = "";
$totali['max_quacode'] = "";
$castelletto_articoli = array();
while ($rigo_documenti = gaz_dbi_fetch_array($rs_documenti)) {
      if ($rigo_documenti['scotes'] > 0){
         if ($rigo_documenti['tiprig'] == 0){
             $valore = CalcolaImportoRigo(1, CalcolaImportoRigo($rigo_documenti['quanti'], $rigo_documenti['prelis'], $rigo_documenti['scorig']), $rigo_documenti['scotes']);
         } else {
             $valore = CalcolaImportoRigo(1, CalcolaImportoRigo(1, $rigo_documenti['prelis'], $rigo_documenti['scorig']), $rigo_documenti['scotes']);
示例#11
0
if (isset($_GET['stampa']) and $message == "") {
        //Mando in stampa i movimenti contabili generati
        $locazione = "Location: stampa_liscre.php?annini=".$annini."&annfin=".$annfin;
        header($locazione);
        exit;
}
if (isset($_GET['Return'])) {
        header("Location:docume_vendit.php");
        exit;
}

// garvin: Measure query time. TODO-Item http://sourceforge.net/tracker/index.php?func=detail&aid=571934&group_id=23067&atid=377411
list($usec, $sec) = explode(' ',microtime());
$querytime_before = ((float)$usec + (float)$sec);
$sqlquery= "SELECT COUNT(DISTINCT ".$gTables['rigmoc'].".id_tes) as nummov,codcon, ragso1, e_mail, telefo,".$gTables['clfoco'].".codice, sum(import*(darave='D')) as dare,sum(import*(darave='A')) as avere, sum(import*(darave='D') - import*(darave='A')) as saldo, darave FROM ".$gTables['rigmoc']." LEFT JOIN ".$gTables['tesmov']." ON ".$gTables['rigmoc'].".id_tes = ".$gTables['tesmov'].".id_tes LEFT JOIN ".$gTables['clfoco']." ON ".$gTables['rigmoc'].".codcon = ".$gTables['clfoco'].".codice LEFT JOIN ".$gTables['anagra']." ON ".$gTables['anagra'].".id = ".$gTables['clfoco'].".id_anagra WHERE datreg between ".$annini."0101 and ".$annfin."1231 and codcon like '".$admin_aziend['mascli']."%' and caucon <> 'CHI' and caucon <> 'APE' or (caucon = 'APE' and codcon like '".$admin_aziend['mascli']."%' and datreg like '".$annini."%') GROUP BY codcon ORDER BY ragso1, darave";
$rs_castel = gaz_dbi_query($sqlquery);
list($usec, $sec) = explode(' ',microtime());
$querytime_after = ((float)$usec + (float)$sec);
$querytime = $querytime_after - $querytime_before;
require("../../library/include/header.php");
$script_transl=HeadMain(0,array('jquery/jquery-1.7.1.min',
                                  'jquery/ui/jquery.ui.core',
                                  'jquery/ui/jquery.ui.widget',
                                  'jquery/ui/jquery.ui.mouse',
                                  'jquery/ui/jquery.ui.button',
                                  'jquery/ui/jquery.ui.dialog',
                                  'jquery/ui/jquery.ui.position',
                                  'jquery/ui/jquery.ui.draggable',
                                  'jquery/ui/jquery.ui.resizable',
                                  'jquery/ui/jquery.effects.core',
                                  'jquery/ui/jquery.effects.scale',
示例#12
0
 function setRigmocEntries($id_rig)
 {
     global $gTables;
     $sqlquery = "SELECT * FROM " . $gTables['paymov'] . " WHERE id_rigmoc_pay={$id_rig} OR id_rigmoc_doc={$id_rig}";
     $this->RigmocEntries = array();
     $rs = gaz_dbi_query($sqlquery);
     while ($r = gaz_dbi_fetch_array($rs)) {
         $this->RigmocEntries[] = $r;
     }
 }
示例#13
0
 function uploadMag($id_rigo_doc=0,$tipdoc,$numdoc,$seziva,$datdoc,$clfoco,$sconto_chiusura,$caumag,$codart,$quantita,$prezzo,$sconto_rigo,$id_movmag=0,$stock_eval_method=null,$data_from_admin_mov=false,$protoc='')  // su id_rigo_doc 0 per inserire 1 o + per fare l'upload 'DEL' per eliminare il movimento
 {
     // in $data_from_admin_mov  ci sono i dati in più provenienti da admin_movmag (desdoc,operat, id_rif)
     global $gTables,$admin_aziend;
     $docOperat = $this->getOperators();
     if ($tipdoc == 'FAD'){  // per il magazzino una fattura differita è come dire DDT
         $tipdoc = 'DDT';
     }
     if (substr($tipdoc,0,1) == 'A' or $tipdoc == 'DDR' or $tipdoc == 'DDL'){ //documento di acquisto
       require("../../modules/acquis/lang.".$admin_aziend['lang'].".php");
       $desdoc=$strScript['admin_docacq.php'][0][$tipdoc];
     } elseif ($tipdoc=='INV'){
       require("../../modules/magazz/lang.".$admin_aziend['lang'].".php");
       $desdoc=$strScript['admin_artico.php']['esiste'];
     } else {//documento di vendita
       require("../../modules/vendit/lang.".$admin_aziend['lang'].".php");
       $desdoc=$strScript['admin_docven.php'][0][$tipdoc];
     }
     if (substr($tipdoc,0,1) == 'D' || $tipdoc == 'VCO'){
       $desdoc .= " n.".$numdoc;
       if ($seziva != '') $desdoc .= "/".$seziva;
     } else {
       $desdoc .= " n.".$numdoc;
       if ($seziva != '') $desdoc .= "/".$seziva;
       $desdoc .= " prot.".$protoc;
       if ($seziva != '') $desdoc .= "/".$seziva;
     }
     $new_caumag = gaz_dbi_get_row($gTables['caumag'],'codice',$caumag);
     $operat = $new_caumag['operat'];
     if (!$data_from_admin_mov){         // se viene da un documento
        $datreg = $datdoc;               // la data di registrazione coincide con quella del documento
        $operat = $docOperat[$tipdoc];    // e la descrizione la ricavo dal tipo documento
     } else {                            // se è stato passato l'array dei dati
        $datreg = $data_from_admin_mov['datreg']; // prendo la descrizione e l'operatore da questo
        $operat = $data_from_admin_mov['operat'];
        $desdoc = $data_from_admin_mov['desdoc'];
     }
     $row_movmag = array('caumag'=>$caumag,
                         'operat'=>$operat,
                         'datreg'=>$datreg,
                         'tipdoc'=>$tipdoc,
                         'desdoc'=>$desdoc,
                         'datdoc'=>$datdoc,
                         'clfoco'=>$clfoco,
                         'scochi'=>$sconto_chiusura,
                         'id_rif'=>$id_rigo_doc,
                         'artico'=>$codart,
                         'quanti'=>$quantita,
                         'prezzo'=>$prezzo,
                         'scorig'=>$sconto_rigo );
     if ($id_movmag==0) {                             // si deve inserire un nuovo movimento
        movmagInsert($row_movmag);
        $ultimo_id_mm = gaz_dbi_last_id(); //id del rigo movimento magazzino
        //gaz_dbi_put_row($gTables['rigdoc'], 'id_rig', $id_rigo_doc, 'id_mag', gaz_dbi_last_id());
        gaz_dbi_query ("UPDATE ".$gTables['rigdoc']." SET id_mag = ". gaz_dbi_last_id()." WHERE `id_rig` = $id_rigo_doc ");
     } elseif ($id_rigo_doc==='DEL') {                 // si deve eliminare un movimento esistente
         $old_movmag = gaz_dbi_get_row($gTables['movmag'],'id_mov',$id_movmag);
         $old_caumag = gaz_dbi_get_row($gTables['caumag'],'codice',$old_movmag['caumag']);
         gaz_dbi_del_row($gTables['movmag'], 'id_mov', $id_movmag);
         $codart = $old_movmag['artico'] ;
     } else {   // si deve modificare un movimento esistente
         $old_movmag = gaz_dbi_get_row($gTables['movmag'],'id_mov',$id_movmag);
         $old_caumag = gaz_dbi_get_row($gTables['caumag'],'codice',$old_movmag['caumag']);
         $id = array('id_mov',$id_movmag);
         if (!isset($new_caumag['operat'])){
            $new_caumag['operat'] = 0;
         }
         if (!isset($old_caumag['operat'])){
            $old_caumag['operat'] = 0;
         }
         movmagUpdate($id,$row_movmag);
     }
 }
示例#14
0
function gaz_dbi_table_update($table, $id, $newValue)
{
    /*
     * $table - il nome della tabella all'interno dell'array $gTables
     * $id - stringa con il valore del campo "codice" da aggiornare o array(0=>nome,1=>valore,2=>nuovo_valore)
     * $newValue - array associativo del tipo nome_colonna=>valore con i valori da inserire
     */
    global $link, $gTables;
    $field_results = gaz_dbi_query("SELECT * FROM " . $gTables[$table]);
    $field_meta = gaz_dbi_get_fields_meta($field_results);
    $query = "UPDATE " . $gTables[$table] . ' SET ';
    $first = true;
    $quote_id = "'";
    for ($j = 0; $j < $field_meta['num']; $j++) {
        if (isset($newValue[$field_meta['data'][$j]->name])) {
            $query .= $first ? $field_meta['data'][$j]->name . " = " : ", " . $field_meta['data'][$j]->name . " = ";
            $first = false;
            if ($field_meta['data'][$j]->blob && !empty($newValue[$field_meta['data'][$j]->name])) {
                $query .= '0x' . bin2hex($newValue[$field_meta['data'][$j]->name]);
            } elseif ($field_meta['data'][$j]->numeric && $field_meta['data'][$j]->type != 'timestamp') {
                $query .= floatval($newValue[$field_meta['data'][$j]->name]);
            } else {
                $elem = addslashes($newValue[$field_meta['data'][$j]->name]);
                // risolve il classico problema dei caratteri speciali per inserimenti in SQL
                $elem = preg_replace("/\\\\'/", "''", $elem);
                //cambia lo backslash+singlequote con 2 singlequote come fa phpmyadmin.
                $query .= "'" . $elem . "'";
            }
            //per superare lo STRICT_MODE del server non metto gli apici ai numerici
            if (is_array($id) && $field_meta['data'][$j]->name == $id[0] && $field_meta['data'][$j]->numeric || is_string($id) && $field_meta['data'][$j]->name == 'codice' && $field_meta['data'][$j]->numeric) {
                $quote_id = '';
            }
        } elseif ($field_meta['data'][$j]->name == 'adminid') {
            //l'adminid non lo si deve passare
            $query .= ", adminid = '" . $_SESSION['Login'] . "'";
        }
    }
    //   se in $id c'è un array uso il nome del campo presente all'index [0] ed il valore dell'index [1],
    //   eventualmente anche l'index [2] per il nuovo valore del codice che quindi verrà modificato
    if (is_array($id)) {
        if (isset($id[2])) {
            $query .= ", {$id['0']} = {$quote_id}{$id['2']}{$quote_id}";
        }
        $query .= " WHERE {$id['0']} = {$quote_id}{$id['1']}{$quote_id}";
    } else {
        //altrimenti uso "codice"
        $query .= " WHERE codice = {$quote_id}{$id}{$quote_id}";
    }
    $result = mysqli_query($link, $query);
    if (!$result) {
        die("Error gaz_dbi_table_update:<b> {$query} </b>" . mysqli_error($link));
    }
}
示例#15
0
function getDocumentsBill($upd=false)
{
    global $gTables,$admin_aziend;
    $calc = new Compute;
    $from =  $gTables['tesdoc'].' AS tesdoc
             LEFT JOIN '.$gTables['pagame'].' AS pay
             ON tesdoc.pagame=pay.codice
             LEFT JOIN '.$gTables['clfoco'].' AS customer
             ON tesdoc.clfoco=customer.codice
             LEFT JOIN '.$gTables['anagra'].' AS anagraf
             ON anagraf.id=customer.id_anagra';
    $where = "(tippag = 'B' OR tippag = 'T' OR tippag = 'V') AND geneff = '' AND tipdoc LIKE 'FA_'";
    $orderby = "datfat ASC, protoc ASC, id_tes ASC";
    $result = gaz_dbi_dyn_query('tesdoc.*,
                        pay.tippag,pay.numrat,pay.tipdec,pay.giodec,pay.tiprat,pay.mesesc,pay.giosuc,
                        customer.codice, customer.speban AS addebitospese,
                        CONCAT(anagraf.ragso1,\' \',anagraf.ragso2) AS ragsoc,CONCAT(anagraf.citspe,\' (\',anagraf.prospe,\')\') AS citta',
                        $from,$where,$orderby);
    $doc=array();
    $ctrlp=0;
    while ($tes = gaz_dbi_fetch_array($result)) {
           //il numero di protocollo contiene anche l'anno nei primi 4 numeri
           $year_prot=intval(substr($tes['datfat'],0,4))*1000000+$tes['protoc'];
           if ($year_prot <> $ctrlp) { // la prima testata della fattura
                if ($ctrlp>0 && ($doc[$ctrlp]['tes']['stamp'] >= 0.01 || $taxstamp >= 0.01 )) { // non è il primo ciclo faccio il calcolo dei bolli del pagamento e lo aggiungo ai castelletti
					$calc->payment_taxstamp($calc->total_imp+$calc->total_vat+$carry-$rit+$taxstamp, $doc[$ctrlp]['tes']['stamp'],$doc[$ctrlp]['tes']['round_stamp']*$doc[$ctrlp]['tes']['numrat']);
					$calc->add_value_to_VAT_castle($doc[$ctrlp]['vat'],$taxstamp+$calc->pay_taxstamp,$admin_aziend['taxstamp_vat']);
					$doc[$ctrlp]['vat']=$calc->castle;
					// aggiungo il castelleto conti
					if (!isset($doc[$ctrlp]['acc'][$admin_aziend['boleff']])) {
						$doc[$ctrlp]['acc'][$admin_aziend['boleff']]['import'] = 0;
					}
					$doc[$ctrlp]['acc'][$admin_aziend['boleff']]['import'] += $taxstamp+$calc->pay_taxstamp;
                }    
                $carry=0;
                $somma_spese=0;
                $cast_vat=array();
                $totimp_decalc=0.00;
                $n_vat_decalc=0;
                $totimpdoc=0;
                $spese_incasso=$tes['numrat']*$tes['speban'];
                $taxstamp=0;
                $rit=0;
           } else {
                $spese_incasso=0;
           }
           // aggiungo il bollo sugli esenti/esclusi se nel DdT c'è ma non è ancora stato mai aggiunto
           if ($tes['taxstamp']>=0.01 && $taxstamp<0.01) {
                $taxstamp=$tes['taxstamp'];
           }           
	   if ($tes['virtual_taxstamp'] == 0 || $tes['virtual_taxstamp'] == 3 ) { //  se è a carico dell'emittente non lo aggiungo al castelletto IVA
		$taxstamp = 0.00;
	   }
           //recupero i dati righi per creare il castelletto
           $from =  $gTables['rigdoc'].' AS rows
                    LEFT JOIN '.$gTables['aliiva'].' AS vat
                    ON rows.codvat=vat.codice';
           $rs_rig = gaz_dbi_dyn_query('rows.*,vat.tipiva AS tipiva',$from, "rows.id_tes = ".$tes['id_tes'],"id_tes DESC");
           while ($r = gaz_dbi_fetch_array($rs_rig)) {
              if ($r['tiprig'] <= 1) {//ma solo se del tipo normale o forfait
                 //calcolo importo rigo
                 $importo = CalcolaImportoRigo($r['quanti'],$r['prelis'],array($r['sconto'],$tes['sconto']));
                 if ($r['tiprig'] == 1) {
                    $importo = CalcolaImportoRigo(1,$r['prelis'], $tes['sconto']);
                 }
                 //creo il castelletto IVA
                 if (!isset($cast_vat[$r['codvat']]['import'])) {
                    $cast_vat[$r['codvat']]['impcast']=0;
                    $cast_vat[$r['codvat']]['ivacast']=round(($importo*$r['pervat'])/ 100,2);;
                    $cast_vat[$r['codvat']]['import']=0;
                    $cast_vat[$r['codvat']]['periva']=$r['pervat'];
                    $cast_vat[$r['codvat']]['tipiva']=$r['tipiva'];
                 }
                 $cast_vat[$r['codvat']]['impcast']+=$importo;
                 $cast_vat[$r['codvat']]['import']+=$importo;
                 $totimpdoc += $importo;
                 $rit+=round($importo*$r['ritenuta']/100,2);
              } elseif($r['tiprig'] == 3) {
                 $carry += $r['prelis'] ;
              }
           }
           $doc[$year_prot]['tes']=$tes;
           $doc[$year_prot]['car']=$carry;
           $doc[$year_prot]['rit']=$rit;
           $ctrlp=$year_prot;
           $somma_spese += $tes['traspo'] + $spese_incasso + $tes['spevar'] ;
           $calc->add_value_to_VAT_castle($cast_vat,$somma_spese,$tes['expense_vat']);
           $doc[$ctrlp]['vat']=$calc->castle;
	   
	   // segno l'effetto come generato
	   if ($upd) {
                gaz_dbi_query ("UPDATE ".$gTables['tesdoc']." SET geneff = 'S' WHERE id_tes = ".$tes['id_tes'].";");
           }
    }
    if ($doc[$ctrlp]['tes']['stamp'] >= 0.01 || $taxstamp >= 0.01 ) { // a chiusura dei cicli faccio il calcolo dei bolli del pagamento e lo aggiungo ai castelletti
        $calc->payment_taxstamp($calc->total_imp+$calc->total_vat+$carry-$rit+$taxstamp, $doc[$ctrlp]['tes']['stamp'],$doc[$ctrlp]['tes']['round_stamp']*$doc[$ctrlp]['tes']['numrat']);
        // aggiungo al castelletto IVA
		$calc->add_value_to_VAT_castle($doc[$ctrlp]['vat'],$taxstamp+$calc->pay_taxstamp,$admin_aziend['taxstamp_vat']);
        $doc[$ctrlp]['vat']=$calc->castle;
        // aggiungo il castelleto conti
        if (!isset($doc[$ctrlp]['acc'][$admin_aziend['boleff']])) {
           $doc[$ctrlp]['acc'][$admin_aziend['boleff']]['import'] = 0;
        }
        $doc[$ctrlp]['acc'][$admin_aziend['boleff']]['import'] += $doc[$ctrlp]['tes']['taxstamp']+$calc->pay_taxstamp;
    }
    return $doc;
}
示例#16
0
    $protocollo_inizio = 0;
    foreach ($fatture['yes'] as $kt=>$vt) {
            // rilevamento protocollo iniziale
            if ($protocollo_inizio == 0){
               $protocollo_inizio = $kt;
            }
            foreach ($vt['righi'] as $kr=>$vr) {
                    if (isset($vr['id'])) {
                       //vado a modificare la testata cambiando il tipo e introducendo protocollo,numero,data fattura
                       $data['tipdoc']='FAD';
                       $data['protoc']=$kt;
                       $data['numfat']=$vt['numero'];
                       $data['datfat']=$data_emissione;
                       // questo e' troppo lento: gaz_dbi_table_update('tesdoc', array('id_tes',$vr['id']),$data);
                       gaz_dbi_query ("UPDATE ".$gTables['tesdoc']." SET tipdoc = 'FAD', protoc = ".$kt.
                                                                      ", numfat = '".$vt['numero'].
                                                                      "', datfat = '".$data_emissione."' WHERE id_tes = ".$vr['id'].";");
                    }
            }
            $protocollo_fine = $kt;
    }
    //Mando in stampa le fatture generate
    $locazione = "Location: select_docforprint.php?tipdoc=2&seziva=".$sezione."&proini=".$protocollo_inizio."&profin=".$protocollo_fine;
    header($locazione);
    exit;
}


if (isset($_POST['Return']))
    {
    header("Location:report_docven.php");
示例#17
0
        } elseif ($form['lis_bas']=='web') {
           $name_bas='web_price';
        } else {
           $name_bas='preve'.$form['lis_bas'];
        }
        if ($form['lis_obj']=='0') {
           $name_obj='preacq';
        } elseif ($form['lis_obj']=='web') {
           $name_obj='web_price';
        } else {
           $name_obj='preve'.$form['lis_obj'];
        }
        while (list($key, $mv) = each($m)) {
            $new_price=compute_new_price($mv[$name_bas],$mv[$name_obj],$form['valore'],$form['mode'],$form['round_mode']);
            // questo e' troppo lento: gaz_dbi_put_row($gTables['artico'],'codice',$mv['codice'],$name_obj,$new_price);
            gaz_dbi_query ("UPDATE ".$gTables['artico']." SET ".$name_obj." = ".$new_price." WHERE codice = '".$mv['codice']."';");
        }
        header("Location:report_artico.php");
        exit;
  }
}

require("../../library/include/header.php");
$script_transl=HeadMain();

echo "<form method=\"POST\" name=\"select\">\n";
echo "<input type=\"hidden\" value=\"".$form['hidden_req']."\" name=\"hidden_req\" />\n";
echo "<input type=\"hidden\" value=\"".$form['ritorno']."\" name=\"ritorno\" />\n";
$gForm = new magazzForm();
echo "<div align=\"center\" class=\"FacetFormHeaderFont\">".$script_transl['title'];
echo "</div>\n";
示例#18
0
//controllo i campi
if (strcasecmp($form['art_ini'],$form['art_fin'])>0) {
    $msg .='1+';
}
if ($form['cm_ini'] > $form['cm_fin']) {
    $msg .='2+';
}
// fine controlli

if (isset($_POST['submit']) && $msg=='') {
  //Modifico l'aliquota IVA di tutti gli articoli selezionati...
  $m=getItems($form['rate_obj'],$form['cm_ini'],$form['cm_fin'],$form['art_ini'],$form['art_fin']);
  if (sizeof($m) > 0) {
        while (list($key, $mv) = each($m)) {
            // questo e' troppo lento: gaz_dbi_put_row($gTables['artico'],'codice',$mv['codice'],$name_obj,$new_price);
            gaz_dbi_query ("UPDATE ".$gTables['artico']." SET aliiva = ".$form['rate_new']." WHERE codice = '".$mv['codice']."';");
        }
        header("Location:report_artico.php");
        exit;
  }
}

require("../../library/include/header.php");
$script_transl=HeadMain();
echo "<form method=\"POST\" name=\"select\">\n";
echo "<input type=\"hidden\" value=\"".$form['hidden_req']."\" name=\"hidden_req\" />\n";
echo "<input type=\"hidden\" value=\"".$form['ritorno']."\" name=\"ritorno\" />\n";
$gForm = new magazzForm();
echo "<div align=\"center\" class=\"FacetFormHeaderFont\">".$script_transl['title'];
echo "</div>\n";
echo "<table class=\"Tsmall\">\n";
示例#19
0
function executeQueryFileUpgrade($table_prefix) // funzione dedicata alla gestione delle sottosezioni
{
    global $disable_set_time_limit;
    if (!$disable_set_time_limit) {
        set_time_limit (300);
    }
    // Luigi Rambaldi 13 Ottobre 2005
    // Inizializzazione accumulatore
    $sql = "";
    $currentDbVersion=getDbVersion();
    $nextDbVersion =  $currentDbVersion + 1; // versione del'upgrade da individuare per l'aggiornamento corrente (contiguità nella numerazione delle versioni).
    $stopDbVersion = $currentDbVersion + 2;
    $sqlFile = getNextSqlFileName($currentDbVersion,getSqlFiles());
    // trovo l'ultima  sottosezione (individuabile a partire dalla versione corrente del Database)
    // Iterazione per ciascuna linea del file.
    $lineArray = file($sqlFile);
    $parsingFlag = False; // flag per individuare ciascuna sottosezione, corrispondente a cisacuna versione del DB
    $companies=getCompanyNumbers();
    $activateWhile = False; // flag per attivare il ciclo while
    foreach($lineArray as $line) {
        if (preg_match("/UPDATE[ \n\r\t\x0B]+(`){0,1}gaz_config(`){0,1}[ \n\r\t\x0B]+SET[ \n\r\t\x0B]+(`){0,1}cvalue(`){0,1}[ \n\r\t\x0B]*=[ \n\r\t\x0B]*\'$nextDbVersion\'/i", $line)) {
            $parsingFlag = True;
        }
        if (preg_match("/UPDATE[ \n\r\t\x0B]+(`){0,1}gaz_config(`){0,1}[ \n\r\t\x0B]+SET[ \n\r\t\x0B]+(`){0,1}cvalue(`){0,1}[ \n\r\t\x0B]*=[ \n\r\t\x0B]*\'$stopDbVersion\'/i", $line)) {
            $parsingFlag = False;
            break;
        }
        if($parsingFlag) {
            if (preg_match("/START_WHILE/i", $line)) {
              $activateWhile = True;
              $line='';
            }
            if (preg_match("/STOP_WHILE/i", $line)) {
              $activateWhile = False;
              $line='';
            }
            $sql .= $line;
            // Il punto e virgola indica la fine di ciascuna istruzione SQL , ciascuna di esse viene accumulata
            if (!preg_match("/;/", $sql)) {
                continue;// incremento dell'accumulatore
            }
            // Sostituisce il prefisso standard ed elimina il punto e virgola
            $sql = preg_replace("/gaz_/", $table_prefix.'_', $sql);
            $sql = preg_replace("/;/", "", $sql);
            if ($activateWhile){
               // Esegue l'istruzione sulle tabelle di tutte le aziende installate.
               $sql_ori=$sql;;
               foreach ($companies as $i) {
                    $sql = preg_replace("/XXX/", sprintf('%03d',$i), $sql_ori);
                    if (!gaz_dbi_query($sql)) { // si collega al DB
                        echo "Query Fallita";
                        echo "$sql <br/>";
                        exit;
                    }
               }
               $sql = "";// ripristino dell'accumulatore
            } else {
               // Esegue una singola istruzione.
               if (!gaz_dbi_query($sql)) { // si collega al DB
                   echo "Query Fallita";
                   echo "$sql <br/>";
                   exit;
               } else {
                   $sql = "";// ripristino dell'accumulatore a seguito dell'istruzione
               }
            }
        }
    }
}
示例#20
0
function createRowsAndErrors($partner){
    global $gTables,$admin_aziend,$script_transl;
    if ($partner == 1) {
       $search_partner = " clfoco LIKE '".$admin_aziend['mascli']."%'";
    } else {
       $search_partner = " clfoco LIKE '".$admin_aziend['masfor']."%'";
    }
    $sqlquery= "SELECT COUNT(".$gTables['rigmoi'].".id_tes) AS numdoc,
           codiva,".$gTables['aliiva'].".tipiva,SUM(impost - impost*2*((caucon LIKE '_NC') or (caucon LIKE '_FC' ))) AS imposta,
           SUM(imponi - imponi*2*((caucon LIKE '_NC') or (caucon LIKE '_FC' ))) AS imponibile,clfoco,CONCAT(ragso1,' ',ragso2) AS ragsoc, sedleg,sexper,indspe,
           citspe,prospe,codfis,pariva,allegato,operat
           FROM ".$gTables['rigmoi']."
           LEFT JOIN ".$gTables['tesmov']." ON ".$gTables['rigmoi'].".id_tes = ".$gTables['tesmov'].".id_tes
           LEFT JOIN ".$gTables['aliiva']." ON ".$gTables['rigmoi'].".codiva = ".$gTables['aliiva'].".codice
           LEFT JOIN ".$gTables['clfoco']." ON ".$gTables['tesmov'].".clfoco = ".$gTables['clfoco'].".codice
           LEFT JOIN ".$gTables['anagra']." ON ".$gTables['anagra'].".id = ".$gTables['clfoco'].".id_anagra
           WHERE allegato = 1 AND YEAR(datdoc) = ".intval($_GET['anno'])." AND $search_partner
           GROUP BY clfoco, codiva
           ORDER BY ragso1";
    $result = gaz_dbi_query($sqlquery);
    $castel_partners= array();
    $error_partners= array();
    $total_column= array();
    if (gaz_dbi_num_rows($result) > 0 ) {
       // inizio creazione array righi ed errori
       $total_column['operazioni_imponibili'] = 0.00;
       $total_column['imposte_addebitate'] = 0.00;
       $total_column['operazioni_esente'] = 0.00;
       $total_column['operazioni_nonimp'] = 0.00;
       $progressivo = 0;
       $ctrl_partner = 0;
       $value_imponi = 0.00;
       $value_impost = 0.00;
       while ($row = gaz_dbi_fetch_array($result)) {
              if ($row['operat'] == 1) {
                $value_imponi = $row['imponibile'];
                $value_impost = $row['imposta'];
              } elseif ($row['operat'] == 2) {
                $value_imponi = -$row['imponibile'];
                $value_impost = -$row['imposta'];
              } else {
                $value_imponi = 0;
                $value_impost = 0;
              }
              if ($ctrl_partner != $row['clfoco']) {
                 // inizio controlli su CF e PI
                 $nuw = new check_VATno_TAXcode();
                 $resultpi = $nuw->check_VAT_reg_no($row['pariva']);
                 if( strlen(trim($row['codfis'])) == 11) {
                     $resultcf = $nuw->check_VAT_reg_no($row['codfis']);
                     if (intval($row['codfis']) == 0) {
                        $error_partners[$row['clfoco']][] = $script_transl[7];
                     } elseif ($row['sexper'] != 'G') {
                        $error_partners[$row['clfoco']][] = $script_transl[8];
                     }
                 } else {
                     $resultcf = $nuw->check_TAXcode($row['codfis']);
                     if (empty($row['codfis'])) {
                         $error_partners[$row['clfoco']][] = $script_transl[9];
                     } elseif ($row['sexper'] == 'G' and
                         empty($resultcf)) {
                        $error_partners[$row['clfoco']][] = $script_transl[10];
                     } elseif ($row['sexper'] == 'M' and
                         empty($resultcf) and
                         (intval(substr($row['codfis'],9,2)) > 31 or
                         intval(substr($row['codfis'],9,2)) < 1) ) {
                         $error_partners[$row['clfoco']][] = $script_transl[11];
                     } elseif ($row['sexper'] == 'F' and
                         empty($resultcf) and
                         (intval(substr($row['codfis'],9,2)) > 71 or
                         intval(substr($row['codfis'],9,2)) < 41) ) {
                         $error_partners[$row['clfoco']][] = $script_transl[12];
                     } elseif (! empty ($resultcf)) {
                         $error_partners[$row['clfoco']][] = $script_transl[13];
                     }
                 }
                 if (! empty ($resultpi)) {
                    $error_partners[$row['clfoco']][] = $script_transl[14];
                    $error_partners['fatal_error'] = '';
                 } elseif (empty($row['pariva'])) {
                    $error_partners[$row['clfoco']][] = $script_transl[15];
                    $error_partners['fatal_error'] = '';
                 }
                 // fine controlli su CF e PI
                 $progressivo ++;
                 $castel_partners[$row['clfoco']] = array(
                      'Progressivo'=> $progressivo,
                      'Num_Documenti'=> $row['numdoc'],
                      'Rag_Sociale'=> $row['ragsoc'],
                      'Indirizzo'=> $row['indspe'],
                      'Comune'=> $row['citspe'],
                      'Provincia'=> $row['prospe'] ,
                      'Partita_IVA'=> $row['pariva'],
                      'Codice_Fiscale'=> $row['codfis']
                 );
                 if ($row['sexper'] == 'G'){
                        $castel_partners[$row['clfoco']]['persona_fisica'] = '';
                 } else {
                        $castel_partners[$row['clfoco']]['persona_fisica'] = 'X';
                 }
                 if (!empty($row['sedleg'])){
                     if ( preg_match("/([\w\,\.\s]+)([0-9]{5})[\s]+([\w\s\']+)\(([\w]{2})\)/",$row['sedleg'],$regs)) {
                        $castel_partners[$row['clfoco']]['Indirizzo'] = $regs[1];
                        $castel_partners[$row['clfoco']]['Comune'] = $regs[3];
                        $castel_partners[$row['clfoco']]['Provincia'] = $regs[4];
                     } else {
                       $error_partners[$row['clfoco']][] = $script_transl[16];
                     }
                 }
                 // inizio valorizzazione imponibile,imposta,senza_iva,art8
                 $castel_partners[$row['clfoco']]['operazioni_imponibili'] = 0;
                 $castel_partners[$row['clfoco']]['imposte_addebitate'] = 0;
                 $castel_partners[$row['clfoco']]['operazioni_esente'] = 0;
                 $castel_partners[$row['clfoco']]['operazioni_nonimp'] = 0;
                 switch ($row['tipiva']) {
                        case 'I':
                        case 'D':
                             $castel_partners[$row['clfoco']]['operazioni_imponibili'] = $value_imponi;
                             $total_column['operazioni_imponibili'] += $value_imponi;
                             $castel_partners[$row['clfoco']]['imposte_addebitate'] = $value_impost;
                             $total_column['imposte_addebitate'] += $value_impost;
                             if ($value_impost == 0){  //se non c'è imposta il movimento è sbagliato
                                $error_partners[$row['clfoco']][] = $script_transl[17];
                             }
                        break;
                        case 'E':
                             $castel_partners[$row['clfoco']]['operazioni_esente'] = $value_imponi;
                             $total_column['operazioni_esente'] += $value_imponi;
                             if ($value_impost != 0){  //se c'è imposta il movimento è sbagliato
                                $error_partners[$row['clfoco']][] = $script_transl[18];
                             }
                        break;
                        case 'N':
                        // case 'C':
                             $castel_partners[$row['clfoco']]['operazioni_nonimp'] = $value_imponi;
                             $total_column['operazioni_nonimp'] += $value_imponi;
                             if ($value_impost != 0){  //se c'è imposta il movimento è sbagliato
                                $error_partners[$row['clfoco']][] = $script_transl[18];
                             }
                        break;
                 }
                 // fine valorizzazione imponibile,imposta,esente,non imponibile

              } else { //movimenti successivi al primo ma dello stesso cliente/fornitore
                 // inizio addiziona valori imponibile,imposta,esente,non imponibile
                 switch ($row['tipiva']) {
                        case 'I':
                        case 'D':
                             $castel_partners[$row['clfoco']]['operazioni_imponibili'] += $value_imponi;
                             $total_column['operazioni_imponibili'] += $value_imponi;
                             $castel_partners[$row['clfoco']]['imposte_addebitate'] += $value_impost;
                             $total_column['imposte_addebitate'] += $value_impost;
                             if ($value_impost == 0){  //se non c'è imposta il movimento è sbagliato
                                $error_partners[$row['clfoco']][] = $script_transl[17];
                             }
                        break;
                        case 'E':
                             $castel_partners[$row['clfoco']]['operazioni_esente'] = $value_imponi;
                             $total_column['operazioni_esente'] += $value_imponi;
                             if ($value_impost != 0){  //se c'è imposta il movimento è sbagliato
                                $error_partners[$row['clfoco']][] = $script_transl[18];
                             }
                        break;
                        case 'N':
                        // case 'C':
                             $castel_partners[$row['clfoco']]['operazioni_nonimp'] = $value_imponi;
                             $total_column['operazioni_nonimp'] += $value_imponi;
                             if ($value_impost != 0){  //se c'è imposta il movimento è sbagliato
                                $error_partners[$row['clfoco']][] = $script_transl[18];
                             }
                        break;
                 }
                 // fine addiziona valori imponibile,imposta,esente,non imponibile
              }
              $ctrl_partner = $row['clfoco'];
       }
    } else {
              $error_partners[0] = $script_transl[21];
    }
    // fine creazione array righi ed errori
    return array($castel_partners,$error_partners,$total_column);
}
示例#21
0
    //
    // Rilegge i dati dell'effetto.
    $effetto = gaz_dbi_get_row($gTables['effett'], "id_tes", intval($_POST['id_tes']));
    // elimina subito la registrazione.
    if ($effetto['id_con'] > 0) {
            gaz_dbi_del_row($gTables['tesmov'], 'id_tes', $effetto['id_con']);
            gaz_dbi_del_row($gTables['rigmoc'], 'id_tes', $effetto['id_con']);
    }
    $result = gaz_dbi_del_row($gTables['effett'], "id_tes", intval($_POST['id_tes']));
    
    // i dati univoci della fattura che ha originato l'effetto
    $where = "protoc=$effetto[protoc] AND seziva=$effetto[seziva] AND datfat='$effetto[datfat]'";
    // se la fattura non ha altri effetti associati resettiamo il flag geneff  
    $altri_effetti = gaz_dbi_record_count($gTables['effett'], $where);
    if (!$altri_effetti) {
	gaz_dbi_query("UPDATE $gTables[tesdoc] SET geneff = '' WHERE $where AND tipdoc LIKE 'F%'");
    }
    
    header("Location: ".$ritorno);
    exit;
} else {
    //
    // Legge i dati dell'effetto di cui è stata richiesta
    // la cancellazione, assieme a tutto quello che cui
    // l'effetto da cancellare è collegato.
    //
    $form = gaz_dbi_get_row($gTables['effett'], "id_tes", intval($_GET['id_tes']));
    $cliente = gaz_dbi_get_row($gTables['clfoco'],"codice",$form['clfoco']);
    $pagame = gaz_dbi_get_row($gTables['pagame'],"codice",$form['pagame']);
    $banapp = gaz_dbi_get_row($gTables['banapp'],"codice",$form['banapp']);
    //
示例#22
0
 $form['date_fin_Y']=intval($_POST['date_fin_Y']);
 $form['this_date_Y']=intval($_POST['this_date_Y']);
 $form['this_date_M']=intval($_POST['this_date_M']);
 $form['this_date_D']=intval($_POST['this_date_D']);
 $form['master_ini']=intval($_POST['master_ini']);
 $form['account_ini']=intval($_POST['account_ini']);
 $form['master_fin']=intval($_POST['master_fin']);
 $form['account_fin']=intval($_POST['account_fin']);
 foreach($_POST['search'] as $k=>$v){
    $form['search'][$k]=$v;
 }
 if (isset($_POST['selall'])) {
    $query = 'SELECT MAX(codice) AS max, MIN(codice) AS min '.
             'FROM '.$gTables['clfoco'].
             " WHERE codice NOT LIKE '%000000'";
    $rs_extreme_accont = gaz_dbi_query($query);
    $extreme_account = gaz_dbi_fetch_array($rs_extreme_accont);
    if ($extreme_account) {
       $form['master_ini'] = substr($extreme_account['min'],0,3).'000000';
       $form['account_ini'] = $extreme_account['min'];
       $form['master_fin'] = substr($extreme_account['max'],0,3).'000000';
       $form['account_fin'] = $extreme_account['max'];
    }
 }
 if (isset($_POST['selfin'])) {
    $form['master_fin']=$form['master_ini'];
    $form['account_fin']=$form['account_ini'];
 }
 if (isset($_POST['return'])) {
     header("Location: ".$form['ritorno']);
     exit;
示例#23
0
 // Se l'anno è valido, procede.
 //
 if ($anno > 0)
   {
     $query  = "SELECT * FROM " . $gTables['extcon'] . " WHERE year = \"".$anno."\"";
     $result = gaz_dbi_query ($query);
     $nrows  = gaz_dbi_num_rows ($result);
     //
     // Se l'anno non c'è, aggiunge una riga vuota e la rilegge.
     //
     if ($nrows == 0)
       {
         $query  = "INSERT INTO " . $gTables['extcon'] . " (`year`) VALUES (".$anno.")";
         $result = gaz_dbi_query ($query);
         $query  = "SELECT * FROM " . $gTables['extcon'] . " WHERE year = \"".$anno."\"";
         $result = gaz_dbi_query ($query);
       }
     $extra = gaz_dbi_fetch_array ($result);
     //
     // Sistema i valori nell'array $bil[], adattandoli in proporzione.
     //
     $extcon_sum = $extra['cos_serv_ind'] + $extra['cos_serv_amm'] + $extra['cos_serv_com'];
     if ($extcon_sum != 0)
       {
         $bil["eB7__ind"] = round (($extra['cos_serv_ind'] / $extcon_sum) * -$bil["eB007"]);
         $bil["eB7__amm"] = round (($extra['cos_serv_amm'] / $extcon_sum) * -$bil["eB007"]);
         $bil["eB7__com"] = round (($extra['cos_serv_com'] / $extcon_sum) * -$bil["eB007"]);
       }
     //
     $extcon_sum = $extra['cos_godb_ind'] + $extra['cos_godb_amm'] + $extra['cos_godb_com'];
     if ($extcon_sum != 0)