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

/**
 * BaseOBJETOS_GASTO
 * 
 * This class has been auto-generated by the Doctrine ORM Framework
 * 
 * @property integer $id
 * @property string $ano_fiscal
 * @property string $codigo
 * @property string $descripcion
 * @property string $abreviatura
 * @property integer $comision
 * @property string $estado
 * @property string $tipo
 * @property Doctrine_Collection $PR_PO_SALDOS
 * @property Doctrine_Collection $PR_ELEMENTOS_GASTO
 * @property Doctrine_Collection $PR_DETA_REIN
 * @property Doctrine_Collection $PR_CPO_ASIGN
 * @property Doctrine_Collection $PR_CG_MF
 * @property Doctrine_Collection $PR_ASIGNA_OBJ_GASTO
 * 
 * @method integer             getId()                  Returns the current record's "id" value
 * @method string              getAnoFiscal()           Returns the current record's "ano_fiscal" value
 * @method string              getCodigo()              Returns the current record's "codigo" value
 * @method string              getDescripcion()         Returns the current record's "descripcion" value
 * @method string              getAbreviatura()         Returns the current record's "abreviatura" value
 * @method integer             getComision()            Returns the current record's "comision" value
 * @method string              getEstado()              Returns the current record's "estado" value
 * @method string              getTipo()                Returns the current record's "tipo" value
 * @method Doctrine_Collection getPRPOSALDOS()          Returns the current record's "PR_PO_SALDOS" collection
 * @method Doctrine_Collection getPRELEMENTOSGASTO()    Returns the current record's "PR_ELEMENTOS_GASTO" collection
 * @method Doctrine_Collection getPRDETAREIN()          Returns the current record's "PR_DETA_REIN" collection
 * @method Doctrine_Collection getPRCPOASIGN()          Returns the current record's "PR_CPO_ASIGN" collection
 * @method Doctrine_Collection getPRCGMF()              Returns the current record's "PR_CG_MF" collection
 * @method Doctrine_Collection getPRASIGNAOBJGASTO()    Returns the current record's "PR_ASIGNA_OBJ_GASTO" collection
 * @method OBJETOS_GASTO       setId()                  Sets the current record's "id" value
 * @method OBJETOS_GASTO       setAnoFiscal()           Sets the current record's "ano_fiscal" value
 * @method OBJETOS_GASTO       setCodigo()              Sets the current record's "codigo" value
 * @method OBJETOS_GASTO       setDescripcion()         Sets the current record's "descripcion" value
 * @method OBJETOS_GASTO       setAbreviatura()         Sets the current record's "abreviatura" value
 * @method OBJETOS_GASTO       setComision()            Sets the current record's "comision" value
 * @method OBJETOS_GASTO       setEstado()              Sets the current record's "estado" value
 * @method OBJETOS_GASTO       setTipo()                Sets the current record's "tipo" value
 * @method OBJETOS_GASTO       setPRPOSALDOS()          Sets the current record's "PR_PO_SALDOS" collection
 * @method OBJETOS_GASTO       setPRELEMENTOSGASTO()    Sets the current record's "PR_ELEMENTOS_GASTO" collection
 * @method OBJETOS_GASTO       setPRDETAREIN()          Sets the current record's "PR_DETA_REIN" collection
 * @method OBJETOS_GASTO       setPRCPOASIGN()          Sets the current record's "PR_CPO_ASIGN" collection
 * @method OBJETOS_GASTO       setPRCGMF()              Sets the current record's "PR_CG_MF" collection
 * @method OBJETOS_GASTO       setPRASIGNAOBJGASTO()    Sets the current record's "PR_ASIGNA_OBJ_GASTO" collection
 * 
 * @package    nomina
 * @subpackage model
 * @author     Your name here
 * @version    SVN: $Id: Builder.php 7691 2011-02-04 15:43:29Z jwage $
 */
abstract class BaseOBJETOS_GASTO extends sfDoctrineRecord
{
    public function setTableDefinition()
    {
        $this->setTableName('OBJETOS_GASTO');
        $this->hasColumn('id', 'integer', 20, array(
             'type' => 'integer',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => true,
             'length' => 20,
             ));
        $this->hasColumn('ano_fiscal', 'string', 4, array(
             'notnull' => true,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 4,
             ));
        $this->hasColumn('codigo', 'string', 20, array(
             'notnull' => true,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
        $this->hasColumn('descripcion', 'string', 100, array(
             'notnull' => true,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 100,
             ));
        $this->hasColumn('abreviatura', 'string', 20, array(
             'notnull' => true,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
        $this->hasColumn('comision', 'integer', 20, array(
             'notnull' => false,
             'type' => 'integer',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
        $this->hasColumn('estado', 'integer', 20, array(
             'notnull' => false,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
        $this->hasColumn('tipo', 'string', 20, array(
             'notnull' => false,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
        $this->hasColumn('cod_rubro', 'string', 30, array(
             'notnull' => true,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 30,
             ));
        $this->hasColumn('cod_rubro_propio', 'string', 30, array(
             'notnull' => true,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 30,
             ));
        $this->hasColumn('nombre_rubro', 'string', 500, array(
             'notnull' => true,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 500,
             ));
        $this->hasColumn('nombre_rubro_propio', 'string', 500, array(
             'notnull' => true,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 500,
             ));
        $this->hasColumn('excep_costeo', 'integer', 20, array(
             'notnull' => false,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
        $this->hasColumn('id_tipo_comisionado', 'integer', 20, array(
             'notnull' => false,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
        $this->hasColumn('viatico', 'integer', 20, array(
             'notnull' => false,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
        $this->hasColumn('viaje', 'integer', 20, array(
             'notnull' => false,
             'type' => 'string',
             'fixed' => 0,
             'unsigned' => false,
             'primary' => false,
             'length' => 20,
             ));
    }

    public function setUp()
    {
        parent::setUp();
        $this->hasMany('PR_PO_SALDOS', array(
             'local' => 'id',
             'foreign' => 'id_obj_gasto'));

        $this->hasMany('PR_ELEMENTOS_GASTO', array(
             'local' => 'id',
             'foreign' => 'id_objeto_gasto'));

        $this->hasMany('PR_DETA_REIN', array(
             'local' => 'id',
             'foreign' => 'id_obj_gasto'));

        $this->hasMany('PR_CPO_ASIGN', array(
             'local' => 'id',
             'foreign' => 'id_obj_gasto'));

        $this->hasMany('PR_CG_MF', array(
             'local' => 'id',
             'foreign' => 'id_obj_gasto'));

        $this->hasMany('PR_ASIGNA_OBJ_GASTO', array(
             'local' => 'id',
             'foreign' => 'id_obj_gasto'));
    }
}