<?php

namespace StructType;

use \WsdlToPhp\PackageBase\AbstractStructBase;

/**
 * This class stands for V_SDD_ExtratoContaERP StructType
 * Meta informations extracted from the WSDL
 * - nillable: true
 * - type: tns:V_SDD_ExtratoContaERP
 * @subpackage Structs
 */
class V_SDD_ExtratoContaERP extends AbstractStructBase
{
    /**
     * The Anulado
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $Anulado;
    /**
     * The AnuladoOrigem
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $AnuladoOrigem;
    /**
     * The Cambio
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var float
     */
    public $Cambio;
    /**
     * The CambioMAlt
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * @var float
     */
    public $CambioMAlt;
    /**
     * The CambioMBase
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * @var float
     */
    public $CambioMBase;
    /**
     * The CorreccaoMonetaria
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * @var float
     */
    public $CorreccaoMonetaria;
    /**
     * The DataAnulacao
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $DataAnulacao;
    /**
     * The DataDoc
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $DataDoc;
    /**
     * The DataEstorno
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $DataEstorno;
    /**
     * The DataExtracto
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $DataExtracto;
    /**
     * The DataOrigem
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $DataOrigem;
    /**
     * The Descricao
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $Descricao;
    /**
     * The DescricaoDocumento
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $DescricaoDocumento;
    /**
     * The DespesasDebitadas
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var float
     */
    public $DespesasDebitadas;
    /**
     * The DespesasIncorridas
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var float
     */
    public $DespesasIncorridas;
    /**
     * The DifArredondamento
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var float
     */
    public $DifArredondamento;
    /**
     * The DifCambio
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var float
     */
    public $DifCambio;
    /**
     * The Entidade
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $Entidade;
    /**
     * The Estabelecimento
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $Estabelecimento;
    /**
     * The Estado
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $Estado;
    /**
     * The EstadoOrigem
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $EstadoOrigem;
    /**
     * The Estornado
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $Estornado;
    /**
     * The Fechado
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $Fechado;
    /**
     * The FechadoOrigem
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $FechadoOrigem;
    /**
     * The Filial
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $Filial;
    /**
     * The IdCabecMovCbl
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true | true
     * - pattern: [\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{12}
     * - type: tns:guid
     * @var string
     */
    public $IdCabecMovCbl;
    /**
     * The IdDoc
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true | true
     * - pattern: [\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{12}
     * - type: tns:guid
     * @var string
     */
    public $IdDoc;
    /**
     * The IdEstornoCompras
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true | true
     * - pattern: [\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{12}
     * - type: tns:guid
     * @var string
     */
    public $IdEstornoCompras;
    /**
     * The IdEstornoVendas
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true | true
     * - pattern: [\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{12}
     * - type: tns:guid
     * @var string
     */
    public $IdEstornoVendas;
    /**
     * The IdMovCBL
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true | true
     * - pattern: [\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{12}
     * - type: tns:guid
     * @var string
     */
    public $IdMovCBL;
    /**
     * The IvaIncluido
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $IvaIncluido;
    /**
     * The Modulo
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $Modulo;
    /**
     * The Moeda
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $Moeda;
    /**
     * The Nome
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $Nome;
    /**
     * The NomeEstabelecimento
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $NomeEstabelecimento;
    /**
     * The NumDoc
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $NumDoc;
    /**
     * The NumDocEstorno
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var int
     */
    public $NumDocEstorno;
    /**
     * The NumDocOrigem
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var int
     */
    public $NumDocOrigem;
    /**
     * The NumDocint
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * @var int
     */
    public $NumDocint;
    /**
     * The NumPrestacao
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * @var int
     */
    public $NumPrestacao;
    /**
     * The NumTransferencia
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * @var int
     */
    public $NumTransferencia;
    /**
     * The ObraID
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true | true
     * - pattern: [\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{12}
     * - type: tns:guid
     * @var string
     */
    public $ObraID;
    /**
     * The Serie
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $Serie;
    /**
     * The SerieEstorno
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $SerieEstorno;
    /**
     * The SerieOrigem
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $SerieOrigem;
    /**
     * The TipoConta
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $TipoConta;
    /**
     * The TipoDoc
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $TipoDoc;
    /**
     * The TipoDocumento
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $TipoDocumento;
    /**
     * The TipoEntidade
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $TipoEntidade;
    /**
     * The TipodocEstorno
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $TipodocEstorno;
    /**
     * The TipodocOrigem
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $TipodocOrigem;
    /**
     * The TotalAdiantamentosCC
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var float
     */
    public $TotalAdiantamentosCC;
    /**
     * The TotalIva
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var float
     */
    public $TotalIva;
    /**
     * The Valor
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var float
     */
    public $Valor;
    /**
     * The ValorCredito
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var float
     */
    public $ValorCredito;
    /**
     * The ValorDebito
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var float
     */
    public $ValorDebito;
    /**
     * The ValorDesconto
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var float
     */
    public $ValorDesconto;
    /**
     * The ValorEstorno
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var float
     */
    public $ValorEstorno;
    /**
     * The ValorOrigem
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var float
     */
    public $ValorOrigem;
    /**
     * The ValorPend
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * @var float
     */
    public $ValorPend;
    /**
     * The ValorTot
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * @var float
     */
    public $ValorTot;
    /**
     * The ValorTotal
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var float
     */
    public $ValorTotal;
    /**
     * The VersaoUltAct
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * @var string
     */
    public $VersaoUltAct;
    /**
     * Constructor method for V_SDD_ExtratoContaERP
     * @uses V_SDD_ExtratoContaERP::setAnulado()
     * @uses V_SDD_ExtratoContaERP::setAnuladoOrigem()
     * @uses V_SDD_ExtratoContaERP::setCambio()
     * @uses V_SDD_ExtratoContaERP::setCambioMAlt()
     * @uses V_SDD_ExtratoContaERP::setCambioMBase()
     * @uses V_SDD_ExtratoContaERP::setCorreccaoMonetaria()
     * @uses V_SDD_ExtratoContaERP::setDataAnulacao()
     * @uses V_SDD_ExtratoContaERP::setDataDoc()
     * @uses V_SDD_ExtratoContaERP::setDataEstorno()
     * @uses V_SDD_ExtratoContaERP::setDataExtracto()
     * @uses V_SDD_ExtratoContaERP::setDataOrigem()
     * @uses V_SDD_ExtratoContaERP::setDescricao()
     * @uses V_SDD_ExtratoContaERP::setDescricaoDocumento()
     * @uses V_SDD_ExtratoContaERP::setDespesasDebitadas()
     * @uses V_SDD_ExtratoContaERP::setDespesasIncorridas()
     * @uses V_SDD_ExtratoContaERP::setDifArredondamento()
     * @uses V_SDD_ExtratoContaERP::setDifCambio()
     * @uses V_SDD_ExtratoContaERP::setEntidade()
     * @uses V_SDD_ExtratoContaERP::setEstabelecimento()
     * @uses V_SDD_ExtratoContaERP::setEstado()
     * @uses V_SDD_ExtratoContaERP::setEstadoOrigem()
     * @uses V_SDD_ExtratoContaERP::setEstornado()
     * @uses V_SDD_ExtratoContaERP::setFechado()
     * @uses V_SDD_ExtratoContaERP::setFechadoOrigem()
     * @uses V_SDD_ExtratoContaERP::setFilial()
     * @uses V_SDD_ExtratoContaERP::setIdCabecMovCbl()
     * @uses V_SDD_ExtratoContaERP::setIdDoc()
     * @uses V_SDD_ExtratoContaERP::setIdEstornoCompras()
     * @uses V_SDD_ExtratoContaERP::setIdEstornoVendas()
     * @uses V_SDD_ExtratoContaERP::setIdMovCBL()
     * @uses V_SDD_ExtratoContaERP::setIvaIncluido()
     * @uses V_SDD_ExtratoContaERP::setModulo()
     * @uses V_SDD_ExtratoContaERP::setMoeda()
     * @uses V_SDD_ExtratoContaERP::setNome()
     * @uses V_SDD_ExtratoContaERP::setNomeEstabelecimento()
     * @uses V_SDD_ExtratoContaERP::setNumDoc()
     * @uses V_SDD_ExtratoContaERP::setNumDocEstorno()
     * @uses V_SDD_ExtratoContaERP::setNumDocOrigem()
     * @uses V_SDD_ExtratoContaERP::setNumDocint()
     * @uses V_SDD_ExtratoContaERP::setNumPrestacao()
     * @uses V_SDD_ExtratoContaERP::setNumTransferencia()
     * @uses V_SDD_ExtratoContaERP::setObraID()
     * @uses V_SDD_ExtratoContaERP::setSerie()
     * @uses V_SDD_ExtratoContaERP::setSerieEstorno()
     * @uses V_SDD_ExtratoContaERP::setSerieOrigem()
     * @uses V_SDD_ExtratoContaERP::setTipoConta()
     * @uses V_SDD_ExtratoContaERP::setTipoDoc()
     * @uses V_SDD_ExtratoContaERP::setTipoDocumento()
     * @uses V_SDD_ExtratoContaERP::setTipoEntidade()
     * @uses V_SDD_ExtratoContaERP::setTipodocEstorno()
     * @uses V_SDD_ExtratoContaERP::setTipodocOrigem()
     * @uses V_SDD_ExtratoContaERP::setTotalAdiantamentosCC()
     * @uses V_SDD_ExtratoContaERP::setTotalIva()
     * @uses V_SDD_ExtratoContaERP::setValor()
     * @uses V_SDD_ExtratoContaERP::setValorCredito()
     * @uses V_SDD_ExtratoContaERP::setValorDebito()
     * @uses V_SDD_ExtratoContaERP::setValorDesconto()
     * @uses V_SDD_ExtratoContaERP::setValorEstorno()
     * @uses V_SDD_ExtratoContaERP::setValorOrigem()
     * @uses V_SDD_ExtratoContaERP::setValorPend()
     * @uses V_SDD_ExtratoContaERP::setValorTot()
     * @uses V_SDD_ExtratoContaERP::setValorTotal()
     * @uses V_SDD_ExtratoContaERP::setVersaoUltAct()
     * @param bool $anulado
     * @param bool $anuladoOrigem
     * @param float $cambio
     * @param float $cambioMAlt
     * @param float $cambioMBase
     * @param float $correccaoMonetaria
     * @param string $dataAnulacao
     * @param string $dataDoc
     * @param string $dataEstorno
     * @param string $dataExtracto
     * @param string $dataOrigem
     * @param string $descricao
     * @param string $descricaoDocumento
     * @param float $despesasDebitadas
     * @param float $despesasIncorridas
     * @param float $difArredondamento
     * @param float $difCambio
     * @param string $entidade
     * @param string $estabelecimento
     * @param string $estado
     * @param string $estadoOrigem
     * @param bool $estornado
     * @param bool $fechado
     * @param bool $fechadoOrigem
     * @param string $filial
     * @param string $idCabecMovCbl
     * @param string $idDoc
     * @param string $idEstornoCompras
     * @param string $idEstornoVendas
     * @param string $idMovCBL
     * @param bool $ivaIncluido
     * @param string $modulo
     * @param string $moeda
     * @param string $nome
     * @param string $nomeEstabelecimento
     * @param string $numDoc
     * @param int $numDocEstorno
     * @param int $numDocOrigem
     * @param int $numDocint
     * @param int $numPrestacao
     * @param int $numTransferencia
     * @param string $obraID
     * @param string $serie
     * @param string $serieEstorno
     * @param string $serieOrigem
     * @param string $tipoConta
     * @param string $tipoDoc
     * @param string $tipoDocumento
     * @param string $tipoEntidade
     * @param string $tipodocEstorno
     * @param string $tipodocOrigem
     * @param float $totalAdiantamentosCC
     * @param float $totalIva
     * @param float $valor
     * @param float $valorCredito
     * @param float $valorDebito
     * @param float $valorDesconto
     * @param float $valorEstorno
     * @param float $valorOrigem
     * @param float $valorPend
     * @param float $valorTot
     * @param float $valorTotal
     * @param string $versaoUltAct
     */
    public function __construct($anulado = null, $anuladoOrigem = null, $cambio = null, $cambioMAlt = null, $cambioMBase = null, $correccaoMonetaria = null, $dataAnulacao = null, $dataDoc = null, $dataEstorno = null, $dataExtracto = null, $dataOrigem = null, $descricao = null, $descricaoDocumento = null, $despesasDebitadas = null, $despesasIncorridas = null, $difArredondamento = null, $difCambio = null, $entidade = null, $estabelecimento = null, $estado = null, $estadoOrigem = null, $estornado = null, $fechado = null, $fechadoOrigem = null, $filial = null, $idCabecMovCbl = null, $idDoc = null, $idEstornoCompras = null, $idEstornoVendas = null, $idMovCBL = null, $ivaIncluido = null, $modulo = null, $moeda = null, $nome = null, $nomeEstabelecimento = null, $numDoc = null, $numDocEstorno = null, $numDocOrigem = null, $numDocint = null, $numPrestacao = null, $numTransferencia = null, $obraID = null, $serie = null, $serieEstorno = null, $serieOrigem = null, $tipoConta = null, $tipoDoc = null, $tipoDocumento = null, $tipoEntidade = null, $tipodocEstorno = null, $tipodocOrigem = null, $totalAdiantamentosCC = null, $totalIva = null, $valor = null, $valorCredito = null, $valorDebito = null, $valorDesconto = null, $valorEstorno = null, $valorOrigem = null, $valorPend = null, $valorTot = null, $valorTotal = null, $versaoUltAct = null)
    {
        $this
            ->setAnulado($anulado)
            ->setAnuladoOrigem($anuladoOrigem)
            ->setCambio($cambio)
            ->setCambioMAlt($cambioMAlt)
            ->setCambioMBase($cambioMBase)
            ->setCorreccaoMonetaria($correccaoMonetaria)
            ->setDataAnulacao($dataAnulacao)
            ->setDataDoc($dataDoc)
            ->setDataEstorno($dataEstorno)
            ->setDataExtracto($dataExtracto)
            ->setDataOrigem($dataOrigem)
            ->setDescricao($descricao)
            ->setDescricaoDocumento($descricaoDocumento)
            ->setDespesasDebitadas($despesasDebitadas)
            ->setDespesasIncorridas($despesasIncorridas)
            ->setDifArredondamento($difArredondamento)
            ->setDifCambio($difCambio)
            ->setEntidade($entidade)
            ->setEstabelecimento($estabelecimento)
            ->setEstado($estado)
            ->setEstadoOrigem($estadoOrigem)
            ->setEstornado($estornado)
            ->setFechado($fechado)
            ->setFechadoOrigem($fechadoOrigem)
            ->setFilial($filial)
            ->setIdCabecMovCbl($idCabecMovCbl)
            ->setIdDoc($idDoc)
            ->setIdEstornoCompras($idEstornoCompras)
            ->setIdEstornoVendas($idEstornoVendas)
            ->setIdMovCBL($idMovCBL)
            ->setIvaIncluido($ivaIncluido)
            ->setModulo($modulo)
            ->setMoeda($moeda)
            ->setNome($nome)
            ->setNomeEstabelecimento($nomeEstabelecimento)
            ->setNumDoc($numDoc)
            ->setNumDocEstorno($numDocEstorno)
            ->setNumDocOrigem($numDocOrigem)
            ->setNumDocint($numDocint)
            ->setNumPrestacao($numPrestacao)
            ->setNumTransferencia($numTransferencia)
            ->setObraID($obraID)
            ->setSerie($serie)
            ->setSerieEstorno($serieEstorno)
            ->setSerieOrigem($serieOrigem)
            ->setTipoConta($tipoConta)
            ->setTipoDoc($tipoDoc)
            ->setTipoDocumento($tipoDocumento)
            ->setTipoEntidade($tipoEntidade)
            ->setTipodocEstorno($tipodocEstorno)
            ->setTipodocOrigem($tipodocOrigem)
            ->setTotalAdiantamentosCC($totalAdiantamentosCC)
            ->setTotalIva($totalIva)
            ->setValor($valor)
            ->setValorCredito($valorCredito)
            ->setValorDebito($valorDebito)
            ->setValorDesconto($valorDesconto)
            ->setValorEstorno($valorEstorno)
            ->setValorOrigem($valorOrigem)
            ->setValorPend($valorPend)
            ->setValorTot($valorTot)
            ->setValorTotal($valorTotal)
            ->setVersaoUltAct($versaoUltAct);
    }
    /**
     * Get Anulado value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return bool|null
     */
    public function getAnulado()
    {
        return isset($this->Anulado) ? $this->Anulado : null;
    }
    /**
     * Set Anulado value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param bool $anulado
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setAnulado($anulado = null)
    {
        // validation for constraint: boolean
        if (!is_null($anulado) && !is_bool($anulado)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($anulado)), __LINE__);
        }
        if (is_null($anulado) || (is_array($anulado) && empty($anulado))) {
            unset($this->Anulado);
        } else {
            $this->Anulado = $anulado;
        }
        return $this;
    }
    /**
     * Get AnuladoOrigem value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return bool|null
     */
    public function getAnuladoOrigem()
    {
        return isset($this->AnuladoOrigem) ? $this->AnuladoOrigem : null;
    }
    /**
     * Set AnuladoOrigem value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param bool $anuladoOrigem
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setAnuladoOrigem($anuladoOrigem = null)
    {
        // validation for constraint: boolean
        if (!is_null($anuladoOrigem) && !is_bool($anuladoOrigem)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($anuladoOrigem)), __LINE__);
        }
        if (is_null($anuladoOrigem) || (is_array($anuladoOrigem) && empty($anuladoOrigem))) {
            unset($this->AnuladoOrigem);
        } else {
            $this->AnuladoOrigem = $anuladoOrigem;
        }
        return $this;
    }
    /**
     * Get Cambio value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return float|null
     */
    public function getCambio()
    {
        return isset($this->Cambio) ? $this->Cambio : null;
    }
    /**
     * Set Cambio value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param float $cambio
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setCambio($cambio = null)
    {
        if (is_null($cambio) || (is_array($cambio) && empty($cambio))) {
            unset($this->Cambio);
        } else {
            $this->Cambio = $cambio;
        }
        return $this;
    }
    /**
     * Get CambioMAlt value
     * @return float|null
     */
    public function getCambioMAlt()
    {
        return $this->CambioMAlt;
    }
    /**
     * Set CambioMAlt value
     * @param float $cambioMAlt
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setCambioMAlt($cambioMAlt = null)
    {
        $this->CambioMAlt = $cambioMAlt;
        return $this;
    }
    /**
     * Get CambioMBase value
     * @return float|null
     */
    public function getCambioMBase()
    {
        return $this->CambioMBase;
    }
    /**
     * Set CambioMBase value
     * @param float $cambioMBase
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setCambioMBase($cambioMBase = null)
    {
        $this->CambioMBase = $cambioMBase;
        return $this;
    }
    /**
     * Get CorreccaoMonetaria value
     * @return float|null
     */
    public function getCorreccaoMonetaria()
    {
        return $this->CorreccaoMonetaria;
    }
    /**
     * Set CorreccaoMonetaria value
     * @param float $correccaoMonetaria
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setCorreccaoMonetaria($correccaoMonetaria = null)
    {
        $this->CorreccaoMonetaria = $correccaoMonetaria;
        return $this;
    }
    /**
     * Get DataAnulacao value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return string|null
     */
    public function getDataAnulacao()
    {
        return isset($this->DataAnulacao) ? $this->DataAnulacao : null;
    }
    /**
     * Set DataAnulacao value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param string $dataAnulacao
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setDataAnulacao($dataAnulacao = null)
    {
        // validation for constraint: string
        if (!is_null($dataAnulacao) && !is_string($dataAnulacao)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($dataAnulacao)), __LINE__);
        }
        if (is_null($dataAnulacao) || (is_array($dataAnulacao) && empty($dataAnulacao))) {
            unset($this->DataAnulacao);
        } else {
            $this->DataAnulacao = $dataAnulacao;
        }
        return $this;
    }
    /**
     * Get DataDoc value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return string|null
     */
    public function getDataDoc()
    {
        return isset($this->DataDoc) ? $this->DataDoc : null;
    }
    /**
     * Set DataDoc value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param string $dataDoc
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setDataDoc($dataDoc = null)
    {
        // validation for constraint: string
        if (!is_null($dataDoc) && !is_string($dataDoc)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($dataDoc)), __LINE__);
        }
        if (is_null($dataDoc) || (is_array($dataDoc) && empty($dataDoc))) {
            unset($this->DataDoc);
        } else {
            $this->DataDoc = $dataDoc;
        }
        return $this;
    }
    /**
     * Get DataEstorno value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return string|null
     */
    public function getDataEstorno()
    {
        return isset($this->DataEstorno) ? $this->DataEstorno : null;
    }
    /**
     * Set DataEstorno value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param string $dataEstorno
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setDataEstorno($dataEstorno = null)
    {
        // validation for constraint: string
        if (!is_null($dataEstorno) && !is_string($dataEstorno)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($dataEstorno)), __LINE__);
        }
        if (is_null($dataEstorno) || (is_array($dataEstorno) && empty($dataEstorno))) {
            unset($this->DataEstorno);
        } else {
            $this->DataEstorno = $dataEstorno;
        }
        return $this;
    }
    /**
     * Get DataExtracto value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return string|null
     */
    public function getDataExtracto()
    {
        return isset($this->DataExtracto) ? $this->DataExtracto : null;
    }
    /**
     * Set DataExtracto value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param string $dataExtracto
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setDataExtracto($dataExtracto = null)
    {
        // validation for constraint: string
        if (!is_null($dataExtracto) && !is_string($dataExtracto)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($dataExtracto)), __LINE__);
        }
        if (is_null($dataExtracto) || (is_array($dataExtracto) && empty($dataExtracto))) {
            unset($this->DataExtracto);
        } else {
            $this->DataExtracto = $dataExtracto;
        }
        return $this;
    }
    /**
     * Get DataOrigem value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return string|null
     */
    public function getDataOrigem()
    {
        return isset($this->DataOrigem) ? $this->DataOrigem : null;
    }
    /**
     * Set DataOrigem value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param string $dataOrigem
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setDataOrigem($dataOrigem = null)
    {
        // validation for constraint: string
        if (!is_null($dataOrigem) && !is_string($dataOrigem)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($dataOrigem)), __LINE__);
        }
        if (is_null($dataOrigem) || (is_array($dataOrigem) && empty($dataOrigem))) {
            unset($this->DataOrigem);
        } else {
            $this->DataOrigem = $dataOrigem;
        }
        return $this;
    }
    /**
     * Get Descricao value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return string|null
     */
    public function getDescricao()
    {
        return isset($this->Descricao) ? $this->Descricao : null;
    }
    /**
     * Set Descricao value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param string $descricao
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setDescricao($descricao = null)
    {
        // validation for constraint: string
        if (!is_null($descricao) && !is_string($descricao)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($descricao)), __LINE__);
        }
        if (is_null($descricao) || (is_array($descricao) && empty($descricao))) {
            unset($this->Descricao);
        } else {
            $this->Descricao = $descricao;
        }
        return $this;
    }
    /**
     * Get DescricaoDocumento value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return string|null
     */
    public function getDescricaoDocumento()
    {
        return isset($this->DescricaoDocumento) ? $this->DescricaoDocumento : null;
    }
    /**
     * Set DescricaoDocumento value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param string $descricaoDocumento
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setDescricaoDocumento($descricaoDocumento = null)
    {
        // validation for constraint: string
        if (!is_null($descricaoDocumento) && !is_string($descricaoDocumento)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($descricaoDocumento)), __LINE__);
        }
        if (is_null($descricaoDocumento) || (is_array($descricaoDocumento) && empty($descricaoDocumento))) {
            unset($this->DescricaoDocumento);
        } else {
            $this->DescricaoDocumento = $descricaoDocumento;
        }
        return $this;
    }
    /**
     * Get DespesasDebitadas value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return float|null
     */
    public function getDespesasDebitadas()
    {
        return isset($this->DespesasDebitadas) ? $this->DespesasDebitadas : null;
    }
    /**
     * Set DespesasDebitadas value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param float $despesasDebitadas
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setDespesasDebitadas($despesasDebitadas = null)
    {
        if (is_null($despesasDebitadas) || (is_array($despesasDebitadas) && empty($despesasDebitadas))) {
            unset($this->DespesasDebitadas);
        } else {
            $this->DespesasDebitadas = $despesasDebitadas;
        }
        return $this;
    }
    /**
     * Get DespesasIncorridas value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return float|null
     */
    public function getDespesasIncorridas()
    {
        return isset($this->DespesasIncorridas) ? $this->DespesasIncorridas : null;
    }
    /**
     * Set DespesasIncorridas value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param float $despesasIncorridas
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setDespesasIncorridas($despesasIncorridas = null)
    {
        if (is_null($despesasIncorridas) || (is_array($despesasIncorridas) && empty($despesasIncorridas))) {
            unset($this->DespesasIncorridas);
        } else {
            $this->DespesasIncorridas = $despesasIncorridas;
        }
        return $this;
    }
    /**
     * Get DifArredondamento value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return float|null
     */
    public function getDifArredondamento()
    {
        return isset($this->DifArredondamento) ? $this->DifArredondamento : null;
    }
    /**
     * Set DifArredondamento value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param float $difArredondamento
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setDifArredondamento($difArredondamento = null)
    {
        if (is_null($difArredondamento) || (is_array($difArredondamento) && empty($difArredondamento))) {
            unset($this->DifArredondamento);
        } else {
            $this->DifArredondamento = $difArredondamento;
        }
        return $this;
    }
    /**
     * Get DifCambio value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return float|null
     */
    public function getDifCambio()
    {
        return isset($this->DifCambio) ? $this->DifCambio : null;
    }
    /**
     * Set DifCambio value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param float $difCambio
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setDifCambio($difCambio = null)
    {
        if (is_null($difCambio) || (is_array($difCambio) && empty($difCambio))) {
            unset($this->DifCambio);
        } else {
            $this->DifCambio = $difCambio;
        }
        return $this;
    }
    /**
     * Get Entidade value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return string|null
     */
    public function getEntidade()
    {
        return isset($this->Entidade) ? $this->Entidade : null;
    }
    /**
     * Set Entidade value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param string $entidade
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setEntidade($entidade = null)
    {
        // validation for constraint: string
        if (!is_null($entidade) && !is_string($entidade)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($entidade)), __LINE__);
        }
        if (is_null($entidade) || (is_array($entidade) && empty($entidade))) {
            unset($this->Entidade);
        } else {
            $this->Entidade = $entidade;
        }
        return $this;
    }
    /**
     * Get Estabelecimento value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return string|null
     */
    public function getEstabelecimento()
    {
        return isset($this->Estabelecimento) ? $this->Estabelecimento : null;
    }
    /**
     * Set Estabelecimento value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param string $estabelecimento
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setEstabelecimento($estabelecimento = null)
    {
        // validation for constraint: string
        if (!is_null($estabelecimento) && !is_string($estabelecimento)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($estabelecimento)), __LINE__);
        }
        if (is_null($estabelecimento) || (is_array($estabelecimento) && empty($estabelecimento))) {
            unset($this->Estabelecimento);
        } else {
            $this->Estabelecimento = $estabelecimento;
        }
        return $this;
    }
    /**
     * Get Estado value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return string|null
     */
    public function getEstado()
    {
        return isset($this->Estado) ? $this->Estado : null;
    }
    /**
     * Set Estado value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param string $estado
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setEstado($estado = null)
    {
        // validation for constraint: string
        if (!is_null($estado) && !is_string($estado)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($estado)), __LINE__);
        }
        if (is_null($estado) || (is_array($estado) && empty($estado))) {
            unset($this->Estado);
        } else {
            $this->Estado = $estado;
        }
        return $this;
    }
    /**
     * Get EstadoOrigem value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return string|null
     */
    public function getEstadoOrigem()
    {
        return isset($this->EstadoOrigem) ? $this->EstadoOrigem : null;
    }
    /**
     * Set EstadoOrigem value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param string $estadoOrigem
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setEstadoOrigem($estadoOrigem = null)
    {
        // validation for constraint: string
        if (!is_null($estadoOrigem) && !is_string($estadoOrigem)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($estadoOrigem)), __LINE__);
        }
        if (is_null($estadoOrigem) || (is_array($estadoOrigem) && empty($estadoOrigem))) {
            unset($this->EstadoOrigem);
        } else {
            $this->EstadoOrigem = $estadoOrigem;
        }
        return $this;
    }
    /**
     * Get Estornado value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return bool|null
     */
    public function getEstornado()
    {
        return isset($this->Estornado) ? $this->Estornado : null;
    }
    /**
     * Set Estornado value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param bool $estornado
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setEstornado($estornado = null)
    {
        // validation for constraint: boolean
        if (!is_null($estornado) && !is_bool($estornado)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($estornado)), __LINE__);
        }
        if (is_null($estornado) || (is_array($estornado) && empty($estornado))) {
            unset($this->Estornado);
        } else {
            $this->Estornado = $estornado;
        }
        return $this;
    }
    /**
     * Get Fechado value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return bool|null
     */
    public function getFechado()
    {
        return isset($this->Fechado) ? $this->Fechado : null;
    }
    /**
     * Set Fechado value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param bool $fechado
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setFechado($fechado = null)
    {
        // validation for constraint: boolean
        if (!is_null($fechado) && !is_bool($fechado)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($fechado)), __LINE__);
        }
        if (is_null($fechado) || (is_array($fechado) && empty($fechado))) {
            unset($this->Fechado);
        } else {
            $this->Fechado = $fechado;
        }
        return $this;
    }
    /**
     * Get FechadoOrigem value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return bool|null
     */
    public function getFechadoOrigem()
    {
        return isset($this->FechadoOrigem) ? $this->FechadoOrigem : null;
    }
    /**
     * Set FechadoOrigem value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param bool $fechadoOrigem
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setFechadoOrigem($fechadoOrigem = null)
    {
        // validation for constraint: boolean
        if (!is_null($fechadoOrigem) && !is_bool($fechadoOrigem)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($fechadoOrigem)), __LINE__);
        }
        if (is_null($fechadoOrigem) || (is_array($fechadoOrigem) && empty($fechadoOrigem))) {
            unset($this->FechadoOrigem);
        } else {
            $this->FechadoOrigem = $fechadoOrigem;
        }
        return $this;
    }
    /**
     * Get Filial value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return string|null
     */
    public function getFilial()
    {
        return isset($this->Filial) ? $this->Filial : null;
    }
    /**
     * Set Filial value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param string $filial
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setFilial($filial = null)
    {
        // validation for constraint: string
        if (!is_null($filial) && !is_string($filial)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($filial)), __LINE__);
        }
        if (is_null($filial) || (is_array($filial) && empty($filial))) {
            unset($this->Filial);
        } else {
            $this->Filial = $filial;
        }
        return $this;
    }
    /**
     * Get IdCabecMovCbl value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return string|null
     */
    public function getIdCabecMovCbl()
    {
        return isset($this->IdCabecMovCbl) ? $this->IdCabecMovCbl : null;
    }
    /**
     * Set IdCabecMovCbl value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param string $idCabecMovCbl
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setIdCabecMovCbl($idCabecMovCbl = null)
    {
        // validation for constraint: pattern
        if (is_scalar($idCabecMovCbl) && !preg_match('/[\\da-fA-F]{8}-[\\da-fA-F]{4}-[\\da-fA-F]{4}-[\\da-fA-F]{4}-[\\da-fA-F]{12}/', $idCabecMovCbl)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a scalar value that matches "[\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{12}", "%s" given', var_export($idCabecMovCbl, true)), __LINE__);
        }
        // validation for constraint: string
        if (!is_null($idCabecMovCbl) && !is_string($idCabecMovCbl)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($idCabecMovCbl)), __LINE__);
        }
        if (is_null($idCabecMovCbl) || (is_array($idCabecMovCbl) && empty($idCabecMovCbl))) {
            unset($this->IdCabecMovCbl);
        } else {
            $this->IdCabecMovCbl = $idCabecMovCbl;
        }
        return $this;
    }
    /**
     * Get IdDoc value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return string|null
     */
    public function getIdDoc()
    {
        return isset($this->IdDoc) ? $this->IdDoc : null;
    }
    /**
     * Set IdDoc value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param string $idDoc
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setIdDoc($idDoc = null)
    {
        // validation for constraint: pattern
        if (is_scalar($idDoc) && !preg_match('/[\\da-fA-F]{8}-[\\da-fA-F]{4}-[\\da-fA-F]{4}-[\\da-fA-F]{4}-[\\da-fA-F]{12}/', $idDoc)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a scalar value that matches "[\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{12}", "%s" given', var_export($idDoc, true)), __LINE__);
        }
        // validation for constraint: string
        if (!is_null($idDoc) && !is_string($idDoc)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($idDoc)), __LINE__);
        }
        if (is_null($idDoc) || (is_array($idDoc) && empty($idDoc))) {
            unset($this->IdDoc);
        } else {
            $this->IdDoc = $idDoc;
        }
        return $this;
    }
    /**
     * Get IdEstornoCompras value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return string|null
     */
    public function getIdEstornoCompras()
    {
        return isset($this->IdEstornoCompras) ? $this->IdEstornoCompras : null;
    }
    /**
     * Set IdEstornoCompras value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param string $idEstornoCompras
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setIdEstornoCompras($idEstornoCompras = null)
    {
        // validation for constraint: pattern
        if (is_scalar($idEstornoCompras) && !preg_match('/[\\da-fA-F]{8}-[\\da-fA-F]{4}-[\\da-fA-F]{4}-[\\da-fA-F]{4}-[\\da-fA-F]{12}/', $idEstornoCompras)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a scalar value that matches "[\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{12}", "%s" given', var_export($idEstornoCompras, true)), __LINE__);
        }
        // validation for constraint: string
        if (!is_null($idEstornoCompras) && !is_string($idEstornoCompras)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($idEstornoCompras)), __LINE__);
        }
        if (is_null($idEstornoCompras) || (is_array($idEstornoCompras) && empty($idEstornoCompras))) {
            unset($this->IdEstornoCompras);
        } else {
            $this->IdEstornoCompras = $idEstornoCompras;
        }
        return $this;
    }
    /**
     * Get IdEstornoVendas value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return string|null
     */
    public function getIdEstornoVendas()
    {
        return isset($this->IdEstornoVendas) ? $this->IdEstornoVendas : null;
    }
    /**
     * Set IdEstornoVendas value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param string $idEstornoVendas
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setIdEstornoVendas($idEstornoVendas = null)
    {
        // validation for constraint: pattern
        if (is_scalar($idEstornoVendas) && !preg_match('/[\\da-fA-F]{8}-[\\da-fA-F]{4}-[\\da-fA-F]{4}-[\\da-fA-F]{4}-[\\da-fA-F]{12}/', $idEstornoVendas)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a scalar value that matches "[\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{12}", "%s" given', var_export($idEstornoVendas, true)), __LINE__);
        }
        // validation for constraint: string
        if (!is_null($idEstornoVendas) && !is_string($idEstornoVendas)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($idEstornoVendas)), __LINE__);
        }
        if (is_null($idEstornoVendas) || (is_array($idEstornoVendas) && empty($idEstornoVendas))) {
            unset($this->IdEstornoVendas);
        } else {
            $this->IdEstornoVendas = $idEstornoVendas;
        }
        return $this;
    }
    /**
     * Get IdMovCBL value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return string|null
     */
    public function getIdMovCBL()
    {
        return isset($this->IdMovCBL) ? $this->IdMovCBL : null;
    }
    /**
     * Set IdMovCBL value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param string $idMovCBL
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setIdMovCBL($idMovCBL = null)
    {
        // validation for constraint: pattern
        if (is_scalar($idMovCBL) && !preg_match('/[\\da-fA-F]{8}-[\\da-fA-F]{4}-[\\da-fA-F]{4}-[\\da-fA-F]{4}-[\\da-fA-F]{12}/', $idMovCBL)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a scalar value that matches "[\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{12}", "%s" given', var_export($idMovCBL, true)), __LINE__);
        }
        // validation for constraint: string
        if (!is_null($idMovCBL) && !is_string($idMovCBL)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($idMovCBL)), __LINE__);
        }
        if (is_null($idMovCBL) || (is_array($idMovCBL) && empty($idMovCBL))) {
            unset($this->IdMovCBL);
        } else {
            $this->IdMovCBL = $idMovCBL;
        }
        return $this;
    }
    /**
     * Get IvaIncluido value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return bool|null
     */
    public function getIvaIncluido()
    {
        return isset($this->IvaIncluido) ? $this->IvaIncluido : null;
    }
    /**
     * Set IvaIncluido value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param bool $ivaIncluido
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setIvaIncluido($ivaIncluido = null)
    {
        // validation for constraint: boolean
        if (!is_null($ivaIncluido) && !is_bool($ivaIncluido)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($ivaIncluido)), __LINE__);
        }
        if (is_null($ivaIncluido) || (is_array($ivaIncluido) && empty($ivaIncluido))) {
            unset($this->IvaIncluido);
        } else {
            $this->IvaIncluido = $ivaIncluido;
        }
        return $this;
    }
    /**
     * Get Modulo value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return string|null
     */
    public function getModulo()
    {
        return isset($this->Modulo) ? $this->Modulo : null;
    }
    /**
     * Set Modulo value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param string $modulo
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setModulo($modulo = null)
    {
        // validation for constraint: string
        if (!is_null($modulo) && !is_string($modulo)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($modulo)), __LINE__);
        }
        if (is_null($modulo) || (is_array($modulo) && empty($modulo))) {
            unset($this->Modulo);
        } else {
            $this->Modulo = $modulo;
        }
        return $this;
    }
    /**
     * Get Moeda value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return string|null
     */
    public function getMoeda()
    {
        return isset($this->Moeda) ? $this->Moeda : null;
    }
    /**
     * Set Moeda value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param string $moeda
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setMoeda($moeda = null)
    {
        // validation for constraint: string
        if (!is_null($moeda) && !is_string($moeda)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($moeda)), __LINE__);
        }
        if (is_null($moeda) || (is_array($moeda) && empty($moeda))) {
            unset($this->Moeda);
        } else {
            $this->Moeda = $moeda;
        }
        return $this;
    }
    /**
     * Get Nome value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return string|null
     */
    public function getNome()
    {
        return isset($this->Nome) ? $this->Nome : null;
    }
    /**
     * Set Nome value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param string $nome
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setNome($nome = null)
    {
        // validation for constraint: string
        if (!is_null($nome) && !is_string($nome)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($nome)), __LINE__);
        }
        if (is_null($nome) || (is_array($nome) && empty($nome))) {
            unset($this->Nome);
        } else {
            $this->Nome = $nome;
        }
        return $this;
    }
    /**
     * Get NomeEstabelecimento value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return string|null
     */
    public function getNomeEstabelecimento()
    {
        return isset($this->NomeEstabelecimento) ? $this->NomeEstabelecimento : null;
    }
    /**
     * Set NomeEstabelecimento value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param string $nomeEstabelecimento
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setNomeEstabelecimento($nomeEstabelecimento = null)
    {
        // validation for constraint: string
        if (!is_null($nomeEstabelecimento) && !is_string($nomeEstabelecimento)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($nomeEstabelecimento)), __LINE__);
        }
        if (is_null($nomeEstabelecimento) || (is_array($nomeEstabelecimento) && empty($nomeEstabelecimento))) {
            unset($this->NomeEstabelecimento);
        } else {
            $this->NomeEstabelecimento = $nomeEstabelecimento;
        }
        return $this;
    }
    /**
     * Get NumDoc value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return string|null
     */
    public function getNumDoc()
    {
        return isset($this->NumDoc) ? $this->NumDoc : null;
    }
    /**
     * Set NumDoc value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param string $numDoc
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setNumDoc($numDoc = null)
    {
        // validation for constraint: string
        if (!is_null($numDoc) && !is_string($numDoc)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($numDoc)), __LINE__);
        }
        if (is_null($numDoc) || (is_array($numDoc) && empty($numDoc))) {
            unset($this->NumDoc);
        } else {
            $this->NumDoc = $numDoc;
        }
        return $this;
    }
    /**
     * Get NumDocEstorno value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return int|null
     */
    public function getNumDocEstorno()
    {
        return isset($this->NumDocEstorno) ? $this->NumDocEstorno : null;
    }
    /**
     * Set NumDocEstorno value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param int $numDocEstorno
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setNumDocEstorno($numDocEstorno = null)
    {
        // validation for constraint: int
        if (!is_null($numDocEstorno) && !is_numeric($numDocEstorno)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a numeric value, "%s" given', gettype($numDocEstorno)), __LINE__);
        }
        if (is_null($numDocEstorno) || (is_array($numDocEstorno) && empty($numDocEstorno))) {
            unset($this->NumDocEstorno);
        } else {
            $this->NumDocEstorno = $numDocEstorno;
        }
        return $this;
    }
    /**
     * Get NumDocOrigem value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return int|null
     */
    public function getNumDocOrigem()
    {
        return isset($this->NumDocOrigem) ? $this->NumDocOrigem : null;
    }
    /**
     * Set NumDocOrigem value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param int $numDocOrigem
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setNumDocOrigem($numDocOrigem = null)
    {
        // validation for constraint: int
        if (!is_null($numDocOrigem) && !is_numeric($numDocOrigem)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a numeric value, "%s" given', gettype($numDocOrigem)), __LINE__);
        }
        if (is_null($numDocOrigem) || (is_array($numDocOrigem) && empty($numDocOrigem))) {
            unset($this->NumDocOrigem);
        } else {
            $this->NumDocOrigem = $numDocOrigem;
        }
        return $this;
    }
    /**
     * Get NumDocint value
     * @return int|null
     */
    public function getNumDocint()
    {
        return $this->NumDocint;
    }
    /**
     * Set NumDocint value
     * @param int $numDocint
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setNumDocint($numDocint = null)
    {
        // validation for constraint: int
        if (!is_null($numDocint) && !is_numeric($numDocint)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a numeric value, "%s" given', gettype($numDocint)), __LINE__);
        }
        $this->NumDocint = $numDocint;
        return $this;
    }
    /**
     * Get NumPrestacao value
     * @return int|null
     */
    public function getNumPrestacao()
    {
        return $this->NumPrestacao;
    }
    /**
     * Set NumPrestacao value
     * @param int $numPrestacao
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setNumPrestacao($numPrestacao = null)
    {
        // validation for constraint: int
        if (!is_null($numPrestacao) && !is_numeric($numPrestacao)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a numeric value, "%s" given', gettype($numPrestacao)), __LINE__);
        }
        $this->NumPrestacao = $numPrestacao;
        return $this;
    }
    /**
     * Get NumTransferencia value
     * @return int|null
     */
    public function getNumTransferencia()
    {
        return $this->NumTransferencia;
    }
    /**
     * Set NumTransferencia value
     * @param int $numTransferencia
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setNumTransferencia($numTransferencia = null)
    {
        // validation for constraint: int
        if (!is_null($numTransferencia) && !is_numeric($numTransferencia)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a numeric value, "%s" given', gettype($numTransferencia)), __LINE__);
        }
        $this->NumTransferencia = $numTransferencia;
        return $this;
    }
    /**
     * Get ObraID value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return string|null
     */
    public function getObraID()
    {
        return isset($this->ObraID) ? $this->ObraID : null;
    }
    /**
     * Set ObraID value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param string $obraID
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setObraID($obraID = null)
    {
        // validation for constraint: pattern
        if (is_scalar($obraID) && !preg_match('/[\\da-fA-F]{8}-[\\da-fA-F]{4}-[\\da-fA-F]{4}-[\\da-fA-F]{4}-[\\da-fA-F]{12}/', $obraID)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a scalar value that matches "[\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{12}", "%s" given', var_export($obraID, true)), __LINE__);
        }
        // validation for constraint: string
        if (!is_null($obraID) && !is_string($obraID)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($obraID)), __LINE__);
        }
        if (is_null($obraID) || (is_array($obraID) && empty($obraID))) {
            unset($this->ObraID);
        } else {
            $this->ObraID = $obraID;
        }
        return $this;
    }
    /**
     * Get Serie value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return string|null
     */
    public function getSerie()
    {
        return isset($this->Serie) ? $this->Serie : null;
    }
    /**
     * Set Serie value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param string $serie
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setSerie($serie = null)
    {
        // validation for constraint: string
        if (!is_null($serie) && !is_string($serie)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($serie)), __LINE__);
        }
        if (is_null($serie) || (is_array($serie) && empty($serie))) {
            unset($this->Serie);
        } else {
            $this->Serie = $serie;
        }
        return $this;
    }
    /**
     * Get SerieEstorno value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return string|null
     */
    public function getSerieEstorno()
    {
        return isset($this->SerieEstorno) ? $this->SerieEstorno : null;
    }
    /**
     * Set SerieEstorno value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param string $serieEstorno
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setSerieEstorno($serieEstorno = null)
    {
        // validation for constraint: string
        if (!is_null($serieEstorno) && !is_string($serieEstorno)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($serieEstorno)), __LINE__);
        }
        if (is_null($serieEstorno) || (is_array($serieEstorno) && empty($serieEstorno))) {
            unset($this->SerieEstorno);
        } else {
            $this->SerieEstorno = $serieEstorno;
        }
        return $this;
    }
    /**
     * Get SerieOrigem value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return string|null
     */
    public function getSerieOrigem()
    {
        return isset($this->SerieOrigem) ? $this->SerieOrigem : null;
    }
    /**
     * Set SerieOrigem value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param string $serieOrigem
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setSerieOrigem($serieOrigem = null)
    {
        // validation for constraint: string
        if (!is_null($serieOrigem) && !is_string($serieOrigem)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($serieOrigem)), __LINE__);
        }
        if (is_null($serieOrigem) || (is_array($serieOrigem) && empty($serieOrigem))) {
            unset($this->SerieOrigem);
        } else {
            $this->SerieOrigem = $serieOrigem;
        }
        return $this;
    }
    /**
     * Get TipoConta value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return string|null
     */
    public function getTipoConta()
    {
        return isset($this->TipoConta) ? $this->TipoConta : null;
    }
    /**
     * Set TipoConta value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param string $tipoConta
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setTipoConta($tipoConta = null)
    {
        // validation for constraint: string
        if (!is_null($tipoConta) && !is_string($tipoConta)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($tipoConta)), __LINE__);
        }
        if (is_null($tipoConta) || (is_array($tipoConta) && empty($tipoConta))) {
            unset($this->TipoConta);
        } else {
            $this->TipoConta = $tipoConta;
        }
        return $this;
    }
    /**
     * Get TipoDoc value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return string|null
     */
    public function getTipoDoc()
    {
        return isset($this->TipoDoc) ? $this->TipoDoc : null;
    }
    /**
     * Set TipoDoc value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param string $tipoDoc
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setTipoDoc($tipoDoc = null)
    {
        // validation for constraint: string
        if (!is_null($tipoDoc) && !is_string($tipoDoc)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($tipoDoc)), __LINE__);
        }
        if (is_null($tipoDoc) || (is_array($tipoDoc) && empty($tipoDoc))) {
            unset($this->TipoDoc);
        } else {
            $this->TipoDoc = $tipoDoc;
        }
        return $this;
    }
    /**
     * Get TipoDocumento value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return string|null
     */
    public function getTipoDocumento()
    {
        return isset($this->TipoDocumento) ? $this->TipoDocumento : null;
    }
    /**
     * Set TipoDocumento value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param string $tipoDocumento
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setTipoDocumento($tipoDocumento = null)
    {
        // validation for constraint: string
        if (!is_null($tipoDocumento) && !is_string($tipoDocumento)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($tipoDocumento)), __LINE__);
        }
        if (is_null($tipoDocumento) || (is_array($tipoDocumento) && empty($tipoDocumento))) {
            unset($this->TipoDocumento);
        } else {
            $this->TipoDocumento = $tipoDocumento;
        }
        return $this;
    }
    /**
     * Get TipoEntidade value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return string|null
     */
    public function getTipoEntidade()
    {
        return isset($this->TipoEntidade) ? $this->TipoEntidade : null;
    }
    /**
     * Set TipoEntidade value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param string $tipoEntidade
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setTipoEntidade($tipoEntidade = null)
    {
        // validation for constraint: string
        if (!is_null($tipoEntidade) && !is_string($tipoEntidade)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($tipoEntidade)), __LINE__);
        }
        if (is_null($tipoEntidade) || (is_array($tipoEntidade) && empty($tipoEntidade))) {
            unset($this->TipoEntidade);
        } else {
            $this->TipoEntidade = $tipoEntidade;
        }
        return $this;
    }
    /**
     * Get TipodocEstorno value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return string|null
     */
    public function getTipodocEstorno()
    {
        return isset($this->TipodocEstorno) ? $this->TipodocEstorno : null;
    }
    /**
     * Set TipodocEstorno value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param string $tipodocEstorno
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setTipodocEstorno($tipodocEstorno = null)
    {
        // validation for constraint: string
        if (!is_null($tipodocEstorno) && !is_string($tipodocEstorno)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($tipodocEstorno)), __LINE__);
        }
        if (is_null($tipodocEstorno) || (is_array($tipodocEstorno) && empty($tipodocEstorno))) {
            unset($this->TipodocEstorno);
        } else {
            $this->TipodocEstorno = $tipodocEstorno;
        }
        return $this;
    }
    /**
     * Get TipodocOrigem value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return string|null
     */
    public function getTipodocOrigem()
    {
        return isset($this->TipodocOrigem) ? $this->TipodocOrigem : null;
    }
    /**
     * Set TipodocOrigem value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param string $tipodocOrigem
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setTipodocOrigem($tipodocOrigem = null)
    {
        // validation for constraint: string
        if (!is_null($tipodocOrigem) && !is_string($tipodocOrigem)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($tipodocOrigem)), __LINE__);
        }
        if (is_null($tipodocOrigem) || (is_array($tipodocOrigem) && empty($tipodocOrigem))) {
            unset($this->TipodocOrigem);
        } else {
            $this->TipodocOrigem = $tipodocOrigem;
        }
        return $this;
    }
    /**
     * Get TotalAdiantamentosCC value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return float|null
     */
    public function getTotalAdiantamentosCC()
    {
        return isset($this->TotalAdiantamentosCC) ? $this->TotalAdiantamentosCC : null;
    }
    /**
     * Set TotalAdiantamentosCC value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param float $totalAdiantamentosCC
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setTotalAdiantamentosCC($totalAdiantamentosCC = null)
    {
        if (is_null($totalAdiantamentosCC) || (is_array($totalAdiantamentosCC) && empty($totalAdiantamentosCC))) {
            unset($this->TotalAdiantamentosCC);
        } else {
            $this->TotalAdiantamentosCC = $totalAdiantamentosCC;
        }
        return $this;
    }
    /**
     * Get TotalIva value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return float|null
     */
    public function getTotalIva()
    {
        return isset($this->TotalIva) ? $this->TotalIva : null;
    }
    /**
     * Set TotalIva value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param float $totalIva
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setTotalIva($totalIva = null)
    {
        if (is_null($totalIva) || (is_array($totalIva) && empty($totalIva))) {
            unset($this->TotalIva);
        } else {
            $this->TotalIva = $totalIva;
        }
        return $this;
    }
    /**
     * Get Valor value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return float|null
     */
    public function getValor()
    {
        return isset($this->Valor) ? $this->Valor : null;
    }
    /**
     * Set Valor value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param float $valor
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setValor($valor = null)
    {
        if (is_null($valor) || (is_array($valor) && empty($valor))) {
            unset($this->Valor);
        } else {
            $this->Valor = $valor;
        }
        return $this;
    }
    /**
     * Get ValorCredito value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return float|null
     */
    public function getValorCredito()
    {
        return isset($this->ValorCredito) ? $this->ValorCredito : null;
    }
    /**
     * Set ValorCredito value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param float $valorCredito
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setValorCredito($valorCredito = null)
    {
        if (is_null($valorCredito) || (is_array($valorCredito) && empty($valorCredito))) {
            unset($this->ValorCredito);
        } else {
            $this->ValorCredito = $valorCredito;
        }
        return $this;
    }
    /**
     * Get ValorDebito value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return float|null
     */
    public function getValorDebito()
    {
        return isset($this->ValorDebito) ? $this->ValorDebito : null;
    }
    /**
     * Set ValorDebito value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param float $valorDebito
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setValorDebito($valorDebito = null)
    {
        if (is_null($valorDebito) || (is_array($valorDebito) && empty($valorDebito))) {
            unset($this->ValorDebito);
        } else {
            $this->ValorDebito = $valorDebito;
        }
        return $this;
    }
    /**
     * Get ValorDesconto value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return float|null
     */
    public function getValorDesconto()
    {
        return isset($this->ValorDesconto) ? $this->ValorDesconto : null;
    }
    /**
     * Set ValorDesconto value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param float $valorDesconto
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setValorDesconto($valorDesconto = null)
    {
        if (is_null($valorDesconto) || (is_array($valorDesconto) && empty($valorDesconto))) {
            unset($this->ValorDesconto);
        } else {
            $this->ValorDesconto = $valorDesconto;
        }
        return $this;
    }
    /**
     * Get ValorEstorno value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return float|null
     */
    public function getValorEstorno()
    {
        return isset($this->ValorEstorno) ? $this->ValorEstorno : null;
    }
    /**
     * Set ValorEstorno value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param float $valorEstorno
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setValorEstorno($valorEstorno = null)
    {
        if (is_null($valorEstorno) || (is_array($valorEstorno) && empty($valorEstorno))) {
            unset($this->ValorEstorno);
        } else {
            $this->ValorEstorno = $valorEstorno;
        }
        return $this;
    }
    /**
     * Get ValorOrigem value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return float|null
     */
    public function getValorOrigem()
    {
        return isset($this->ValorOrigem) ? $this->ValorOrigem : null;
    }
    /**
     * Set ValorOrigem value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param float $valorOrigem
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setValorOrigem($valorOrigem = null)
    {
        if (is_null($valorOrigem) || (is_array($valorOrigem) && empty($valorOrigem))) {
            unset($this->ValorOrigem);
        } else {
            $this->ValorOrigem = $valorOrigem;
        }
        return $this;
    }
    /**
     * Get ValorPend value
     * @return float|null
     */
    public function getValorPend()
    {
        return $this->ValorPend;
    }
    /**
     * Set ValorPend value
     * @param float $valorPend
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setValorPend($valorPend = null)
    {
        $this->ValorPend = $valorPend;
        return $this;
    }
    /**
     * Get ValorTot value
     * @return float|null
     */
    public function getValorTot()
    {
        return $this->ValorTot;
    }
    /**
     * Set ValorTot value
     * @param float $valorTot
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setValorTot($valorTot = null)
    {
        $this->ValorTot = $valorTot;
        return $this;
    }
    /**
     * Get ValorTotal value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return float|null
     */
    public function getValorTotal()
    {
        return isset($this->ValorTotal) ? $this->ValorTotal : null;
    }
    /**
     * Set ValorTotal value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param float $valorTotal
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setValorTotal($valorTotal = null)
    {
        if (is_null($valorTotal) || (is_array($valorTotal) && empty($valorTotal))) {
            unset($this->ValorTotal);
        } else {
            $this->ValorTotal = $valorTotal;
        }
        return $this;
    }
    /**
     * Get VersaoUltAct value
     * @return string|null
     */
    public function getVersaoUltAct()
    {
        return $this->VersaoUltAct;
    }
    /**
     * Set VersaoUltAct value
     * @param string $versaoUltAct
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public function setVersaoUltAct($versaoUltAct = null)
    {
        // validation for constraint: string
        if (!is_null($versaoUltAct) && !is_string($versaoUltAct)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($versaoUltAct)), __LINE__);
        }
        $this->VersaoUltAct = $versaoUltAct;
        return $this;
    }
    /**
     * Method called when an object has been exported with var_export() functions
     * It allows to return an object instantiated with the values
     * @see AbstractStructBase::__set_state()
     * @uses AbstractStructBase::__set_state()
     * @param array $array the exported values
     * @return \StructType\V_SDD_ExtratoContaERP
     */
    public static function __set_state(array $array)
    {
        return parent::__set_state($array);
    }
    /**
     * Method returning the class name
     * @return string __CLASS__
     */
    public function __toString()
    {
        return __CLASS__;
    }
}
