$dbt = new FC_SQL ;
$bgcol[0] = "#0080C0" ;
$bgcol[1] = "#3F97A9" ;
$i = 0 ;
/****************************************************************
* Si desidera il totale generale dell'agenzia
*****************************************************************/
$dbord = new FC_SQL ;
//---------------------------------------------------------
// Inizia nuovo calcolo
$qf = "
select
*
from
fornitori
where
(attivo = '1') or
(attivo = '0' and AnnoDisattivazione > $anno)
order by
Nome
" ;
$db->query($qf) ;
while ($db->next_record())
{
$nomefornitore = $db->f("Nome") ;
$idfor = $db->f("IdFornitori") ;
$aForni[$idfor] = $nomefornitore ;
}
$str = "" ;
foreach($aForni as $idF => $nomeF)
{
// mi recupero i dati dell'ammontare degli ordini dalla tabella AmmotareVariOrdini
$qAVO = "
select distinct
F.nome as NomeFornitore,
F.idFornitori as idfornitore,
A.nome as NomeAgente,
SUM(AVO.AmmontareOrdineSenzaIva) AOSI,
SUM(AVO.AmmontareOrdineConIva) AOCI
from
ordini O
inner join ammontareVariOrdini AVO on AVO.idordine = O.idordini and
AVO.Anno = $anno
inner join fornitori F on F.IdFornitori = O.IdFornitore
inner join agenti A on A.IdAgenti = O.IdAgente
where
O.Idfornitore = $idF and
O.Anno = $anno and
$whereFatt
group by
A.Nome" ;
debug (0, $qAVO) ;
list($nA, $dA) = $db->RecuperaDati($qAVO) ;
for($i=0; $i<$nA; $i++)
{
$idFF = $dA['idfornitore'][$i] ;
$nomeFF = $dA['NomeFornitore'][$i] ;
$idAA = $dA['idagente'][$i] ;
$nomeAA = $dA['NomeAgente'][$i] ;
$aVal[$nomeFF]['ID'] = $idFF ;
$aVal[$nomeFF][$nomeAA] = $dA['AOCI'][$i] ;
$aVal[$nomeFF]['TOTALE'] += $dA['AOCI'][$i] ;
$aAge[$nomeAA]['TOTALE'] += $dA['AOCI'][$i] ;
$gtotalNew += $dA['AOSI'][$i] ;
}
}
ksort($aAge) ;
//-------- Fine nuovo calcolo ------------------------------
?>
| FORNITORE \ AGENTE |
foreach($aAge as $agente => $arr_agente)
print ("$agente | ") ;
?>
TOTALE |
foreach($aVal as $for => $arr_for)
{
debug (0, "FOR = $for") ;
@reset($aAge) ;
if ($aVal[$for]['TOTALE'] > 0)
{
?>
| echo $for ?> |
foreach($aAge as $ag => $arr_agente)
{
if (@array_key_exists($ag, $aVal[$for]))
{
printf("%s (%s) | ", nfp($aVal[$for][$ag]), nfp(($aVal[$for][$ag] / $aVal[$for]['TOTALE']) * 100) . "%" ) ;
}
else
printf(" | ") ;
}
if ($aVal[$for]['TOTALE'] > 0)
printf("%s | ", nfp($aVal[$for]['TOTALE'])) ;
else
printf(" | ") ;
?>
}
}
?>
TOTALE AGENTE (%) |
@reset($aAge) ;
foreach($aAge as $agente => $arr_agente)
printf ("%s (%s) | ", nfp($arr_agente['TOTALE']), nfp(($arr_agente['TOTALE'] / $gtotalNew) * 100) . "%") ;
?>
echo nfp($gtotalNew) ?> |
|