<?php
/* Autor...:  */
/* Esquema.: RegistroHistorial.xml */
/* Generado: 2021-11-29 22:16:59 */

/* Metodos de acceso a los campos de la tabla RegistroHistorial */
abstract class BaseRegistroHistorialBN
{
    /* Campos de la tabla */
    private $i_IdLog;    // IdLog: ( no definido )
    private $i_IdCompania;    // IdCompania: ( no definido )
    private $i_IdSucursal;    // IdSucursal: ( no definido )
    private $s_BaseDatos;    // BaseDatos: ( no definido )
    private $s_Tabla;    // Tabla: ( no definido )
    private $d_IdFecha;    // IdFecha: ( no definido )
    private $s_IdDocumento;    // IdDocumento: ( no definido )
    private $s_IdCampo;    // IdCampo: ( no definido )
    private $s_CampoValor;    // CampoValor: ( no definido )
    private $s_CampoDescripcion;    // CampoDescripcion: ( no definido )
    private $s_Modulo;    // Modulo: ( no definido )
    private $s_IP;    // IP: ( no definido )
    private $s_ValorAnterior;    // ValorAnterior: ( no definido )
    private $s_ValorNuevo;    // ValorNuevo: ( no definido )
    private $s_UsuarioCreacion;    // UsuarioCreacion: ( no definido )
    private $d_FechaCreacion;    // FechaCreacion: ( no definido )
    private $s_UsuarioModificacion;    // UsuarioModificacion: ( no definido )
    private $d_FechaModificacion;    // FechaModificacion: ( no definido )

    /* Establece el valor del campo IdLog */
    public function setIdLog( $i_IdLog )
    {
        $this->i_IdLog = $i_IdLog;
    }

    /* Obtiene el valor del campo IdLog */
    public function getIdLog()
    {
        return $this->i_IdLog;
    }

    /* Establece el valor del campo IdCompania */
    public function setIdCompania( $i_IdCompania )
    {
        $this->i_IdCompania = $i_IdCompania;
    }

    /* Obtiene el valor del campo IdCompania */
    public function getIdCompania()
    {
        return $this->i_IdCompania;
    }

    /* Establece el valor del campo IdSucursal */
    public function setIdSucursal( $i_IdSucursal )
    {
        $this->i_IdSucursal = $i_IdSucursal;
    }

    /* Obtiene el valor del campo IdSucursal */
    public function getIdSucursal()
    {
        return $this->i_IdSucursal;
    }

    /* Establece el valor del campo BaseDatos */
    public function setBaseDatos( $s_BaseDatos )
    {
        $this->s_BaseDatos = $s_BaseDatos;
    }

    /* Obtiene el valor del campo BaseDatos */
    public function getBaseDatos()
    {
        return $this->s_BaseDatos;
    }

    /* Establece el valor del campo Tabla */
    public function setTabla( $s_Tabla )
    {
        $this->s_Tabla = $s_Tabla;
    }

    /* Obtiene el valor del campo Tabla */
    public function getTabla()
    {
        return $this->s_Tabla;
    }

    /* Establece el valor del campo IdFecha */
    public function setIdFecha( $d_IdFecha )
    {
        $this->d_IdFecha = $d_IdFecha;
    }

    /* Obtiene el valor del campo IdFecha */
    public function getIdFecha()
    {
        return $this->d_IdFecha;
    }

    /* Establece el valor del campo IdDocumento */
    public function setIdDocumento( $s_IdDocumento )
    {
        $this->s_IdDocumento = $s_IdDocumento;
    }

    /* Obtiene el valor del campo IdDocumento */
    public function getIdDocumento()
    {
        return $this->s_IdDocumento;
    }

    /* Establece el valor del campo IdCampo */
    public function setIdCampo( $s_IdCampo )
    {
        $this->s_IdCampo = $s_IdCampo;
    }

    /* Obtiene el valor del campo IdCampo */
    public function getIdCampo()
    {
        return $this->s_IdCampo;
    }

    /* Establece el valor del campo CampoValor */
    public function setCampoValor( $s_CampoValor )
    {
        $this->s_CampoValor = $s_CampoValor;
    }

    /* Obtiene el valor del campo CampoValor */
    public function getCampoValor()
    {
        return $this->s_CampoValor;
    }

    /* Establece el valor del campo CampoDescripcion */
    public function setCampoDescripcion( $s_CampoDescripcion )
    {
        $this->s_CampoDescripcion = $s_CampoDescripcion;
    }

    /* Obtiene el valor del campo CampoDescripcion */
    public function getCampoDescripcion()
    {
        return $this->s_CampoDescripcion;
    }

    /* Establece el valor del campo Modulo */
    public function setModulo( $s_Modulo )
    {
        $this->s_Modulo = $s_Modulo;
    }

    /* Obtiene el valor del campo Modulo */
    public function getModulo()
    {
        return $this->s_Modulo;
    }

    /* Establece el valor del campo IP */
    public function setIP( $s_IP )
    {
        $this->s_IP = $s_IP;
    }

    /* Obtiene el valor del campo IP */
    public function getIP()
    {
        return $this->s_IP;
    }

    /* Establece el valor del campo ValorAnterior */
    public function setValorAnterior( $s_ValorAnterior )
    {
        $this->s_ValorAnterior = $s_ValorAnterior;
    }

    /* Obtiene el valor del campo ValorAnterior */
    public function getValorAnterior()
    {
        return $this->s_ValorAnterior;
    }

    /* Establece el valor del campo ValorNuevo */
    public function setValorNuevo( $s_ValorNuevo )
    {
        $this->s_ValorNuevo = $s_ValorNuevo;
    }

    /* Obtiene el valor del campo ValorNuevo */
    public function getValorNuevo()
    {
        return $this->s_ValorNuevo;
    }

    /* Establece el valor del campo UsuarioCreacion */
    public function setUsuarioCreacion( $s_UsuarioCreacion )
    {
        $this->s_UsuarioCreacion = $s_UsuarioCreacion;
    }

    /* Obtiene el valor del campo UsuarioCreacion */
    public function getUsuarioCreacion()
    {
        return $this->s_UsuarioCreacion;
    }

    /* Establece el valor del campo FechaCreacion */
    public function setFechaCreacion( $d_FechaCreacion )
    {
        $this->d_FechaCreacion = $d_FechaCreacion;
    }

    /* Obtiene el valor del campo FechaCreacion */
    public function getFechaCreacion()
    {
        return $this->d_FechaCreacion;
    }

    /* Establece el valor del campo UsuarioModificacion */
    public function setUsuarioModificacion( $s_UsuarioModificacion )
    {
        $this->s_UsuarioModificacion = $s_UsuarioModificacion;
    }

    /* Obtiene el valor del campo UsuarioModificacion */
    public function getUsuarioModificacion()
    {
        return $this->s_UsuarioModificacion;
    }

    /* Establece el valor del campo FechaModificacion */
    public function setFechaModificacion( $d_FechaModificacion )
    {
        $this->d_FechaModificacion = $d_FechaModificacion;
    }

    /* Obtiene el valor del campo FechaModificacion */
    public function getFechaModificacion()
    {
        return $this->d_FechaModificacion;
    }

    public function getJsonSerialize()
    {
        return 
        [
            'IdLog' => $this->getIdLog(),
            'IdCompania' => $this->getIdCompania(),
            'IdSucursal' => $this->getIdSucursal(),
            'BaseDatos' => $this->getBaseDatos(),
            'Tabla' => $this->getTabla(),
            'IdFecha' => $this->getIdFecha(),
            'IdDocumento' => $this->getIdDocumento(),
            'IdCampo' => $this->getIdCampo(),
            'CampoValor' => $this->getCampoValor(),
            'CampoDescripcion' => $this->getCampoDescripcion(),
            'Modulo' => $this->getModulo(),
            'IP' => $this->getIP(),
            'ValorAnterior' => $this->getValorAnterior(),
            'ValorNuevo' => $this->getValorNuevo(),
            'UsuarioCreacion' => $this->getUsuarioCreacion(),
            'FechaCreacion' => $this->getFechaCreacion(),
            'UsuarioModificacion' => $this->getUsuarioModificacion(),
            'FechaModificacion' => $this->getFechaModificacion(),
        ];
    }

    public function toArray()
    {
        return $this->processArray( get_object_vars( $this ) ); 
    }

    private function processArray( $array )
    {
        foreach( $array as $key => $value ) 
        {
            if ( is_object( $value ) )
            {
                $array[$key] = $value->toArray();
            }
            if ( is_array( $value ) ) 
            {
                $array[$key] = $this->processArray( $value );
            }
        }
        return $array;
    }

    public function __toString()
    {
        return json_encode( $this->toArray() ); 
    }

    /* Recupera un objeto RegistroHistorialBN desde un RecordSet */
    public static function retrieveByRs( $o_RegistroHistorialRs )
    {
        $o_RegistroHistorialBN = new RegistroHistorialBN();
        $o_RegistroHistorialBN->setIdLog( ( integer ) $o_RegistroHistorialRs[ "IdLog" ] );
        $o_RegistroHistorialBN->setIdCompania( ( integer ) $o_RegistroHistorialRs[ "IdCompania" ] );
        $o_RegistroHistorialBN->setIdSucursal( ( integer ) $o_RegistroHistorialRs[ "IdSucursal" ] );
        $o_RegistroHistorialBN->setBaseDatos( $o_RegistroHistorialRs[ "BaseDatos" ] );
        $o_RegistroHistorialBN->setTabla( $o_RegistroHistorialRs[ "Tabla" ] );
        $o_RegistroHistorialBN->setIdFecha( utilTimestamp::getTimestamp( $o_RegistroHistorialRs[ "IdFecha" ], "Y-m-d H:i:s" ) );
        $o_RegistroHistorialBN->setIdDocumento( $o_RegistroHistorialRs[ "IdDocumento" ] );
        $o_RegistroHistorialBN->setIdCampo( $o_RegistroHistorialRs[ "IdCampo" ] );
        $o_RegistroHistorialBN->setCampoValor( $o_RegistroHistorialRs[ "CampoValor" ] );
        $o_RegistroHistorialBN->setCampoDescripcion( $o_RegistroHistorialRs[ "CampoDescripcion" ] );
        $o_RegistroHistorialBN->setModulo( $o_RegistroHistorialRs[ "Modulo" ] );
        $o_RegistroHistorialBN->setIP( $o_RegistroHistorialRs[ "IP" ] );
        $o_RegistroHistorialBN->setValorAnterior( $o_RegistroHistorialRs[ "ValorAnterior" ] );
        $o_RegistroHistorialBN->setValorNuevo( $o_RegistroHistorialRs[ "ValorNuevo" ] );
        $o_RegistroHistorialBN->setUsuarioCreacion( $o_RegistroHistorialRs[ "UsuarioCreacion" ] );
        $o_RegistroHistorialBN->setFechaCreacion( utilTimestamp::getTimestamp( $o_RegistroHistorialRs[ "FechaCreacion" ], "Y-m-d H:i:s" ) );
        $o_RegistroHistorialBN->setUsuarioModificacion( $o_RegistroHistorialRs[ "UsuarioModificacion" ] );
        $o_RegistroHistorialBN->setFechaModificacion( utilTimestamp::getTimestamp( $o_RegistroHistorialRs[ "FechaModificacion" ], "Y-m-d H:i:s" ) );
        return $o_RegistroHistorialBN;
    }
}
?>