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

/**
 * BaseCM_OBLIGACION_IVA
 * 
 * This class has been auto-generated by the Doctrine ORM Framework
 * 
 * @property integer $id_obliga_iva
 * @property integer $id_obligacion
 * @property integer $secuencia
 * @property string $tipo_iva
 * @property decimal $base_iva
 * @property decimal $porcentaje_iva
 * @property decimal $valor_iva
 * @property decimal $total_iva
 * @property timestamp $fecha_proceso
 * @property integer $id_vigencia
 * @property string $vigencia
 * @property integer $id_caja_menor
 * @property CM_OBLIGACION $CM_OBLIGACION
 * @property CM_OBLIGACION $CM_OBLIGACION_2
 * @property CM_OBLIGACION $CM_OBLIGACION_3
 * @property CM_OBLIGACION $CM_OBLIGACION_4
 * @property CM_OBLIGACION $CM_OBLIGACION_5
 * @property CM_OBLIGACION $CM_OBLIGACION_6
 * @property CM_OBLIGACION $CM_OBLIGACION_7
 * @property CM_OBLIGACION $CM_OBLIGACION_8
 * @property CM_OBLIGACION $CM_OBLIGACION_9
 * @property CM_OBLIGACION $CM_OBLIGACION_10
 * @property CM_OBLIGACION $CM_OBLIGACION_11
 * @property CM_OBLIGACION $CM_OBLIGACION_12
 * @property CM_OBLIGACION $CM_OBLIGACION_13
 * @property CM_OBLIGACION $CM_OBLIGACION_14
 * @property CM_OBLIGACION $CM_OBLIGACION_15
 * @property CM_OBLIGACION $CM_OBLIGACION_16
 * @property CM_OBLIGACION $CM_OBLIGACION_17
 * @property CM_OBLIGACION $CM_OBLIGACION_18
 * @property CM_OBLIGACION $CM_OBLIGACION_19
 * @property CM_OBLIGACION $CM_OBLIGACION_20
 * @property CM_OBLIGACION $CM_OBLIGACION_21
 * @property CM_OBLIGACION $CM_OBLIGACION_22
 * @property CM_OBLIGACION $CM_OBLIGACION_23
 * @property CM_OBLIGACION $CM_OBLIGACION_24
 * @property CM_OBLIGACION $CM_OBLIGACION_25
 * 
 * @method integer           getIdObligaIva()      Returns the current record's "id_obliga_iva" value
 * @method integer           getIdObligacion()     Returns the current record's "id_obligacion" value
 * @method integer           getSecuencia()        Returns the current record's "secuencia" value
 * @method string            getTipoIva()          Returns the current record's "tipo_iva" value
 * @method decimal           getBaseIva()          Returns the current record's "base_iva" value
 * @method decimal           getPorcentajeIva()    Returns the current record's "porcentaje_iva" value
 * @method decimal           getValorIva()         Returns the current record's "valor_iva" value
 * @method decimal           getTotalIva()         Returns the current record's "total_iva" value
 * @method timestamp         getFechaProceso()     Returns the current record's "fecha_proceso" value
 * @method integer           getIdVigencia()       Returns the current record's "id_vigencia" value
 * @method string            getVigencia()         Returns the current record's "vigencia" value
 * @method integer           getIdCajaMenor()      Returns the current record's "id_caja_menor" value
 * @method CM_OBLIGACION     getCMOBLIGACION()     Returns the current record's "CM_OBLIGACION" value
 * @method CM_OBLIGACION     getCMOBLIGACION2()    Returns the current record's "CM_OBLIGACION_2" value
 * @method CM_OBLIGACION     getCMOBLIGACION3()    Returns the current record's "CM_OBLIGACION_3" value
 * @method CM_OBLIGACION     getCMOBLIGACION4()    Returns the current record's "CM_OBLIGACION_4" value
 * @method CM_OBLIGACION     getCMOBLIGACION5()    Returns the current record's "CM_OBLIGACION_5" value
 * @method CM_OBLIGACION     getCMOBLIGACION6()    Returns the current record's "CM_OBLIGACION_6" value
 * @method CM_OBLIGACION     getCMOBLIGACION7()    Returns the current record's "CM_OBLIGACION_7" value
 * @method CM_OBLIGACION     getCMOBLIGACION8()    Returns the current record's "CM_OBLIGACION_8" value
 * @method CM_OBLIGACION     getCMOBLIGACION9()    Returns the current record's "CM_OBLIGACION_9" value
 * @method CM_OBLIGACION     getCMOBLIGACION10()   Returns the current record's "CM_OBLIGACION_10" value
 * @method CM_OBLIGACION     getCMOBLIGACION11()   Returns the current record's "CM_OBLIGACION_11" value
 * @method CM_OBLIGACION     getCMOBLIGACION12()   Returns the current record's "CM_OBLIGACION_12" value
 * @method CM_OBLIGACION     getCMOBLIGACION13()   Returns the current record's "CM_OBLIGACION_13" value
 * @method CM_OBLIGACION     getCMOBLIGACION14()   Returns the current record's "CM_OBLIGACION_14" value
 * @method CM_OBLIGACION     getCMOBLIGACION15()   Returns the current record's "CM_OBLIGACION_15" value
 * @method CM_OBLIGACION     getCMOBLIGACION16()   Returns the current record's "CM_OBLIGACION_16" value
 * @method CM_OBLIGACION     getCMOBLIGACION17()   Returns the current record's "CM_OBLIGACION_17" value
 * @method CM_OBLIGACION     getCMOBLIGACION18()   Returns the current record's "CM_OBLIGACION_18" value
 * @method CM_OBLIGACION     getCMOBLIGACION19()   Returns the current record's "CM_OBLIGACION_19" value
 * @method CM_OBLIGACION     getCMOBLIGACION20()   Returns the current record's "CM_OBLIGACION_20" value
 * @method CM_OBLIGACION     getCMOBLIGACION21()   Returns the current record's "CM_OBLIGACION_21" value
 * @method CM_OBLIGACION     getCMOBLIGACION22()   Returns the current record's "CM_OBLIGACION_22" value
 * @method CM_OBLIGACION     getCMOBLIGACION23()   Returns the current record's "CM_OBLIGACION_23" value
 * @method CM_OBLIGACION     getCMOBLIGACION24()   Returns the current record's "CM_OBLIGACION_24" value
 * @method CM_OBLIGACION     getCMOBLIGACION25()   Returns the current record's "CM_OBLIGACION_25" value
 * @method CM_OBLIGACION_IVA setIdObligaIva()      Sets the current record's "id_obliga_iva" value
 * @method CM_OBLIGACION_IVA setIdObligacion()     Sets the current record's "id_obligacion" value
 * @method CM_OBLIGACION_IVA setSecuencia()        Sets the current record's "secuencia" value
 * @method CM_OBLIGACION_IVA setTipoIva()          Sets the current record's "tipo_iva" value
 * @method CM_OBLIGACION_IVA setBaseIva()          Sets the current record's "base_iva" value
 * @method CM_OBLIGACION_IVA setPorcentajeIva()    Sets the current record's "porcentaje_iva" value
 * @method CM_OBLIGACION_IVA setValorIva()         Sets the current record's "valor_iva" value
 * @method CM_OBLIGACION_IVA setTotalIva()         Sets the current record's "total_iva" value
 * @method CM_OBLIGACION_IVA setFechaProceso()     Sets the current record's "fecha_proceso" value
 * @method CM_OBLIGACION_IVA setIdVigencia()       Sets the current record's "id_vigencia" value
 * @method CM_OBLIGACION_IVA setVigencia()         Sets the current record's "vigencia" value
 * @method CM_OBLIGACION_IVA setIdCajaMenor()      Sets the current record's "id_caja_menor" value
 * @method CM_OBLIGACION_IVA setCMOBLIGACION()     Sets the current record's "CM_OBLIGACION" value
 * @method CM_OBLIGACION_IVA setCMOBLIGACION2()    Sets the current record's "CM_OBLIGACION_2" value
 * @method CM_OBLIGACION_IVA setCMOBLIGACION3()    Sets the current record's "CM_OBLIGACION_3" value
 * @method CM_OBLIGACION_IVA setCMOBLIGACION4()    Sets the current record's "CM_OBLIGACION_4" value
 * @method CM_OBLIGACION_IVA setCMOBLIGACION5()    Sets the current record's "CM_OBLIGACION_5" value
 * @method CM_OBLIGACION_IVA setCMOBLIGACION6()    Sets the current record's "CM_OBLIGACION_6" value
 * @method CM_OBLIGACION_IVA setCMOBLIGACION7()    Sets the current record's "CM_OBLIGACION_7" value
 * @method CM_OBLIGACION_IVA setCMOBLIGACION8()    Sets the current record's "CM_OBLIGACION_8" value
 * @method CM_OBLIGACION_IVA setCMOBLIGACION9()    Sets the current record's "CM_OBLIGACION_9" value
 * @method CM_OBLIGACION_IVA setCMOBLIGACION10()   Sets the current record's "CM_OBLIGACION_10" value
 * @method CM_OBLIGACION_IVA setCMOBLIGACION11()   Sets the current record's "CM_OBLIGACION_11" value
 * @method CM_OBLIGACION_IVA setCMOBLIGACION12()   Sets the current record's "CM_OBLIGACION_12" value
 * @method CM_OBLIGACION_IVA setCMOBLIGACION13()   Sets the current record's "CM_OBLIGACION_13" value
 * @method CM_OBLIGACION_IVA setCMOBLIGACION14()   Sets the current record's "CM_OBLIGACION_14" value
 * @method CM_OBLIGACION_IVA setCMOBLIGACION15()   Sets the current record's "CM_OBLIGACION_15" value
 * @method CM_OBLIGACION_IVA setCMOBLIGACION16()   Sets the current record's "CM_OBLIGACION_16" value
 * @method CM_OBLIGACION_IVA setCMOBLIGACION17()   Sets the current record's "CM_OBLIGACION_17" value
 * @method CM_OBLIGACION_IVA setCMOBLIGACION18()   Sets the current record's "CM_OBLIGACION_18" value
 * @method CM_OBLIGACION_IVA setCMOBLIGACION19()   Sets the current record's "CM_OBLIGACION_19" value
 * @method CM_OBLIGACION_IVA setCMOBLIGACION20()   Sets the current record's "CM_OBLIGACION_20" value
 * @method CM_OBLIGACION_IVA setCMOBLIGACION21()   Sets the current record's "CM_OBLIGACION_21" value
 * @method CM_OBLIGACION_IVA setCMOBLIGACION22()   Sets the current record's "CM_OBLIGACION_22" value
 * @method CM_OBLIGACION_IVA setCMOBLIGACION23()   Sets the current record's "CM_OBLIGACION_23" value
 * @method CM_OBLIGACION_IVA setCMOBLIGACION24()   Sets the current record's "CM_OBLIGACION_24" value
 * @method CM_OBLIGACION_IVA setCMOBLIGACION25()   Sets the current record's "CM_OBLIGACION_25" value
 * 
 * @package    nomina
 * @subpackage model
 * @author     Your name here
 * @version    SVN: $Id: Builder.php 7691 2011-02-04 15:43:29Z jwage $
 */
abstract class BaseCM_OBLIGACION_IVA extends sfDoctrineRecord
{
    public function setTableDefinition()
    {
        $this->setTableName('CM_OBLIGACION_IVA');
        $this->hasColumn('id_obliga_iva', 'integer', 20, array(
             'type' => 'integer',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => true,
             'length' => 20,
             ));
        $this->hasColumn('id_obligacion', 'integer', 20, array(
             'notnull' => true,
             'type' => 'integer',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
        $this->hasColumn('secuencia', 'integer', 20, array(
             'notnull' => true,
             'type' => 'integer',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
        $this->hasColumn('tipo_iva', 'string', 20, array(
             'notnull' => true,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
        $this->hasColumn('base_iva', 'decimal', 20, array(
             'notnull' => true,
             'type' => 'decimal',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
        $this->hasColumn('porcentaje_iva', 'decimal', 20, array(
             'notnull' => true,
             'type' => 'decimal',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
        $this->hasColumn('valor_iva', 'decimal', 20, array(
             'notnull' => true,
             'type' => 'decimal',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
        $this->hasColumn('total_iva', 'decimal', 20, array(
             'notnull' => true,
             'type' => 'decimal',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
        $this->hasColumn('fecha_proceso', 'timestamp', 7, array(
             'notnull' => true,
             'type' => 'timestamp',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 7,
             ));
        $this->hasColumn('id_vigencia', 'integer', 20, array(
             'notnull' => false,
             'type' => 'integer',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
        $this->hasColumn('vigencia', 'string', 4, array(
             'notnull' => true,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 4,
             ));
        $this->hasColumn('id_caja_menor', 'integer', 20, array(
             'notnull' => true,
             'type' => 'integer',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
    }

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

        $this->hasOne('CM_OBLIGACION as CM_OBLIGACION_2', array(
             'local' => 'secuencia',
             'foreign' => 'id_obligacion'));

        $this->hasOne('CM_OBLIGACION as CM_OBLIGACION_3', array(
             'local' => 'id_vigencia',
             'foreign' => 'id_obligacion'));

        $this->hasOne('CM_OBLIGACION as CM_OBLIGACION_4', array(
             'local' => 'vigencia',
             'foreign' => 'id_obligacion'));

        $this->hasOne('CM_OBLIGACION as CM_OBLIGACION_5', array(
             'local' => 'id_caja_menor',
             'foreign' => 'id_obligacion'));

        $this->hasOne('CM_OBLIGACION as CM_OBLIGACION_6', array(
             'local' => 'id_obligacion',
             'foreign' => 'secuencia'));

        $this->hasOne('CM_OBLIGACION as CM_OBLIGACION_7', array(
             'local' => 'secuencia',
             'foreign' => 'secuencia'));

        $this->hasOne('CM_OBLIGACION as CM_OBLIGACION_8', array(
             'local' => 'id_vigencia',
             'foreign' => 'secuencia'));

        $this->hasOne('CM_OBLIGACION as CM_OBLIGACION_9', array(
             'local' => 'vigencia',
             'foreign' => 'secuencia'));

        $this->hasOne('CM_OBLIGACION as CM_OBLIGACION_10', array(
             'local' => 'id_caja_menor',
             'foreign' => 'secuencia'));

        $this->hasOne('CM_OBLIGACION as CM_OBLIGACION_11', array(
             'local' => 'id_obligacion',
             'foreign' => 'id_vigencia'));

        $this->hasOne('CM_OBLIGACION as CM_OBLIGACION_12', array(
             'local' => 'secuencia',
             'foreign' => 'id_vigencia'));

        $this->hasOne('CM_OBLIGACION as CM_OBLIGACION_13', array(
             'local' => 'id_vigencia',
             'foreign' => 'id_vigencia'));

        $this->hasOne('CM_OBLIGACION as CM_OBLIGACION_14', array(
             'local' => 'vigencia',
             'foreign' => 'id_vigencia'));

        $this->hasOne('CM_OBLIGACION as CM_OBLIGACION_15', array(
             'local' => 'id_caja_menor',
             'foreign' => 'id_vigencia'));

        $this->hasOne('CM_OBLIGACION as CM_OBLIGACION_16', array(
             'local' => 'id_obligacion',
             'foreign' => 'vigencia'));

        $this->hasOne('CM_OBLIGACION as CM_OBLIGACION_17', array(
             'local' => 'secuencia',
             'foreign' => 'vigencia'));

        $this->hasOne('CM_OBLIGACION as CM_OBLIGACION_18', array(
             'local' => 'id_vigencia',
             'foreign' => 'vigencia'));

        $this->hasOne('CM_OBLIGACION as CM_OBLIGACION_19', array(
             'local' => 'vigencia',
             'foreign' => 'vigencia'));

        $this->hasOne('CM_OBLIGACION as CM_OBLIGACION_20', array(
             'local' => 'id_caja_menor',
             'foreign' => 'vigencia'));

        $this->hasOne('CM_OBLIGACION as CM_OBLIGACION_21', array(
             'local' => 'id_obligacion',
             'foreign' => 'id_caja_menor'));

        $this->hasOne('CM_OBLIGACION as CM_OBLIGACION_22', array(
             'local' => 'secuencia',
             'foreign' => 'id_caja_menor'));

        $this->hasOne('CM_OBLIGACION as CM_OBLIGACION_23', array(
             'local' => 'id_vigencia',
             'foreign' => 'id_caja_menor'));

        $this->hasOne('CM_OBLIGACION as CM_OBLIGACION_24', array(
             'local' => 'vigencia',
             'foreign' => 'id_caja_menor'));

        $this->hasOne('CM_OBLIGACION as CM_OBLIGACION_25', array(
             'local' => 'id_caja_menor',
             'foreign' => 'id_caja_menor'));
    }
}