<title>Reporte de ventas</title><div id="d_preocesando" align="center" style="margin-top:80px;"><img src="images/procesando.gif" width="137" height="75"></div>

<script language="javascript">

</script>


<?php
/* http://ProgramarEnPHP.wordpress.com */
/** En caso de errores... */

//sleep(2);

@$xfecha_inicio = $_REQUEST['xfecha_inicio'];
@$xfecha_fin = $_REQUEST['xfecha_fin'];	

@$xactivar_doc = $_REQUEST['xactivar_doc'];
@$xpagodocumento_criterio = $_REQUEST['xpagodocumento_criterio'];

@$xemp_nom = $_REQUEST['xemp_nom'];	


@$xactivar_tc = $_REQUEST['xactivar_tc'];
@$xtc_criterio = $_REQUEST['xtc_criterio'];
@$xactivar_loc = $_REQUEST['xactivar_loc'];
@$xciudad = $_REQUEST['xciudad'];
@$xdistrito = $_REQUEST['xdistrito'];
@$xactivar_emp = $_REQUEST['xactivar_emp'];
@$xemp_criterio = $_REQUEST['xemp_criterio'];


if(procesar()==1){
?>
<script language="javascript">
document.getElementById('d_preocesando').innerHTML="<img src='images/completado.png' width='50' height='50'> <div style='margin-top:10px;'>PROCESO COMPLETADO.</div>";
</script>
<?php
}






function procesar(){

global $xfecha_inicio,$xfecha_fin,$xactivar_doc,$xpagodocumento_criterio,$xemp_nom,$xactivar_tc,$xtc_criterio,$xactivar_loc,$xciudad,$xdistrito,$xactivar_emp,$xemp_criterio;


//error_reporting(E_ALL);
error_reporting(0);


?>


<?php
include "procesos/creditos_formulas.php";
include("conexion.php");

?>

<script src="assets/js/funciones.js"></script>
<script src="assets/js/numerosletras2.js"></script>


  <?php
  
  
  /*
  
 SELECT o.*, pt.*, dp.*, e.*, SUM(ordpeddet_precio * ordpeddet_cantidad) AS monto,  SUM(ordpeddet_cantidad) AS cantidad_total
FROM orden_pedido o
INNER JOIN pago_tipo pt ON o.pagtip_codi_fk=pt.pagtip_codi
INNER JOIN orden_pedido_detalle opd ON opd.ordped_codi_fk=o.ordped_codi
INNER JOIN documento_pago dp ON dp.docpag_codi=o.docpag_codi_fk
INNER JOIN empresas e ON o.emp_codi_fk=e.emp_codi
WHERE o.ordped_fecha<='2017-06-08' and o.ordped_fecha>='2017-01-01'
AND o.ordped_estado=1
GROUP BY o.ordped_fecha
ORDER BY o.ordped_fecha DESC, ordped_codi DESC; 
  
  */
  
  

	

	$xcretip_nombre ="";
	if($xtc_criterio!=NULL and trim($xtc_criterio!="")){
		$r_tipo = mysqli_query($conexion, "SELECT * FROM creditos_tipo c WHERE cretip_codi=$xtc_criterio;");
		while($row_tipo = mysqli_fetch_array($r_tipo)){
			$xcretip_nombre = $row_tipo['cretip_nombre'];
	
		}
	}	
		

	if($xactivar_tc == 1 and trim($xtc_criterio)!=""){
		//$xcretip_nombre ="";		
	}else{
		$xcretip_nombre ="TODOS";
	}
	

	$xemp_nom ="";
	
	if($xemp_criterio!=NULL and trim($xemp_criterio!="")){
		$r_empresa = mysqli_query($conexion, "SELECT * FROM empresas e WHERE emp_codi=$xemp_criterio;");
		while($row_empresa = mysqli_fetch_array($r_empresa)){
			$xemp_nom = $row_empresa['emp_nom'];
	
		}
	}	

	if($xactivar_emp == 1 and trim($xemp_criterio)!=""){
		//$xcretip_nombre ="";		
	}else{
		$xemp_nom ="TODOS";
	}
	

	@$xs_empresa=$_SESSION['s_empresa'];																									
	if(@$xactivar_emp==1){
														
		if(trim($xemp_criterio)==""){
			$xsql_empresa = " ";
		}else{	
			$xsql_empresa = " AND o.emp_codi_fk=$xemp_criterio ";
		}	

	}else{
	
		$xsql_empresa = " AND o.emp_codi_fk=$xs_empresa ";
							
	}
																							




	if($xactivar_doc == 1 and trim($xpagodocumento_criterio)!=""){
		//$xcretip_nombre ="";		
	}else{
		$xdoc_nom ="TODOS";
	}
	

	$xdoc_nom ="";
	
	if($xpagodocumento_criterio!=NULL and trim($xpagodocumento_criterio!="")){
		$r_documento = mysqli_query($conexion, "select * from documento_pago WHERE docpag_codi=$xpagodocumento_criterio;");
		while($row_documento = mysqli_fetch_array($r_documento)){
			$xdoc_nom = $row_documento['docpag_nombre'];
	
		}
	}	

	if($xactivar_doc == 1 and trim($xpagodocumento_criterio)!=""){
		//$xcretip_nombre ="";		
	}else{
		$xdoc_nom ="TODOS";
	}
	

	if(@$xactivar_doc==1){
														
		if(trim($xpagodocumento_criterio)==""){
			$xsql_documento = " ";
		}else{	
			$xsql_documento = " AND o.docpag_codi_fk=$xpagodocumento_criterio ";
		}	

	}else{
	
		$xsql_documento = " ";
							
	}
																							
												
	
												
		
	/** PHPExcel */
	require_once 'excel/Classes/PHPExcel.php';
	
	// Creamos nueva instancia de PHPExcel 
	$objPHPExcel = new PHPExcel();
	
	// Seleccionando la fuente a utilizar
	$objPHPExcel->getDefaultStyle()->getFont()->setName('Arial');
	$objPHPExcel->getDefaultStyle()->getFont()->setSize(10);
	
	//combinando celdas
	$objPHPExcel->getActiveSheet()->mergeCells('A1:F1');  
	$objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_JUSTIFY);
	$objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
	
	
	
	
	// Escribiendo los datos 
	$objPHPExcel->getActiveSheet()->setCellValue('A1','REPORTE DE VENTAS..');
	
	$objPHPExcel->getActiveSheet()->setCellValue('A2','FECHA DE REPORTE:');
	$objPHPExcel->getActiveSheet()->setCellValue('A3','CRITERIO DE FILTRO:');
	
	$objPHPExcel->getActiveSheet()->setCellValue('B2',date("d/m/Y") );
	$objPHPExcel->getActiveSheet()->setCellValue('B3','RANGO DE FECHAS:');
	$objPHPExcel->getActiveSheet()->setCellValue('B4','TIPO DE DOCUMENTO:');
	$objPHPExcel->getActiveSheet()->setCellValue('B5','EMPRESA (SUCURSAL):');
	
	$objPHPExcel->getActiveSheet()->setCellValue('C3','Desde '.date("d/m/Y",strtotime($xfecha_inicio)).' hasta '.date("d/m/Y",strtotime($xfecha_fin))  );  
	$objPHPExcel->getActiveSheet()->setCellValue('C4',$xdoc_nom);
	$objPHPExcel->getActiveSheet()->setCellValue('C5',$xemp_nom);
	
	
  ?>
  



<?php
$xtotal_creditos = 0;

$nfila = 10;



//$fechainicial = '2016-07-01';
//$fechafinal = '2017-06-08';

$fechainicial = $xfecha_inicio;
$fechafinal = $xfecha_fin;

/*
echo "FECHA INICIAL: ".$fechainicial;
echo "<br>";
echo "FECHA FINAL: ".$fechafinal;
echo "<br>";
*/

$anoinicial = date('Y',strtotime($fechainicial));
$anofinal = date('Y',strtotime($fechafinal));

$mesinicial = date('n',strtotime($fechainicial));
$mesfinal = date('n',strtotime($fechafinal));

/*
echo "MES INICIAL: ".$mesinicial;
echo "<br>";
echo "MES FINAL: ".$mesfinal;
echo "<br>";
*/

for($xn=$anoinicial; $xn<=$anofinal; $xn++){
	//echo "AŅO:".$xn;
	$nfila_ano = $nfila - 3;	

	$objPHPExcel->getActiveSheet()->mergeCells('A'.$nfila_ano.':F'.$nfila_ano);  
	$objPHPExcel->getActiveSheet()->getStyle('A'.$nfila_ano)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_JUSTIFY);
	$objPHPExcel->getActiveSheet()->getStyle('A'.$nfila_ano)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
	
	$objPHPExcel->getActiveSheet()->setCellValue('A'.$nfila_ano, utf8_encode("AŅO:".$xn));

?>

  
<?
	$xm_inicio=1;
	$xm_fin=12;
	if($xn==$anoinicial){
		$xm_inicio=$mesinicial;
	}
	if($xn==$anofinal){
		$xm_fin=$mesfinal;
	}
	
	for($xm=$xm_inicio; $xm<=$xm_fin; $xm++){
	
		$xmm = trim("0".$xm);
		$xmm = substr($xmm, strlen($xmm)-2, 2);
	
		$month = $xn.'-'.$xmm;
		$aux = date('Y-m-d', strtotime("{$month} + 1 month"));
		$last_day = date('Y-m-d', strtotime("{$aux} - 1 day"));		
		
		if($xn==$anoinicial and $xm==$xm_inicio){
			$first_day = $fechainicial;
		}else{
			$first_day = $xn.'-'.$xmm.'-01';			
		}
		if($xn==$anofinal and $xm==$xm_fin){
			$last_day = $fechafinal;
		}else{
			$last_day = $last_day;
		}
		
		
		switch ($xm) {
			case 1:
				$cmes = "ENERO";
				break;
			case 2:
				$cmes = "FEBRERO";
				break;
			case 3:
				$cmes = "MARZO";
				break;
			case 4:
				$cmes = "ABRIL";
				break;
			case 5:
				$cmes = "MAYO";
				break;
			case 6:
				$cmes = "JUNIO";
				break;
			case 7:
				$cmes = "JULIO";
				break;
			case 8:
				$cmes = "AGOSTO";
				break;
			case 9:
				$cmes = "SETIEMBRE";
				break;
			case 10:
				$cmes = "OCTUBRE";
				break;
			case 11:
				$cmes = "NOVIEMBRE";
				break;
			case 12:
				$cmes = "DICIEMBRE";
				break;				
				
		}
					
		//echo "...MES:".$xm. "(desde ".$first_day."  hasta ".$last_day .")";
		//echo "<br>";
		
		


		
		$nfila_cabecera = $nfila - 1;
		
		$nfila_ano_mes = $nfila_cabecera - 1;


		$objPHPExcel->getActiveSheet()->mergeCells('A'.$nfila_ano_mes.':F'.$nfila_ano_mes);  
		$objPHPExcel->getActiveSheet()->getStyle('A'.$nfila_ano_mes)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_JUSTIFY);
		$objPHPExcel->getActiveSheet()->getStyle('A'.$nfila_ano_mes)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);

		$objPHPExcel->getActiveSheet()->setCellValue('A'.$nfila_ano_mes, $cmes." - ".$xn);
		
		// Escribiendo los datos 
		$objPHPExcel->getActiveSheet()->setCellValue('A'.$nfila_cabecera,'FECHA');
		$objPHPExcel->getActiveSheet()->setCellValue('B'.$nfila_cabecera,'TIPO DE DOCUMENTO');
		$objPHPExcel->getActiveSheet()->setCellValue('C'.$nfila_cabecera,'EMPRESA');
		$objPHPExcel->getActiveSheet()->setCellValue('D'.$nfila_cabecera,'PENDIENTE');
		$objPHPExcel->getActiveSheet()->setCellValue('E'.$nfila_cabecera,'AMORTIZADO');
		$objPHPExcel->getActiveSheet()->setCellValue('F'.$nfila_cabecera,'MONTO');
		
?>

                <?php 
				
				$r_ventas = mysqli_query($conexion,"SELECT o.ordcom_fecha, pt.pagtip_nombre, dp.docpag_nombre, e.emp_nom,
				SUM(ordcomdet_precio * ordcomdet_cantidad) AS monto,  SUM(ordcomdet_cantidad) AS cantidad_total
				FROM orden_compra o
				INNER JOIN pago_tipo pt ON o.pagtip_codi_fk=pt.pagtip_codi
				INNER JOIN orden_compra_detalle ocd ON ocd.ordcom_codi_fk=o.ordcom_codi
				INNER JOIN documento_pago dp ON dp.docpag_codi=o.docpag_codi_fk
				INNER JOIN empresas e ON o.emp_codi_fk=e.emp_codi
				WHERE o.ordcom_fecha<='$last_day' and o.ordcom_fecha>='$first_day'
				AND o.ordcom_estado=1 "
				.$xsql_empresa.$xsql_documento.
				"GROUP BY o.ordcom_fecha
				ORDER BY o.ordcom_fecha;");
				
												
				$xamortizacion = 0;
				$xmonto_total_mes = 0;
				$xamortizacion_total_mes = 0;
				$xpendiente_total_mes = 0;
				$nr = 0;
			
				$nfila_inicial = $nfila;
				
				while($row_ventas = mysqli_fetch_array($r_ventas)){
					
					$xamortizacion = 0;
					
					$xfecha = $row_ventas['ordcom_fecha'];
					//$xemp_nom = $row_ventas['emp_nom'];
					$xmonto = number_format($row_ventas['monto'],2,'.','');
					
					$xmonto_total_mes = $xmonto_total_mes + $xmonto;
																
					$xamortizacion = $creform->calcular_amortizacion_compra($conexion, $xfecha, $xsql_empresa, $xsql_documento);
					$xamortizacion = number_format($xamortizacion,2,'.','');
					$xamortizacion_total_mes = $xamortizacion_total_mes + $xamortizacion;
					
					
					$xpendiente = $xmonto - $xamortizacion;					
					$xpendiente_total_mes = $xpendiente_total_mes + $xpendiente;
					
					$nr = $nr + 1;
					
					if($nr % 2 == 1){
						$xcolor_linea = "#FFFFFF";
					}else{
						$xcolor_linea = "#E9E9E9";					
					}
			

					
					$objPHPExcel->getActiveSheet()->setCellValue('A'.$nfila,date("d/m/Y",strtotime($xfecha)));
					$objPHPExcel->getActiveSheet()->setCellValue('B'.$nfila,utf8_encode($xdoc_nom));
					$objPHPExcel->getActiveSheet()->setCellValue('C'.$nfila,utf8_encode($xemp_nom));
					$objPHPExcel->getActiveSheet()->setCellValue('D'.$nfila,$xpendiente);
					$objPHPExcel->getActiveSheet()->setCellValue('E'.$nfila,$xamortizacion);
					$objPHPExcel->getActiveSheet()->setCellValue('F'.$nfila,$xmonto);					
					
					$nfila = $nfila + 1;
						
				?>

				<?php
				}
				
				$nfila_final = $nfila - 1;
				
				$objPHPExcel->getActiveSheet()->setCellValue('D'.$nfila,'=SUM(D'.$nfila_inicial.':D'.$nfila_final.')');				
				$objPHPExcel->getActiveSheet()->setCellValue('E'.$nfila,'=SUM(E'.$nfila_inicial.':E'.$nfila_final.')');
				$objPHPExcel->getActiveSheet()->setCellValue('F'.$nfila,'=SUM(F'.$nfila_inicial.':F'.$nfila_final.')');
				
				$nfila = $nfila + 4;
				
				?>  
<?php

	}
}


// Nombramos la hoja 
$objPHPExcel->getActiveSheet()->setTitle('ProgramarEnPHP');


// Activamos para que al abrir el excel nos muestre la primer hoja
$objPHPExcel->setActiveSheetIndex(0);


// Guardamos el archivo, en este caso lo guarda con el mismo nombre del php
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
//$objWriter->save(str_replace('.php', '.xlsx', __FILE__));


$xnombre_archivo = 'excel_archivos/reporte_compras_'.time().'.xlsx';

$objWriter->save($xnombre_archivo);

?>
<script language="javascript">
//function abrir_excel(archivo){
	//alert("si va");
	document.getElementById('d_preocesando').innerHTML="<img src='images/completado.png' width='50' height='50'> <div style='margin-top:10px;'>PROCESO COMPLETADO.</div>";
	location.href = "<?php echo $xnombre_archivo ?>";
	
//}
</script>

<?php



return 1;


}

?>
