RecuperaDati($qAnno) ; // print_r($dAnno) ; if ($nAnno > 0) { // Metto da parte il nome del'azienda $nomeAzienda = $dAnno['NomeAzienda'][0] ; for ($i=0; $i<$nAnno; $i++) { $nomeProdotto = addslashes($dAnno['NomeProdotto'][$i]) . "^" . $dAnno['Categoria'][$i]; if (!array_key_exists($nomeProdotto, $arrVal)) $arrVal[$nomeProdotto][$anno] = array() ; $arrVal[$nomeProdotto][$anno]['Venduto'] += $dAnno['Venduto'][$i] ; $arrTot[$anno]['Venduto'] += $dAnno['Venduto'][$i] ; $arrVal[$nomeProdotto][$anno]['ScontoMerce'] += $dAnno['ScontoMerce'][$i] ; $arrTot[$anno]['ScontoMerce'] += $dAnno['ScontoMerce'][$i] ; $arrVal[$nomeProdotto][$anno]['Ordinato'] += $dAnno['Venduto'][$i] * $dAnno['PrezzoUnitario'][$i] ; $arrTot[$anno]['Ordinato'] += $dAnno['Venduto'][$i] * $dAnno['PrezzoUnitario'][$i] ; $arrVal[$nomeProdotto][$anno]['Quantita'] += $dAnno['Venduto'][$i] + $dAnno['ScontoMerce'][$i] ; $arrTot[$anno]['Quantita'] += $dAnno['Venduto'][$i] + $dAnno['ScontoMerce'][$i] ; } $arrTot[$anno]['PrezzoMedio'] = $arrTot[$anno]['Ordinato'] / $arrTot[$anno]['Quantita'] ; } // print_r($arrVal) ; debug (0, "PM = $prezzoMedio" ) ; // print_r($dAnno) ; /**************************************************************************************** * se esiste la tabella dell'anno precedente, allora mi ricavo i dati dell'anno precedente. * In questo caso faccio una ricerca generica e poi in base ai risultati ottenuti, carico * i valori trovati nell'array di visualizzazione. Da ricordare che due prodotti vengono * ritenuti uguali se hanno uguale nome e uguale categoria (per consentire la distinzione * fra due o più prodotti che hanno o stesso nome ma appartengono a due categoria diverse) *****************************************************************************************/ $table = "ordini_$annoP" ; $ret = $db->checkTable($table) ; debug (0, "RET = $ret ; $nomeProdotto = $nomeProdotto ; For = $nomeFornitore ; Cat = $categoria") ; if ($ret) { /****************************************************************************** * dal nome dell'azienda, devo recuperare l'id che la stessa ha nella tabella * aziende_annoP, perchè non è detto che abbia lo stesso id dell'anno che ho * considerato nella query precedente *******************************************************************************/ $qid = " select * from aziende_$annoP where Nome = '$nomeAzienda' " ; list($nid, $did) = $db->RecuperaDati($qid) ; if ($nid > 0) { $idAziendaP = $did['IdAziende'][0] ; $dataOrdine = MySqlDate("$gime/$annoP") ; /******************************************************************************* * la tabella ordini dell'anno precedente esiste quindi posso fare il confronto. * Per il confronto devo considerare: il nome, la tipologia e il produttore *******************************************************************************/ $qAnnoP = " select PP.NomeAzienda, PP.NomeProdotto, PP.Categoria, sum(PP.Venduto) as Venduto, sum(PP.SM) as ScontoMerce, PP.PrezzoUnitario from ( select TT.NomeAzienda as NomeAzienda, TT.NomeProdotto as NomeProdotto, TT.Categoria as Categoria, sum(TT.Venduto) as Venduto, 0 as SM, TT.PrezzoUnitario as PrezzoUnitario from (select Trim(A.nome) as NomeAzienda, Trim(P.Nome) as NomeProdotto, P.Categoria as Categoria, (D.NumCartoni * D.ConfezioniDa) as Venduto, P.prezzounitario as PrezzoUnitario from dettagli_$annoP D inner join prodotti_$annoP P on P.idprodotti = D.idprodotto inner join aziende_$annoP A on A.idaziende = P.aziendacollegata inner join ordini_$annoP O on O.IdOrdini = D.IdOrdine where A.idaziende = $idAziendaP and O.DataOrdine <= '$dataOrdine') as TT group by NomeAzienda, NomeProdotto, Categoria, SM, PrezzoUnitario union select TT.NomeAzienda as NomeAzienda, TT.NomeProdotto as NomeProdotto, TT.Categoria as Categoria, 0 as Venduto, sum(TT.Venduto) as SM, TT.PrezzoUnitario as PrezzoUnitario from (select Trim(A.nome) as NomeAzienda, Trim(P.Nome) as NomeProdotto, P.Categoria as Categoria, (D.NumCartoni * D.ConfezioniDa) as Venduto, P.prezzounitario as PrezzoUnitario from scontomerce_$annoP D inner join prodotti_$annoP P on P.idprodotti = D.idprodotto inner join aziende_$annoP A on A.idaziende = P.aziendacollegata inner join ordini_$annoP O on O.IdOrdini = D.IdOrdine where A.idaziende = $idAziendaP and O.DataOrdine <= '$dataOrdine') as TT group by NomeAzienda, NomeProdotto, Categoria, Venduto, PrezzoUnitario)as PP group by NomeAzienda, NomeProdotto, Categoria, PrezzoUnitario " ; debug (0, $qAnnoP) ; list($nAnnoP, $dAnnoP) = $db->RecuperaDati($qAnnoP) ; // print_r($dAnnoP) ; for ($i=0; $i<$nAnnoP; $i++) { $nomeProdotto = addslashes($dAnnoP['NomeProdotto'][$i]) . "^" . $dAnnoP['Categoria'][$i]; if (array_key_exists($nomeProdotto, $arrVal)) { $arrVal[$nomeProdotto][$annoP]['Venduto'] += $dAnnoP['Venduto'][$i] ; $arrVal[$nomeProdotto][$annoP]['ScontoMerce'] += $dAnnoP['ScontoMerce'][$i] ; $arrVal[$nomeProdotto][$annoP]['Ordinato'] += $dAnnoP['Venduto'][$i] * $dAnnoP['PrezzoUnitario'][$i] ; $arrVal[$nomeProdotto][$annoP]['Quantita'] += $dAnnoP['Venduto'][$i] + $dAnnoP['ScontoMerce'][$i] ; } /***************************************************************************************** * In ogni caso devo inserire i valori di questo prodotto nell'array che calcola il totale ******************************************************************************************/ $arrTot[$annoP]['Venduto'] += $dAnnoP['Venduto'][$i] ; $arrTot[$annoP]['ScontoMerce'] += $dAnnoP['ScontoMerce'][$i] ; $arrTot[$annoP]['Ordinato'] += $dAnnoP['Venduto'][$i] * $dAnnoP['PrezzoUnitario'][$i] ; $arrTot[$annoP]['Quantita'] += $dAnnoP['Venduto'][$i] + $dAnnoP['ScontoMerce'][$i] ; } $arrTot[$annoP]['PrezzoMedio'] = $arrTot[$annoP]['Ordinato'] / $arrTot[$annoP]['Quantita'] ; } } $arrParGen = array() ; $arrParGen = RecuperaParametriGenerali($arrParGen, $tparametri) ; $nome = $arrParGen['NomeAgenzia'] ; $sede = "Sede operativa: " . $arrParGen['IndirizzoAgenzia'] ; $datisede = "Telefono: " . $arrParGen['TelefonoAgenzia'] . " Fax: " . $arrParGen['FaxAgenzia'] . " -- P.I. " . $arrParGen['PartitaIvaAgenzia'] ; $emailsede = "Email: " . $arrParGen['MailAgenzia'] ; ?> New Document




Venduto per Prodotto - Confronto con periodo precedente al
Azienda:

0) { $pQua = (($qua0 - $qua1) * 100) / $qua1 ; if ($pQua <= 0) $sQua = "" ; } else $pQua = 100 ; if ($ord1 > 0) { $pOrd = (($ord0 - $ord1) * 100) / $ord1 ; if ($pOrd <= 0) $sOrd = "" ; } else $pOrd = 100 ; if ($pm1 > 0) { $pMed = (($pm0 - $pm1) * 100) / $pm1 ; if ($pMed <= 0) $sMed = "" ; } else $pMed = 100 ; ?>
Anno Quantità Ordinato Prezzo Medio incidenza % SM
   


TOTALI :  
TOTALI :