public function LogicaProgramacionSugeridaNormal(){ $connection=Yii::app()->db; $query = 'CREATE TEMPORARY TABLE Temp_ProgramacionSugerida (IdProgramacionSugerida INT, IdHorario INT, NroMensajero INT, NumeroPosicion INT, HoraInicio VARCHAR(5), HoraFinal VARCHAR(5), Valor INT)'; $command = $connection->createCommand($query); $command->execute(); $query = 'CREATE TEMPORARY TABLE Temp_HorasMensajero (IdProgramacionSugerida INT, Tmp_NroMensajero INT, Tmp_TotalHoras INT)'; $command = $connection->createCommand($query); $command->execute(); $query = 'CREATE TEMPORARY TABLE Temp_MensajerosHorario (IdProgramacionSugerida INT, IdHorario INT, Promedio_Mensajeros_Hora INT, Tmp_TotalMensajeros INT)'; $command = $connection->createCommand($query); $command->execute(); $Ln_NumeroHoras = 8; $Ln_IdProgramacionSugerida=0; while ($Ln_NumeroHoras <= 8) { $Ln_IdProgramacionSugerida ++; $this->inicializarTotalesMensajero($connection, $Ln_IdProgramacionSugerida); $necesidades_normal = ResumenClasificacionDias::getNecesidadesClasificacionDia($this->IdReportePedidosxPdv, 1); $Ln_TotalMensajerosHora = 0; if ($necesidades_normal){ foreach($necesidades_normal as $reg){ if ($Ln_TotalMensajerosHora < $reg->Promedio_Mensajeros_Hora_Normal){ $Ln_Mensajero = 1; while (($Ln_Mensajero <= $this->NumeroMensajerosProgramados) && ($Ln_TotalMensajerosHora < $reg->Promedio_Mensajeros_Hora_Normal)){ } } } } // Necesidades x Hora $Ln_NumeroHoras++; } }