Example #1
0
 /**
  * Populates the object using an array.
  *
  * This is particularly useful when populating an object from one of the
  * request arrays (e.g. $_POST).  This method goes through the column
  * names, checking to see whether a matching key exists in populated
  * array. If so the setByName() method is called for that column.
  *
  * You can specify the key type of the array by additionally passing one
  * of the class type constants BasePeer::TYPE_PHPNAME, BasePeer::TYPE_STUDLYPHPNAME,
  * BasePeer::TYPE_COLNAME, BasePeer::TYPE_FIELDNAME, BasePeer::TYPE_NUM.
  * The default key type is the column's phpname (e.g. 'AuthorId')
  *
  * @param      array  $arr     An array to populate the object from.
  * @param      string $keyType The type of keys the array uses.
  * @return     void
  */
 public function fromArray($arr, $keyType = BasePeer::TYPE_PHPNAME)
 {
     $keys = PercentilesPeer::getFieldNames($keyType);
     if (array_key_exists($keys[0], $arr)) {
         $this->setId($arr[$keys[0]]);
     }
     if (array_key_exists($keys[1], $arr)) {
         $this->setEscalasId($arr[$keys[1]]);
     }
     if (array_key_exists($keys[2], $arr)) {
         $this->setPercentil($arr[$keys[2]]);
     }
     if (array_key_exists($keys[3], $arr)) {
         $this->setDesde($arr[$keys[3]]);
     }
     if (array_key_exists($keys[4], $arr)) {
         $this->setHasta($arr[$keys[4]]);
     }
 }
Example #2
0
 public static function calcularbabybase($respuestas)
 {
     $puntaje = 0;
     foreach ($respuestas as $resultado) {
         $pregunta = $resultado->getPreguntas();
         $estado = sfConfig::get('app_activo');
         $respuesta = RespuestasPeer::getRespuesta($pregunta->getId(), $estado);
         if ($resultado->getOpciones()->getTexto() == $respuesta->getOpciones()->getTexto()) {
             $puntaje = $puntaje + 1;
         }
     }
     $percentil = PercentilesPeer::getPercentil($respuestas[0]->getPreguntas()->getTests()->getId(), $puntaje);
     $resultado = ResultadosPeer::getResultado($respuestas[0]->getPruebas()->getId(), $respuestas[0]->getAspirantes()->getId());
     $result = new Resultadosescalas();
     $result->setResultados($resultado);
     $result->setEscalas($percentil[0]->getEscalas());
     $result->setValor($percentil[0]->getPercentil());
     $result->save();
 }
Example #3
0
 /**
  * Returns the number of related Percentiles objects.
  *
  * @param      Criteria $criteria
  * @param      boolean $distinct
  * @param      PropelPDO $con
  * @return     int Count of related Percentiles objects.
  * @throws     PropelException
  */
 public function countPercentiless(Criteria $criteria = null, $distinct = false, PropelPDO $con = null)
 {
     if ($criteria === null) {
         $criteria = new Criteria(EscalasPeer::DATABASE_NAME);
     } else {
         $criteria = clone $criteria;
     }
     if ($distinct) {
         $criteria->setDistinct();
     }
     $count = null;
     if ($this->collPercentiless === null) {
         if ($this->isNew()) {
             $count = 0;
         } else {
             $criteria->add(PercentilesPeer::ESCALAS_ID, $this->id);
             $count = PercentilesPeer::doCount($criteria, false, $con);
         }
     } else {
         // criteria has no effect for a new object
         if (!$this->isNew()) {
             // the following code is to determine if a new query is
             // called for.  If the criteria is the same as the last
             // one, just return count of the collection.
             $criteria->add(PercentilesPeer::ESCALAS_ID, $this->id);
             if (!isset($this->lastPercentilesCriteria) || !$this->lastPercentilesCriteria->equals($criteria)) {
                 $count = PercentilesPeer::doCount($criteria, false, $con);
             } else {
                 $count = count($this->collPercentiless);
             }
         } else {
             $count = count($this->collPercentiless);
         }
     }
     return $count;
 }
 /**
  * Retrieve multiple objects by pkey.
  *
  * @param      array $pks List of primary keys
  * @param      PropelPDO $con the connection to use
  * @throws     PropelException Any exceptions caught during processing will be
  *		 rethrown wrapped into a PropelException.
  */
 public static function retrieveByPKs($pks, PropelPDO $con = null)
 {
     if ($con === null) {
         $con = Propel::getConnection(PercentilesPeer::DATABASE_NAME, Propel::CONNECTION_READ);
     }
     $objs = null;
     if (empty($pks)) {
         $objs = array();
     } else {
         $criteria = new Criteria(PercentilesPeer::DATABASE_NAME);
         $criteria->add(PercentilesPeer::ID, $pks, Criteria::IN);
         $objs = PercentilesPeer::doSelect($criteria, $con);
     }
     return $objs;
 }
// Escala A
$criteria->add(EscalasPeer::TESTS_ID, 3);
// 16pf
$escala = EscalasPeer::doSelectOne($criteria);
$t->is("A", $escala->getNombre(), "La escala es A");
$percentiles = PercentilesPeer::getPercentilPorEscala($escala->getId(), 0);
$t->is(1, $percentiles[0]->getPercentil(), "En la escala A, 0 puntos = percentil 1");
$percentiles = PercentilesPeer::getPercentilPorEscala($escala->getId(), 1);
$t->is(1, $percentiles[0]->getPercentil(), "En la escala A, 1 puntos = percentil 1");
$percentiles = PercentilesPeer::getPercentilPorEscala($escala->getId(), 2);
$t->is(1, $percentiles[0]->getPercentil(), "En la escala A, 2 puntos = percentil 1");
$percentiles = PercentilesPeer::getPercentilPorEscala($escala->getId(), 3);
$t->is(1, $percentiles[0]->getPercentil(), "En la escala A, 3 puntos = percentil 1");
$percentiles = PercentilesPeer::getPercentilPorEscala($escala->getId(), 4);
$t->is(2, $percentiles[0]->getPercentil(), "En la escala A, 4 puntos = percentil 2");
$percentiles = PercentilesPeer::getPercentilPorEscala($escala->getId(), 5);
$t->is(2, $percentiles[0]->getPercentil(), "En la escala A, 5 puntos = percentil 2");
$percentiles = PercentilesPeer::getPercentilPorEscala($escala->getId(), 6);
$t->is(3, $percentiles[0]->getPercentil(), "En la escala A, 6 puntos = percentil 3");
$percentiles = PercentilesPeer::getPercentilPorEscala($escala->getId(), 7);
$t->is(4, $percentiles[0]->getPercentil(), "En la escala A, 7 puntos = percentil 4");
$percentiles = PercentilesPeer::getPercentilPorEscala($escala->getId(), 8);
$t->is(5, $percentiles[0]->getPercentil(), "En la escala A, 8 puntos = percentil 5");
$percentiles = PercentilesPeer::getPercentilPorEscala($escala->getId(), 9);
$t->is(6, $percentiles[0]->getPercentil(), "En la escala A, 9 puntos = percentil 6");
$percentiles = PercentilesPeer::getPercentilPorEscala($escala->getId(), 10);
$t->is(7, $percentiles[0]->getPercentil(), "En la escala A, 10 puntos = percentil 7");
$percentiles = PercentilesPeer::getPercentilPorEscala($escala->getId(), 11);
$t->is(8, $percentiles[0]->getPercentil(), "En la escala A, 11 puntos = percentil 8");
$percentiles = PercentilesPeer::getPercentilPorEscala($escala->getId(), 12);
$t->is(9, $percentiles[0]->getPercentil(), "En la escala A, 12 puntos = percentil 9");
 */
$criteria = new Criteria();
$criteria->add(PerfilPeer::ID, 1);
$perfil = PerfilPeer::doSelectOne($criteria);
// deberia tener  Infante
$criteria = new Criteria();
$criteria->add(EscalasPeer::NOMBRE, "A");
// Escala A
$criteria->add(EscalasPeer::TESTS_ID, 3);
// 16pf
$escala = EscalasPeer::doSelectOne($criteria);
$percentiles = array();
for ($i = 1; $i < 10; $i++) {
    $criteria = new Criteria();
    $criteria->add(PercentilesPeer::PERCENTIL, $i);
    $criteria->add(PercentilesPeer::ESCALAS_ID, $escala->getId());
    $percentiles[$i] = PercentilesPeer::doSelectOne($criteria);
}
$t = new lime_test(11);
$t->is('Infante', trim($perfil->getNombre()), "El perfil es Infante");
$t->is("A", $escala->getNombre(), "La escala es A");
$t->is(PercentilesPeer::evaluarValorEsperado($perfil, $percentiles[1]), false, "Si el percentil es 1 desaprueba");
$t->is(PercentilesPeer::evaluarValorEsperado($perfil, $percentiles[2]), false, "Si el percentil es 2 desaprueba");
$t->is(PercentilesPeer::evaluarValorEsperado($perfil, $percentiles[3]), true, "Si el percentil es 3 aprueba");
$t->is(PercentilesPeer::evaluarValorEsperado($perfil, $percentiles[4]), true, "Si el percentil es 4 aprueba");
$t->is(PercentilesPeer::evaluarValorEsperado($perfil, $percentiles[5]), true, "Si el percentil es 5 aprueba");
$t->is(PercentilesPeer::evaluarValorEsperado($perfil, $percentiles[6]), true, "Si el percentil es 6 aprueba");
$t->is(PercentilesPeer::evaluarValorEsperado($perfil, $percentiles[7]), false, "Si el percentil es 7 desaprueba");
$t->is(PercentilesPeer::evaluarValorEsperado($perfil, $percentiles[8]), false, "Si el percentil es 8 desaprueba");
$t->is(PercentilesPeer::evaluarValorEsperado($perfil, $percentiles[9]), false, "Si el percentil es 9 desaprueba");