/********************************************************************************
* Calcola la situazione economica di un determinato cliente
*********************************************************************************/
include ("../common/public.php") ;
include ("../common/calc.php") ;
// print_r($_GET + $_POST) ;
$arrVal = array() ;
$q_anno = "
select
F.idfornitori as IdFornitore,
F.nome as NomeFornitore,
C.nome as NomeCliente,
O.numfattura,
O.dataspedfattura as DataSpedFattura,
O.idpagamento,
P.modalita as Tipo_Pagamento,
case
when (P.giorni = 999) then 0
else P.giorni
end as GG,
O.importofattura,
O.saldoFattura,
A.nome
from
ordini O
inner join clienti C on C.idclienti = O.idcliente
inner join fornitori F on F.idfornitori = O.idfornitore
inner join pagamenti P on P.idpagamenti = O.idpagamento
inner join agenti A on A.idagenti = O.idagente
where
O.Anno = $anno and
O.numfattura > 0
" ;
if ($anno_2prec != '')
{
$q_2prec = "
UNION
select
F.idfornitori as IdFornitore,
F.nome as NomeFornitore,
C.nome as NomeCliente,
O.numfattura,
O.dataspedfattura as DataSpedFattura,
O.idpagamento,
P.modalita as Tipo_Pagamento,
case
when (P.giorni = 999) then 0
else P.giorni
end as GG,
O.importofattura,
O.saldoFattura,
A.nome
from
ordini O
inner join clienti C on C.idclienti = O.idcliente
inner join fornitori F on F.idfornitori = O.idfornitore
inner join pagamenti P on P.idpagamenti = O.idpagamento
inner join agenti A on A.idagenti = O.idagente
where
O.Anno = $anno_2prec and
O.numfattura > 0 and
saldofattura != 1
" ;
}
else
$q_2prec = '' ;
if ($anno_prec != '')
{
$q_prec = "
UNION
select
F.idfornitori as IdFornitore,
F.nome as NomeFornitore,
C.nome as NomeCliente,
O.numfattura,
O.dataspedfattura as DataSpedFattura,
O.idpagamento,
P.modalita as Tipo_Pagamento,
case
when (P.giorni = 999) then 0
else P.giorni
end as GG,
O.importofattura,
O.saldoFattura,
A.nome
from
ordini_{$anno_prec} O
inner join $tclienti C on C.idclienti = O.idcliente
inner join fornitori_{$anno_prec} F on F.idfornitori = O.idfornitore
inner join pagamenti_{$anno_prec} P on P.idpagamenti = O.idpagamento
inner join agenti_{$anno_prec} A on A.idagenti = O.idagente
where
O.numfattura > 0
and saldofattura != 1
" ;
}
else
$q_prec = '' ;
$q = $q_anno . $q_prec . $q_2prec . " order by NomeFornitore, NomeCliente, dataspedfattura" ;
list($n,$d) = $db->RecuperaDati($q) ;
for ($i=0; $i<$n; $i++)
{
if (! array_key_exists($d['IdFornitore'][$i], $arrVal))
$arrVal[$d['IdFornitore'][$i]] = array('NomeFornitore' => $d['NomeFornitore'][$i]) ;
$arrVal[$d['IdFornitore'][$i]]['TotFatt'] += $d['importofattura'][$i] ;
if ($d['saldoFattura'][$i] == 0)
$arrVal[$d['IdFornitore'][$i]]['DaPagare'] += $d['importofattura'][$i] ;
else
{
$arrVal[$d['IdFornitore'][$i]]['Pagato'] += $d['importofattura'][$i] ;
}
}
// print_r($arrVal) ; exit ;
$str = "