Ver Mensaje Individual
  #1 (permalink)  
Antiguo 21/09/2009, 10:43
tomuer01
 
Fecha de Ingreso: enero-2009
Mensajes: 106
Antigüedad: 16 años, 1 mes
Puntos: 0
Pregunta Insertar datos del mes anterior al mes actual

Hola...
Estoy insertando datos de una BD SQL a una BD MySQL, este proceso lo realizo todos los diaz con una tarea programada de windows, esto funciona a la perfeccion durante todo el mes, el problema esta que cuando cambio de mes, por ejemplo 31-08-2009 al 01-09-2009 no me inserta ningun dato que haya quedado del mes anterior, me inserta solo los del mes presente osea desde las 00:00:00 en adelante.
Si alguien conoce alguna solucion favor que me ayude.
Aqui dejo el codigo.
Código:
<?php
ini_set('max_execution_time','9000');
ini_set('max_input_time','9000'); 
ini_set('mysql.connect_timeout','9000');
ini_set('memory_limit','1500M');
ini_set('buffering ','0');
?>

<html>
<head>
<title>Recolector Actaris SQL</title>
<?php
include('cnnsql.php');
include('cnn.php');
include('funciones.php');

$mes=date('m');
$ano=date('Y');
$dia=date('d');
$fecha_inicio=$ano."-".$mes."-01 00:00.000";
$fecha_actual=$ano."-".$mes."-".$dia." 23:45.000";

$consulta=mssql_query("SELECT A.DATETIME ,A.IDCLIENT,B.DESCRIPTION,A.NOINS, 
								Sum(CASE WHEN A.IDVAR = 'WhD' THEN A.READVAL ELSE 0 END)
								AS CANAL1,
								Sum(CASE WHEN A.IDVAR = 'WhR' THEN A.READVAL ELSE 0 END)
								AS CANAL2,
								Sum(CASE WHEN A.IDVAR = 'F' THEN A.READVAL ELSE 0 END)
								AS CANAL3,
								Sum(CASE WHEN A.IDVAR = 'VarhD' THEN A.READVAL ELSE 0 END)
								AS CANAL4,
								Sum(CASE WHEN A.IDVAR = 'VArhR' THEN A.READVAL ELSE 0 END)
								AS CANAL5,
								Sum(CASE WHEN A.IDVAR = 'FP' THEN A.READVAL ELSE 0 END)
								AS CANAL6
								FROM READMASS  A, TOPOLOGY B ,CLIENTS C
								WHERE A.DATETIME  BETWEEN '$fecha_inicio' AND '$fecha_actual' 
								AND A.NOINS = B.NOINS
								AND C.USER_DEFINED1 <> 'PUNTO DE VENTA'
								AND A.IDCLIENT = C.IDCLIENT
								AND B.IDINSTYPE='SL7000'
								GROUP BY A.DATETIME,A.IDCLIENT,B.DESCRIPTION,A.NOINS
								ORDER BY B.DESCRIPTION,A.IDCLIENT ,A.DATETIME ASC
					 ");
?>
<?php
 
  while ($row=mssql_fetch_array($consulta)) 
		{
				$nume_fila=$nume_fila+1;
				$medidor=$row["NOINS"];
				$fecha_lect=$row["DATETIME"];
				$descripcion=$row["DESCRIPTION"];
				$id_cliente=$row["IDCLIENT"];
				$identificador=$medidor.'-'.$fecha_lect;
				$fch_b=explode('-',$fecha_lect);
				$diaa=$fch_b[0];
				$mess=$fch_b[1];
				$anoo=$fch_b[2];
				$anoo2=substr ($anoo, -10,4);
				$horaa=substr ($anoo, -5,7);		
				$fecha_base=$anoo2.'-'.$mess.'-'.$diaa.' '.$horaa;
					
					
				$cn1=$row["CANAL1"];
				$cn2=$row["CANAL2"];
				$cn3=$row["CANAL3"];
				$cn4=$row["CANAL4"];	
				$cn5=$row["CANAL5"];
				$cn6=$row["CANAL6"];		
				
				$fechae[$i++]= $fecha_base.','.$cn1.','.$cn2.','.$cn3.','.$cn4.','.$cn5.','.$cn6.','.$anoo2.','.$mess.','.$diaa.','.$horaa.','.$identificador.','.$medidor.','.$descripcion.','.$id_cliente;
					
				$verif=1;
		 } 
		 	
	if($verif==1)
		{
		$fecha_edita=$fecha_lect;
		
		$fch_ed=explode('-',$fecha_edita);
					$diae=$fch_ed[0];
					$mese=$fch_ed[1];
					$anoe=$fch_ed[2];
					$anoo2e=substr ($anoo, -10,4);
					$horae=substr ($anoo, -5,7);
		$fecha_edicion=$anoo2e.'-'.$mese.'-'.$diae.' '.$horae;	
				
		$fecha_edit=date('Y-m-d H:i:s');
			#for ($i = 0; $fechae[$i++]; $i++){
				foreach($fechae as $var => $val) {
			 	$pag_uno=explode(",",$val);
				$fechaer=$pag_uno[0];
				$cn1=$pag_uno[1];
				$cn2=$pag_uno[2];
				$cn3=$pag_uno[3];
				$cn4=$pag_uno[4];
				$cn5=$pag_uno[5];
				$cn6=$pag_uno[6];
				$year=$pag_uno[7];
				$mes=$pag_uno[8];
				$dia=$pag_uno[9];
				$hora=$pag_uno[10];
				$identificador=$pag_uno[11];
				$medidor=$pag_uno[12];
				$descripcion=$pag_uno[13];
				$id_cliente=$pag_uno[14];
			$sql="INSERT INTO datas_six_act(
					identificador,id_prime,descripcion,fecha_lect,chanel1 ,chanel2 ,chanel3 ,chanel4 ,chanel5 ,chanel6 ,yearx, mesx ,diax ,horax,fecha_edit,id_cliente   
					)
			VALUES ('$identificador','$medidor','$descripcion','$fechaer','$cn1','$cn2','$cn3','$cn4','$cn5','$cn6','$year','$mes','$dia','$hora','$fecha_edicion','$id_cliente')";
			mysql_query($sql,$link);
			}
			
		}
echo "Los Datos Se Procesaron Exitosamente...!!";
?>
</body>
</html>