<?php
/* Autor...:  */
/* Esquema.: ALM_AlmacenMast.xml */
/* Generado: 2020-08-18 04:21:23 */

/* Metodos de acceso a los campos de la tabla ALM_AlmacenMast */
abstract class BaseALM_AlmacenMastBN
{
    /* Campos de la tabla */
    private $s_IdAlmacen;    // IdAlmacen: ( no definido )
    private $i_IdCompania;    // IdCompania: ( no definido )
    private $i_IdSucursal;    // IdSucursal: ( no definido )
    private $i_IdUnidadCrianza;    // IdUnidadCrianza: ( no definido )
    private $s_IdAlmacenGrupo;    // IdAlmacenGrupo: ( no definido )
    private $s_MultiCompaniaFlag;    // MultiCompaniaFlag: ( no definido )
    private $s_CompaniaSocio;    // CompaniaSocio: ( no definido )
    private $s_DescripcionLocal;    // DescripcionLocal: ( no definido )
    private $s_DescripcionIngles;    // DescripcionIngles: ( no definido )
    private $s_Direccion;    // Direccion: ( no definido )
    private $s_UnidadNegocio;    // UnidadNegocio: ( no definido )
    private $s_TipoAlmacen;    // TipoAlmacen: ( no definido )
    private $s_TipoUnidadCrianza;    // TipoUnidadCrianza: ( no definido )
    private $s_AlmacenTransitoPrincipal;    // AlmacenTransitoPrincipal: ( no definido )
    private $s_AlmacenVentaFlag;    // AlmacenVentaFlag: ( no definido )
    private $s_AlmacenProduccionFlag;    // AlmacenProduccionFlag: ( no definido )
    private $s_AlmacenConsignacionFlag;    // AlmacenConsignacionFlag: ( no definido )
    private $s_AlmacenCommodityFlag;    // AlmacenCommodityFlag: ( no definido )
    private $s_DisponiblePlanProduccionFlag;    // DisponiblePlanProduccionFlag: ( no definido )
    private $s_SubAlmacenFlag;    // SubAlmacenFlag: ( no definido )
    private $s_CuentaInventario;    // CuentaInventario: ( no definido )
    private $s_CuentaGasto;    // CuentaGasto: ( no definido )
    private $i_NumeroMesesStock;    // NumeroMesesStock: ( no definido )
    private $i_ComercialCajero;    // ComercialCajero: ( no definido )
    private $i_Encargado;    // Encargado: ( no definido )
    private $i_ComercialCobrador;    // ComercialCobrador: ( no definido )
    private $s_AlmacenGastoFlag;    // AlmacenGastoFlag: ( no definido )
    private $s_Estado;    // Estado: ( no definido )
    private $s_UsuarioModificacion;    // UsuarioModificacion: ( no definido )
    private $d_FechaModificacion;    // FechaModificacion: ( no definido )
    private $s_UsuarioCreacion;    // UsuarioCreacion: ( no definido )
    private $d_FechaCreacion;    // FechaCreacion: ( no definido )
    private $s_Codigo;    // Codigo: ( no definido )
    private $s_CodigoSunat;    // CodigoSunat: ( no definido )
    private $i_IdUnidadProduccion;    // IdUnidadProduccion: ( no definido )

    /* Establece el valor del campo IdAlmacen */
    public function setIdAlmacen( $s_IdAlmacen )
    {
        $this->s_IdAlmacen = $s_IdAlmacen;
    }

    /* Obtiene el valor del campo IdAlmacen */
    public function getIdAlmacen()
    {
        return $this->s_IdAlmacen;
    }

    /* 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 IdUnidadCrianza */
    public function setIdUnidadCrianza( $i_IdUnidadCrianza )
    {
        $this->i_IdUnidadCrianza = $i_IdUnidadCrianza;
    }

    /* Obtiene el valor del campo IdUnidadCrianza */
    public function getIdUnidadCrianza()
    {
        return $this->i_IdUnidadCrianza;
    }

    /* Establece el valor del campo IdAlmacenGrupo */
    public function setIdAlmacenGrupo( $s_IdAlmacenGrupo )
    {
        $this->s_IdAlmacenGrupo = $s_IdAlmacenGrupo;
    }

    /* Obtiene el valor del campo IdAlmacenGrupo */
    public function getIdAlmacenGrupo()
    {
        return $this->s_IdAlmacenGrupo;
    }

    /* Establece el valor del campo MultiCompaniaFlag */
    public function setMultiCompaniaFlag( $s_MultiCompaniaFlag )
    {
        $this->s_MultiCompaniaFlag = $s_MultiCompaniaFlag;
    }

    /* Obtiene el valor del campo MultiCompaniaFlag */
    public function getMultiCompaniaFlag()
    {
        return $this->s_MultiCompaniaFlag;
    }

    /* Establece el valor del campo CompaniaSocio */
    public function setCompaniaSocio( $s_CompaniaSocio )
    {
        $this->s_CompaniaSocio = $s_CompaniaSocio;
    }

    /* Obtiene el valor del campo CompaniaSocio */
    public function getCompaniaSocio()
    {
        return $this->s_CompaniaSocio;
    }

    /* Establece el valor del campo DescripcionLocal */
    public function setDescripcionLocal( $s_DescripcionLocal )
    {
        $this->s_DescripcionLocal = $s_DescripcionLocal;
    }

    /* Obtiene el valor del campo DescripcionLocal */
    public function getDescripcionLocal()
    {
        return $this->s_DescripcionLocal;
    }

    /* Establece el valor del campo DescripcionIngles */
    public function setDescripcionIngles( $s_DescripcionIngles )
    {
        $this->s_DescripcionIngles = $s_DescripcionIngles;
    }

    /* Obtiene el valor del campo DescripcionIngles */
    public function getDescripcionIngles()
    {
        return $this->s_DescripcionIngles;
    }

    /* Establece el valor del campo Direccion */
    public function setDireccion( $s_Direccion )
    {
        $this->s_Direccion = $s_Direccion;
    }

    /* Obtiene el valor del campo Direccion */
    public function getDireccion()
    {
        return $this->s_Direccion;
    }

    /* Establece el valor del campo UnidadNegocio */
    public function setUnidadNegocio( $s_UnidadNegocio )
    {
        $this->s_UnidadNegocio = $s_UnidadNegocio;
    }

    /* Obtiene el valor del campo UnidadNegocio */
    public function getUnidadNegocio()
    {
        return $this->s_UnidadNegocio;
    }

    /* Establece el valor del campo TipoAlmacen */
    public function setTipoAlmacen( $s_TipoAlmacen )
    {
        $this->s_TipoAlmacen = $s_TipoAlmacen;
    }

    /* Obtiene el valor del campo TipoAlmacen */
    public function getTipoAlmacen()
    {
        return $this->s_TipoAlmacen;
    }

    /* Establece el valor del campo TipoUnidadCrianza */
    public function setTipoUnidadCrianza( $s_TipoUnidadCrianza )
    {
        $this->s_TipoUnidadCrianza = $s_TipoUnidadCrianza;
    }

    /* Obtiene el valor del campo TipoUnidadCrianza */
    public function getTipoUnidadCrianza()
    {
        return $this->s_TipoUnidadCrianza;
    }

    /* Establece el valor del campo AlmacenTransitoPrincipal */
    public function setAlmacenTransitoPrincipal( $s_AlmacenTransitoPrincipal )
    {
        $this->s_AlmacenTransitoPrincipal = $s_AlmacenTransitoPrincipal;
    }

    /* Obtiene el valor del campo AlmacenTransitoPrincipal */
    public function getAlmacenTransitoPrincipal()
    {
        return $this->s_AlmacenTransitoPrincipal;
    }

    /* Establece el valor del campo AlmacenVentaFlag */
    public function setAlmacenVentaFlag( $s_AlmacenVentaFlag )
    {
        $this->s_AlmacenVentaFlag = $s_AlmacenVentaFlag;
    }

    /* Obtiene el valor del campo AlmacenVentaFlag */
    public function getAlmacenVentaFlag()
    {
        return $this->s_AlmacenVentaFlag;
    }

    /* Establece el valor del campo AlmacenProduccionFlag */
    public function setAlmacenProduccionFlag( $s_AlmacenProduccionFlag )
    {
        $this->s_AlmacenProduccionFlag = $s_AlmacenProduccionFlag;
    }

    /* Obtiene el valor del campo AlmacenProduccionFlag */
    public function getAlmacenProduccionFlag()
    {
        return $this->s_AlmacenProduccionFlag;
    }

    /* Establece el valor del campo AlmacenConsignacionFlag */
    public function setAlmacenConsignacionFlag( $s_AlmacenConsignacionFlag )
    {
        $this->s_AlmacenConsignacionFlag = $s_AlmacenConsignacionFlag;
    }

    /* Obtiene el valor del campo AlmacenConsignacionFlag */
    public function getAlmacenConsignacionFlag()
    {
        return $this->s_AlmacenConsignacionFlag;
    }

    /* Establece el valor del campo AlmacenCommodityFlag */
    public function setAlmacenCommodityFlag( $s_AlmacenCommodityFlag )
    {
        $this->s_AlmacenCommodityFlag = $s_AlmacenCommodityFlag;
    }

    /* Obtiene el valor del campo AlmacenCommodityFlag */
    public function getAlmacenCommodityFlag()
    {
        return $this->s_AlmacenCommodityFlag;
    }

    /* Establece el valor del campo DisponiblePlanProduccionFlag */
    public function setDisponiblePlanProduccionFlag( $s_DisponiblePlanProduccionFlag )
    {
        $this->s_DisponiblePlanProduccionFlag = $s_DisponiblePlanProduccionFlag;
    }

    /* Obtiene el valor del campo DisponiblePlanProduccionFlag */
    public function getDisponiblePlanProduccionFlag()
    {
        return $this->s_DisponiblePlanProduccionFlag;
    }

    /* Establece el valor del campo SubAlmacenFlag */
    public function setSubAlmacenFlag( $s_SubAlmacenFlag )
    {
        $this->s_SubAlmacenFlag = $s_SubAlmacenFlag;
    }

    /* Obtiene el valor del campo SubAlmacenFlag */
    public function getSubAlmacenFlag()
    {
        return $this->s_SubAlmacenFlag;
    }

    /* Establece el valor del campo CuentaInventario */
    public function setCuentaInventario( $s_CuentaInventario )
    {
        $this->s_CuentaInventario = $s_CuentaInventario;
    }

    /* Obtiene el valor del campo CuentaInventario */
    public function getCuentaInventario()
    {
        return $this->s_CuentaInventario;
    }

    /* Establece el valor del campo CuentaGasto */
    public function setCuentaGasto( $s_CuentaGasto )
    {
        $this->s_CuentaGasto = $s_CuentaGasto;
    }

    /* Obtiene el valor del campo CuentaGasto */
    public function getCuentaGasto()
    {
        return $this->s_CuentaGasto;
    }

    /* Establece el valor del campo NumeroMesesStock */
    public function setNumeroMesesStock( $i_NumeroMesesStock )
    {
        $this->i_NumeroMesesStock = $i_NumeroMesesStock;
    }

    /* Obtiene el valor del campo NumeroMesesStock */
    public function getNumeroMesesStock()
    {
        return $this->i_NumeroMesesStock;
    }

    /* Establece el valor del campo ComercialCajero */
    public function setComercialCajero( $i_ComercialCajero )
    {
        $this->i_ComercialCajero = $i_ComercialCajero;
    }

    /* Obtiene el valor del campo ComercialCajero */
    public function getComercialCajero()
    {
        return $this->i_ComercialCajero;
    }

    /* Establece el valor del campo Encargado */
    public function setEncargado( $i_Encargado )
    {
        $this->i_Encargado = $i_Encargado;
    }

    /* Obtiene el valor del campo Encargado */
    public function getEncargado()
    {
        return $this->i_Encargado;
    }

    /* Establece el valor del campo ComercialCobrador */
    public function setComercialCobrador( $i_ComercialCobrador )
    {
        $this->i_ComercialCobrador = $i_ComercialCobrador;
    }

    /* Obtiene el valor del campo ComercialCobrador */
    public function getComercialCobrador()
    {
        return $this->i_ComercialCobrador;
    }

    /* Establece el valor del campo AlmacenGastoFlag */
    public function setAlmacenGastoFlag( $s_AlmacenGastoFlag )
    {
        $this->s_AlmacenGastoFlag = $s_AlmacenGastoFlag;
    }

    /* Obtiene el valor del campo AlmacenGastoFlag */
    public function getAlmacenGastoFlag()
    {
        return $this->s_AlmacenGastoFlag;
    }

    /* Establece el valor del campo Estado */
    public function setEstado( $s_Estado )
    {
        $this->s_Estado = $s_Estado;
    }

    /* Obtiene el valor del campo Estado */
    public function getEstado()
    {
        return $this->s_Estado;
    }

    /* 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;
    }

    /* 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 Codigo */
    public function setCodigo( $s_Codigo )
    {
        $this->s_Codigo = $s_Codigo;
    }

    /* Obtiene el valor del campo Codigo */
    public function getCodigo()
    {
        return $this->s_Codigo;
    }

    /* Establece el valor del campo CodigoSunat */
    public function setCodigoSunat( $s_CodigoSunat )
    {
        $this->s_CodigoSunat = $s_CodigoSunat;
    }

    /* Obtiene el valor del campo CodigoSunat */
    public function getCodigoSunat()
    {
        return $this->s_CodigoSunat;
    }

    /* Establece el valor del campo IdUnidadProduccion */
    public function setIdUnidadProduccion( $i_IdUnidadProduccion )
    {
        $this->i_IdUnidadProduccion = $i_IdUnidadProduccion;
    }

    /* Obtiene el valor del campo IdUnidadProduccion */
    public function getIdUnidadProduccion()
    {
        return $this->i_IdUnidadProduccion;
    }

    public function getJsonSerialize()
    {
        return 
        [
            'IdAlmacen' => $this->getIdAlmacen(),
            'IdCompania' => $this->getIdCompania(),
            'IdSucursal' => $this->getIdSucursal(),
            'IdUnidadCrianza' => $this->getIdUnidadCrianza(),
            'IdAlmacenGrupo' => $this->getIdAlmacenGrupo(),
            'MultiCompaniaFlag' => $this->getMultiCompaniaFlag(),
            'CompaniaSocio' => $this->getCompaniaSocio(),
            'DescripcionLocal' => $this->getDescripcionLocal(),
            'DescripcionIngles' => $this->getDescripcionIngles(),
            'Direccion' => $this->getDireccion(),
            'UnidadNegocio' => $this->getUnidadNegocio(),
            'TipoAlmacen' => $this->getTipoAlmacen(),
            'TipoUnidadCrianza' => $this->getTipoUnidadCrianza(),
            'AlmacenTransitoPrincipal' => $this->getAlmacenTransitoPrincipal(),
            'AlmacenVentaFlag' => $this->getAlmacenVentaFlag(),
            'AlmacenProduccionFlag' => $this->getAlmacenProduccionFlag(),
            'AlmacenConsignacionFlag' => $this->getAlmacenConsignacionFlag(),
            'AlmacenCommodityFlag' => $this->getAlmacenCommodityFlag(),
            'DisponiblePlanProduccionFlag' => $this->getDisponiblePlanProduccionFlag(),
            'SubAlmacenFlag' => $this->getSubAlmacenFlag(),
            'CuentaInventario' => $this->getCuentaInventario(),
            'CuentaGasto' => $this->getCuentaGasto(),
            'NumeroMesesStock' => $this->getNumeroMesesStock(),
            'ComercialCajero' => $this->getComercialCajero(),
            'Encargado' => $this->getEncargado(),
            'ComercialCobrador' => $this->getComercialCobrador(),
            'AlmacenGastoFlag' => $this->getAlmacenGastoFlag(),
            'Estado' => $this->getEstado(),
            'UsuarioModificacion' => $this->getUsuarioModificacion(),
            'FechaModificacion' => $this->getFechaModificacion(),
            'UsuarioCreacion' => $this->getUsuarioCreacion(),
            'FechaCreacion' => $this->getFechaCreacion(),
            'Codigo' => $this->getCodigo(),
            'CodigoSunat' => $this->getCodigoSunat(),
            'IdUnidadProduccion' => $this->getIdUnidadProduccion(),
        ];
    }

    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 ALM_AlmacenMastBN desde un RecordSet */
    public static function retrieveByRs( $o_ALM_AlmacenMastRs )
    {
        $o_ALM_AlmacenMastBN = new ALM_AlmacenMastBN();
        $o_ALM_AlmacenMastBN->setIdAlmacen( $o_ALM_AlmacenMastRs[ "IdAlmacen" ] );
        $o_ALM_AlmacenMastBN->setIdCompania( ( integer ) $o_ALM_AlmacenMastRs[ "IdCompania" ] );
        $o_ALM_AlmacenMastBN->setIdSucursal( ( integer ) $o_ALM_AlmacenMastRs[ "IdSucursal" ] );
        $o_ALM_AlmacenMastBN->setIdUnidadCrianza( ( integer ) $o_ALM_AlmacenMastRs[ "IdUnidadCrianza" ] );
        $o_ALM_AlmacenMastBN->setIdAlmacenGrupo( $o_ALM_AlmacenMastRs[ "IdAlmacenGrupo" ] );
        $o_ALM_AlmacenMastBN->setMultiCompaniaFlag( $o_ALM_AlmacenMastRs[ "MultiCompaniaFlag" ] );
        $o_ALM_AlmacenMastBN->setCompaniaSocio( $o_ALM_AlmacenMastRs[ "CompaniaSocio" ] );
        $o_ALM_AlmacenMastBN->setDescripcionLocal( $o_ALM_AlmacenMastRs[ "DescripcionLocal" ] );
        $o_ALM_AlmacenMastBN->setDescripcionIngles( $o_ALM_AlmacenMastRs[ "DescripcionIngles" ] );
        $o_ALM_AlmacenMastBN->setDireccion( $o_ALM_AlmacenMastRs[ "Direccion" ] );
        $o_ALM_AlmacenMastBN->setUnidadNegocio( $o_ALM_AlmacenMastRs[ "UnidadNegocio" ] );
        $o_ALM_AlmacenMastBN->setTipoAlmacen( $o_ALM_AlmacenMastRs[ "TipoAlmacen" ] );
        $o_ALM_AlmacenMastBN->setTipoUnidadCrianza( $o_ALM_AlmacenMastRs[ "TipoUnidadCrianza" ] );
        $o_ALM_AlmacenMastBN->setAlmacenTransitoPrincipal( $o_ALM_AlmacenMastRs[ "AlmacenTransitoPrincipal" ] );
        $o_ALM_AlmacenMastBN->setAlmacenVentaFlag( $o_ALM_AlmacenMastRs[ "AlmacenVentaFlag" ] );
        $o_ALM_AlmacenMastBN->setAlmacenProduccionFlag( $o_ALM_AlmacenMastRs[ "AlmacenProduccionFlag" ] );
        $o_ALM_AlmacenMastBN->setAlmacenConsignacionFlag( $o_ALM_AlmacenMastRs[ "AlmacenConsignacionFlag" ] );
        $o_ALM_AlmacenMastBN->setAlmacenCommodityFlag( $o_ALM_AlmacenMastRs[ "AlmacenCommodityFlag" ] );
        $o_ALM_AlmacenMastBN->setDisponiblePlanProduccionFlag( $o_ALM_AlmacenMastRs[ "DisponiblePlanProduccionFlag" ] );
        $o_ALM_AlmacenMastBN->setSubAlmacenFlag( $o_ALM_AlmacenMastRs[ "SubAlmacenFlag" ] );
        $o_ALM_AlmacenMastBN->setCuentaInventario( $o_ALM_AlmacenMastRs[ "CuentaInventario" ] );
        $o_ALM_AlmacenMastBN->setCuentaGasto( $o_ALM_AlmacenMastRs[ "CuentaGasto" ] );
        $o_ALM_AlmacenMastBN->setNumeroMesesStock( ( integer ) $o_ALM_AlmacenMastRs[ "NumeroMesesStock" ] );
        $o_ALM_AlmacenMastBN->setComercialCajero( ( integer ) $o_ALM_AlmacenMastRs[ "ComercialCajero" ] );
        $o_ALM_AlmacenMastBN->setEncargado( ( integer ) $o_ALM_AlmacenMastRs[ "Encargado" ] );
        $o_ALM_AlmacenMastBN->setComercialCobrador( ( integer ) $o_ALM_AlmacenMastRs[ "ComercialCobrador" ] );
        $o_ALM_AlmacenMastBN->setAlmacenGastoFlag( $o_ALM_AlmacenMastRs[ "AlmacenGastoFlag" ] );
        $o_ALM_AlmacenMastBN->setEstado( $o_ALM_AlmacenMastRs[ "Estado" ] );
        $o_ALM_AlmacenMastBN->setUsuarioModificacion( $o_ALM_AlmacenMastRs[ "UsuarioModificacion" ] );
        $o_ALM_AlmacenMastBN->setFechaModificacion( utilTimestamp::getTimestamp( $o_ALM_AlmacenMastRs[ "FechaModificacion" ], "Y-m-d H:i:s" ) );
        $o_ALM_AlmacenMastBN->setUsuarioCreacion( $o_ALM_AlmacenMastRs[ "UsuarioCreacion" ] );
        $o_ALM_AlmacenMastBN->setFechaCreacion( utilTimestamp::getTimestamp( $o_ALM_AlmacenMastRs[ "FechaCreacion" ], "Y-m-d H:i:s" ) );
        $o_ALM_AlmacenMastBN->setCodigo( $o_ALM_AlmacenMastRs[ "Codigo" ] );
        $o_ALM_AlmacenMastBN->setCodigoSunat( $o_ALM_AlmacenMastRs[ "CodigoSunat" ] );
        $o_ALM_AlmacenMastBN->setIdUnidadProduccion( ( integer ) $o_ALM_AlmacenMastRs[ "IdUnidadProduccion" ] );
        return $o_ALM_AlmacenMastBN;
    }
}
?>