<?php

/**
 * cb_aux_siif actions.
 *
 * @package    Sofhouse
 * @subpackage cb_aux_siif
 * @author     Software House
 * @version    SVN: $Id: actions.class.php 23810 2009-11-12 11:07:44Z Kris.Wallsmith $
 */
class cb_aux_siifActions extends sfQuery {
    /*
     * ------------VARIABLES PARA SERVICIOS DE CONSULTA - LIST
     */

    protected $table_names = array(
        'CN_AUX_SIIF',
        'CN_SUBC_DIGITOS_AUX',
        'CN_SUBC_DIGITOS'
    ); //tablas para construir el sql, por medio de joins
    protected $table_join_ids = array(
        'CN_SUBC_DIGITOS' =>
        array(
            'id_clase_cuenta' => 'CN_AUX_SIIF',
            'id_grupo_cuenta' => 'CN_AUX_SIIF',
            'id_cuenta_mayor' => 'CN_AUX_SIIF',
            'id_catalogo' => 'CN_AUX_SIIF',
            'id_cia' => 'CN_AUX_SIIF'
        ),
        'CN_SUBC_DIGITOS_AUX,LEFT' =>
        array(
            'id_clase_cuenta' => 'CN_AUX_SIIF',
            'id_grupo_cuenta' => 'CN_AUX_SIIF',
            'id_cuenta_mayor' => 'CN_AUX_SIIF',
            'id_catalogo' => 'CN_AUX_SIIF',
            'id_auxiliar' => 'CN_AUX_SIIF',
            'id_cia' => 'CN_AUX_SIIF'
        )
    ); //si posee tablas para joins, identificar la relacion de los campos con las tablas
    protected $fields = array(
        'CN_AUX_SIIF' =>
        array(
            'id_cia' => 'id_cia',
            'id_aux_siif' => 'id_aux_siif',
            'id_clase_cuenta' => 'id_clase_cuenta',
            'id_grupo_cuenta' => 'id_grupo_cuenta',
            'id_cuenta_mayor' => 'id_cuenta_mayor',
            'id_catalogo' => 'id_catalogo',
            'id_auxiliar' => 'id_auxiliar',
            'aux_dir' => 'aux_dir',
            'identi_aux' => 'identi_aux',
            'nombre' => 'nombre'
        ),
        'CN_SUBC_DIGITOS' =>
        array(
            'digitos' => 'digitos',
            'nombre' => 'nombre_cuenta'
        ),
        'CN_SUBC_DIGITOS_AUX' =>
        array(
            'cod_aux' => 'cod_aux',
            'nom_aux' => 'nombre_auxiliar'
        )
    ); //por cada tabla especificar los campos del select

    /*
     * OPCIONES DE FILTRO:
     *
     * LIKEALLPLUS- busqueda comparativa de la cadena dividida por los espacios en blanco en cualquier posición
     * LIKEALL - busqueda comparativa de la cadena en cualquier posición
     * LIKE - busqueda en la cadena que inicie por la variable de filtro
     *
     * rownum,start - rownum,end / estos campos para uso del Grid live GWT, numero fijo de filas de consulta
     */
    protected $table_field_conditions = array(
        'CN_AUX_SIIF' =>
        array(
            'id_cia' => array('=' => array('id_cia')),
            'id_aux_siif' => array('=' => array('id_aux_siif')),
            'id_clase_cuenta' => array('=' => array('id_clase_cuenta')),
            'id_grupo_cuenta' => array('=' => array('id_grupo_cuenta')),
            'id_cuenta_mayor' => array('=' => array('id_cuenta_mayor')),
            'id_catalogo' => array('=' => array('id_catalogo')),
            'id_auxiliar' => array('=' => array('id_auxiliar')),
            'rownum,start' => array('>' => array('_startRow')),
            'rownum,end' => array('<=' => array('_endRow'))
        ),
        'CN_SUBC_DIGITOS' =>
        array(
            'digitos' => array('=' => array('digitos'))//filtro nuevo - 20190115
        )
    ); //por cada tabla se dan los campos, opcion de filtro y variable que entra para los posibles filtros
    protected $table_field_or_conditions = null; // filtros de condicion or
//    protected $query_qualifier = 'DISTINCT'; //Para eliminar filas repetidas
    protected $fields_orderBy = array(
        'id_cia', 'digitos', 'cod_aux', 'aux_dir', 'identi_aux'
    ); //array de campos para ordenar la consulta


    /*
     * Variables manejo de log
     */
    //true - consulta de menu administracion
    protected $is_admin = true;
    //true - la tabla principal de busqueda no es una vista
    protected $is_filtro = true;


    /*
     *  -- Servicios  CRUD
     */
    protected $id_name = 'id_aux_siif'; //identificador de la tabla
    protected $id_names = array('id_aux_siif', 'id_cia'); //llave primaria
    protected $field_names = array('nombre', 'identi_aux', 'aux_dir', 'id_auxiliar',
        'id_catalogo', 'id_cuenta_mayor', 'id_grupo_cuenta', 'id_clase_cuenta'); //campos de la tabla, sin la llave primaria
    protected $table_name = 'CN_AUX_SIIF'; //tabla en la cual se aplican los cambios
    protected $has_activo = false; //si posee campo en la tabla de nombre activo
    protected $has_vigencia = false; //si posee vigencia
    protected $has_cen_op = false; //si posee centro de operacion
    protected $has_id_cia = true; //si posee compañia


    /*
     * Valores para los campos de otras tablas
     */
    protected $other_tab_uq_fields = array(
        'digitos' => array('CN_SUBC_DIGITOS' => array('id_clase_cuenta', 'id_grupo_cuenta', 'id_cuenta_mayor', 'id_catalogo'))
    );

    /*
     * Manejo de registro log
     */
    protected $id_unico = 'id_aux_siif'; //identificador unico de la tabla

}
