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

/**
 * BaseEXPERIENCIA_LABORAL
 * 
 * This class has been auto-generated by the Doctrine ORM Framework
 * 
 * @property integer $id_tipo_doc
 * @property string $num_doc
 * @property integer $id_tipo_experiencia
 * @property string $entidad
 * @property string $publica
 * @property string $cargo
 * @property string $dependencia
 * @property timestamp $fecha_inicio
 * @property timestamp $fecha_fin
 * @property string $telefono
 * @property string $email
 * @property string $direccion
 * @property integer $id_pais
 * @property integer $id_depto
 * @property string $municipio
 * @property integer $id
 * @property string $certificado
 * @property string $labores
 * @property string $motivo_cambio
 * @property string $observaciones
 * @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_EXPERIENCIA $TIPO_EXPERIENCIA
 * 
 * @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             getIdTipoExperiencia()   Returns the current record's "id_tipo_experiencia" value
 * @method string              getEntidad()             Returns the current record's "entidad" value
 * @method string              getPublica()             Returns the current record's "publica" value
 * @method string              getCargo()               Returns the current record's "cargo" value
 * @method string              getDependencia()         Returns the current record's "dependencia" 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              getTelefono()            Returns the current record's "telefono" value
 * @method string              getEmail()               Returns the current record's "email" value
 * @method string              getDireccion()           Returns the current record's "direccion" value
 * @method integer             getIdPais()              Returns the current record's "id_pais" value
 * @method integer             getIdDepto()             Returns the current record's "id_depto" value
 * @method string              getMunicipio()           Returns the current record's "municipio" value
 * @method integer             getId()                  Returns the current record's "id" value
 * @method string              getCertificado()         Returns the current record's "certificado" value
 * @method string              getLabores()             Returns the current record's "labores" value
 * @method string              getMotivoCambio()        Returns the current record's "motivo_cambio" value
 * @method string              getObservaciones()       Returns the current record's "observaciones" 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_EXPERIENCIA    getTIPOEXPERIENCIA()     Returns the current record's "TIPO_EXPERIENCIA" value
 * @method EXPERIENCIA_LABORAL setIdTipoDoc()           Sets the current record's "id_tipo_doc" value
 * @method EXPERIENCIA_LABORAL setNumDoc()              Sets the current record's "num_doc" value
 * @method EXPERIENCIA_LABORAL setIdTipoExperiencia()   Sets the current record's "id_tipo_experiencia" value
 * @method EXPERIENCIA_LABORAL setEntidad()             Sets the current record's "entidad" value
 * @method EXPERIENCIA_LABORAL setPublica()             Sets the current record's "publica" value
 * @method EXPERIENCIA_LABORAL setCargo()               Sets the current record's "cargo" value
 * @method EXPERIENCIA_LABORAL setDependencia()         Sets the current record's "dependencia" value
 * @method EXPERIENCIA_LABORAL setFechaInicio()         Sets the current record's "fecha_inicio" value
 * @method EXPERIENCIA_LABORAL setFechaFin()            Sets the current record's "fecha_fin" value
 * @method EXPERIENCIA_LABORAL setTelefono()            Sets the current record's "telefono" value
 * @method EXPERIENCIA_LABORAL setEmail()               Sets the current record's "email" value
 * @method EXPERIENCIA_LABORAL setDireccion()           Sets the current record's "direccion" value
 * @method EXPERIENCIA_LABORAL setIdPais()              Sets the current record's "id_pais" value
 * @method EXPERIENCIA_LABORAL setIdDepto()             Sets the current record's "id_depto" value
 * @method EXPERIENCIA_LABORAL setMunicipio()           Sets the current record's "municipio" value
 * @method EXPERIENCIA_LABORAL setId()                  Sets the current record's "id" value
 * @method EXPERIENCIA_LABORAL setCertificado()         Sets the current record's "certificado" value
 * @method EXPERIENCIA_LABORAL setLabores()             Sets the current record's "labores" value
 * @method EXPERIENCIA_LABORAL setMotivoCambio()        Sets the current record's "motivo_cambio" value
 * @method EXPERIENCIA_LABORAL setObservaciones()       Sets the current record's "observaciones" value
 * @method EXPERIENCIA_LABORAL setDATOSFUNCIONARIO()    Sets the current record's "DATOS_FUNCIONARIO" value
 * @method EXPERIENCIA_LABORAL setDATOSFUNCIONARIO2()   Sets the current record's "DATOS_FUNCIONARIO_2" value
 * @method EXPERIENCIA_LABORAL setDATOSFUNCIONARIO3()   Sets the current record's "DATOS_FUNCIONARIO_3" value
 * @method EXPERIENCIA_LABORAL setDATOSFUNCIONARIO4()   Sets the current record's "DATOS_FUNCIONARIO_4" value
 * @method EXPERIENCIA_LABORAL setDEPARTAMENTO()        Sets the current record's "DEPARTAMENTO" value
 * @method EXPERIENCIA_LABORAL setPAIS()                Sets the current record's "PAIS" value
 * @method EXPERIENCIA_LABORAL setTIPODOCUMENTO()       Sets the current record's "TIPO_DOCUMENTO" value
 * @method EXPERIENCIA_LABORAL setTIPOEXPERIENCIA()     Sets the current record's "TIPO_EXPERIENCIA" value
 * 
 * @package    cartera
 * @subpackage model
 * @author     Your name here
 * @version    SVN: $Id: Builder.php 7691 2011-02-04 15:43:29Z jwage $
 */
abstract class BaseEXPERIENCIA_LABORAL extends sfDoctrineRecord
{
    public function setTableDefinition()
    {
        $this->setTableName('EXPERIENCIA_LABORAL');
        $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_experiencia', 'integer', 20, array(
             'notnull' => true,
             'type' => 'integer',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
        $this->hasColumn('entidad', 'string', 60, array(
             'notnull' => false,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 60,
             ));
        $this->hasColumn('publica', 'string', 1, array(
             'notnull' => false,
             'type' => 'string',
             'fixed' => 1,
             'unsigned' => false,
             'primary' => false,
             'length' => 1,
             ));
        $this->hasColumn('cargo', 'string', 60, array(
             'notnull' => false,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 60,
             ));
        $this->hasColumn('dependencia', 'string', 60, array(
             'notnull' => false,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 60,
             ));
        $this->hasColumn('fecha_inicio', 'timestamp', 7, array(
             'notnull' => true,
             'type' => 'timestamp',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 7,
             ));
        $this->hasColumn('fecha_fin', 'timestamp', 7, array(
             'notnull' => true,
             'type' => 'timestamp',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 7,
             ));
        $this->hasColumn('telefono', 'string', 20, array(
             'notnull' => false,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
        $this->hasColumn('email', 'string', 60, array(
             'notnull' => false,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 60,
             ));
        $this->hasColumn('direccion', 'string', 60, array(
             'notnull' => false,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 60,
             ));
        $this->hasColumn('id_pais', 'integer', 20, array(
             'notnull' => true,
             '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('municipio', 'string', 30, array(
             'notnull' => false,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 30,
             ));
        $this->hasColumn('id', '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('labores', 'string', 2000, array(
             'notnull' => false,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 2000,
             ));
        $this->hasColumn('motivo_cambio', 'string', 2000, array(
             'notnull' => false,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 2000,
             ));
        $this->hasColumn('observaciones', 'string', 2000, array(
             'notnull' => false,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 2000,
             ));
    }

    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' => 'num_doc',
             'foreign' => 'id_tipo_doc'));

        $this->hasOne('DATOS_FUNCIONARIO as DATOS_FUNCIONARIO_3', array(
             'local' => 'id_tipo_doc',
             'foreign' => 'num_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_EXPERIENCIA', array(
             'local' => 'id_tipo_experiencia',
             'foreign' => 'id_tipo_experiencia'));
    }
}