'') then CONCAT(P.nome, ' - ',P.Annata) else P.nome end as NomeProdotto, (D.NumCartoni * D.ConfezioniDa) as NumTotBottV, 0 as NumTotBottSM, F.IdFornitori, F.nome as NomeFornitore from prodotti P inner join dettagli D on D.idprodotto = P.idprodotti and D.Anno = $anno inner join ordini O on O.IdOrdini = D.IdOrdine and O.Anno = $anno inner join fornitori F on F.IdFornitori = P.Fornitore where $where union all select P.idprodotti as IdProdotto, case when (P.Annata <> '') then CONCAT(P.nome, ' - ',P.Annata) else P.nome end as NomeProdotto, 0 as NumTotBottV, (D.NumCartoni * D.ConfezioniDa) as NumTotBottSM, F.IdFornitori, F.nome as NomeFornitore from prodotti P inner join scontomerce D on D.idprodotto = P.idprodotti and D.Anno = $anno inner join ordini O on O.IdOrdini = D.IdOrdine and O.Anno = $anno inner join fornitori F on F.IdFornitori = P.Fornitore where $where ) as TT group by IdProdotto, NomeProdotto, IdFornitori, NomeFornitore order by $orderBy " ; $query = " select TT.IdProdotto, TT.NomeProdotto, TT.DescDettaglio, TT.IdFornitori, TT.NomeFornitore, sum(TT.NumTotBottV) as NumBottV, sum(TT.NumTotBottSM) as NumBottSM from (select P.idprodotti as IdProdotto, case when (P.Annata <> '') then CONCAT(P.nome, ' - ',P.Annata) else P.nome end as NomeProdotto, D.DescDettaglio, (D.NumCartoni * D.ConfezioniDa) as NumTotBottV, 0 as NumTotBottSM, F.IdFornitori, F.nome as NomeFornitore from prodotti P inner join dettagli D on D.idprodotto = P.idprodotti and D.Anno = $anno inner join ordini O on O.IdOrdini = D.IdOrdine and O.Anno = $anno inner join fornitori F on F.IdFornitori = P.Fornitore where $where union all select P.idprodotti as IdProdotto, case when (P.Annata <> '') then CONCAT(P.nome, ' - ',P.Annata) else P.nome end as NomeProdotto, D.DescDettaglio, 0 as NumTotBottV, (D.NumCartoni * D.ConfezioniDa) as NumTotBottSM, F.IdFornitori, F.nome as NomeFornitore from prodotti P inner join scontomerce D on D.idprodotto = P.idprodotti and D.Anno = $anno inner join ordini O on O.IdOrdini = D.IdOrdine and O.Anno = $anno inner join fornitori F on F.IdFornitori = P.Fornitore where $where ) as TT group by IdProdotto, NomeProdotto, DescDettaglio, IdFornitori, NomeFornitore order by $orderBy " ; list($n, $d) = $db->RecuperaDati($query) ; for ($i = 0; $i<$n ; $i++ ) { $arrIdProdotti[] = $d['IdProdotto'][$i] ; if ($d['DescDettaglio'][$i] != "") $arrProdotti[] = htmlspecialchars($d['DescDettaglio'][$i]) ; else $arrProdotti[] = htmlspecialchars($d['NomeProdotto'][$i]) ; $arrFornitori[] = htmlspecialchars($d['NomeFornitore'][$i]) ; $arrTotali[] = $d['NumBottV'][$i] + $d['NumBottSM'][$i] ; $arrVenduto[] = $d['NumBottV'][$i] ; $arrSM[] = $d['NumBottSM'][$i] ; $Totale += $d['NumBottV'][$i] + $d['NumBottSM'][$i] ; $TotaleVenduto += $d['NumBottV'][$i] ; $TotaleSM += $d['NumBottSM'][$i] ; } if ($ordinaper == 2) { if ($direction == "ASC") $orderByDir = SORT_ASC ; else $orderByDir = SORT_DESC ; array_multisort($arrTotali, $orderByDir, $arrIdProdotti, $arrProdotti, $arrFornitori, $arrVenduto, $arrSM) ; } @reset($arrIdProdotti) ; for($i=0; $i
Nome Prodotto Fornitore Totale Venduto Sconto Merce
Totale: