/********************************************************************************
* Confronta i dati di tutti o di un cliente rispetto ai dati dell'anno precedente
* VERSIONE 3.0 READY
*********************************************************************************/
include ("../common/public.php") ;
// print_r($_GET + $_POST) ; // exit ;
$nomemese = Array("", "Gennaio", "Febbraio", "Marzo", "Aprile", "Maggio", "Giugno", "Luglio", "Agosto", "Settembre", "Ottobre", "Novembre", "Dicembre") ;
$vis_bot_lis_anno = false ;
$vis_bot_lis_annop = false ;
list($giorno, $mese) = explode("/", $gime) ;
$mesevis = $nomemese[ltrim($mese,"0")] ;
list($id_fn, $nome_fn) = explode("^", stripslashes($fornitore)) ;
/***********************************************************
* controllo se arriva da una selezione di tutti i clienti
* e tutti i fornitori
***********************************************************/
if ($id_fn == 0 && $cliente == 0)
$allCliallFor = 1 ;
else
$allCliallFor = 0 ;
$clienteBack = $cliente ;
/**************************************************************************************
* nei casi in cui ho definito un cliente e/o un fornitore, mi vado a recuperare i nomi
**************************************************************************************/
if ($cliente > 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) ;
// print_r($d) ; exit ;
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 ;
}
// print_r($arrVal) ;
}
@ksort($arrVal) ;
// print_r($arrVal) ;
// exit ;
@reset($arrVal) ;
$str = "
Il confronto fra due anni puņ essere effettuato solo a partire dal 2003. |