<?php
// Connection Component Binding
Doctrine_Manager::getInstance()->bindComponent('NECESIDAD', 'doctrine');

/**
 * BaseNECESIDAD
 * 
 * This class has been auto-generated by the Doctrine ORM Framework
 * 
 * @property integer $id_necesidad
 * @property string $vigencia
 * @property integer $id_fuente_necesidad
 * @property integer $id_area
 * @property string $problema
 * @property string $necesidad
 * @property string $pregunta
 * @property string $objetivos
 * @property integer $prioridad
 * @property integer $min_personas
 * @property integer $max_personas
 * @property string $costo
 * @property integer $intensidad_horaria
 * @property timestamp $fecha_programacion
 * @property string $todos_funcionarios
 * @property integer $id_doc_responsable
 * @property string $num_doc_responsable
 * @property integer $id_cia
 * @property integer $id_cen_op
 * @property AREA $AREA
 * @property FUENTE_NECESIDAD $FUENTE_NECESIDAD
 * @property DATOS_FUNCIONARIO $DATOS_FUNCIONARIO
 * @property DATOS_FUNCIONARIO $DATOS_FUNCIONARIO_3
 * @property DATOS_FUNCIONARIO $DATOS_FUNCIONARIO_4
 * @property DATOS_FUNCIONARIO $DATOS_FUNCIONARIO_5
 * 
 * @method integer           getIdNecesidad()         Returns the current record's "id_necesidad" value
 * @method string            getVigencia()            Returns the current record's "vigencia" value
 * @method integer           getIdFuenteNecesidad()   Returns the current record's "id_fuente_necesidad" value
 * @method integer           getIdArea()              Returns the current record's "id_area" value
 * @method string            getProblema()            Returns the current record's "problema" value
 * @method string            getNecesidad()           Returns the current record's "necesidad" value
 * @method string            getPregunta()            Returns the current record's "pregunta" value
 * @method string            getObjetivos()           Returns the current record's "objetivos" value
 * @method integer           getPrioridad()           Returns the current record's "prioridad" value
 * @method integer           getMinPersonas()         Returns the current record's "min_personas" value
 * @method integer           getMaxPersonas()         Returns the current record's "max_personas" value
 * @method string            getCosto()               Returns the current record's "costo" value
 * @method integer           getIntensidadHoraria()   Returns the current record's "intensidad_horaria" value
 * @method timestamp         getFechaProgramacion()   Returns the current record's "fecha_programacion" value
 * @method string            getTodosFuncionarios()   Returns the current record's "todos_funcionarios" value
 * @method integer           getIdDocResponsable()    Returns the current record's "id_doc_responsable" value
 * @method string            getNumDocResponsable()   Returns the current record's "num_doc_responsable" value
 * @method integer           getIdCia()               Returns the current record's "id_cia" value
 * @method integer           getIdCenOp()             Returns the current record's "id_cen_op" value
 * @method AREA              getAREA()                Returns the current record's "AREA" value
 * @method FUENTE_NECESIDAD  getFUENTENECESIDAD()     Returns the current record's "FUENTE_NECESIDAD" value
 * @method DATOS_FUNCIONARIO getDATOSFUNCIONARIO()    Returns the current record's "DATOS_FUNCIONARIO" value
 * @method DATOS_FUNCIONARIO getDATOSFUNCIONARIO3()   Returns the current record's "DATOS_FUNCIONARIO_3" value
 * @method DATOS_FUNCIONARIO getDATOSFUNCIONARIO4()   Returns the current record's "DATOS_FUNCIONARIO_4" value
 * @method DATOS_FUNCIONARIO getDATOSFUNCIONARIO5()   Returns the current record's "DATOS_FUNCIONARIO_5" value
 * @method NECESIDAD         setIdNecesidad()         Sets the current record's "id_necesidad" value
 * @method NECESIDAD         setVigencia()            Sets the current record's "vigencia" value
 * @method NECESIDAD         setIdFuenteNecesidad()   Sets the current record's "id_fuente_necesidad" value
 * @method NECESIDAD         setIdArea()              Sets the current record's "id_area" value
 * @method NECESIDAD         setProblema()            Sets the current record's "problema" value
 * @method NECESIDAD         setNecesidad()           Sets the current record's "necesidad" value
 * @method NECESIDAD         setPregunta()            Sets the current record's "pregunta" value
 * @method NECESIDAD         setObjetivos()           Sets the current record's "objetivos" value
 * @method NECESIDAD         setPrioridad()           Sets the current record's "prioridad" value
 * @method NECESIDAD         setMinPersonas()         Sets the current record's "min_personas" value
 * @method NECESIDAD         setMaxPersonas()         Sets the current record's "max_personas" value
 * @method NECESIDAD         setCosto()               Sets the current record's "costo" value
 * @method NECESIDAD         setIntensidadHoraria()   Sets the current record's "intensidad_horaria" value
 * @method NECESIDAD         setFechaProgramacion()   Sets the current record's "fecha_programacion" value
 * @method NECESIDAD         setTodosFuncionarios()   Sets the current record's "todos_funcionarios" value
 * @method NECESIDAD         setIdDocResponsable()    Sets the current record's "id_doc_responsable" value
 * @method NECESIDAD         setNumDocResponsable()   Sets the current record's "num_doc_responsable" value
 * @method NECESIDAD         setIdCia()               Sets the current record's "id_cia" value
 * @method NECESIDAD         setIdCenOp()             Sets the current record's "id_cen_op" value
 * @method NECESIDAD         setAREA()                Sets the current record's "AREA" value
 * @method NECESIDAD         setFUENTENECESIDAD()     Sets the current record's "FUENTE_NECESIDAD" value
 * @method NECESIDAD         setDATOSFUNCIONARIO()    Sets the current record's "DATOS_FUNCIONARIO" value
 * @method NECESIDAD         setDATOSFUNCIONARIO3()   Sets the current record's "DATOS_FUNCIONARIO_3" value
 * @method NECESIDAD         setDATOSFUNCIONARIO4()   Sets the current record's "DATOS_FUNCIONARIO_4" value
 * @method NECESIDAD         setDATOSFUNCIONARIO5()   Sets the current record's "DATOS_FUNCIONARIO_5" value
 * 
 * @package    nomina
 * @subpackage model
 * @author     Your name here
 * @version    SVN: $Id: Builder.php 7691 2011-02-04 15:43:29Z jwage $
 */
abstract class BaseNECESIDAD extends sfDoctrineRecord
{
    public function setTableDefinition()
    {
        $this->setTableName('NECESIDAD');
        $this->hasColumn('id_necesidad', 'integer', 10, array(
             'type' => 'integer',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => true,
             'length' => 10,
             ));
        $this->hasColumn('vigencia', 'string', 100, array(
             'notnull' => false,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 100,
             ));
        $this->hasColumn('id_fuente_necesidad', 'integer', 10, array(
             'notnull' => true,
             'type' => 'integer',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 10,
             ));
        $this->hasColumn('id_area', 'integer', 20, array(
             'notnull' => true,
             'type' => 'integer',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
        $this->hasColumn('problema', 'string', 1000, array(
             'notnull' => true,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 1000,
             ));
        $this->hasColumn('necesidad', 'string', 1000, array(
             'notnull' => false,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 1000,
             ));
        $this->hasColumn('pregunta', 'string', 1000, array(
             'notnull' => false,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 1000,
             ));
        $this->hasColumn('objetivos', 'string', 1000, array(
             'notnull' => false,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 1000,
             ));
        $this->hasColumn('prioridad', 'integer', 10, array(
             'notnull' => true,
             'type' => 'integer',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 10,
             ));
        $this->hasColumn('min_personas', 'integer', 10, array(
             'notnull' => false,
             'type' => 'integer',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 10,
             ));
        $this->hasColumn('max_personas', 'integer', 10, array(
             'notnull' => false,
             'type' => 'integer',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 10,
             ));
        $this->hasColumn('costo', 'string', 20, array(
             'notnull' => true,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
        $this->hasColumn('intensidad_horaria', 'integer', 10, array(
             'notnull' => true,
             'type' => 'integer',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 10,
             ));
        $this->hasColumn('fecha_programacion', 'timestamp', 7, array(
             'notnull' => true,
             'type' => 'timestamp',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 7,
             ));
        $this->hasColumn('todos_funcionarios', 'string', 1, array(
             'notnull' => false,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 1,
             ));
        $this->hasColumn('id_doc_responsable', 'integer', 20, array(
             'notnull' => false,
             'type' => 'integer',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
        $this->hasColumn('num_doc_responsable', 'string', 20, array(
             'notnull' => false,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
        $this->hasColumn('id_cia', 'integer', 20, array(
             'notnull' => false,
             'type' => 'integer',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
        $this->hasColumn('id_cen_op', 'integer', 20, array(
             'notnull' => false,
             'type' => 'integer',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
    }

    public function setUp()
    {
        parent::setUp();
        $this->hasOne('AREA', array(
             'local' => 'id_area',
             'foreign' => 'id_area'));

        $this->hasOne('FUENTE_NECESIDAD', array(
             'local' => 'id_fuente_necesidad',
             'foreign' => 'id_fue_nec'));

        $this->hasOne('DATOS_FUNCIONARIO', array(
             'local' => 'id_doc_responsable',
             'foreign' => 'id_tipo_doc'));

        $this->hasOne('DATOS_FUNCIONARIO as DATOS_FUNCIONARIO_3', array(
             'local' => 'num_doc_responsable',
             'foreign' => 'id_tipo_doc'));

        $this->hasOne('DATOS_FUNCIONARIO as DATOS_FUNCIONARIO_4', array(
             'local' => 'id_doc_responsable',
             'foreign' => 'num_doc'));

        $this->hasOne('DATOS_FUNCIONARIO as DATOS_FUNCIONARIO_5', array(
             'local' => 'num_doc_responsable',
             'foreign' => 'num_doc'));
    }
}