include ("../common/public.php") ;
if ($_POST["anno"] != "")
$GLOBALS["anno"] = $_POST["anno"] ;
$dbt = new FC_SQL ;
$annop = $anno - 1 ;
$fattA = "FATT_$anno" ;
$fattAP = "FATT_$annop" ;
$bottA = "BOTT_$anno" ;
$bottAP = "BOTT_$annop" ;
/*********************
* Per le bottiglie
*********************/
$qbott = "
SELECT
TT.Nome,
SUM(TT.TotBott + TT.TotBottSM) as TotBott,
SUM(TT.TotBottSM),
SUM(TT.TotBottAP + TT.TotBottAPSM) as TotBottAP,
SUM(TT.TotBottAPSM),
TT.idfornitore
FROM
(
SELECT
F.Nome,
SUM(D.ConfezioniDa*D.NumCartoni) as TotBott,
0 as TotBottSM,
0 as TotBottAP,
0 as TotBottAPSM,
O.idfornitore
FROM
`ordini` O
inner join fornitori F on O.IdFornitore = F.IdFornitori
Inner join dettagli D on O.IdOrdini = D.IdOrdine
and D.Anno = $anno
WHERE
O.Anno = $anno
and O.DataSpedFattura > 0
-- and F.IdFornitori = 13
group by O.IdFornitore
UNION ALL
SELECT
F.Nome,
0 as TotBott,
SUM(D.ConfezioniDa*D.NumCartoni) as TotBottSM,
0 as TotBottAP,
0 as TotBottAPSM,
O.idfornitore
FROM
`ordini` O
inner join fornitori F on O.IdFornitore = F.IdFornitori
Inner join scontomerce D on O.IdOrdini = D.IdOrdine
and D.Anno = $anno
WHERE
O.Anno = $anno
and O.DataSpedFattura > 0
-- and F.IdFornitori = 13 and
group by O.IdFornitore
UNION ALL
SELECT
F.Nome,
0 as TotBott,
0 as TotBottSM,
SUM(D.ConfezioniDa*D.NumCartoni) as TotBottAP,
0 as TotBottAPSM,
O.idfornitore
FROM
`ordini` O
inner join fornitori F on O.IdFornitore = F.IdFornitori
Inner join dettagli D on O.IdOrdini = D.IdOrdine
and D.Anno = $annop
WHERE
O.Anno = $annop
and O.DataSpedFattura > 0
-- and F.IdFornitori = 13
group by O.IdFornitore
UNION ALL
SELECT
F.Nome,
0 as TotBott,
0 as TotBottSM,
0 as TotBottAP,
SUM(D.ConfezioniDa*D.NumCartoni) as TotBottAPSM,
O.idfornitore
FROM
`ordini` O
inner join fornitori F on O.IdFornitore = F.IdFornitori
Inner join scontomerce D on O.IdOrdini = D.IdOrdine
and D.Anno = $annop
WHERE
O.Anno = $annop
and O.DataSpedFattura > 0
-- and F.IdFornitori = 13 and
group by O.IdFornitore
) as TT
GROUP BY TT.Nome
" ;
list($nbott, $dbott) = $dbt->RecuperaDati($qbott) ;
/**************************************
* Numero clienti serviti
***************************************/
$qcli = "
SELECT
TT.Anno,
TT.IdFornitore as IdFornitore,
TT.NomeFornitore as Nomefornitore,
SUM(TT.NC) as NC,
SUM(TT.NCAP) as NCAP
FROM
(
SELECT
O.Anno,
O.IdFornitore,
F.Nome as NomeFornitore,
COUNT(DISTINCT(O.idcliente)) as NC,
0 as NCAP
FROM
ordini O
inner join fornitori F on O.IdFornitore = F.IdFornitori
WHERE
O.Anno = $anno
GROUP BY O.IdFornitore
UNION ALL
SELECT
O.Anno,
O.IdFornitore,
F.Nome as NomeFornitore,
0 as NC,
COUNT(DISTINCT(O.idcliente)) as NCAP
FROM
ordini O
inner join fornitori F on O.IdFornitore = F.IdFornitori
WHERE
O.Anno = $annop
GROUP BY O.IdFornitore
) as TT
GROUP BY TT.IdFornitore
order By TT.NomeFornitore ASC
" ;
list($ncli, $dcli) = $dbt->RecuperaDati($qcli) ;
$query = "
SELECT
TT.NomeFornitore,
TT.IdFornitore,
SUM(TT.IOANNO) as $fattA,
SUM(TT.IOANNOP) as $fattAP
FROM
(
SELECT DISTINCT
F.nome AS NomeFornitore,
F.idFornitori AS IdFornitore,
SUM(O.ImportoFattura / 1.22) as IOANNO,
0 as IOANNOP
FROM
ordini O
INNER JOIN fornitori F ON F.IdFornitori = O.IdFornitore
WHERE
O.Anno = $anno
AND O.ImportoFattura > 0
group by F.Nome
UNION ALL
SELECT DISTINCT
F.nome AS NomeFornitore,
F.idFornitori AS IdFornitore,
0 as IOANNO,
SUM(O.ImportoFattura / 1.22) as IOANNOP
FROM
ordini O
INNER JOIN fornitori F ON F.IdFornitori = O.IdFornitore
WHERE
O.Anno = $annop
AND O.ImportoFattura > 0
group by F.Nome
) as TT
group By TT.NomeFornitore
ORDER BY `TT`.`NomeFornitore` ASC
" ;
list($n, $d) = $db->RecuperaDati($query) ;
$str = "
| Ordini per Fornitore | Ordini per Fornitore per Mese | Totali |