0 " ; if ($anno_2prec != '') { $q_2prec = " UNION select C.idclienti as IdCliente, C.nome as NomeCliente, F.nome as NomeFornitore, 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_2prec} O inner join $tclienti C on C.idclienti = O.idcliente inner join fornitori_{$anno_2prec} F on F.idfornitori = O.idfornitore inner join pagamenti_{$anno_2prec} P on P.idpagamenti = O.idpagamento inner join agenti_{$anno_2prec} A on A.idagenti = O.idagente where O.numfattura > 0 and saldofattura != 1 " ; } else $q_2prec = '' ; if ($anno_prec != '') { $q_prec = " UNION select C.idclienti as IdCliente, C.nome as NomeCliente, F.nome as NomeFornitore, 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 NomeCliente, NomeFornitore, dataspedfattura" ; $q = " select C.idclienti as IdCliente, C.Nome as NomeCliente, F.nome as NomeFornitore, 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 or O.Anno = $anno_prec or O.Anno = $anno_2prec) and numfattura > 0 order by NomeCliente, NomeFornitore, dataspedfattura " ; list($n,$d) = $db->RecuperaDati($q) ; // print_r($d) ; exit ; for ($i=0; $i<$n; $i++) { if (! array_key_exists($d['NomeCliente'][$i], $arrVal)) $arrVal[$d['NomeCliente'][$i]] = array('IdCliente' => $d['IdCliente'][$i]) ; $arrVal[$d['NomeCliente'][$i]]['TotFatt'] += $d['importofattura'][$i] ; if ($d['saldoFattura'][$i] == 0) $arrVal[$d['NomeCliente'][$i]]['DaPagare'] += $d['importofattura'][$i] ; else { $arrVal[$d['NomeCliente'][$i]]['Pagato'] += $d['importofattura'][$i] ; } } // print_r($arrVal) ; exit ; $str = "" ; @reset($arrVal) ; foreach($arrVal as $nomecliente => $arrCl) { $str .= "" ; $str .= "" . htmlspecialchars($nomecliente) . "" ; $str .= "" . nfe($arrCl['TotFatt']) . "" ; $str .= "" . nfe($arrCl['Pagato']) . "" ; $str .= "" . nfe($arrCl['DaPagare']) . "" ; $str .= "" ; } $str .= "" ; $header = "CLIENTE,TOTALE FATTURATO,IMPORTO PAGATO,IMPORTO DA PAGARE" ; $strSort = "str,euro,euro,euro" ; $iniWP = "50,16,16,16" ; $setColType = "ro,ro,ro,ro" ; $setColAlign = "left,right,right,right" ; ?> New Document