<?php 

	include("config.php");
	require_once("phpexcel/PHPExcel.php");

	if (PHP_SAPI == 'cli')
    	die('Este archivo solo se puede ver desde un navegador web');
	
	// Se crea el objeto PHPExcel
	$objPHPExcel = new PHPExcel();

	
	$fecha1 = $_GET['fecha1']; //mes
	$fecha2 = $_GET['fecha2']; //año


	$fecha_inicio = $fecha2."-".$fecha1."-01"; 
	$fecha_fin = $fecha2."-".$fecha1."-31"; 

	$conexion = new mysqli($db_host,$db_user,$db_pass,$db_name);
	if (mysqli_connect_errno()) {
	   printf("La conexión con el servidor de base de datos falló: %s\n", mysqli_connect_error());
	   exit();
	}

	
	$consulta1 = 'SELECT 
		(SELECT razon_social FROM empresa WHERE id_empresa=1) as "Nombre_Empresa",
		(SELECT ruc FROM empresa WHERE id_empresa=1) as "RUC_Empresa",
		v.id_venta,

		DATE_FORMAT(v.fecha_venta, "%d/%m/%Y")  as "Fecha_Emision", 
		DATE_FORMAT(v.fecha_pago, "%d/%m/%Y")  as "Fecha_Vencimiento",

		tc.codigo as "Tipo_Comprobante",

		v.serie_comprobante as "Serie",
		v.numero_comprobante as "Numero",

		td.codigo as "Tipo_Documento",

		c.numero_documento as "RUC", 
		c.nombre as "Razon_Social", 


		(SELECT SUM(ROUND(dv.precio_venta_neto,2)) FROM detalle_venta dv INNER JOIN productos p ON p.id_producto=dv.id_producto WHERE p.situacion_impuesto="AFECTO" AND dv.id_venta=v.id_venta) as "Base_imponible",
        (SELECT SUM(ROUND(dv.impuesto, 2)) FROM detalle_venta dv INNER JOIN productos p ON p.id_producto=dv.id_producto WHERE p.situacion_impuesto="AFECTO" AND dv.id_venta=v.id_venta) as "Igv",


		(SELECT SUM(dv.precio_venta_total) FROM detalle_venta dv INNER JOIN productos p ON p.id_producto=dv.id_producto WHERE p.situacion_impuesto="EXONERADO" AND dv.id_venta=v.id_venta) as "Exonerado",
		(SELECT SUM(dv.precio_venta_total) FROM detalle_venta dv INNER JOIN productos p ON p.id_producto=dv.id_producto WHERE p.situacion_impuesto="INAFECTO" AND dv.id_venta=v.id_venta) as "Inafecto",

		(SELECT (v.total_venta-SUM(dv.precio_venta_total)) FROM detalle_venta dv INNER JOIN productos p ON p.id_producto=dv.id_producto WHERE dv.id_venta=v.id_venta) as "Icbper",

		v.total_venta as "Importe_Total",
		v.tipo_pago as "Tipo_Pago",
		v.estado_envio as "Estado",
		v.mensaje_envio as "Mensaje"

		FROM ventas v INNER JOIN clientes c ON v.id_cliente = c.id_cliente 
		INNER JOIN tipo_comprobante tc ON v.id_tipo_comprobante = tc.id_tipo_comprobante 
		INNER JOIN tipo_documento td ON c.id_tipo_documento = td.id_tipo_documento 

		WHERE (v.fecha_venta >= "'.$fecha2.'-'.$fecha1.'-01" AND v.fecha_venta <= "'.$fecha2.'-'.$fecha1.'-31") AND v.estado="1" ORDER BY v.created_at ASC';
	

		$consulta2 = 'SELECT 

		(SELECT razon_social FROM empresa WHERE id_empresa=1) as "Nombre_Empresa",
		(SELECT ruc FROM empresa WHERE id_empresa=1) as "RUC_Empresa",

		n.id_nota,

		DATE_FORMAT(n.created_at, "%d/%m/%Y")  as "Fecha_Emision", 

		tcn.codigo as "Tipo_Comprobante",
		n.serie_nota as "Serie",
		n.numero_nota as "Numero",

		td.codigo as "Tipo_Documento",
		c.numero_documento as "RUC", 
		c.nombre as "Razon_Social", 


		(SELECT SUM(ROUND(dv.precio_venta_neto,2)) FROM detalle_venta dv INNER JOIN productos p ON p.id_producto=dv.id_producto WHERE p.situacion_impuesto="AFECTO" AND dv.id_venta=v.id_venta) as "Base_imponible",
        (SELECT SUM(ROUND(dv.impuesto, 2)) FROM detalle_venta dv INNER JOIN productos p ON p.id_producto=dv.id_producto WHERE p.situacion_impuesto="AFECTO" AND dv.id_venta=v.id_venta) as "Igv",
		
		(SELECT SUM(dv.precio_venta_total) FROM detalle_venta dv INNER JOIN productos p ON p.id_producto=dv.id_producto WHERE p.situacion_impuesto="EXONERADO" AND dv.id_venta=n.id_venta) as "Exonerado",
		(SELECT SUM(dv.precio_venta_total) FROM detalle_venta dv INNER JOIN productos p ON p.id_producto=dv.id_producto WHERE p.situacion_impuesto="INAFECTO" AND dv.id_venta=n.id_venta) as "Inafecto",

		(SELECT (v.total_venta-SUM(dv.precio_venta_total)) FROM detalle_venta dv INNER JOIN productos p ON p.id_producto=dv.id_producto WHERE dv.id_venta=v.id_venta) as "Icbper",

		v.total_venta as "Importe_Total",


		DATE_FORMAT(v.fecha_venta, "%d/%m/%Y")  as "Fecha_Venta", 
		v.fecha_venta as "Fecha_Anulado", 
		tcv.codigo as "Tipo_Comprobante_Venta",
		v.serie_comprobante as "Serie_Venta",
		v.numero_comprobante as "Numero_Venta",
		v.tipo_pago as "Tipo_Pago",

		n.estado_envio as "Estado",
		n.mensaje_envio as "Mensaje"

		FROM notas n INNER JOIN ventas v ON n.id_venta = v.id_venta 
		INNER JOIN clientes c ON c.id_cliente = v.id_cliente 
		INNER JOIN tipo_comprobante tcn ON tcn.id_tipo_comprobante = n.id_tipo_comprobante 
		INNER JOIN tipo_comprobante tcv ON tcv.id_tipo_comprobante = v.id_tipo_comprobante 
		INNER JOIN tipo_documento td ON td.id_tipo_documento = c.id_tipo_documento 

		WHERE (n.created_at >= "'.$fecha2.'-'.$fecha1.'-01" AND n.created_at <= "'.$fecha2.'-'.$fecha1.'-31" ) AND n.estado="1" ORDER BY n.created_at ASC';
	
	 
	$resultado1 = $conexion->query($consulta1);
	$resultado2 = $conexion->query($consulta2);

	$i = 3; //Numero de fila donde se va a comenzar a rellenar
	$suma = 0;
	$suma_base = 0;
	$suma_base_nota = 0;
	$suma_igv = 0;
	$suma_igv_nota = 0;
	$suma_exonerado = 0;
	$suma_inafecto = 0;
	$suma_icbper = 0;
	$j = 1;
	$existeBoleta = false;
	$existeNota = false;


	// Propiedades del documento
	$objPHPExcel->getProperties()->setCreator("Seven")
								 ->setLastModifiedBy("Seven")
								 ->setTitle("Reporte de VENTAS REALIZADAS")
								 ->setSubject("Reporte de VENTAS REALIZADAS")
								 ->setDescription("Reporte de VENTAS REALIZADAS")
								 ->setKeywords("office 2010 openxml php")
								 ->setCategory("Archivo con resultado de reporte");
	
	// Combino las celdas desde A1 hasta F1
	$objPHPExcel->setActiveSheetIndex(0)->mergeCells('A1:AA1');
	$objPHPExcel->setActiveSheetIndex(0)
	            ->setCellValue('A1', 'REPORTE DE VENTAS - SIRE')
	            ->setCellValue('A2', 'ITEM')
	            ->setCellValue('B2', 'RUC')
	            ->setCellValue('C2', 'RAZON SOCIAL')
				->setCellValue('D2', 'PERIODO')
				->setCellValue('E2', 'TIPO DE PAGO')
				->setCellValue('F2', 'FECHA DE EMISION')
				->setCellValue('G2', 'F. VENCIMIENTO')
				->setCellValue('H2', 'TIPO COMP.')
				->setCellValue('I2', 'SERIE')
				->setCellValue('J2', 'NUMERO')
	            ->setCellValue('K2', 'TIPO DOC.')
				->setCellValue('L2', 'DNI/RUC CLIENTE')
				->setCellValue('M2', 'RAZON SOCIAL')
				->setCellValue('N2', 'BASE IMPONIBLE')
				->setCellValue('O2', 'DESC. BASE IMPONIBLE')
				->setCellValue('P2', 'IGV')
				->setCellValue('Q2', 'DESC. IGV BASE IMP.')
				->setCellValue('R2', 'EXONERADO')
				->setCellValue('S2', 'INAFECTO')
				->setCellValue('T2', 'GRATUITO')
				->setCellValue('U2', 'ICBPER')
	            ->setCellValue('V2', 'IMPORTE TOTAL')
				->setCellValue('W2', 'MONEDA')
				->setCellValue('X2', 'F.EMISION COMPROBANTE ANULADO')
				->setCellValue('Y2', 'TIPO COMPROBANTE ANULADO')
				->setCellValue('Z2', 'SERIE COMPROBANTE ANULADO')
				->setCellValue('AA2', 'NUMERO COMPROBANTE ANULADO')
				->setCellValue('AB2', 'ESTADO SUNAT')
				->setCellValue('AC2', 'MENSAJE SUNAT');
				
	// Fuente de la primera fila en negrita
	$boldArray = array('font' => array('bold' => true,),'alignment' => array('horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_CENTER));
	$objPHPExcel->getActiveSheet()->getStyle('A1:AC2')->applyFromArray($boldArray);

	//Ancho de las columnas
	$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(8);	
	$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(60);	
	$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(15);	
	$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(20);	
	$objPHPExcel->getActiveSheet()->getColumnDimension('E')->setWidth(20);
	$objPHPExcel->getActiveSheet()->getColumnDimension('F')->setWidth(20);
	$objPHPExcel->getActiveSheet()->getColumnDimension('G')->setWidth(20);
    $objPHPExcel->getActiveSheet()->getColumnDimension('H')->setWidth(15);
    $objPHPExcel->getActiveSheet()->getColumnDimension('I')->setWidth(15);
    $objPHPExcel->getActiveSheet()->getColumnDimension('J')->setWidth(8);	
	$objPHPExcel->getActiveSheet()->getColumnDimension('K')->setWidth(15);	
	$objPHPExcel->getActiveSheet()->getColumnDimension('L')->setWidth(20);	
	$objPHPExcel->getActiveSheet()->getColumnDimension('M')->setWidth(50);	
	$objPHPExcel->getActiveSheet()->getColumnDimension('N')->setWidth(20);
	$objPHPExcel->getActiveSheet()->getColumnDimension('O')->setWidth(25);
	$objPHPExcel->getActiveSheet()->getColumnDimension('P')->setWidth(10);
    $objPHPExcel->getActiveSheet()->getColumnDimension('Q')->setWidth(25);
    $objPHPExcel->getActiveSheet()->getColumnDimension('R')->setWidth(15);
    $objPHPExcel->getActiveSheet()->getColumnDimension('S')->setWidth(15);
    $objPHPExcel->getActiveSheet()->getColumnDimension('T')->setWidth(15);		
	$objPHPExcel->getActiveSheet()->getColumnDimension('U')->setWidth(15);
	$objPHPExcel->getActiveSheet()->getColumnDimension('V')->setWidth(15);		
	$objPHPExcel->getActiveSheet()->getColumnDimension('W')->setWidth(15);	
	$objPHPExcel->getActiveSheet()->getColumnDimension('X')->setWidth(35);	
	$objPHPExcel->getActiveSheet()->getColumnDimension('Y')->setWidth(30);
	$objPHPExcel->getActiveSheet()->getColumnDimension('Z')->setWidth(30);
	$objPHPExcel->getActiveSheet()->getColumnDimension('AA')->setWidth(35);
	$objPHPExcel->getActiveSheet()->getColumnDimension('AB')->setWidth(20);
	$objPHPExcel->getActiveSheet()->getColumnDimension('AC')->setWidth(100);

	if($resultado1->num_rows > 0 ){
		while ($fila = $resultado1->fetch_array()) {
			$objPHPExcel->setActiveSheetIndex(0)
			    ->setCellValue('A'.$i, $j)
			    ->setCellValue('B'.$i, utf8_encode($fila['Nombre_Empresa']))
			    ->setCellValue('C'.$i, utf8_encode($fila['RUC_Empresa']))
			    ->setCellValue('D'.$i, utf8_encode($fecha2."-".$fecha1))
			    ->setCellValue('E'.$i, utf8_encode($fila['Tipo_Pago']=="CREDITO" ? "CREDITO" : "CONTADO" ))
			    ->setCellValue('F'.$i, utf8_encode($fila['Fecha_Emision']))
			    ->setCellValue('G'.$i, utf8_encode($fila['Fecha_Vencimiento']))
			    ->setCellValue('H'.$i, utf8_encode($fila['Tipo_Comprobante']))
			    ->setCellValue('I'.$i, utf8_encode($fila['Serie']))
			    ->setCellValue('J'.$i, utf8_encode($fila['Numero']))
			    ->setCellValue('K'.$i, utf8_encode($fila['Tipo_Documento']))
			    ->setCellValue('L'.$i, utf8_encode($fila['RUC']))
			    ->setCellValue('M'.$i, utf8_encode($fila['Razon_Social']))
			    ->setCellValue('N'.$i, $fila['Estado']=="RECHAZADO" ? "0.00" : (!is_null($fila['Base_imponible']) ? $fila['Base_imponible'] : "0.00"))
			    ->setCellValue('O'.$i, "0.00" )
			    ->setCellValue('P'.$i, $fila['Estado']=="RECHAZADO" ? "0.00" : (!is_null($fila['Igv']) ? $fila['Igv'] : "0.00"))
			    ->setCellValue('Q'.$i, "0.00" )
			    ->setCellValue('R'.$i, $fila['Estado']=="RECHAZADO" ? "0.00" : (!is_null($fila['Exonerado']) ? $fila['Exonerado'] : "0.00"))
			    ->setCellValue('S'.$i, $fila['Estado']=="RECHAZADO" ? "0.00" : (!is_null($fila['Inafecto']) ? $fila['Inafecto'] : "0.00")) 
			    ->setCellValue('T'.$i,  "0.00" ) //gratuito
			    ->setCellValue('U'.$i, $fila['Estado']=="RECHAZADO" ? "0.00" : (!is_null($fila['Icbper']) ? $fila['Icbper'] : "0.00"))
			    ->setCellValue('V'.$i, $fila['Estado']=="RECHAZADO" ? "0.00" : $fila['Importe_Total'])
			    ->setCellValue('W'.$i, "PEN" )
			    ->setCellValue('X'.$i, "")
			    ->setCellValue('Y'.$i, "")
			    ->setCellValue('Z'.$i, "")
			    ->setCellValue('AA'.$i, "")
			    ->setCellValue('AB'.$i, utf8_encode($fila['Estado']=="ACEPTADO" ? $fila['Estado'] : ($fila['Estado']=="RECHAZADO" ? $fila['Estado'] : "PENDIENTE") ))
			    ->setCellValue('AC'.$i, utf8_encode($fila['Estado']=="ACEPTADO" ? $fila['Mensaje'] : ($fila['Estado']=="RECHAZADO" ? $fila['Mensaje'] : "El comprobante se encuentra pendiente de enviar a la SUNAT") ));
			$i++;
			$j++;
			if($fila['Estado'] != "RECHAZADO"){
				$suma = $suma + $fila['Importe_Total'];

				$suma_base = $suma_base + $fila['Base_imponible'];
				//$suma_base_nota = $suma_base_nota + $fila['Importe_Total'];
				$suma_igv = $suma_igv + $fila['Igv'];
				//$suma_igv_nota = $suma_igv_nota + $fila['Importe_Total'];
				$suma_exonerado = $suma_exonerado + $fila['Exonerado'];
				$suma_inafecto = $suma_inafecto + $fila['Inafecto'];
				$suma_icbper = $suma_icbper + $fila['Icbper'];
			}	
				
		}
		
		$existeBoleta = true;
	}

    	if($resultado2->num_rows > 0 ){
    		while ($fila = $resultado2->fetch_array()) {
    			$objPHPExcel->setActiveSheetIndex(0)
    			    ->setCellValue('A'.$i, $j)
    			    ->setCellValue('B'.$i, utf8_encode($fila['Nombre_Empresa']))
    			    ->setCellValue('C'.$i, utf8_encode($fila['RUC_Empresa']))
    			    ->setCellValue('D'.$i, utf8_encode($fecha2."-".$fecha1))
    			    ->setCellValue('E'.$i, utf8_encode($fila['Tipo_Pago']=="CREDITO" ? "CREDITO" : "CONTADO" ))
    			    ->setCellValue('F'.$i, utf8_encode($fila['Fecha_Emision']))
    			    ->setCellValue('G'.$i, "")
    			    ->setCellValue('H'.$i, utf8_encode($fila['Tipo_Comprobante']))
    			    ->setCellValue('I'.$i, utf8_encode($fila['Serie']))
    			    ->setCellValue('J'.$i, utf8_encode($fila['Numero']))
    			    ->setCellValue('K'.$i, utf8_encode($fila['Tipo_Documento']))
    			    ->setCellValue('L'.$i, utf8_encode($fila['RUC']))
    			    ->setCellValue('M'.$i, utf8_encode($fila['Razon_Social']))
    
    			    ->setCellValue('N'.$i, check_in_range($fecha_inicio, $fecha_fin, $fila['Fecha_Anulado']) ?  ($fila['Estado']=="RECHAZADO" ? "0.00" : (!is_null($fila['Base_imponible']) ? "-".$fila['Base_imponible'] : "0.00")) :  "0.00")
    			    
    			    ->setCellValue('O'.$i, check_in_range($fecha_inicio, $fecha_fin, $fila['Fecha_Anulado']) ?  "0.00"  :  ($fila['Estado']=="RECHAZADO" ? "0.00" : (!is_null($fila['Base_imponible']) ? "-".$fila['Base_imponible'] : "0.00")) )
    
    			    ->setCellValue('P'.$i, check_in_range($fecha_inicio, $fecha_fin, $fila['Fecha_Anulado'])  ?  ($fila['Estado']=="RECHAZADO" ? "0.00" : (!is_null($fila['Igv']) ? "-".$fila['Igv'] : "0.00")) : "0.00")
    
    			    ->setCellValue('Q'.$i, check_in_range($fecha_inicio, $fecha_fin, $fila['Fecha_Anulado'])  ? "0.00" : ($fila['Estado']=="RECHAZADO" ? "0.00" : (!is_null($fila['Igv']) ? "-".$fila['Igv'] : "0.00")) )
    
    
    			    ->setCellValue('R'.$i, $fila['Estado']=="RECHAZADO" ? "0.00" : (!is_null($fila['Exonerado']) ? "-".$fila['Exonerado'] : "0.00")) 
    			    ->setCellValue('S'.$i, $fila['Estado']=="RECHAZADO" ? "0.00" : (!is_null($fila['Inafecto']) ? "-".$fila['Inafecto'] : "0.00")) 
			    	->setCellValue('T'.$i,  "0.00" ) //gratuito
			    	->setCellValue('U'.$i, $fila['Estado']=="RECHAZADO" ? "0.00" : (!is_null($fila['Icbper']) ? "-".$fila['Icbper'] : "0.00"))
    			    ->setCellValue('V'.$i, $fila['Estado']=="RECHAZADO" ? "0.00" : "-".$fila['Importe_Total'])
    			    ->setCellValue('W'.$i, "PEN" )
    			    ->setCellValue('X'.$i, utf8_encode($fila['Fecha_Venta']))
    			    ->setCellValue('Y'.$i, utf8_encode($fila['Tipo_Comprobante_Venta']))
    			    ->setCellValue('Z'.$i, utf8_encode($fila['Serie_Venta']))
    			    ->setCellValue('AA'.$i, utf8_encode($fila['Numero_Venta']))
    			    ->setCellValue('AB'.$i, utf8_encode($fila['Estado']=="ACEPTADO" ? $fila['Estado'] : ($fila['Estado']=="RECHAZADO" ? $fila['Estado'] : "PENDIENTE") ))
			    	->setCellValue('AC'.$i, utf8_encode($fila['Estado']=="ACEPTADO" ? $fila['Mensaje'] : ($fila['Estado']=="RECHAZADO" ? $fila['Mensaje'] : "El comprobante se encuentra pendiente de enviar a la SUNAT") ));
    			$i++;
    			$j++;
    
    			if($fila['Estado'] != "RECHAZADO"){
    				$suma = $suma - $fila['Importe_Total'];
    
    				if(check_in_range($fecha_inicio, $fecha_fin, $fila['Fecha_Anulado']) ) {
    					$suma_base = $suma_base - $fila['Base_imponible'];
    					$suma_igv = $suma_igv - $fila['Igv'];
    				} else {
    					$suma_base_nota = $suma_base_nota - $fila['Base_imponible'];
    					$suma_igv_nota = $suma_igv_nota - $fila['Igv'];
    				}
    
    				$suma_exonerado = $suma_exonerado - $fila['Exonerado'];
    				$suma_inafecto = $suma_inafecto - $fila['Inafecto'];
    				$suma_icbper = $suma_icbper - $fila['Icbper'];
			    }
		    }
    	
    	$existeNota = true;
    }


    if($existeBoleta || $existeNota){
		$color_style_array = [
		  'font'  => [
		    'color' => ['rgb' => 'FF0000'],
		    'bold' => true,
		  ],
		  'alignment' => [
		  	'horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_CENTER
		  ]
		];
		$color_style_array2 = [
		  'font'  => [
		    'color' => ['rgb' => '0000FF'],
		    'bold' => true,
		  ],
		  'alignment' => [
		  	'horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_LEFT
		  ]
		];

		$objPHPExcel->getActiveSheet()->getStyle('AA3:AA'.$i)->applyFromArray($color_style_array);
		$objPHPExcel->getActiveSheet()->getStyle('AC3:AC'.$i)->applyFromArray($color_style_array2);
		$objPHPExcel->getActiveSheet()->getStyle('V3:V'.$i)->applyFromArray($color_style_array);

		$objPHPExcel->getActiveSheet()->getStyle('N'.$i)->getFont()->setBold(true);
		$objPHPExcel->getActiveSheet()->getStyle('O'.$i)->getFont()->setBold(true);
		$objPHPExcel->getActiveSheet()->getStyle('P'.$i)->getFont()->setBold(true);
		$objPHPExcel->getActiveSheet()->getStyle('Q'.$i)->getFont()->setBold(true);
		$objPHPExcel->getActiveSheet()->getStyle('R'.$i)->getFont()->setBold(true);
		$objPHPExcel->getActiveSheet()->getStyle('S'.$i)->getFont()->setBold(true);
		$objPHPExcel->getActiveSheet()->getStyle('T'.$i)->getFont()->setBold(true);
		$objPHPExcel->getActiveSheet()->getStyle('U'.$i)->getFont()->setBold(true);

		$objPHPExcel->setActiveSheetIndex(0)->setCellValue('V'.$i, $suma);

		$objPHPExcel->setActiveSheetIndex(0)->setCellValue('N'.$i, $suma_base);
		$objPHPExcel->setActiveSheetIndex(0)->setCellValue('O'.$i, $suma_base_nota);
		$objPHPExcel->setActiveSheetIndex(0)->setCellValue('P'.$i, $suma_igv);
		$objPHPExcel->setActiveSheetIndex(0)->setCellValue('Q'.$i, $suma_igv_nota);
		$objPHPExcel->setActiveSheetIndex(0)->setCellValue('R'.$i, $suma_exonerado);
		$objPHPExcel->setActiveSheetIndex(0)->setCellValue('S'.$i, $suma_inafecto);
		$objPHPExcel->setActiveSheetIndex(0)->setCellValue('T'.$i, "0.00");
		$objPHPExcel->setActiveSheetIndex(0)->setCellValue('U'.$i, $suma_icbper);


		$objPHPExcel->getActiveSheet()->getStyle('N3:N'.$i)->getNumberFormat()->setFormatCode('0.00');
		$objPHPExcel->getActiveSheet()->getStyle('O3:O'.$i)->getNumberFormat()->setFormatCode('0.00');
		$objPHPExcel->getActiveSheet()->getStyle('P3:P'.$i)->getNumberFormat()->setFormatCode('0.00');
		$objPHPExcel->getActiveSheet()->getStyle('Q3:Q'.$i)->getNumberFormat()->setFormatCode('0.00');
		$objPHPExcel->getActiveSheet()->getStyle('R3:R'.$i)->getNumberFormat()->setFormatCode('0.00');
		$objPHPExcel->getActiveSheet()->getStyle('S3:S'.$i)->getNumberFormat()->setFormatCode('0.00');
		$objPHPExcel->getActiveSheet()->getStyle('T3:T'.$i)->getNumberFormat()->setFormatCode('0.00');
		$objPHPExcel->getActiveSheet()->getStyle('U3:U'.$i)->getNumberFormat()->setFormatCode('0.00');
		$objPHPExcel->getActiveSheet()->getStyle('V3:V'.$i)->getNumberFormat()->setFormatCode('0.00');

		$i = $i-1;
		$H = "AC".$i;
		$rango = "A2:$H";
		$styleArray = array('font' => array( 'name' => 'Arial','size' => 10),
			'borders'=>array('allborders'=>array('style'=> PHPExcel_Style_Border::BORDER_THIN,'color'=>array('argb' => 'FFF')))
		);
		$objPHPExcel->getActiveSheet()->getStyle($rango)->applyFromArray($styleArray);


		// Cambiar el nombre de hoja de cálculo
		$objPHPExcel->getActiveSheet()->setTitle('Reporte de Ventas');

		// Establecer índice de hoja activa a la primera hoja , por lo que Excel abre esto como la primera hoja
		$objPHPExcel->setActiveSheetIndex(0);

		// Se manda el archivo al navegador web, con el nombre que se indica, en formato 2007
		header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
		header('Content-Disposition: attachment;filename="Reporte_SIRE_Ventas.xlsx"');
		header('Cache-Control: max-age=0');
		 
		$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
		$objWriter->save('php://output');
		exit;

	}
	else{
	    print_r('No hay resultados para mostrar');
	}

	//comprobar rango de fechas
	function check_in_range($fecha_inicio, $fecha_fin, $fecha){

	     $fecha_inicio = strtotime($fecha_inicio);
	     $fecha_fin = strtotime($fecha_fin);
	     $fecha = strtotime($fecha);

	     if(($fecha >= $fecha_inicio) && ($fecha <= $fecha_fin)) {

	         return true;

	     } else {

	         return false;

	     }
	}
	






