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

/**
 * BaseFORMACION_SUPERIOR
 * 
 * This class has been auto-generated by the Doctrine ORM Framework
 * 
 * @property integer $id_tipo_doc
 * @property string $num_doc
 * @property integer $id_tipo_estudio
 * @property integer $semetres_aprobados
 * @property string $descripcion
 * @property string $establecimiento
 * @property string $graduado
 * @property timestamp $fecha_inicio
 * @property timestamp $fecha_fin
 * @property string $num_tarjeta
 * @property clob $observaciones
 * @property integer $id_for_sup
 * @property string $certificado
 * @property integer $horas
 * @property integer $id_pais
 * @property integer $id_depto
 * @property integer $id_municipio
 * @property string $adjunto_tarjeta
 * @property DATOS_FUNCIONARIO $DATOS_FUNCIONARIO
 * @property DATOS_FUNCIONARIO $DATOS_FUNCIONARIO_2
 * @property DATOS_FUNCIONARIO $DATOS_FUNCIONARIO_3
 * @property DATOS_FUNCIONARIO $DATOS_FUNCIONARIO_4
 * @property DEPARTAMENTO $DEPARTAMENTO
 * @property PAIS $PAIS
 * @property TIPO_DOCUMENTO $TIPO_DOCUMENTO
 * @property TIPO_ESTUDIO $TIPO_ESTUDIO
 * 
 * @method integer            getIdTipoDoc()           Returns the current record's "id_tipo_doc" value
 * @method string             getNumDoc()              Returns the current record's "num_doc" value
 * @method integer            getIdTipoEstudio()       Returns the current record's "id_tipo_estudio" value
 * @method integer            getSemetresAprobados()   Returns the current record's "semetres_aprobados" value
 * @method string             getDescripcion()         Returns the current record's "descripcion" value
 * @method string             getEstablecimiento()     Returns the current record's "establecimiento" value
 * @method string             getGraduado()            Returns the current record's "graduado" value
 * @method timestamp          getFechaInicio()         Returns the current record's "fecha_inicio" value
 * @method timestamp          getFechaFin()            Returns the current record's "fecha_fin" value
 * @method string             getNumTarjeta()          Returns the current record's "num_tarjeta" value
 * @method clob               getObservaciones()       Returns the current record's "observaciones" value
 * @method integer            getIdForSup()            Returns the current record's "id_for_sup" value
 * @method string             getCertificado()         Returns the current record's "certificado" value
 * @method integer            getHoras()               Returns the current record's "horas" value
 * @method integer            getIdPais()              Returns the current record's "id_pais" value
 * @method integer            getIdDepto()             Returns the current record's "id_depto" value
 * @method integer            getIdMunicipio()         Returns the current record's "id_municipio" value
 * @method string             getAdjuntoTarjeta()      Returns the current record's "adjunto_tarjeta" value
 * @method DATOS_FUNCIONARIO  getDATOSFUNCIONARIO()    Returns the current record's "DATOS_FUNCIONARIO" value
 * @method DATOS_FUNCIONARIO  getDATOSFUNCIONARIO2()   Returns the current record's "DATOS_FUNCIONARIO_2" 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 DEPARTAMENTO       getDEPARTAMENTO()        Returns the current record's "DEPARTAMENTO" value
 * @method PAIS               getPAIS()                Returns the current record's "PAIS" value
 * @method TIPO_DOCUMENTO     getTIPODOCUMENTO()       Returns the current record's "TIPO_DOCUMENTO" value
 * @method TIPO_ESTUDIO       getTIPOESTUDIO()         Returns the current record's "TIPO_ESTUDIO" value
 * @method FORMACION_SUPERIOR setIdTipoDoc()           Sets the current record's "id_tipo_doc" value
 * @method FORMACION_SUPERIOR setNumDoc()              Sets the current record's "num_doc" value
 * @method FORMACION_SUPERIOR setIdTipoEstudio()       Sets the current record's "id_tipo_estudio" value
 * @method FORMACION_SUPERIOR setSemetresAprobados()   Sets the current record's "semetres_aprobados" value
 * @method FORMACION_SUPERIOR setDescripcion()         Sets the current record's "descripcion" value
 * @method FORMACION_SUPERIOR setEstablecimiento()     Sets the current record's "establecimiento" value
 * @method FORMACION_SUPERIOR setGraduado()            Sets the current record's "graduado" value
 * @method FORMACION_SUPERIOR setFechaInicio()         Sets the current record's "fecha_inicio" value
 * @method FORMACION_SUPERIOR setFechaFin()            Sets the current record's "fecha_fin" value
 * @method FORMACION_SUPERIOR setNumTarjeta()          Sets the current record's "num_tarjeta" value
 * @method FORMACION_SUPERIOR setObservaciones()       Sets the current record's "observaciones" value
 * @method FORMACION_SUPERIOR setIdForSup()            Sets the current record's "id_for_sup" value
 * @method FORMACION_SUPERIOR setCertificado()         Sets the current record's "certificado" value
 * @method FORMACION_SUPERIOR setHoras()               Sets the current record's "horas" value
 * @method FORMACION_SUPERIOR setIdPais()              Sets the current record's "id_pais" value
 * @method FORMACION_SUPERIOR setIdDepto()             Sets the current record's "id_depto" value
 * @method FORMACION_SUPERIOR setIdMunicipio()         Sets the current record's "id_municipio" value
 * @method FORMACION_SUPERIOR setAdjuntoTarjeta()      Sets the current record's "adjunto_tarjeta" value
 * @method FORMACION_SUPERIOR setDATOSFUNCIONARIO()    Sets the current record's "DATOS_FUNCIONARIO" value
 * @method FORMACION_SUPERIOR setDATOSFUNCIONARIO2()   Sets the current record's "DATOS_FUNCIONARIO_2" value
 * @method FORMACION_SUPERIOR setDATOSFUNCIONARIO3()   Sets the current record's "DATOS_FUNCIONARIO_3" value
 * @method FORMACION_SUPERIOR setDATOSFUNCIONARIO4()   Sets the current record's "DATOS_FUNCIONARIO_4" value
 * @method FORMACION_SUPERIOR setDEPARTAMENTO()        Sets the current record's "DEPARTAMENTO" value
 * @method FORMACION_SUPERIOR setPAIS()                Sets the current record's "PAIS" value
 * @method FORMACION_SUPERIOR setTIPODOCUMENTO()       Sets the current record's "TIPO_DOCUMENTO" value
 * @method FORMACION_SUPERIOR setTIPOESTUDIO()         Sets the current record's "TIPO_ESTUDIO" value
 * 
 * @package    contratacion
 * @subpackage model
 * @author     Your name here
 * @version    SVN: $Id: Builder.php 7691 2011-02-04 15:43:29Z jwage $
 */
abstract class BaseFORMACION_SUPERIOR extends sfDoctrineRecord
{
    public function setTableDefinition()
    {
        $this->setTableName('FORMACION_SUPERIOR');
        $this->hasColumn('id_tipo_doc', 'integer', 20, array(
             'notnull' => true,
             'type' => 'integer',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
        $this->hasColumn('num_doc', 'string', 20, array(
             'notnull' => false,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
        $this->hasColumn('id_tipo_estudio', 'integer', 20, array(
             'notnull' => true,
             'type' => 'integer',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
        $this->hasColumn('semetres_aprobados', 'integer', 20, array(
             'notnull' => true,
             'type' => 'integer',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
        $this->hasColumn('descripcion', 'string', 100, array(
             'notnull' => false,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 100,
             ));
        $this->hasColumn('establecimiento', 'string', 600, array(
             'notnull' => false,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 600,
             ));
        $this->hasColumn('graduado', 'string', 1, array(
             'notnull' => false,
             'type' => 'string',
             'fixed' => 1,
             'unsigned' => false,
             'primary' => false,
             'length' => 1,
             ));
        $this->hasColumn('fecha_inicio', 'timestamp', 7, array(
             'notnull' => false,
             'type' => 'timestamp',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 7,
             ));
        $this->hasColumn('fecha_fin', 'timestamp', 7, array(
             'notnull' => false,
             'type' => 'timestamp',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 7,
             ));
        $this->hasColumn('num_tarjeta', 'string', 20, array(
             'notnull' => false,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
        $this->hasColumn('observaciones', 'clob', 4000, array(
             'notnull' => false,
             'type' => 'clob',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 4000,
             ));
        $this->hasColumn('id_for_sup', 'integer', 20, array(
             'type' => 'integer',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => true,
             'length' => 20,
             ));
        $this->hasColumn('certificado', 'string', 2000, array(
             'notnull' => false,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 2000,
             ));
        $this->hasColumn('horas', 'integer', 20, array(
             'notnull' => false,
             'type' => 'integer',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
        $this->hasColumn('id_pais', 'integer', 20, array(
             'notnull' => false,
             'type' => 'integer',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
        $this->hasColumn('id_depto', 'integer', 20, array(
             'notnull' => false,
             'type' => 'integer',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
        $this->hasColumn('id_municipio', 'integer', 8, array(
             'notnull' => false,
             'type' => 'integer',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 8,
             ));
        $this->hasColumn('adjunto_tarjeta', 'string', 500, array(
             'notnull' => false,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 500,
             ));
    }

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

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

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

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

        $this->hasOne('DEPARTAMENTO', array(
             'local' => 'id_depto',
             'foreign' => 'id_depto'));

        $this->hasOne('PAIS', array(
             'local' => 'id_pais',
             'foreign' => 'id_pais'));

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

        $this->hasOne('TIPO_ESTUDIO', array(
             'local' => 'id_tipo_estudio',
             'foreign' => 'id_tipo_estudio'));
    }
}