0) { $q = "select * from clienti where idclienti = $cliente" ; list($n,$d) = $db->RecuperaDati($q) ; $nome_cliente = $d['Nome'][0] ; } $condizioneCliente = $condizioneFornitore = "1=1" ; /****************************************************************************** * cerco di capire che tipo di operazione č stata richiesta ******************************************************************************/ if ($cliente == 0 and $id_fn == 0) $titolo = "Confronto Anno ". sprintf("%s", ($anno - 1)) . " - Anno $anno al $giorno $mesevis per Tutti i Clienti" ; elseif ($cliente > 0 and $id_fn == 0) { $titolo = "Confronto Anno ". sprintf("%s", ($anno - 1)) . " - Anno $anno al $giorno $mesevis per il Cliente $nome_cliente" ; $condizioneCliente = "C.IdClienti = $cliente" ; } elseif ($cliente == 0 and $id_fn > 0) { $titolo = "Confronto Anno ". sprintf("%s", ($anno - 1)) . " - Anno $anno al $giorno $mesevis per Tutti i Clienti
verso il Fornitore $nome_fn" ; $condizioneFornitore = "F.idfornitori = $id_fn" ; } else { $titolo = "Confronto Anno ". sprintf("%s", ($anno - 1)) . " - Anno $anno al $giorno $mesevis per il Cliente $nome_cliente
verso il Fornitore $nome_fn" ; $condizioneCliente = "C.IdClienti = $cliente" ; $condizioneFornitore = "F.idfornitori = $id_fn" ; } $arrVal = array() ; /*** * mi calcolo l'ammontare di tutti gli ordini per l'anno $anno ***/ $arrImpOrdini = CreaArrayAmmontareOrdini() ; for ($an = ($anno - 1) ; $an <= $anno; $an ++) { $dataordine = MySqlDate("$gime/$an") ; $qord = " select C.Nome as NomeCliente, F.Nome as NomeFornitore, case when (O.ImportoNC > 0) then (O.ImportoNC / 1.2) else 0 end as valNC, O.*, (TO_DAYS('$dataordine') - TO_DAYS(O.DataSpedFattura)) as DIFFGG, AVO.* from ordini O inner join clienti C on C.idclienti = O.idcliente and $condizioneCliente inner join fornitori F on F.idfornitori = O.idfornitore and $condizioneFornitore inner join AmmontareVariOrdini AVO on AVO.IdOrdine = O.IdOrdini where O.Anno = $an and AVO.Anno = $an and O.dataordine <= '$dataordine' order by C.Nome " ; debug (0, $qord) ; list($n, $d) = $db->RecuperaDati($qord) ; for ($i=0; $i<$n ; $i++) { if (! array_key_exists($d['NomeCliente'][$i], $arrVal)) { $arrVal[$d['NomeCliente'][$i]]['ID_CLI'] = $d['IdCliente'][$i] ; $arrVal[$d['NomeCliente'][$i]]['NUMORD'][$an] = 0 ; $arrVal[$d['NomeCliente'][$i]]['VENDUTO'][$an] = 0 ; $arrVal[$d['NomeCliente'][$i]]['FATT'][$an] = 0 ; } $arrVal[$d['NomeCliente'][$i]]['NUMORD'][$an] ++ ; $idOrdine = $d['IdOrdini'][$i] ; $totordine = 0 ; $id_fn = $d["IdFornitore"][$i] ; $impfatt = $d["ImportoFattura"][$i] ; $datasf = $d["DataSpedFattura"][$i] ; $diffgg = $d["DIFFGG"][$i] ; $sco1 = $d["Sconto1"][$i] ; $sco2 = $d["Sconto2"][$i] ; $sco3 = $d["Sconto3"][$i] ; $idordine = $d["IdOrdini"][$i] ; $importoNC = $d["ImportoNC"][$i] ; $valNC = $d["valNC"][$i] ; $totordine = $d['AmmontareOrdineSenzaIva'][$i] ; /* $totordine = $arrImpOrdini[$idOrdine]['SenzaIva'] ; $sconto1 = ($totordine * $sco1 / 100) ; $ammpro1 = $totordine - $sconto1 ; $sconto2 = ($ammpro1 * $sco2 / 100) ; $ammpro2 = $ammpro1 - $sconto2 - $valNC; $sconto = $sconto1 + $sconto2 ; $totordine = $totordine - $sconto - $valNC; */ $arrVal[$d['NomeCliente'][$i]]['VENDUTO'][$an] += $totordine ; if ($impfatt > 0 and $diffgg >= 0 and $datasf != "0000-00-00") $arrVal[$d['NomeCliente'][$i]]['FATT'][$an] += $totordine ; } } @ksort($arrVal) ; // print_r($arrVal) ; // exit ; @reset($arrVal) ; $str = "" ; foreach ($arrVal as $nome_cl => $arr_valori) { $id_cli = $arr_valori['ID_CLI'] ; $annop = $anno - 1 ; $diffno = ($arr_valori['NUMORD'][$anno] - $arr_valori['NUMORD'][$annop]) ; if ($arr_valori['NUMORD'][$annop] > 0) $diffnoper = @nfp(($diffno / $arr_valori['NUMORD'][$annop]) * 100) ; else $diffnoper = 0 ; $diffve = ($arr_valori['VENDUTO'][$anno] - $arr_valori['VENDUTO'][$annop]) ; if ($arr_valori['VENDUTO'][$annop] > 0) $diffveper = @nfp(($diffno / $arr_valori['VENDUTO'][$annop]) * 100) ; else $diffveper = 0 ; $difffa = ($arr_valori['FATT'][$anno] - $arr_valori['FATT'][$annop]) ; if ($arr_valori['FATT'][$annop]) $difffaper = @nfp(($difffa / $arr_valori['FATT'][$annop]) * 100) ; else $difffaper = 0 ; if ($diffno < 0) $classno = "meno" ; elseif ($diffno > 0) { $classno = "piu" ; if ($diffnoper == 0) $diffnoper = "100,00" ; } else $classno = "" ; if ($diffve < 0) $classve = "meno" ; elseif ($diffve > 0) { $classve = "piu" ; if ($diffveper == 0) $diffveper = "100,00" ; } else $classve = "" ; if ($difffa < 0 ) $classfa = "meno" ; elseif ($difffa > 0) { $classfa = "piu" ; if ($difffaper == 0) $difffaper = "100,00" ; } else $classfa = "" ; /*************************************************************************************** * Visualizzo solo gli elementi che hanno un numero di ordini dell'anno precedente o * dell'anno in corso > 0 ****************************************************************************************/ if ($arr_valori['NUMORD'][$annop] > 0 or $arr_valori['NUMORD'][$anno] > 0) { if ($arr_valori['NUMORD'][$annop] > 0) $vis_bot_lis_annop = true ; if ($arr_valori['NUMORD'][$anno] > 0) $vis_bot_lis_anno = true ; $str .= "" . htmlspecialchars($nome_cl) . "" . nfl($arr_valori['NUMORD'][$annop]) . "" . nfl($arr_valori['NUMORD'][$anno]) . "" . $diffno . " (" . $diffnoper . "%)" . "" . nfp($arr_valori['VENDUTO'][$annop]) . "" . nfp($arr_valori['VENDUTO'][$anno]) . "" . nfp($diffve) . " (" . nfp($diffveper) . "%)" . "" . nfp($arr_valori['FATT'][$annop]) . "" . nfp($arr_valori['FATT'][$anno]) . "" . nfp($difffa) . " (" . nfp($difffaper) . "%)" . "" ; } } $str .= "" ; $annop = ($anno - 1) ; $header = "NOME CLIENTE,NUMERO ORDINI,#cspan,#cspan,VENDUTO,#cspan,#cspan,FATTURATO,#cspan,#cspan" ; $attachHeader = "#rspan,$annop,$anno,Differenza,$annop,$anno,Differenza,$annop,$anno,Differenza" ; $strSort = "str,int,int,na,euro,euro,na,euro,euro,na" ; $iniWP = "25,5,5,10,6,6,15,6,6,15" ; $setColType = "ro,ro,ro,ro,ro,ro,ro,ro,ro,ro,ro,ro,ro,ro,ro,ro" ; $setColAlign = "left,center,center,center,center,center,center,center,center,center" ; ?> <? echo TITLE ?> 2002) { ?>


Il confronto fra due anni puņ essere effettuato solo a partire dal 2003.