<?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 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 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 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    cobro_coactivo
 * @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('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'));
    }
}