<?php
/* Autor...: William L. Taype Perez */
/* Esquema.: ALM_TransaccionCabecera.xml */
/* Generado: 2021-11-05 13:49:02 */

/* Mantenimiento de los registros de la tabla ALM_TransaccionCabecera */
abstract class BaseALM_TransaccionCabeceraDP extends ALM_TransaccionCabeceraBV
{
    /* Constructor ( Establece los valores desde un objeto ALM_TransaccionCabeceraBN ) */
    public function __construct( ALM_TransaccionCabeceraBN $o_ALM_TransaccionCabeceraBN = null )
    {
        parent::__construct();
        if ( !is_null( $o_ALM_TransaccionCabeceraBN ) )
        {
            $this->setByBN( $o_ALM_TransaccionCabeceraBN );
        }
    }

    public $b_Debug = false;

    public function getDebug()
    {
        if( SF_DEBUG )
        {
            $this->b_Debug = true;
        }
        return $this->b_Debug;
    }

    public function setDebug( $v )
    {
        $this->b_Debug = $v;
    }

    /* Establece los valores desde un objeto ALM_TransaccionCabeceraBN */
    public function setByBN( ALM_TransaccionCabeceraBN $o_ALM_TransaccionCabeceraBN )
    {
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getIdCompania() ) )
        {
            $this->setIdCompania( $o_ALM_TransaccionCabeceraBN->getIdCompania() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getIdSucursal() ) )
        {
            $this->setIdSucursal( $o_ALM_TransaccionCabeceraBN->getIdSucursal() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getIdTipoDocumento() ) )
        {
            $this->setIdTipoDocumento( $o_ALM_TransaccionCabeceraBN->getIdTipoDocumento() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getIdNumeroDocumento() ) )
        {
            $this->setIdNumeroDocumento( $o_ALM_TransaccionCabeceraBN->getIdNumeroDocumento() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getIdTransaccion() ) )
        {
            $this->setIdTransaccion( $o_ALM_TransaccionCabeceraBN->getIdTransaccion() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getAlmacenTraslado() ) )
        {
            $this->setAlmacenTraslado( $o_ALM_TransaccionCabeceraBN->getAlmacenTraslado() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getIdAlmacen() ) )
        {
            $this->setIdAlmacen( $o_ALM_TransaccionCabeceraBN->getIdAlmacen() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getIdTransaccionOperacion() ) )
        {
            $this->setIdTransaccionOperacion( $o_ALM_TransaccionCabeceraBN->getIdTransaccionOperacion() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getFechaDocumento() ) )
        {
            $this->setFechaDocumento( $o_ALM_TransaccionCabeceraBN->getFechaDocumento() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getTipodeCambio() ) )
        {
            $this->setTipodeCambio( $o_ALM_TransaccionCabeceraBN->getTipodeCambio() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getMonedaCod() ) )
        {
            $this->setMonedaCod( $o_ALM_TransaccionCabeceraBN->getMonedaCod() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getPeriodo() ) )
        {
            $this->setPeriodo( $o_ALM_TransaccionCabeceraBN->getPeriodo() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getPeriodoAnulacion() ) )
        {
            $this->setPeriodoAnulacion( $o_ALM_TransaccionCabeceraBN->getPeriodoAnulacion() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getVoucher() ) )
        {
            $this->setVoucher( $o_ALM_TransaccionCabeceraBN->getVoucher() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getCentroCostoConsumo() ) )
        {
            $this->setCentroCostoConsumo( $o_ALM_TransaccionCabeceraBN->getCentroCostoConsumo() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getReferenciaTipoDocumento() ) )
        {
            $this->setReferenciaTipoDocumento( $o_ALM_TransaccionCabeceraBN->getReferenciaTipoDocumento() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getReferenciaNumeroDocumento() ) )
        {
            $this->setReferenciaNumeroDocumento( $o_ALM_TransaccionCabeceraBN->getReferenciaNumeroDocumento() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getGuiaProveedor() ) )
        {
            $this->setGuiaProveedor( $o_ALM_TransaccionCabeceraBN->getGuiaProveedor() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getReferenciaNumeroInterno() ) )
        {
            $this->setReferenciaNumeroInterno( $o_ALM_TransaccionCabeceraBN->getReferenciaNumeroInterno() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getReferenciaInterno() ) )
        {
            $this->setReferenciaInterno( $o_ALM_TransaccionCabeceraBN->getReferenciaInterno() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getDescripcion() ) )
        {
            $this->setDescripcion( $o_ALM_TransaccionCabeceraBN->getDescripcion() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getIdProyecto() ) )
        {
            $this->setIdProyecto( $o_ALM_TransaccionCabeceraBN->getIdProyecto() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getCodigoCliente() ) )
        {
            $this->setCodigoCliente( $o_ALM_TransaccionCabeceraBN->getCodigoCliente() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getCodigoProveedor() ) )
        {
            $this->setCodigoProveedor( $o_ALM_TransaccionCabeceraBN->getCodigoProveedor() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getTipoDocumentoFiscal() ) )
        {
            $this->setTipoDocumentoFiscal( $o_ALM_TransaccionCabeceraBN->getTipoDocumentoFiscal() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getSerieDocumentoFiscal() ) )
        {
            $this->setSerieDocumentoFiscal( $o_ALM_TransaccionCabeceraBN->getSerieDocumentoFiscal() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getNumeroDocumentoFiscal() ) )
        {
            $this->setNumeroDocumentoFiscal( $o_ALM_TransaccionCabeceraBN->getNumeroDocumentoFiscal() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getTransportista() ) )
        {
            $this->setTransportista( $o_ALM_TransaccionCabeceraBN->getTransportista() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getControlEstadoSerie() ) )
        {
            $this->setControlEstadoSerie( $o_ALM_TransaccionCabeceraBN->getControlEstadoSerie() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getMotivoDevolucion() ) )
        {
            $this->setMotivoDevolucion( $o_ALM_TransaccionCabeceraBN->getMotivoDevolucion() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getUnidadNegocio() ) )
        {
            $this->setUnidadNegocio( $o_ALM_TransaccionCabeceraBN->getUnidadNegocio() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getUsuarioModificacion() ) )
        {
            $this->setUsuarioModificacion( $o_ALM_TransaccionCabeceraBN->getUsuarioModificacion() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getFechaModificacion() ) )
        {
            $this->setFechaModificacion( $o_ALM_TransaccionCabeceraBN->getFechaModificacion() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getUsuarioCreacion() ) )
        {
            $this->setUsuarioCreacion( $o_ALM_TransaccionCabeceraBN->getUsuarioCreacion() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getFechaCreacion() ) )
        {
            $this->setFechaCreacion( $o_ALM_TransaccionCabeceraBN->getFechaCreacion() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getCompaniaDescripcion() ) )
        {
            $this->setCompaniaDescripcion( $o_ALM_TransaccionCabeceraBN->getCompaniaDescripcion() );
        }
        if ( !is_null( $o_ALM_TransaccionCabeceraBN->getComentario() ) )
        {
            $this->setComentario( $o_ALM_TransaccionCabeceraBN->getComentario() );
        }
    }

    /* Graba un nuevo registro */
    public function save()
    {
        $this->validateRecord();
        $o_ALM_TransaccionCabeceraFN = new ALM_TransaccionCabeceraFN();
        $o_ALM_TransaccionCabeceraBN = $o_ALM_TransaccionCabeceraFN->selectByPk( $this->getIdCompania(), $this->getIdTipoDocumento(), $this->getIdNumeroDocumento() );
        if ( is_null( $o_ALM_TransaccionCabeceraBN ) )
        {
            $s_SQLQuery1 = "INSERT INTO ALM_TransaccionCabecera ( ";
            $s_SQLQuery2 = "VALUES ( ";
            $s_Separator = "";
            if ( !is_null( $this->getIdCompania() ) )
            {
                $s_SQLQuery1 .= $s_Separator."IdCompania";
                $s_SQLQuery2 .= $s_Separator."".$this->getIdCompania()."";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getIdSucursal() ) )
            {
                $s_SQLQuery1 .= $s_Separator."IdSucursal";
                $s_SQLQuery2 .= $s_Separator."".$this->getIdSucursal()."";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getIdTipoDocumento() ) )
            {
                $s_SQLQuery1 .= $s_Separator."IdTipoDocumento";
                $s_SQLQuery2 .= $s_Separator."'".$this->getIdTipoDocumento()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getIdNumeroDocumento() ) )
            {
                $s_SQLQuery1 .= $s_Separator."IdNumeroDocumento";
                $s_SQLQuery2 .= $s_Separator."'".$this->getIdNumeroDocumento()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getIdTransaccion() ) )
            {
                $s_SQLQuery1 .= $s_Separator."IdTransaccion";
                $s_SQLQuery2 .= $s_Separator."'".$this->getIdTransaccion()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getAlmacenTraslado() ) )
            {
                $s_SQLQuery1 .= $s_Separator."AlmacenTraslado";
                $s_SQLQuery2 .= $s_Separator."'".$this->getAlmacenTraslado()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getIdAlmacen() ) )
            {
                $s_SQLQuery1 .= $s_Separator."IdAlmacen";
                $s_SQLQuery2 .= $s_Separator."'".$this->getIdAlmacen()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getIdTransaccionOperacion() ) )
            {
                $s_SQLQuery1 .= $s_Separator."IdTransaccionOperacion";
                $s_SQLQuery2 .= $s_Separator."'".$this->getIdTransaccionOperacion()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getFechaDocumento() ) )
            {
                $s_SQLQuery1 .= $s_Separator."FechaDocumento";
                $s_SQLQuery2 .= $s_Separator."'".$this->getFechaDocumento()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getTipodeCambio() ) )
            {
                $s_SQLQuery1 .= $s_Separator."TipodeCambio";
                $s_SQLQuery2 .= $s_Separator."".$this->getTipodeCambio()."";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getMonedaCod() ) )
            {
                $s_SQLQuery1 .= $s_Separator."MonedaCod";
                $s_SQLQuery2 .= $s_Separator."'".$this->getMonedaCod()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getPeriodo() ) )
            {
                $s_SQLQuery1 .= $s_Separator."Periodo";
                $s_SQLQuery2 .= $s_Separator."'".$this->getPeriodo()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getPeriodoAnulacion() ) )
            {
                $s_SQLQuery1 .= $s_Separator."PeriodoAnulacion";
                $s_SQLQuery2 .= $s_Separator."'".$this->getPeriodoAnulacion()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getVoucher() ) )
            {
                $s_SQLQuery1 .= $s_Separator."Voucher";
                $s_SQLQuery2 .= $s_Separator."'".$this->getVoucher()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getCentroCostoConsumo() ) )
            {
                $s_SQLQuery1 .= $s_Separator."CentroCostoConsumo";
                $s_SQLQuery2 .= $s_Separator."'".$this->getCentroCostoConsumo()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getReferenciaTipoDocumento() ) )
            {
                $s_SQLQuery1 .= $s_Separator."ReferenciaTipoDocumento";
                $s_SQLQuery2 .= $s_Separator."'".$this->getReferenciaTipoDocumento()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getReferenciaNumeroDocumento() ) )
            {
                $s_SQLQuery1 .= $s_Separator."ReferenciaNumeroDocumento";
                $s_SQLQuery2 .= $s_Separator."'".$this->getReferenciaNumeroDocumento()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getGuiaProveedor() ) )
            {
                $s_SQLQuery1 .= $s_Separator."GuiaProveedor";
                $s_SQLQuery2 .= $s_Separator."'".$this->getGuiaProveedor()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getReferenciaNumeroInterno() ) )
            {
                $s_SQLQuery1 .= $s_Separator."ReferenciaNumeroInterno";
                $s_SQLQuery2 .= $s_Separator."'".$this->getReferenciaNumeroInterno()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getReferenciaInterno() ) )
            {
                $s_SQLQuery1 .= $s_Separator."ReferenciaInterno";
                $s_SQLQuery2 .= $s_Separator."'".$this->getReferenciaInterno()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getDescripcion() ) )
            {
                $s_SQLQuery1 .= $s_Separator."Descripcion";
                $s_SQLQuery2 .= $s_Separator."'".$this->getDescripcion()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getIdProyecto() ) )
            {
                $s_SQLQuery1 .= $s_Separator."IdProyecto";
                $s_SQLQuery2 .= $s_Separator."".$this->getIdProyecto()."";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getCodigoCliente() ) )
            {
                $s_SQLQuery1 .= $s_Separator."CodigoCliente";
                $s_SQLQuery2 .= $s_Separator."'".$this->getCodigoCliente()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getCodigoProveedor() ) )
            {
                $s_SQLQuery1 .= $s_Separator."CodigoProveedor";
                $s_SQLQuery2 .= $s_Separator."'".$this->getCodigoProveedor()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getTipoDocumentoFiscal() ) )
            {
                $s_SQLQuery1 .= $s_Separator."TipoDocumentoFiscal";
                $s_SQLQuery2 .= $s_Separator."'".$this->getTipoDocumentoFiscal()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getSerieDocumentoFiscal() ) )
            {
                $s_SQLQuery1 .= $s_Separator."SerieDocumentoFiscal";
                $s_SQLQuery2 .= $s_Separator."'".$this->getSerieDocumentoFiscal()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getNumeroDocumentoFiscal() ) )
            {
                $s_SQLQuery1 .= $s_Separator."NumeroDocumentoFiscal";
                $s_SQLQuery2 .= $s_Separator."'".$this->getNumeroDocumentoFiscal()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getTransportista() ) )
            {
                $s_SQLQuery1 .= $s_Separator."Transportista";
                $s_SQLQuery2 .= $s_Separator."".$this->getTransportista()."";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getControlEstadoSerie() ) )
            {
                $s_SQLQuery1 .= $s_Separator."ControlEstadoSerie";
                $s_SQLQuery2 .= $s_Separator."'".$this->getControlEstadoSerie()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getMotivoDevolucion() ) )
            {
                $s_SQLQuery1 .= $s_Separator."MotivoDevolucion";
                $s_SQLQuery2 .= $s_Separator."'".$this->getMotivoDevolucion()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getUnidadNegocio() ) )
            {
                $s_SQLQuery1 .= $s_Separator."UnidadNegocio";
                $s_SQLQuery2 .= $s_Separator."'".$this->getUnidadNegocio()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getUsuarioModificacion() ) )
            {
                $s_SQLQuery1 .= $s_Separator."UsuarioModificacion";
                $s_SQLQuery2 .= $s_Separator."'".$this->getUsuarioModificacion()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getFechaModificacion() ) )
            {
                $s_SQLQuery1 .= $s_Separator."FechaModificacion";
                $s_SQLQuery2 .= $s_Separator."'".$this->getFechaModificacion()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getUsuarioCreacion() ) )
            {
                $s_SQLQuery1 .= $s_Separator."UsuarioCreacion";
                $s_SQLQuery2 .= $s_Separator."'".$this->getUsuarioCreacion()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getFechaCreacion() ) )
            {
                $s_SQLQuery1 .= $s_Separator."FechaCreacion";
                $s_SQLQuery2 .= $s_Separator."'".$this->getFechaCreacion()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getCompaniaDescripcion() ) )
            {
                $s_SQLQuery1 .= $s_Separator."CompaniaDescripcion";
                $s_SQLQuery2 .= $s_Separator."'".$this->getCompaniaDescripcion()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getComentario() ) )
            {
                $s_SQLQuery1 .= $s_Separator."Comentario";
                $s_SQLQuery2 .= $s_Separator."'".$this->getComentario()."'";
                $s_Separator = ", ";
            }
            $s_SQLQuery = $s_SQLQuery1." ) ".$s_SQLQuery2." );";
            if( $this->getDebug() ){ pr( $s_SQLQuery ); }
            $o_Resource = Conexion::getConexion();
            $o_Statement = $o_Resource->createStatement();
            $o_Statement->executeQuery( $s_SQLQuery );
        }
        else
        {
            throw new Exception( "El id ya esta registrado." );
        }
        return true;
    }

    /* Actualiza los datos del registro */
    public function update()
    {
        $this->validateRecord();
        if ( true )
        {
            $s_SQLQuery = "UPDATE ALM_TransaccionCabecera SET ";
            $s_Separator = "";
            if ( !is_null( $this->getIdSucursal() ) )
            {
                $s_SQLQuery .= $s_Separator."IdSucursal = ".$this->getIdSucursal()."";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getIdTransaccion() ) )
            {
                $s_SQLQuery .= $s_Separator."IdTransaccion = '".$this->getIdTransaccion()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getAlmacenTraslado() ) )
            {
                $s_SQLQuery .= $s_Separator."AlmacenTraslado = '".$this->getAlmacenTraslado()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getIdAlmacen() ) )
            {
                $s_SQLQuery .= $s_Separator."IdAlmacen = '".$this->getIdAlmacen()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getIdTransaccionOperacion() ) )
            {
                $s_SQLQuery .= $s_Separator."IdTransaccionOperacion = '".$this->getIdTransaccionOperacion()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getFechaDocumento() ) )
            {
                $s_SQLQuery .= $s_Separator."FechaDocumento = '".$this->getFechaDocumento()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getTipodeCambio() ) )
            {
                $s_SQLQuery .= $s_Separator."TipodeCambio = ".$this->getTipodeCambio()."";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getMonedaCod() ) )
            {
                $s_SQLQuery .= $s_Separator."MonedaCod = '".$this->getMonedaCod()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getPeriodo() ) )
            {
                $s_SQLQuery .= $s_Separator."Periodo = '".$this->getPeriodo()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getPeriodoAnulacion() ) )
            {
                $s_SQLQuery .= $s_Separator."PeriodoAnulacion = '".$this->getPeriodoAnulacion()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getVoucher() ) )
            {
                $s_SQLQuery .= $s_Separator."Voucher = '".$this->getVoucher()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getCentroCostoConsumo() ) )
            {
                $s_SQLQuery .= $s_Separator."CentroCostoConsumo = '".$this->getCentroCostoConsumo()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getReferenciaTipoDocumento() ) )
            {
                $s_SQLQuery .= $s_Separator."ReferenciaTipoDocumento = '".$this->getReferenciaTipoDocumento()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getReferenciaNumeroDocumento() ) )
            {
                $s_SQLQuery .= $s_Separator."ReferenciaNumeroDocumento = '".$this->getReferenciaNumeroDocumento()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getGuiaProveedor() ) )
            {
                $s_SQLQuery .= $s_Separator."GuiaProveedor = '".$this->getGuiaProveedor()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getReferenciaNumeroInterno() ) )
            {
                $s_SQLQuery .= $s_Separator."ReferenciaNumeroInterno = '".$this->getReferenciaNumeroInterno()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getReferenciaInterno() ) )
            {
                $s_SQLQuery .= $s_Separator."ReferenciaInterno = '".$this->getReferenciaInterno()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getDescripcion() ) )
            {
                $s_SQLQuery .= $s_Separator."Descripcion = '".$this->getDescripcion()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getIdProyecto() ) )
            {
                $s_SQLQuery .= $s_Separator."IdProyecto = ".$this->getIdProyecto()."";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getCodigoCliente() ) )
            {
                $s_SQLQuery .= $s_Separator."CodigoCliente = '".$this->getCodigoCliente()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getCodigoProveedor() ) )
            {
                $s_SQLQuery .= $s_Separator."CodigoProveedor = '".$this->getCodigoProveedor()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getTipoDocumentoFiscal() ) )
            {
                $s_SQLQuery .= $s_Separator."TipoDocumentoFiscal = '".$this->getTipoDocumentoFiscal()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getSerieDocumentoFiscal() ) )
            {
                $s_SQLQuery .= $s_Separator."SerieDocumentoFiscal = '".$this->getSerieDocumentoFiscal()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getNumeroDocumentoFiscal() ) )
            {
                $s_SQLQuery .= $s_Separator."NumeroDocumentoFiscal = '".$this->getNumeroDocumentoFiscal()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getTransportista() ) )
            {
                $s_SQLQuery .= $s_Separator."Transportista = ".$this->getTransportista()."";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getControlEstadoSerie() ) )
            {
                $s_SQLQuery .= $s_Separator."ControlEstadoSerie = '".$this->getControlEstadoSerie()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getMotivoDevolucion() ) )
            {
                $s_SQLQuery .= $s_Separator."MotivoDevolucion = '".$this->getMotivoDevolucion()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getUnidadNegocio() ) )
            {
                $s_SQLQuery .= $s_Separator."UnidadNegocio = '".$this->getUnidadNegocio()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getUsuarioModificacion() ) )
            {
                $s_SQLQuery .= $s_Separator."UsuarioModificacion = '".$this->getUsuarioModificacion()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getFechaModificacion() ) )
            {
                $s_SQLQuery .= $s_Separator."FechaModificacion = '".$this->getFechaModificacion()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getUsuarioCreacion() ) )
            {
                $s_SQLQuery .= $s_Separator."UsuarioCreacion = '".$this->getUsuarioCreacion()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getFechaCreacion() ) )
            {
                $s_SQLQuery .= $s_Separator."FechaCreacion = '".$this->getFechaCreacion()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getCompaniaDescripcion() ) )
            {
                $s_SQLQuery .= $s_Separator."CompaniaDescripcion = '".$this->getCompaniaDescripcion()."'";
                $s_Separator = ", ";
            }
            if ( !is_null( $this->getComentario() ) )
            {
                $s_SQLQuery .= $s_Separator."Comentario = '".$this->getComentario()."'";
                $s_Separator = ", ";
            }
            $s_SQLQuery .= " WHERE  IdCompania = ".$this->getIdCompania()." AND  IdTipoDocumento = '".$this->getIdTipoDocumento()."' AND  IdNumeroDocumento = '".$this->getIdNumeroDocumento()."';";
            if( $this->getDebug() ){ pr( $s_SQLQuery ); }

            $o_Resource = Conexion::getConexion();
            $o_Statement = $o_Resource->createStatement();
            $o_Statement->executeQuery( $s_SQLQuery );
        }
        else
        {
            throw new Exception( "El id no esta registrado." );
        }
        return true;
    }

    /* Elimina el registro */
    public function delete()
    {
        $s_SQLQuery = "DELETE FROM ALM_TransaccionCabecera WHERE  IdCompania = ".$this->getIdCompania()." AND  IdTipoDocumento = '".$this->getIdTipoDocumento()."' AND  IdNumeroDocumento = '".$this->getIdNumeroDocumento()."';";
        if( $this->getDebug() ){ pr( $s_SQLQuery ); }
        $o_Resource = Conexion::getConexion();
        $o_Statement = $o_Resource->createStatement();
        $o_Statement->executeQuery( $s_SQLQuery );
        return true;
    }

}
?>