private function fn_EliminarIndicadores($treeId)
 {
     /*Para eliminar indicadores por cada indicador*/
     $criteria = new Criteria();
     $criteria->add(IndicatorsScPeer::TREE_ID, $treeId);
     $listaIndicadores = IndicatorsScPeer::doSelect($criteria);
     if (count($listaIndicadores) > 0) {
         foreach ($listaIndicadores as $indicador) {
             //hay que buscar la dataIndicadores y eliminarlas
             $criteriaDataIndicadores = new Criteria();
             $criteriaDataIndicadores->add(DataIndicadoresPeer::INDICADOR_ID, $indicador->getId());
             DataIndicadoresPeer::doDelete($criteriaDataIndicadores);
             //hay que buscar las proyecciones y eliminarlas
             $criteriaProyecciones = new Criteria();
             $criteriaProyecciones->add(ProjectionsIndicatorsCsPeer::INDICADOR_ID, $indicador->getId());
             ProjectionsIndicatorsCsPeer::doDelete($criteriaProyecciones);
         }
         //acabado la eliminacion se procede a eliminar los indicadores
         IndicatorsScPeer::doDelete($criteria);
     }
 }
 public function executeSaveProjections(sfWebRequest $request)
 {
     for ($i = 1; $i < 13; $i++) {
         $id_proyeccion = $request->getParameter('idfecha' . $i);
         $data_proyeccion = $request->getParameter('f' . $i);
         if ($id_proyeccion != "") {
             $proyeccion = ProjectionsIndicatorsCsPeer::retrieveByPK($id_proyeccion);
             if (is_object($proyeccion)) {
                 $value = explode("-", $request->getParameter('id'));
                 if ($value[0] == "valor_min") {
                     $proyeccion->setValorMinimo($data_proyeccion);
                 } elseif ($value[0] == "valor_des") {
                     $proyeccion->setValorDeseado($data_proyeccion);
                 } else {
                     $proyeccion->setValorOptimo($data_proyeccion);
                 }
                 $proyeccion->save();
             }
         }
     }
 }
 public function returnValueProjection($idicatorId, $fecha)
 {
     $criteria = new Criteria();
     $criteria->add(ProjectionsIndicatorsCsPeer::INDICADOR_ID, $idicatorId);
     $criteria->add(ProjectionsIndicatorsCsPeer::FECHA, $fecha);
     $projection = ProjectionsIndicatorsCsPeer::doSelectOne($criteria);
     if (is_object($projection)) {
         return array("success" => true, "vo" => $projection->getValorOptimo(), "vd" => $projection->getValorDeseado(), "vm" => $projection->getValorMinimo());
     } else {
         return array("success" => false, "message" => $idicatorId . "-error-" . $fecha);
     }
 }
 public function obtenerValoresDeProyecciones($indicador, $fecha, $id = null)
 {
     $dia = date("d", strtotime($fecha));
     $mes = date("m", strtotime($fecha));
     $anio = date("Y", strtotime($fecha));
     $fecha = date("Y-m-d", mktime(0, 0, 0, $mes, $dia, $anio));
     $criteria = new Criteria();
     if ($id != null) {
         /*si recibo el id directamente busca con ese parametro*/
         $criteria->add(ProjectionsIndicatorsCsPeer::INDICADOR_ID, $id);
     } else {
         /*si recibe el objeto, obtiene la informacion a parir del objeto*/
         $criteria->add(ProjectionsIndicatorsCsPeer::INDICADOR_ID, $indicador->getId());
     }
     $criteria->add(ProjectionsIndicatorsCsPeer::FECHA, $fecha);
     $proyeccion = ProjectionsIndicatorsCsPeer::doSelectOne($criteria);
     if (is_object($proyeccion)) {
         return array("success" => true, "message" => "exito", "object" => $proyeccion);
     } else {
         return array("success" => false, "message" => "proyeccion no encotrada");
     }
 }
 private function sqlSelectList($indicatorBean)
 {
     $criteria = new Criteria();
     $criteria->add(ProjectionsIndicatorsCsPeer::INDICADOR_ID, $indicatorBean->getId());
     $criteria->addAscendingOrderByColumn(ProjectionsIndicatorsCsPeer::FECHA);
     $cantidad = ProjectionsIndicatorsCsPeer::doCount($criteria);
     $criteria->setOffset($cantidad - 12);
     $criteria->setLimit(12);
     $listaProyecciones = ProjectionsIndicatorsCsPeer::doSelect($criteria);
     return $listaProyecciones;
 }
 private function obtenerValoresDeProyecciones($indicador, $fecha)
 {
     $dia = date("d", strtotime($fecha));
     $mes = date("m", strtotime($fecha));
     $anio = date("Y", strtotime($fecha));
     $fecha = date("Y-m-d", mktime(0, 0, 0, $mes, $dia, $anio));
     $criteria = new Criteria();
     $criteria->add(ProjectionsIndicatorsCsPeer::INDICADOR_ID, $indicador->getIndicadorId());
     $criteria->add(ProjectionsIndicatorsCsPeer::FECHA, $fecha);
     $proyeccion = ProjectionsIndicatorsCsPeer::doSelectOne($criteria);
     if (is_object($proyeccion)) {
         return array("success" => true, "message" => "exito", "object" => $proyeccion);
     } else {
         return array("success" => false, "message" => "proyeccion no encotrada");
     }
 }