<?php

namespace StructType;

use \WsdlToPhp\PackageBase\AbstractStructBase;

/**
 * This class stands for ClientesERP StructType
 * Meta informations extracted from the WSDL
 * - nillable: true
 * - type: tns:ClientesERP
 * @subpackage Structs
 */
class ClientesERP extends AbstractStructBase
{
    /**
     * The ActividadeEmpresarial
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * @var bool
     */
    public $ActividadeEmpresarial;
    /**
     * The ActualizacaoCloud
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $ActualizacaoCloud;
    /**
     * The ActualizacaoERP
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $ActualizacaoERP;
    /**
     * The AlertaIdadeSaldoCob
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $AlertaIdadeSaldoCob;
    /**
     * The AlertaValorSaldoCob
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $AlertaValorSaldoCob;
    /**
     * The AutoFacturacao
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * @var bool
     */
    public $AutoFacturacao;
    /**
     * The AvisosVenc
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $AvisosVenc;
    /**
     * The B2BArtigosParceiro
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $B2BArtigosParceiro;
    /**
     * The B2BCertificado
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $B2BCertificado;
    /**
     * The B2BDocDownload
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $B2BDocDownload;
    /**
     * The B2BEnderecoEnvio
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $B2BEnderecoEnvio;
    /**
     * The B2BEnderecoMail
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $B2BEnderecoMail;
    /**
     * The B2BEnvioNaGravacao
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $B2BEnvioNaGravacao;
    /**
     * The B2BEnvioParceiro
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $B2BEnvioParceiro;
    /**
     * The B2BIgnoraEnvioParceiro
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $B2BIgnoraEnvioParceiro;
    /**
     * The B2BIgnoraTransaccoes
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $B2BIgnoraTransaccoes;
    /**
     * The B2BTransaccoes
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $B2BTransaccoes;
    /**
     * The B2BTrataTrans
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $B2BTrataTrans;
    /**
     * The B2BUnidadesParceiro
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $B2BUnidadesParceiro;
    /**
     * The B2BUtilArtigosParceiro
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $B2BUtilArtigosParceiro;
    /**
     * The B2BUtilUnidadesParceiro
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $B2BUtilUnidadesParceiro;
    /**
     * The CDU_Concelho
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $CDU_Concelho;
    /**
     * The CDU_Contrato
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $CDU_Contrato;
    /**
     * The CDU_DataDocIdentificacao
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $CDU_DataDocIdentificacao;
    /**
     * The CDU_DataNascimento
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $CDU_DataNascimento;
    /**
     * The CDU_DebitoDireto
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $CDU_DebitoDireto;
    /**
     * The CDU_DigtsDocIdentificacao
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $CDU_DigtsDocIdentificacao;
    /**
     * The CDU_DocIdentificacao
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $CDU_DocIdentificacao;
    /**
     * The CDU_Email
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $CDU_Email;
    /**
     * The CDU_ExtensaoFoto
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $CDU_ExtensaoFoto;
    /**
     * The CDU_FacebookToken
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $CDU_FacebookToken;
    /**
     * The CDU_FaturacaoEletronica
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $CDU_FaturacaoEletronica;
    /**
     * The CDU_Foto
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $CDU_Foto;
    /**
     * The CDU_Freguesia
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $CDU_Freguesia;
    /**
     * The CDU_GoogleToken
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $CDU_GoogleToken;
    /**
     * The CDU_IdProprietario
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $CDU_IdProprietario;
    /**
     * The CDU_InfExtraDocIdentificacao
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $CDU_InfExtraDocIdentificacao;
    /**
     * The CDU_LocalDocIdentificacao
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $CDU_LocalDocIdentificacao;
    /**
     * The CDU_Nacionalidade
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $CDU_Nacionalidade;
    /**
     * The CDU_Naturalidade
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $CDU_Naturalidade;
    /**
     * The CDU_Newsletter
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $CDU_Newsletter;
    /**
     * The CDU_NomeFoto
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $CDU_NomeFoto;
    /**
     * The CDU_NumIdentificacao
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $CDU_NumIdentificacao;
    /**
     * The CDU_PagamentoSEPA
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $CDU_PagamentoSEPA;
    /**
     * The CDU_Password
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $CDU_Password;
    /**
     * The CDU_PontosCartao
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var int
     */
    public $CDU_PontosCartao;
    /**
     * The CDU_Role
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $CDU_Role;
    /**
     * The CDU_Telemovel
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $CDU_Telemovel;
    /**
     * The CDU_TipoDocIdentificacao
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $CDU_TipoDocIdentificacao;
    /**
     * The CDU_Username
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $CDU_Username;
    /**
     * The CalendarioCob
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $CalendarioCob;
    /**
     * The CambioADataDoc
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * @var bool
     */
    public $CambioADataDoc;
    /**
     * The CentroOperacional
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $CentroOperacional;
    /**
     * The Cliente
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $Cliente;
    /**
     * The ClienteAnulado
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $ClienteAnulado;
    /**
     * The CodPRIEMPRE
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $CodPRIEMPRE;
    /**
     * The CodigoGLN
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $CodigoGLN;
    /**
     * The CodigoIEC
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $CodigoIEC;
    /**
     * The CodigoIsencaoIEC
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $CodigoIsencaoIEC;
    /**
     * The CodigoLocal
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $CodigoLocal;
    /**
     * The ComissaoLetras
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var float
     */
    public $ComissaoLetras;
    /**
     * The ComissaoLetrasPercent
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $ComissaoLetrasPercent;
    /**
     * The ComissaoLetrasPercentRef
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $ComissaoLetrasPercentRef;
    /**
     * The ComissaoLetrasRef
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var float
     */
    public $ComissaoLetrasRef;
    /**
     * The CondDebitoLetrasParticular
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $CondDebitoLetrasParticular;
    /**
     * The CondDebitoLetrasParticularRef
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $CondDebitoLetrasParticularRef;
    /**
     * The CondPag
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $CondPag;
    /**
     * The ContribuinteNaoResidente
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $ContribuinteNaoResidente;
    /**
     * The CriacaoAutomatica
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $CriacaoAutomatica;
    /**
     * The DataCriacao
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $DataCriacao;
    /**
     * The DataUltimaActualizacao
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $DataUltimaActualizacao;
    /**
     * The DebitoLetrasNovas
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $DebitoLetrasNovas;
    /**
     * The DebitoLetrasReformadas
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $DebitoLetrasReformadas;
    /**
     * The Delegacao
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $Delegacao;
    /**
     * The Desconto
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var float
     */
    public $Desconto;
    /**
     * The Descricao
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $Descricao;
    /**
     * The DiaFinPerNaoPag1
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $DiaFinPerNaoPag1;
    /**
     * The DiaFinPerNaoPag2
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $DiaFinPerNaoPag2;
    /**
     * The DiaInicPerNaoPag1
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $DiaInicPerNaoPag1;
    /**
     * The DiaInicPerNaoPag2
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $DiaInicPerNaoPag2;
    /**
     * The DiaPagamento1
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $DiaPagamento1;
    /**
     * The DiaPagamento2
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $DiaPagamento2;
    /**
     * The DiaPagamento3
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $DiaPagamento3;
    /**
     * The Distrito
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $Distrito;
    /**
     * The EfectuaOutrasRetencoes
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $EfectuaOutrasRetencoes;
    /**
     * The EfectuaRetencao
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $EfectuaRetencao;
    /**
     * The EncargosBanco
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $EncargosBanco;
    /**
     * The EncomendasPendentes
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var float
     */
    public $EncomendasPendentes;
    /**
     * The EnderecoWeb
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $EnderecoWeb;
    /**
     * The Equipa
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $Equipa;
    /**
     * The ExcluirAlertasCob
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $ExcluirAlertasCob;
    /**
     * The ExcluirRecap
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $ExcluirRecap;
    /**
     * The Fac_Cp
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $Fac_Cp;
    /**
     * The Fac_Cploc
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $Fac_Cploc;
    /**
     * The Fac_Fax
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $Fac_Fax;
    /**
     * The Fac_Local
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $Fac_Local;
    /**
     * The Fac_Mor
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $Fac_Mor;
    /**
     * The Fac_Mor1
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $Fac_Mor1;
    /**
     * The Fac_Mor2
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $Fac_Mor2;
    /**
     * The Fac_Tel
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $Fac_Tel;
    /**
     * The Factoring
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * @var bool
     */
    public $Factoring;
    /**
     * The FacturacaoAgrupadaBilling
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * @var bool
     */
    public $FacturacaoAgrupadaBilling;
    /**
     * The FuncionarioResp
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $FuncionarioResp;
    /**
     * The FuncionarioToc
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $FuncionarioToc;
    /**
     * The GestaoDiasPag
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $GestaoDiasPag;
    /**
     * The IDB2BFormato
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $IDB2BFormato;
    /**
     * The IdContactoCob
     * 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 $IdContactoCob;
    /**
     * The IdGDOC
     * 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 $IdGDOC;
    /**
     * The IdadeSaldoCob
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var int
     */
    public $IdadeSaldoCob;
    /**
     * The Idioma
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $Idioma;
    /**
     * The IntegraCessaoFactoring
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $IntegraCessaoFactoring;
    /**
     * The IntrastatCliente
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $IntrastatCliente;
    /**
     * The IntrastatPorto
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $IntrastatPorto;
    /**
     * The IsentoIEC
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $IsentoIEC;
    /**
     * The JuroLetras
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var float
     */
    public $JuroLetras;
    /**
     * The JuroLetrasPostecipado
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $JuroLetrasPostecipado;
    /**
     * The JuroLetrasPostecipadoRef
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $JuroLetrasPostecipadoRef;
    /**
     * The JuroLetrasRef
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var float
     */
    public $JuroLetrasRef;
    /**
     * The LimiteCred
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var float
     */
    public $LimiteCred;
    /**
     * The LimiteCredIdade
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $LimiteCredIdade;
    /**
     * The LimiteCredValor
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $LimiteCredValor;
    /**
     * The LimiteIdadeSaldo
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var int
     */
    public $LimiteIdadeSaldo;
    /**
     * The LimiteValorSaldo
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var float
     */
    public $LimiteValorSaldo;
    /**
     * The LocalOperacao
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $LocalOperacao;
    /**
     * The ModoExp
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $ModoExp;
    /**
     * The ModoPag
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $ModoPag;
    /**
     * The ModoRec
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $ModoRec;
    /**
     * 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 NomeFiscal
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $NomeFiscal;
    /**
     * The Notas
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $Notas;
    /**
     * The NumContrib
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $NumContrib;
    /**
     * The NumDiasRetrocesso
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $NumDiasRetrocesso;
    /**
     * The NumViasDoc
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var int
     */
    public $NumViasDoc;
    /**
     * The Pais
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $Pais;
    /**
     * The PessoaSingular
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * @var bool
     */
    public $PessoaSingular;
    /**
     * The PortesLetras
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var float
     */
    public $PortesLetras;
    /**
     * The PortesLetrasRef
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var float
     */
    public $PortesLetrasRef;
    /**
     * The Protegida
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * @var bool
     */
    public $Protegida;
    /**
     * The RegimeIvaReembolsos
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * @var int
     */
    public $RegimeIvaReembolsos;
    /**
     * The RubricaPagamentos
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $RubricaPagamentos;
    /**
     * The RubricaRecebimentos
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $RubricaRecebimentos;
    /**
     * The SegmentoTerceiro
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $SegmentoTerceiro;
    /**
     * The Situacao
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $Situacao;
    /**
     * The SujeitoRecargo
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $SujeitoRecargo;
    /**
     * The SuporteAvisosVencimento
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $SuporteAvisosVencimento;
    /**
     * The Telefone2
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $Telefone2;
    /**
     * The TipoCli
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $TipoCli;
    /**
     * The TipoCred
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $TipoCred;
    /**
     * The TipoOperIntraCom
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $TipoOperIntraCom;
    /**
     * The TipoPrec
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $TipoPrec;
    /**
     * The TipoRemetente
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $TipoRemetente;
    /**
     * The TipoTerceiro
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $TipoTerceiro;
    /**
     * The Toc
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var float
     */
    public $Toc;
    /**
     * The TotalDeb
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var float
     */
    public $TotalDeb;
    /**
     * The TrataIvaCaixa
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * @var bool
     */
    public $TrataIvaCaixa;
    /**
     * The UtilizaIdioma
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var bool
     */
    public $UtilizaIdioma;
    /**
     * The ValorSaldoCob
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var float
     */
    public $ValorSaldoCob;
    /**
     * The VendasNaoConvertidas
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var float
     */
    public $VendasNaoConvertidas;
    /**
     * The Vendedor
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $Vendedor;
    /**
     * The VersaoCloud
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var int
     */
    public $VersaoCloud;
    /**
     * The VersaoUltAct
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * @var string
     */
    public $VersaoUltAct;
    /**
     * The Zona
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $Zona;
    /**
     * The eGAR_CodigoAPA
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $eGAR_CodigoAPA;
    /**
     * The eGAR_Isenta
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * @var bool
     */
    public $eGAR_Isenta;
    /**
     * The eGAR_NumPGL
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $eGAR_NumPGL;
    /**
     * The eGAR_TipoProdutor
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var string
     */
    public $eGAR_TipoProdutor;
    /**
     * Constructor method for ClientesERP
     * @uses ClientesERP::setActividadeEmpresarial()
     * @uses ClientesERP::setActualizacaoCloud()
     * @uses ClientesERP::setActualizacaoERP()
     * @uses ClientesERP::setAlertaIdadeSaldoCob()
     * @uses ClientesERP::setAlertaValorSaldoCob()
     * @uses ClientesERP::setAutoFacturacao()
     * @uses ClientesERP::setAvisosVenc()
     * @uses ClientesERP::setB2BArtigosParceiro()
     * @uses ClientesERP::setB2BCertificado()
     * @uses ClientesERP::setB2BDocDownload()
     * @uses ClientesERP::setB2BEnderecoEnvio()
     * @uses ClientesERP::setB2BEnderecoMail()
     * @uses ClientesERP::setB2BEnvioNaGravacao()
     * @uses ClientesERP::setB2BEnvioParceiro()
     * @uses ClientesERP::setB2BIgnoraEnvioParceiro()
     * @uses ClientesERP::setB2BIgnoraTransaccoes()
     * @uses ClientesERP::setB2BTransaccoes()
     * @uses ClientesERP::setB2BTrataTrans()
     * @uses ClientesERP::setB2BUnidadesParceiro()
     * @uses ClientesERP::setB2BUtilArtigosParceiro()
     * @uses ClientesERP::setB2BUtilUnidadesParceiro()
     * @uses ClientesERP::setCDU_Concelho()
     * @uses ClientesERP::setCDU_Contrato()
     * @uses ClientesERP::setCDU_DataDocIdentificacao()
     * @uses ClientesERP::setCDU_DataNascimento()
     * @uses ClientesERP::setCDU_DebitoDireto()
     * @uses ClientesERP::setCDU_DigtsDocIdentificacao()
     * @uses ClientesERP::setCDU_DocIdentificacao()
     * @uses ClientesERP::setCDU_Email()
     * @uses ClientesERP::setCDU_ExtensaoFoto()
     * @uses ClientesERP::setCDU_FacebookToken()
     * @uses ClientesERP::setCDU_FaturacaoEletronica()
     * @uses ClientesERP::setCDU_Foto()
     * @uses ClientesERP::setCDU_Freguesia()
     * @uses ClientesERP::setCDU_GoogleToken()
     * @uses ClientesERP::setCDU_IdProprietario()
     * @uses ClientesERP::setCDU_InfExtraDocIdentificacao()
     * @uses ClientesERP::setCDU_LocalDocIdentificacao()
     * @uses ClientesERP::setCDU_Nacionalidade()
     * @uses ClientesERP::setCDU_Naturalidade()
     * @uses ClientesERP::setCDU_Newsletter()
     * @uses ClientesERP::setCDU_NomeFoto()
     * @uses ClientesERP::setCDU_NumIdentificacao()
     * @uses ClientesERP::setCDU_PagamentoSEPA()
     * @uses ClientesERP::setCDU_Password()
     * @uses ClientesERP::setCDU_PontosCartao()
     * @uses ClientesERP::setCDU_Role()
     * @uses ClientesERP::setCDU_Telemovel()
     * @uses ClientesERP::setCDU_TipoDocIdentificacao()
     * @uses ClientesERP::setCDU_Username()
     * @uses ClientesERP::setCalendarioCob()
     * @uses ClientesERP::setCambioADataDoc()
     * @uses ClientesERP::setCentroOperacional()
     * @uses ClientesERP::setCliente()
     * @uses ClientesERP::setClienteAnulado()
     * @uses ClientesERP::setCodPRIEMPRE()
     * @uses ClientesERP::setCodigoGLN()
     * @uses ClientesERP::setCodigoIEC()
     * @uses ClientesERP::setCodigoIsencaoIEC()
     * @uses ClientesERP::setCodigoLocal()
     * @uses ClientesERP::setComissaoLetras()
     * @uses ClientesERP::setComissaoLetrasPercent()
     * @uses ClientesERP::setComissaoLetrasPercentRef()
     * @uses ClientesERP::setComissaoLetrasRef()
     * @uses ClientesERP::setCondDebitoLetrasParticular()
     * @uses ClientesERP::setCondDebitoLetrasParticularRef()
     * @uses ClientesERP::setCondPag()
     * @uses ClientesERP::setContribuinteNaoResidente()
     * @uses ClientesERP::setCriacaoAutomatica()
     * @uses ClientesERP::setDataCriacao()
     * @uses ClientesERP::setDataUltimaActualizacao()
     * @uses ClientesERP::setDebitoLetrasNovas()
     * @uses ClientesERP::setDebitoLetrasReformadas()
     * @uses ClientesERP::setDelegacao()
     * @uses ClientesERP::setDesconto()
     * @uses ClientesERP::setDescricao()
     * @uses ClientesERP::setDiaFinPerNaoPag1()
     * @uses ClientesERP::setDiaFinPerNaoPag2()
     * @uses ClientesERP::setDiaInicPerNaoPag1()
     * @uses ClientesERP::setDiaInicPerNaoPag2()
     * @uses ClientesERP::setDiaPagamento1()
     * @uses ClientesERP::setDiaPagamento2()
     * @uses ClientesERP::setDiaPagamento3()
     * @uses ClientesERP::setDistrito()
     * @uses ClientesERP::setEfectuaOutrasRetencoes()
     * @uses ClientesERP::setEfectuaRetencao()
     * @uses ClientesERP::setEncargosBanco()
     * @uses ClientesERP::setEncomendasPendentes()
     * @uses ClientesERP::setEnderecoWeb()
     * @uses ClientesERP::setEquipa()
     * @uses ClientesERP::setExcluirAlertasCob()
     * @uses ClientesERP::setExcluirRecap()
     * @uses ClientesERP::setFac_Cp()
     * @uses ClientesERP::setFac_Cploc()
     * @uses ClientesERP::setFac_Fax()
     * @uses ClientesERP::setFac_Local()
     * @uses ClientesERP::setFac_Mor()
     * @uses ClientesERP::setFac_Mor1()
     * @uses ClientesERP::setFac_Mor2()
     * @uses ClientesERP::setFac_Tel()
     * @uses ClientesERP::setFactoring()
     * @uses ClientesERP::setFacturacaoAgrupadaBilling()
     * @uses ClientesERP::setFuncionarioResp()
     * @uses ClientesERP::setFuncionarioToc()
     * @uses ClientesERP::setGestaoDiasPag()
     * @uses ClientesERP::setIDB2BFormato()
     * @uses ClientesERP::setIdContactoCob()
     * @uses ClientesERP::setIdGDOC()
     * @uses ClientesERP::setIdadeSaldoCob()
     * @uses ClientesERP::setIdioma()
     * @uses ClientesERP::setIntegraCessaoFactoring()
     * @uses ClientesERP::setIntrastatCliente()
     * @uses ClientesERP::setIntrastatPorto()
     * @uses ClientesERP::setIsentoIEC()
     * @uses ClientesERP::setJuroLetras()
     * @uses ClientesERP::setJuroLetrasPostecipado()
     * @uses ClientesERP::setJuroLetrasPostecipadoRef()
     * @uses ClientesERP::setJuroLetrasRef()
     * @uses ClientesERP::setLimiteCred()
     * @uses ClientesERP::setLimiteCredIdade()
     * @uses ClientesERP::setLimiteCredValor()
     * @uses ClientesERP::setLimiteIdadeSaldo()
     * @uses ClientesERP::setLimiteValorSaldo()
     * @uses ClientesERP::setLocalOperacao()
     * @uses ClientesERP::setModoExp()
     * @uses ClientesERP::setModoPag()
     * @uses ClientesERP::setModoRec()
     * @uses ClientesERP::setMoeda()
     * @uses ClientesERP::setNome()
     * @uses ClientesERP::setNomeFiscal()
     * @uses ClientesERP::setNotas()
     * @uses ClientesERP::setNumContrib()
     * @uses ClientesERP::setNumDiasRetrocesso()
     * @uses ClientesERP::setNumViasDoc()
     * @uses ClientesERP::setPais()
     * @uses ClientesERP::setPessoaSingular()
     * @uses ClientesERP::setPortesLetras()
     * @uses ClientesERP::setPortesLetrasRef()
     * @uses ClientesERP::setProtegida()
     * @uses ClientesERP::setRegimeIvaReembolsos()
     * @uses ClientesERP::setRubricaPagamentos()
     * @uses ClientesERP::setRubricaRecebimentos()
     * @uses ClientesERP::setSegmentoTerceiro()
     * @uses ClientesERP::setSituacao()
     * @uses ClientesERP::setSujeitoRecargo()
     * @uses ClientesERP::setSuporteAvisosVencimento()
     * @uses ClientesERP::setTelefone2()
     * @uses ClientesERP::setTipoCli()
     * @uses ClientesERP::setTipoCred()
     * @uses ClientesERP::setTipoOperIntraCom()
     * @uses ClientesERP::setTipoPrec()
     * @uses ClientesERP::setTipoRemetente()
     * @uses ClientesERP::setTipoTerceiro()
     * @uses ClientesERP::setToc()
     * @uses ClientesERP::setTotalDeb()
     * @uses ClientesERP::setTrataIvaCaixa()
     * @uses ClientesERP::setUtilizaIdioma()
     * @uses ClientesERP::setValorSaldoCob()
     * @uses ClientesERP::setVendasNaoConvertidas()
     * @uses ClientesERP::setVendedor()
     * @uses ClientesERP::setVersaoCloud()
     * @uses ClientesERP::setVersaoUltAct()
     * @uses ClientesERP::setZona()
     * @uses ClientesERP::setEGAR_CodigoAPA()
     * @uses ClientesERP::setEGAR_Isenta()
     * @uses ClientesERP::setEGAR_NumPGL()
     * @uses ClientesERP::setEGAR_TipoProdutor()
     * @param bool $actividadeEmpresarial
     * @param string $actualizacaoCloud
     * @param string $actualizacaoERP
     * @param bool $alertaIdadeSaldoCob
     * @param bool $alertaValorSaldoCob
     * @param bool $autoFacturacao
     * @param bool $avisosVenc
     * @param string $b2BArtigosParceiro
     * @param string $b2BCertificado
     * @param bool $b2BDocDownload
     * @param string $b2BEnderecoEnvio
     * @param string $b2BEnderecoMail
     * @param bool $b2BEnvioNaGravacao
     * @param string $b2BEnvioParceiro
     * @param bool $b2BIgnoraEnvioParceiro
     * @param bool $b2BIgnoraTransaccoes
     * @param string $b2BTransaccoes
     * @param bool $b2BTrataTrans
     * @param string $b2BUnidadesParceiro
     * @param bool $b2BUtilArtigosParceiro
     * @param bool $b2BUtilUnidadesParceiro
     * @param string $cDU_Concelho
     * @param string $cDU_Contrato
     * @param string $cDU_DataDocIdentificacao
     * @param string $cDU_DataNascimento
     * @param bool $cDU_DebitoDireto
     * @param string $cDU_DigtsDocIdentificacao
     * @param string $cDU_DocIdentificacao
     * @param string $cDU_Email
     * @param string $cDU_ExtensaoFoto
     * @param string $cDU_FacebookToken
     * @param bool $cDU_FaturacaoEletronica
     * @param string $cDU_Foto
     * @param string $cDU_Freguesia
     * @param string $cDU_GoogleToken
     * @param string $cDU_IdProprietario
     * @param string $cDU_InfExtraDocIdentificacao
     * @param string $cDU_LocalDocIdentificacao
     * @param string $cDU_Nacionalidade
     * @param string $cDU_Naturalidade
     * @param bool $cDU_Newsletter
     * @param string $cDU_NomeFoto
     * @param string $cDU_NumIdentificacao
     * @param bool $cDU_PagamentoSEPA
     * @param string $cDU_Password
     * @param int $cDU_PontosCartao
     * @param string $cDU_Role
     * @param string $cDU_Telemovel
     * @param string $cDU_TipoDocIdentificacao
     * @param string $cDU_Username
     * @param string $calendarioCob
     * @param bool $cambioADataDoc
     * @param string $centroOperacional
     * @param string $cliente
     * @param bool $clienteAnulado
     * @param string $codPRIEMPRE
     * @param string $codigoGLN
     * @param string $codigoIEC
     * @param string $codigoIsencaoIEC
     * @param string $codigoLocal
     * @param float $comissaoLetras
     * @param bool $comissaoLetrasPercent
     * @param bool $comissaoLetrasPercentRef
     * @param float $comissaoLetrasRef
     * @param bool $condDebitoLetrasParticular
     * @param bool $condDebitoLetrasParticularRef
     * @param string $condPag
     * @param string $contribuinteNaoResidente
     * @param bool $criacaoAutomatica
     * @param string $dataCriacao
     * @param string $dataUltimaActualizacao
     * @param bool $debitoLetrasNovas
     * @param bool $debitoLetrasReformadas
     * @param string $delegacao
     * @param float $desconto
     * @param string $descricao
     * @param string $diaFinPerNaoPag1
     * @param string $diaFinPerNaoPag2
     * @param string $diaInicPerNaoPag1
     * @param string $diaInicPerNaoPag2
     * @param string $diaPagamento1
     * @param string $diaPagamento2
     * @param string $diaPagamento3
     * @param string $distrito
     * @param bool $efectuaOutrasRetencoes
     * @param bool $efectuaRetencao
     * @param bool $encargosBanco
     * @param float $encomendasPendentes
     * @param string $enderecoWeb
     * @param string $equipa
     * @param bool $excluirAlertasCob
     * @param bool $excluirRecap
     * @param string $fac_Cp
     * @param string $fac_Cploc
     * @param string $fac_Fax
     * @param string $fac_Local
     * @param string $fac_Mor
     * @param string $fac_Mor1
     * @param string $fac_Mor2
     * @param string $fac_Tel
     * @param bool $factoring
     * @param bool $facturacaoAgrupadaBilling
     * @param string $funcionarioResp
     * @param string $funcionarioToc
     * @param bool $gestaoDiasPag
     * @param string $iDB2BFormato
     * @param string $idContactoCob
     * @param string $idGDOC
     * @param int $idadeSaldoCob
     * @param string $idioma
     * @param bool $integraCessaoFactoring
     * @param bool $intrastatCliente
     * @param string $intrastatPorto
     * @param bool $isentoIEC
     * @param float $juroLetras
     * @param bool $juroLetrasPostecipado
     * @param bool $juroLetrasPostecipadoRef
     * @param float $juroLetrasRef
     * @param float $limiteCred
     * @param bool $limiteCredIdade
     * @param bool $limiteCredValor
     * @param int $limiteIdadeSaldo
     * @param float $limiteValorSaldo
     * @param string $localOperacao
     * @param string $modoExp
     * @param string $modoPag
     * @param string $modoRec
     * @param string $moeda
     * @param string $nome
     * @param string $nomeFiscal
     * @param string $notas
     * @param string $numContrib
     * @param string $numDiasRetrocesso
     * @param int $numViasDoc
     * @param string $pais
     * @param bool $pessoaSingular
     * @param float $portesLetras
     * @param float $portesLetrasRef
     * @param bool $protegida
     * @param int $regimeIvaReembolsos
     * @param string $rubricaPagamentos
     * @param string $rubricaRecebimentos
     * @param string $segmentoTerceiro
     * @param string $situacao
     * @param bool $sujeitoRecargo
     * @param string $suporteAvisosVencimento
     * @param string $telefone2
     * @param string $tipoCli
     * @param string $tipoCred
     * @param string $tipoOperIntraCom
     * @param string $tipoPrec
     * @param string $tipoRemetente
     * @param string $tipoTerceiro
     * @param float $toc
     * @param float $totalDeb
     * @param bool $trataIvaCaixa
     * @param bool $utilizaIdioma
     * @param float $valorSaldoCob
     * @param float $vendasNaoConvertidas
     * @param string $vendedor
     * @param int $versaoCloud
     * @param string $versaoUltAct
     * @param string $zona
     * @param string $eGAR_CodigoAPA
     * @param bool $eGAR_Isenta
     * @param string $eGAR_NumPGL
     * @param string $eGAR_TipoProdutor
     */
    public function __construct($actividadeEmpresarial = null, $actualizacaoCloud = null, $actualizacaoERP = null, $alertaIdadeSaldoCob = null, $alertaValorSaldoCob = null, $autoFacturacao = null, $avisosVenc = null, $b2BArtigosParceiro = null, $b2BCertificado = null, $b2BDocDownload = null, $b2BEnderecoEnvio = null, $b2BEnderecoMail = null, $b2BEnvioNaGravacao = null, $b2BEnvioParceiro = null, $b2BIgnoraEnvioParceiro = null, $b2BIgnoraTransaccoes = null, $b2BTransaccoes = null, $b2BTrataTrans = null, $b2BUnidadesParceiro = null, $b2BUtilArtigosParceiro = null, $b2BUtilUnidadesParceiro = null, $cDU_Concelho = null, $cDU_Contrato = null, $cDU_DataDocIdentificacao = null, $cDU_DataNascimento = null, $cDU_DebitoDireto = null, $cDU_DigtsDocIdentificacao = null, $cDU_DocIdentificacao = null, $cDU_Email = null, $cDU_ExtensaoFoto = null, $cDU_FacebookToken = null, $cDU_FaturacaoEletronica = null, $cDU_Foto = null, $cDU_Freguesia = null, $cDU_GoogleToken = null, $cDU_IdProprietario = null, $cDU_InfExtraDocIdentificacao = null, $cDU_LocalDocIdentificacao = null, $cDU_Nacionalidade = null, $cDU_Naturalidade = null, $cDU_Newsletter = null, $cDU_NomeFoto = null, $cDU_NumIdentificacao = null, $cDU_PagamentoSEPA = null, $cDU_Password = null, $cDU_PontosCartao = null, $cDU_Role = null, $cDU_Telemovel = null, $cDU_TipoDocIdentificacao = null, $cDU_Username = null, $calendarioCob = null, $cambioADataDoc = null, $centroOperacional = null, $cliente = null, $clienteAnulado = null, $codPRIEMPRE = null, $codigoGLN = null, $codigoIEC = null, $codigoIsencaoIEC = null, $codigoLocal = null, $comissaoLetras = null, $comissaoLetrasPercent = null, $comissaoLetrasPercentRef = null, $comissaoLetrasRef = null, $condDebitoLetrasParticular = null, $condDebitoLetrasParticularRef = null, $condPag = null, $contribuinteNaoResidente = null, $criacaoAutomatica = null, $dataCriacao = null, $dataUltimaActualizacao = null, $debitoLetrasNovas = null, $debitoLetrasReformadas = null, $delegacao = null, $desconto = null, $descricao = null, $diaFinPerNaoPag1 = null, $diaFinPerNaoPag2 = null, $diaInicPerNaoPag1 = null, $diaInicPerNaoPag2 = null, $diaPagamento1 = null, $diaPagamento2 = null, $diaPagamento3 = null, $distrito = null, $efectuaOutrasRetencoes = null, $efectuaRetencao = null, $encargosBanco = null, $encomendasPendentes = null, $enderecoWeb = null, $equipa = null, $excluirAlertasCob = null, $excluirRecap = null, $fac_Cp = null, $fac_Cploc = null, $fac_Fax = null, $fac_Local = null, $fac_Mor = null, $fac_Mor1 = null, $fac_Mor2 = null, $fac_Tel = null, $factoring = null, $facturacaoAgrupadaBilling = null, $funcionarioResp = null, $funcionarioToc = null, $gestaoDiasPag = null, $iDB2BFormato = null, $idContactoCob = null, $idGDOC = null, $idadeSaldoCob = null, $idioma = null, $integraCessaoFactoring = null, $intrastatCliente = null, $intrastatPorto = null, $isentoIEC = null, $juroLetras = null, $juroLetrasPostecipado = null, $juroLetrasPostecipadoRef = null, $juroLetrasRef = null, $limiteCred = null, $limiteCredIdade = null, $limiteCredValor = null, $limiteIdadeSaldo = null, $limiteValorSaldo = null, $localOperacao = null, $modoExp = null, $modoPag = null, $modoRec = null, $moeda = null, $nome = null, $nomeFiscal = null, $notas = null, $numContrib = null, $numDiasRetrocesso = null, $numViasDoc = null, $pais = null, $pessoaSingular = null, $portesLetras = null, $portesLetrasRef = null, $protegida = null, $regimeIvaReembolsos = null, $rubricaPagamentos = null, $rubricaRecebimentos = null, $segmentoTerceiro = null, $situacao = null, $sujeitoRecargo = null, $suporteAvisosVencimento = null, $telefone2 = null, $tipoCli = null, $tipoCred = null, $tipoOperIntraCom = null, $tipoPrec = null, $tipoRemetente = null, $tipoTerceiro = null, $toc = null, $totalDeb = null, $trataIvaCaixa = null, $utilizaIdioma = null, $valorSaldoCob = null, $vendasNaoConvertidas = null, $vendedor = null, $versaoCloud = null, $versaoUltAct = null, $zona = null, $eGAR_CodigoAPA = null, $eGAR_Isenta = null, $eGAR_NumPGL = null, $eGAR_TipoProdutor = null)
    {
        $this
            ->setActividadeEmpresarial($actividadeEmpresarial)
            ->setActualizacaoCloud($actualizacaoCloud)
            ->setActualizacaoERP($actualizacaoERP)
            ->setAlertaIdadeSaldoCob($alertaIdadeSaldoCob)
            ->setAlertaValorSaldoCob($alertaValorSaldoCob)
            ->setAutoFacturacao($autoFacturacao)
            ->setAvisosVenc($avisosVenc)
            ->setB2BArtigosParceiro($b2BArtigosParceiro)
            ->setB2BCertificado($b2BCertificado)
            ->setB2BDocDownload($b2BDocDownload)
            ->setB2BEnderecoEnvio($b2BEnderecoEnvio)
            ->setB2BEnderecoMail($b2BEnderecoMail)
            ->setB2BEnvioNaGravacao($b2BEnvioNaGravacao)
            ->setB2BEnvioParceiro($b2BEnvioParceiro)
            ->setB2BIgnoraEnvioParceiro($b2BIgnoraEnvioParceiro)
            ->setB2BIgnoraTransaccoes($b2BIgnoraTransaccoes)
            ->setB2BTransaccoes($b2BTransaccoes)
            ->setB2BTrataTrans($b2BTrataTrans)
            ->setB2BUnidadesParceiro($b2BUnidadesParceiro)
            ->setB2BUtilArtigosParceiro($b2BUtilArtigosParceiro)
            ->setB2BUtilUnidadesParceiro($b2BUtilUnidadesParceiro)
            ->setCDU_Concelho($cDU_Concelho)
            ->setCDU_Contrato($cDU_Contrato)
            ->setCDU_DataDocIdentificacao($cDU_DataDocIdentificacao)
            ->setCDU_DataNascimento($cDU_DataNascimento)
            ->setCDU_DebitoDireto($cDU_DebitoDireto)
            ->setCDU_DigtsDocIdentificacao($cDU_DigtsDocIdentificacao)
            ->setCDU_DocIdentificacao($cDU_DocIdentificacao)
            ->setCDU_Email($cDU_Email)
            ->setCDU_ExtensaoFoto($cDU_ExtensaoFoto)
            ->setCDU_FacebookToken($cDU_FacebookToken)
            ->setCDU_FaturacaoEletronica($cDU_FaturacaoEletronica)
            ->setCDU_Foto($cDU_Foto)
            ->setCDU_Freguesia($cDU_Freguesia)
            ->setCDU_GoogleToken($cDU_GoogleToken)
            ->setCDU_IdProprietario($cDU_IdProprietario)
            ->setCDU_InfExtraDocIdentificacao($cDU_InfExtraDocIdentificacao)
            ->setCDU_LocalDocIdentificacao($cDU_LocalDocIdentificacao)
            ->setCDU_Nacionalidade($cDU_Nacionalidade)
            ->setCDU_Naturalidade($cDU_Naturalidade)
            ->setCDU_Newsletter($cDU_Newsletter)
            ->setCDU_NomeFoto($cDU_NomeFoto)
            ->setCDU_NumIdentificacao($cDU_NumIdentificacao)
            ->setCDU_PagamentoSEPA($cDU_PagamentoSEPA)
            ->setCDU_Password($cDU_Password)
            ->setCDU_PontosCartao($cDU_PontosCartao)
            ->setCDU_Role($cDU_Role)
            ->setCDU_Telemovel($cDU_Telemovel)
            ->setCDU_TipoDocIdentificacao($cDU_TipoDocIdentificacao)
            ->setCDU_Username($cDU_Username)
            ->setCalendarioCob($calendarioCob)
            ->setCambioADataDoc($cambioADataDoc)
            ->setCentroOperacional($centroOperacional)
            ->setCliente($cliente)
            ->setClienteAnulado($clienteAnulado)
            ->setCodPRIEMPRE($codPRIEMPRE)
            ->setCodigoGLN($codigoGLN)
            ->setCodigoIEC($codigoIEC)
            ->setCodigoIsencaoIEC($codigoIsencaoIEC)
            ->setCodigoLocal($codigoLocal)
            ->setComissaoLetras($comissaoLetras)
            ->setComissaoLetrasPercent($comissaoLetrasPercent)
            ->setComissaoLetrasPercentRef($comissaoLetrasPercentRef)
            ->setComissaoLetrasRef($comissaoLetrasRef)
            ->setCondDebitoLetrasParticular($condDebitoLetrasParticular)
            ->setCondDebitoLetrasParticularRef($condDebitoLetrasParticularRef)
            ->setCondPag($condPag)
            ->setContribuinteNaoResidente($contribuinteNaoResidente)
            ->setCriacaoAutomatica($criacaoAutomatica)
            ->setDataCriacao($dataCriacao)
            ->setDataUltimaActualizacao($dataUltimaActualizacao)
            ->setDebitoLetrasNovas($debitoLetrasNovas)
            ->setDebitoLetrasReformadas($debitoLetrasReformadas)
            ->setDelegacao($delegacao)
            ->setDesconto($desconto)
            ->setDescricao($descricao)
            ->setDiaFinPerNaoPag1($diaFinPerNaoPag1)
            ->setDiaFinPerNaoPag2($diaFinPerNaoPag2)
            ->setDiaInicPerNaoPag1($diaInicPerNaoPag1)
            ->setDiaInicPerNaoPag2($diaInicPerNaoPag2)
            ->setDiaPagamento1($diaPagamento1)
            ->setDiaPagamento2($diaPagamento2)
            ->setDiaPagamento3($diaPagamento3)
            ->setDistrito($distrito)
            ->setEfectuaOutrasRetencoes($efectuaOutrasRetencoes)
            ->setEfectuaRetencao($efectuaRetencao)
            ->setEncargosBanco($encargosBanco)
            ->setEncomendasPendentes($encomendasPendentes)
            ->setEnderecoWeb($enderecoWeb)
            ->setEquipa($equipa)
            ->setExcluirAlertasCob($excluirAlertasCob)
            ->setExcluirRecap($excluirRecap)
            ->setFac_Cp($fac_Cp)
            ->setFac_Cploc($fac_Cploc)
            ->setFac_Fax($fac_Fax)
            ->setFac_Local($fac_Local)
            ->setFac_Mor($fac_Mor)
            ->setFac_Mor1($fac_Mor1)
            ->setFac_Mor2($fac_Mor2)
            ->setFac_Tel($fac_Tel)
            ->setFactoring($factoring)
            ->setFacturacaoAgrupadaBilling($facturacaoAgrupadaBilling)
            ->setFuncionarioResp($funcionarioResp)
            ->setFuncionarioToc($funcionarioToc)
            ->setGestaoDiasPag($gestaoDiasPag)
            ->setIDB2BFormato($iDB2BFormato)
            ->setIdContactoCob($idContactoCob)
            ->setIdGDOC($idGDOC)
            ->setIdadeSaldoCob($idadeSaldoCob)
            ->setIdioma($idioma)
            ->setIntegraCessaoFactoring($integraCessaoFactoring)
            ->setIntrastatCliente($intrastatCliente)
            ->setIntrastatPorto($intrastatPorto)
            ->setIsentoIEC($isentoIEC)
            ->setJuroLetras($juroLetras)
            ->setJuroLetrasPostecipado($juroLetrasPostecipado)
            ->setJuroLetrasPostecipadoRef($juroLetrasPostecipadoRef)
            ->setJuroLetrasRef($juroLetrasRef)
            ->setLimiteCred($limiteCred)
            ->setLimiteCredIdade($limiteCredIdade)
            ->setLimiteCredValor($limiteCredValor)
            ->setLimiteIdadeSaldo($limiteIdadeSaldo)
            ->setLimiteValorSaldo($limiteValorSaldo)
            ->setLocalOperacao($localOperacao)
            ->setModoExp($modoExp)
            ->setModoPag($modoPag)
            ->setModoRec($modoRec)
            ->setMoeda($moeda)
            ->setNome($nome)
            ->setNomeFiscal($nomeFiscal)
            ->setNotas($notas)
            ->setNumContrib($numContrib)
            ->setNumDiasRetrocesso($numDiasRetrocesso)
            ->setNumViasDoc($numViasDoc)
            ->setPais($pais)
            ->setPessoaSingular($pessoaSingular)
            ->setPortesLetras($portesLetras)
            ->setPortesLetrasRef($portesLetrasRef)
            ->setProtegida($protegida)
            ->setRegimeIvaReembolsos($regimeIvaReembolsos)
            ->setRubricaPagamentos($rubricaPagamentos)
            ->setRubricaRecebimentos($rubricaRecebimentos)
            ->setSegmentoTerceiro($segmentoTerceiro)
            ->setSituacao($situacao)
            ->setSujeitoRecargo($sujeitoRecargo)
            ->setSuporteAvisosVencimento($suporteAvisosVencimento)
            ->setTelefone2($telefone2)
            ->setTipoCli($tipoCli)
            ->setTipoCred($tipoCred)
            ->setTipoOperIntraCom($tipoOperIntraCom)
            ->setTipoPrec($tipoPrec)
            ->setTipoRemetente($tipoRemetente)
            ->setTipoTerceiro($tipoTerceiro)
            ->setToc($toc)
            ->setTotalDeb($totalDeb)
            ->setTrataIvaCaixa($trataIvaCaixa)
            ->setUtilizaIdioma($utilizaIdioma)
            ->setValorSaldoCob($valorSaldoCob)
            ->setVendasNaoConvertidas($vendasNaoConvertidas)
            ->setVendedor($vendedor)
            ->setVersaoCloud($versaoCloud)
            ->setVersaoUltAct($versaoUltAct)
            ->setZona($zona)
            ->setEGAR_CodigoAPA($eGAR_CodigoAPA)
            ->setEGAR_Isenta($eGAR_Isenta)
            ->setEGAR_NumPGL($eGAR_NumPGL)
            ->setEGAR_TipoProdutor($eGAR_TipoProdutor);
    }
    /**
     * Get ActividadeEmpresarial value
     * @return bool|null
     */
    public function getActividadeEmpresarial()
    {
        return $this->ActividadeEmpresarial;
    }
    /**
     * Set ActividadeEmpresarial value
     * @param bool $actividadeEmpresarial
     * @return \StructType\ClientesERP
     */
    public function setActividadeEmpresarial($actividadeEmpresarial = null)
    {
        // validation for constraint: boolean
        if (!is_null($actividadeEmpresarial) && !is_bool($actividadeEmpresarial)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($actividadeEmpresarial)), __LINE__);
        }
        $this->ActividadeEmpresarial = $actividadeEmpresarial;
        return $this;
    }
    /**
     * Get ActualizacaoCloud 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 getActualizacaoCloud()
    {
        return isset($this->ActualizacaoCloud) ? $this->ActualizacaoCloud : null;
    }
    /**
     * Set ActualizacaoCloud 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 $actualizacaoCloud
     * @return \StructType\ClientesERP
     */
    public function setActualizacaoCloud($actualizacaoCloud = null)
    {
        // validation for constraint: string
        if (!is_null($actualizacaoCloud) && !is_string($actualizacaoCloud)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($actualizacaoCloud)), __LINE__);
        }
        if (is_null($actualizacaoCloud) || (is_array($actualizacaoCloud) && empty($actualizacaoCloud))) {
            unset($this->ActualizacaoCloud);
        } else {
            $this->ActualizacaoCloud = $actualizacaoCloud;
        }
        return $this;
    }
    /**
     * Get ActualizacaoERP 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 getActualizacaoERP()
    {
        return isset($this->ActualizacaoERP) ? $this->ActualizacaoERP : null;
    }
    /**
     * Set ActualizacaoERP 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 $actualizacaoERP
     * @return \StructType\ClientesERP
     */
    public function setActualizacaoERP($actualizacaoERP = null)
    {
        // validation for constraint: string
        if (!is_null($actualizacaoERP) && !is_string($actualizacaoERP)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($actualizacaoERP)), __LINE__);
        }
        if (is_null($actualizacaoERP) || (is_array($actualizacaoERP) && empty($actualizacaoERP))) {
            unset($this->ActualizacaoERP);
        } else {
            $this->ActualizacaoERP = $actualizacaoERP;
        }
        return $this;
    }
    /**
     * Get AlertaIdadeSaldoCob 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 getAlertaIdadeSaldoCob()
    {
        return isset($this->AlertaIdadeSaldoCob) ? $this->AlertaIdadeSaldoCob : null;
    }
    /**
     * Set AlertaIdadeSaldoCob 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 $alertaIdadeSaldoCob
     * @return \StructType\ClientesERP
     */
    public function setAlertaIdadeSaldoCob($alertaIdadeSaldoCob = null)
    {
        // validation for constraint: boolean
        if (!is_null($alertaIdadeSaldoCob) && !is_bool($alertaIdadeSaldoCob)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($alertaIdadeSaldoCob)), __LINE__);
        }
        if (is_null($alertaIdadeSaldoCob) || (is_array($alertaIdadeSaldoCob) && empty($alertaIdadeSaldoCob))) {
            unset($this->AlertaIdadeSaldoCob);
        } else {
            $this->AlertaIdadeSaldoCob = $alertaIdadeSaldoCob;
        }
        return $this;
    }
    /**
     * Get AlertaValorSaldoCob 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 getAlertaValorSaldoCob()
    {
        return isset($this->AlertaValorSaldoCob) ? $this->AlertaValorSaldoCob : null;
    }
    /**
     * Set AlertaValorSaldoCob 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 $alertaValorSaldoCob
     * @return \StructType\ClientesERP
     */
    public function setAlertaValorSaldoCob($alertaValorSaldoCob = null)
    {
        // validation for constraint: boolean
        if (!is_null($alertaValorSaldoCob) && !is_bool($alertaValorSaldoCob)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($alertaValorSaldoCob)), __LINE__);
        }
        if (is_null($alertaValorSaldoCob) || (is_array($alertaValorSaldoCob) && empty($alertaValorSaldoCob))) {
            unset($this->AlertaValorSaldoCob);
        } else {
            $this->AlertaValorSaldoCob = $alertaValorSaldoCob;
        }
        return $this;
    }
    /**
     * Get AutoFacturacao value
     * @return bool|null
     */
    public function getAutoFacturacao()
    {
        return $this->AutoFacturacao;
    }
    /**
     * Set AutoFacturacao value
     * @param bool $autoFacturacao
     * @return \StructType\ClientesERP
     */
    public function setAutoFacturacao($autoFacturacao = null)
    {
        // validation for constraint: boolean
        if (!is_null($autoFacturacao) && !is_bool($autoFacturacao)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($autoFacturacao)), __LINE__);
        }
        $this->AutoFacturacao = $autoFacturacao;
        return $this;
    }
    /**
     * Get AvisosVenc 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 getAvisosVenc()
    {
        return isset($this->AvisosVenc) ? $this->AvisosVenc : null;
    }
    /**
     * Set AvisosVenc 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 $avisosVenc
     * @return \StructType\ClientesERP
     */
    public function setAvisosVenc($avisosVenc = null)
    {
        // validation for constraint: boolean
        if (!is_null($avisosVenc) && !is_bool($avisosVenc)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($avisosVenc)), __LINE__);
        }
        if (is_null($avisosVenc) || (is_array($avisosVenc) && empty($avisosVenc))) {
            unset($this->AvisosVenc);
        } else {
            $this->AvisosVenc = $avisosVenc;
        }
        return $this;
    }
    /**
     * Get B2BArtigosParceiro 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 getB2BArtigosParceiro()
    {
        return isset($this->B2BArtigosParceiro) ? $this->B2BArtigosParceiro : null;
    }
    /**
     * Set B2BArtigosParceiro 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 $b2BArtigosParceiro
     * @return \StructType\ClientesERP
     */
    public function setB2BArtigosParceiro($b2BArtigosParceiro = null)
    {
        // validation for constraint: string
        if (!is_null($b2BArtigosParceiro) && !is_string($b2BArtigosParceiro)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($b2BArtigosParceiro)), __LINE__);
        }
        if (is_null($b2BArtigosParceiro) || (is_array($b2BArtigosParceiro) && empty($b2BArtigosParceiro))) {
            unset($this->B2BArtigosParceiro);
        } else {
            $this->B2BArtigosParceiro = $b2BArtigosParceiro;
        }
        return $this;
    }
    /**
     * Get B2BCertificado 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 getB2BCertificado()
    {
        return isset($this->B2BCertificado) ? $this->B2BCertificado : null;
    }
    /**
     * Set B2BCertificado 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 $b2BCertificado
     * @return \StructType\ClientesERP
     */
    public function setB2BCertificado($b2BCertificado = null)
    {
        // validation for constraint: string
        if (!is_null($b2BCertificado) && !is_string($b2BCertificado)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($b2BCertificado)), __LINE__);
        }
        if (is_null($b2BCertificado) || (is_array($b2BCertificado) && empty($b2BCertificado))) {
            unset($this->B2BCertificado);
        } else {
            $this->B2BCertificado = $b2BCertificado;
        }
        return $this;
    }
    /**
     * Get B2BDocDownload 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 getB2BDocDownload()
    {
        return isset($this->B2BDocDownload) ? $this->B2BDocDownload : null;
    }
    /**
     * Set B2BDocDownload 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 $b2BDocDownload
     * @return \StructType\ClientesERP
     */
    public function setB2BDocDownload($b2BDocDownload = null)
    {
        // validation for constraint: boolean
        if (!is_null($b2BDocDownload) && !is_bool($b2BDocDownload)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($b2BDocDownload)), __LINE__);
        }
        if (is_null($b2BDocDownload) || (is_array($b2BDocDownload) && empty($b2BDocDownload))) {
            unset($this->B2BDocDownload);
        } else {
            $this->B2BDocDownload = $b2BDocDownload;
        }
        return $this;
    }
    /**
     * Get B2BEnderecoEnvio 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 getB2BEnderecoEnvio()
    {
        return isset($this->B2BEnderecoEnvio) ? $this->B2BEnderecoEnvio : null;
    }
    /**
     * Set B2BEnderecoEnvio 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 $b2BEnderecoEnvio
     * @return \StructType\ClientesERP
     */
    public function setB2BEnderecoEnvio($b2BEnderecoEnvio = null)
    {
        // validation for constraint: string
        if (!is_null($b2BEnderecoEnvio) && !is_string($b2BEnderecoEnvio)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($b2BEnderecoEnvio)), __LINE__);
        }
        if (is_null($b2BEnderecoEnvio) || (is_array($b2BEnderecoEnvio) && empty($b2BEnderecoEnvio))) {
            unset($this->B2BEnderecoEnvio);
        } else {
            $this->B2BEnderecoEnvio = $b2BEnderecoEnvio;
        }
        return $this;
    }
    /**
     * Get B2BEnderecoMail 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 getB2BEnderecoMail()
    {
        return isset($this->B2BEnderecoMail) ? $this->B2BEnderecoMail : null;
    }
    /**
     * Set B2BEnderecoMail 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 $b2BEnderecoMail
     * @return \StructType\ClientesERP
     */
    public function setB2BEnderecoMail($b2BEnderecoMail = null)
    {
        // validation for constraint: string
        if (!is_null($b2BEnderecoMail) && !is_string($b2BEnderecoMail)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($b2BEnderecoMail)), __LINE__);
        }
        if (is_null($b2BEnderecoMail) || (is_array($b2BEnderecoMail) && empty($b2BEnderecoMail))) {
            unset($this->B2BEnderecoMail);
        } else {
            $this->B2BEnderecoMail = $b2BEnderecoMail;
        }
        return $this;
    }
    /**
     * Get B2BEnvioNaGravacao 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 getB2BEnvioNaGravacao()
    {
        return isset($this->B2BEnvioNaGravacao) ? $this->B2BEnvioNaGravacao : null;
    }
    /**
     * Set B2BEnvioNaGravacao 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 $b2BEnvioNaGravacao
     * @return \StructType\ClientesERP
     */
    public function setB2BEnvioNaGravacao($b2BEnvioNaGravacao = null)
    {
        // validation for constraint: boolean
        if (!is_null($b2BEnvioNaGravacao) && !is_bool($b2BEnvioNaGravacao)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($b2BEnvioNaGravacao)), __LINE__);
        }
        if (is_null($b2BEnvioNaGravacao) || (is_array($b2BEnvioNaGravacao) && empty($b2BEnvioNaGravacao))) {
            unset($this->B2BEnvioNaGravacao);
        } else {
            $this->B2BEnvioNaGravacao = $b2BEnvioNaGravacao;
        }
        return $this;
    }
    /**
     * Get B2BEnvioParceiro 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 getB2BEnvioParceiro()
    {
        return isset($this->B2BEnvioParceiro) ? $this->B2BEnvioParceiro : null;
    }
    /**
     * Set B2BEnvioParceiro 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 $b2BEnvioParceiro
     * @return \StructType\ClientesERP
     */
    public function setB2BEnvioParceiro($b2BEnvioParceiro = null)
    {
        // validation for constraint: string
        if (!is_null($b2BEnvioParceiro) && !is_string($b2BEnvioParceiro)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($b2BEnvioParceiro)), __LINE__);
        }
        if (is_null($b2BEnvioParceiro) || (is_array($b2BEnvioParceiro) && empty($b2BEnvioParceiro))) {
            unset($this->B2BEnvioParceiro);
        } else {
            $this->B2BEnvioParceiro = $b2BEnvioParceiro;
        }
        return $this;
    }
    /**
     * Get B2BIgnoraEnvioParceiro 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 getB2BIgnoraEnvioParceiro()
    {
        return isset($this->B2BIgnoraEnvioParceiro) ? $this->B2BIgnoraEnvioParceiro : null;
    }
    /**
     * Set B2BIgnoraEnvioParceiro 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 $b2BIgnoraEnvioParceiro
     * @return \StructType\ClientesERP
     */
    public function setB2BIgnoraEnvioParceiro($b2BIgnoraEnvioParceiro = null)
    {
        // validation for constraint: boolean
        if (!is_null($b2BIgnoraEnvioParceiro) && !is_bool($b2BIgnoraEnvioParceiro)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($b2BIgnoraEnvioParceiro)), __LINE__);
        }
        if (is_null($b2BIgnoraEnvioParceiro) || (is_array($b2BIgnoraEnvioParceiro) && empty($b2BIgnoraEnvioParceiro))) {
            unset($this->B2BIgnoraEnvioParceiro);
        } else {
            $this->B2BIgnoraEnvioParceiro = $b2BIgnoraEnvioParceiro;
        }
        return $this;
    }
    /**
     * Get B2BIgnoraTransaccoes 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 getB2BIgnoraTransaccoes()
    {
        return isset($this->B2BIgnoraTransaccoes) ? $this->B2BIgnoraTransaccoes : null;
    }
    /**
     * Set B2BIgnoraTransaccoes 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 $b2BIgnoraTransaccoes
     * @return \StructType\ClientesERP
     */
    public function setB2BIgnoraTransaccoes($b2BIgnoraTransaccoes = null)
    {
        // validation for constraint: boolean
        if (!is_null($b2BIgnoraTransaccoes) && !is_bool($b2BIgnoraTransaccoes)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($b2BIgnoraTransaccoes)), __LINE__);
        }
        if (is_null($b2BIgnoraTransaccoes) || (is_array($b2BIgnoraTransaccoes) && empty($b2BIgnoraTransaccoes))) {
            unset($this->B2BIgnoraTransaccoes);
        } else {
            $this->B2BIgnoraTransaccoes = $b2BIgnoraTransaccoes;
        }
        return $this;
    }
    /**
     * Get B2BTransaccoes 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 getB2BTransaccoes()
    {
        return isset($this->B2BTransaccoes) ? $this->B2BTransaccoes : null;
    }
    /**
     * Set B2BTransaccoes 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 $b2BTransaccoes
     * @return \StructType\ClientesERP
     */
    public function setB2BTransaccoes($b2BTransaccoes = null)
    {
        // validation for constraint: string
        if (!is_null($b2BTransaccoes) && !is_string($b2BTransaccoes)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($b2BTransaccoes)), __LINE__);
        }
        if (is_null($b2BTransaccoes) || (is_array($b2BTransaccoes) && empty($b2BTransaccoes))) {
            unset($this->B2BTransaccoes);
        } else {
            $this->B2BTransaccoes = $b2BTransaccoes;
        }
        return $this;
    }
    /**
     * Get B2BTrataTrans 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 getB2BTrataTrans()
    {
        return isset($this->B2BTrataTrans) ? $this->B2BTrataTrans : null;
    }
    /**
     * Set B2BTrataTrans 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 $b2BTrataTrans
     * @return \StructType\ClientesERP
     */
    public function setB2BTrataTrans($b2BTrataTrans = null)
    {
        // validation for constraint: boolean
        if (!is_null($b2BTrataTrans) && !is_bool($b2BTrataTrans)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($b2BTrataTrans)), __LINE__);
        }
        if (is_null($b2BTrataTrans) || (is_array($b2BTrataTrans) && empty($b2BTrataTrans))) {
            unset($this->B2BTrataTrans);
        } else {
            $this->B2BTrataTrans = $b2BTrataTrans;
        }
        return $this;
    }
    /**
     * Get B2BUnidadesParceiro 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 getB2BUnidadesParceiro()
    {
        return isset($this->B2BUnidadesParceiro) ? $this->B2BUnidadesParceiro : null;
    }
    /**
     * Set B2BUnidadesParceiro 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 $b2BUnidadesParceiro
     * @return \StructType\ClientesERP
     */
    public function setB2BUnidadesParceiro($b2BUnidadesParceiro = null)
    {
        // validation for constraint: string
        if (!is_null($b2BUnidadesParceiro) && !is_string($b2BUnidadesParceiro)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($b2BUnidadesParceiro)), __LINE__);
        }
        if (is_null($b2BUnidadesParceiro) || (is_array($b2BUnidadesParceiro) && empty($b2BUnidadesParceiro))) {
            unset($this->B2BUnidadesParceiro);
        } else {
            $this->B2BUnidadesParceiro = $b2BUnidadesParceiro;
        }
        return $this;
    }
    /**
     * Get B2BUtilArtigosParceiro 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 getB2BUtilArtigosParceiro()
    {
        return isset($this->B2BUtilArtigosParceiro) ? $this->B2BUtilArtigosParceiro : null;
    }
    /**
     * Set B2BUtilArtigosParceiro 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 $b2BUtilArtigosParceiro
     * @return \StructType\ClientesERP
     */
    public function setB2BUtilArtigosParceiro($b2BUtilArtigosParceiro = null)
    {
        // validation for constraint: boolean
        if (!is_null($b2BUtilArtigosParceiro) && !is_bool($b2BUtilArtigosParceiro)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($b2BUtilArtigosParceiro)), __LINE__);
        }
        if (is_null($b2BUtilArtigosParceiro) || (is_array($b2BUtilArtigosParceiro) && empty($b2BUtilArtigosParceiro))) {
            unset($this->B2BUtilArtigosParceiro);
        } else {
            $this->B2BUtilArtigosParceiro = $b2BUtilArtigosParceiro;
        }
        return $this;
    }
    /**
     * Get B2BUtilUnidadesParceiro 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 getB2BUtilUnidadesParceiro()
    {
        return isset($this->B2BUtilUnidadesParceiro) ? $this->B2BUtilUnidadesParceiro : null;
    }
    /**
     * Set B2BUtilUnidadesParceiro 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 $b2BUtilUnidadesParceiro
     * @return \StructType\ClientesERP
     */
    public function setB2BUtilUnidadesParceiro($b2BUtilUnidadesParceiro = null)
    {
        // validation for constraint: boolean
        if (!is_null($b2BUtilUnidadesParceiro) && !is_bool($b2BUtilUnidadesParceiro)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($b2BUtilUnidadesParceiro)), __LINE__);
        }
        if (is_null($b2BUtilUnidadesParceiro) || (is_array($b2BUtilUnidadesParceiro) && empty($b2BUtilUnidadesParceiro))) {
            unset($this->B2BUtilUnidadesParceiro);
        } else {
            $this->B2BUtilUnidadesParceiro = $b2BUtilUnidadesParceiro;
        }
        return $this;
    }
    /**
     * Get CDU_Concelho 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 getCDU_Concelho()
    {
        return isset($this->CDU_Concelho) ? $this->CDU_Concelho : null;
    }
    /**
     * Set CDU_Concelho 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 $cDU_Concelho
     * @return \StructType\ClientesERP
     */
    public function setCDU_Concelho($cDU_Concelho = null)
    {
        // validation for constraint: string
        if (!is_null($cDU_Concelho) && !is_string($cDU_Concelho)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($cDU_Concelho)), __LINE__);
        }
        if (is_null($cDU_Concelho) || (is_array($cDU_Concelho) && empty($cDU_Concelho))) {
            unset($this->CDU_Concelho);
        } else {
            $this->CDU_Concelho = $cDU_Concelho;
        }
        return $this;
    }
    /**
     * Get CDU_Contrato 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 getCDU_Contrato()
    {
        return isset($this->CDU_Contrato) ? $this->CDU_Contrato : null;
    }
    /**
     * Set CDU_Contrato 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 $cDU_Contrato
     * @return \StructType\ClientesERP
     */
    public function setCDU_Contrato($cDU_Contrato = null)
    {
        // validation for constraint: string
        if (!is_null($cDU_Contrato) && !is_string($cDU_Contrato)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($cDU_Contrato)), __LINE__);
        }
        if (is_null($cDU_Contrato) || (is_array($cDU_Contrato) && empty($cDU_Contrato))) {
            unset($this->CDU_Contrato);
        } else {
            $this->CDU_Contrato = $cDU_Contrato;
        }
        return $this;
    }
    /**
     * Get CDU_DataDocIdentificacao 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 getCDU_DataDocIdentificacao()
    {
        return isset($this->CDU_DataDocIdentificacao) ? $this->CDU_DataDocIdentificacao : null;
    }
    /**
     * Set CDU_DataDocIdentificacao 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 $cDU_DataDocIdentificacao
     * @return \StructType\ClientesERP
     */
    public function setCDU_DataDocIdentificacao($cDU_DataDocIdentificacao = null)
    {
        // validation for constraint: string
        if (!is_null($cDU_DataDocIdentificacao) && !is_string($cDU_DataDocIdentificacao)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($cDU_DataDocIdentificacao)), __LINE__);
        }
        if (is_null($cDU_DataDocIdentificacao) || (is_array($cDU_DataDocIdentificacao) && empty($cDU_DataDocIdentificacao))) {
            unset($this->CDU_DataDocIdentificacao);
        } else {
            $this->CDU_DataDocIdentificacao = $cDU_DataDocIdentificacao;
        }
        return $this;
    }
    /**
     * Get CDU_DataNascimento 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 getCDU_DataNascimento()
    {
        return isset($this->CDU_DataNascimento) ? $this->CDU_DataNascimento : null;
    }
    /**
     * Set CDU_DataNascimento 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 $cDU_DataNascimento
     * @return \StructType\ClientesERP
     */
    public function setCDU_DataNascimento($cDU_DataNascimento = null)
    {
        // validation for constraint: string
        if (!is_null($cDU_DataNascimento) && !is_string($cDU_DataNascimento)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($cDU_DataNascimento)), __LINE__);
        }
        if (is_null($cDU_DataNascimento) || (is_array($cDU_DataNascimento) && empty($cDU_DataNascimento))) {
            unset($this->CDU_DataNascimento);
        } else {
            $this->CDU_DataNascimento = $cDU_DataNascimento;
        }
        return $this;
    }
    /**
     * Get CDU_DebitoDireto 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 getCDU_DebitoDireto()
    {
        return isset($this->CDU_DebitoDireto) ? $this->CDU_DebitoDireto : null;
    }
    /**
     * Set CDU_DebitoDireto 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 $cDU_DebitoDireto
     * @return \StructType\ClientesERP
     */
    public function setCDU_DebitoDireto($cDU_DebitoDireto = null)
    {
        // validation for constraint: boolean
        if (!is_null($cDU_DebitoDireto) && !is_bool($cDU_DebitoDireto)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($cDU_DebitoDireto)), __LINE__);
        }
        if (is_null($cDU_DebitoDireto) || (is_array($cDU_DebitoDireto) && empty($cDU_DebitoDireto))) {
            unset($this->CDU_DebitoDireto);
        } else {
            $this->CDU_DebitoDireto = $cDU_DebitoDireto;
        }
        return $this;
    }
    /**
     * Get CDU_DigtsDocIdentificacao 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 getCDU_DigtsDocIdentificacao()
    {
        return isset($this->CDU_DigtsDocIdentificacao) ? $this->CDU_DigtsDocIdentificacao : null;
    }
    /**
     * Set CDU_DigtsDocIdentificacao 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 $cDU_DigtsDocIdentificacao
     * @return \StructType\ClientesERP
     */
    public function setCDU_DigtsDocIdentificacao($cDU_DigtsDocIdentificacao = null)
    {
        // validation for constraint: string
        if (!is_null($cDU_DigtsDocIdentificacao) && !is_string($cDU_DigtsDocIdentificacao)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($cDU_DigtsDocIdentificacao)), __LINE__);
        }
        if (is_null($cDU_DigtsDocIdentificacao) || (is_array($cDU_DigtsDocIdentificacao) && empty($cDU_DigtsDocIdentificacao))) {
            unset($this->CDU_DigtsDocIdentificacao);
        } else {
            $this->CDU_DigtsDocIdentificacao = $cDU_DigtsDocIdentificacao;
        }
        return $this;
    }
    /**
     * Get CDU_DocIdentificacao 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 getCDU_DocIdentificacao()
    {
        return isset($this->CDU_DocIdentificacao) ? $this->CDU_DocIdentificacao : null;
    }
    /**
     * Set CDU_DocIdentificacao 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 $cDU_DocIdentificacao
     * @return \StructType\ClientesERP
     */
    public function setCDU_DocIdentificacao($cDU_DocIdentificacao = null)
    {
        // validation for constraint: string
        if (!is_null($cDU_DocIdentificacao) && !is_string($cDU_DocIdentificacao)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($cDU_DocIdentificacao)), __LINE__);
        }
        if (is_null($cDU_DocIdentificacao) || (is_array($cDU_DocIdentificacao) && empty($cDU_DocIdentificacao))) {
            unset($this->CDU_DocIdentificacao);
        } else {
            $this->CDU_DocIdentificacao = $cDU_DocIdentificacao;
        }
        return $this;
    }
    /**
     * Get CDU_Email 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 getCDU_Email()
    {
        return isset($this->CDU_Email) ? $this->CDU_Email : null;
    }
    /**
     * Set CDU_Email 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 $cDU_Email
     * @return \StructType\ClientesERP
     */
    public function setCDU_Email($cDU_Email = null)
    {
        // validation for constraint: string
        if (!is_null($cDU_Email) && !is_string($cDU_Email)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($cDU_Email)), __LINE__);
        }
        if (is_null($cDU_Email) || (is_array($cDU_Email) && empty($cDU_Email))) {
            unset($this->CDU_Email);
        } else {
            $this->CDU_Email = $cDU_Email;
        }
        return $this;
    }
    /**
     * Get CDU_ExtensaoFoto 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 getCDU_ExtensaoFoto()
    {
        return isset($this->CDU_ExtensaoFoto) ? $this->CDU_ExtensaoFoto : null;
    }
    /**
     * Set CDU_ExtensaoFoto 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 $cDU_ExtensaoFoto
     * @return \StructType\ClientesERP
     */
    public function setCDU_ExtensaoFoto($cDU_ExtensaoFoto = null)
    {
        // validation for constraint: string
        if (!is_null($cDU_ExtensaoFoto) && !is_string($cDU_ExtensaoFoto)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($cDU_ExtensaoFoto)), __LINE__);
        }
        if (is_null($cDU_ExtensaoFoto) || (is_array($cDU_ExtensaoFoto) && empty($cDU_ExtensaoFoto))) {
            unset($this->CDU_ExtensaoFoto);
        } else {
            $this->CDU_ExtensaoFoto = $cDU_ExtensaoFoto;
        }
        return $this;
    }
    /**
     * Get CDU_FacebookToken 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 getCDU_FacebookToken()
    {
        return isset($this->CDU_FacebookToken) ? $this->CDU_FacebookToken : null;
    }
    /**
     * Set CDU_FacebookToken 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 $cDU_FacebookToken
     * @return \StructType\ClientesERP
     */
    public function setCDU_FacebookToken($cDU_FacebookToken = null)
    {
        // validation for constraint: string
        if (!is_null($cDU_FacebookToken) && !is_string($cDU_FacebookToken)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($cDU_FacebookToken)), __LINE__);
        }
        if (is_null($cDU_FacebookToken) || (is_array($cDU_FacebookToken) && empty($cDU_FacebookToken))) {
            unset($this->CDU_FacebookToken);
        } else {
            $this->CDU_FacebookToken = $cDU_FacebookToken;
        }
        return $this;
    }
    /**
     * Get CDU_FaturacaoEletronica 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 getCDU_FaturacaoEletronica()
    {
        return isset($this->CDU_FaturacaoEletronica) ? $this->CDU_FaturacaoEletronica : null;
    }
    /**
     * Set CDU_FaturacaoEletronica 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 $cDU_FaturacaoEletronica
     * @return \StructType\ClientesERP
     */
    public function setCDU_FaturacaoEletronica($cDU_FaturacaoEletronica = null)
    {
        // validation for constraint: boolean
        if (!is_null($cDU_FaturacaoEletronica) && !is_bool($cDU_FaturacaoEletronica)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($cDU_FaturacaoEletronica)), __LINE__);
        }
        if (is_null($cDU_FaturacaoEletronica) || (is_array($cDU_FaturacaoEletronica) && empty($cDU_FaturacaoEletronica))) {
            unset($this->CDU_FaturacaoEletronica);
        } else {
            $this->CDU_FaturacaoEletronica = $cDU_FaturacaoEletronica;
        }
        return $this;
    }
    /**
     * Get CDU_Foto 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 getCDU_Foto()
    {
        return isset($this->CDU_Foto) ? $this->CDU_Foto : null;
    }
    /**
     * Set CDU_Foto 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 $cDU_Foto
     * @return \StructType\ClientesERP
     */
    public function setCDU_Foto($cDU_Foto = null)
    {
        // validation for constraint: string
        if (!is_null($cDU_Foto) && !is_string($cDU_Foto)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($cDU_Foto)), __LINE__);
        }
        if (is_null($cDU_Foto) || (is_array($cDU_Foto) && empty($cDU_Foto))) {
            unset($this->CDU_Foto);
        } else {
            $this->CDU_Foto = $cDU_Foto;
        }
        return $this;
    }
    /**
     * Get CDU_Freguesia 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 getCDU_Freguesia()
    {
        return isset($this->CDU_Freguesia) ? $this->CDU_Freguesia : null;
    }
    /**
     * Set CDU_Freguesia 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 $cDU_Freguesia
     * @return \StructType\ClientesERP
     */
    public function setCDU_Freguesia($cDU_Freguesia = null)
    {
        // validation for constraint: string
        if (!is_null($cDU_Freguesia) && !is_string($cDU_Freguesia)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($cDU_Freguesia)), __LINE__);
        }
        if (is_null($cDU_Freguesia) || (is_array($cDU_Freguesia) && empty($cDU_Freguesia))) {
            unset($this->CDU_Freguesia);
        } else {
            $this->CDU_Freguesia = $cDU_Freguesia;
        }
        return $this;
    }
    /**
     * Get CDU_GoogleToken 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 getCDU_GoogleToken()
    {
        return isset($this->CDU_GoogleToken) ? $this->CDU_GoogleToken : null;
    }
    /**
     * Set CDU_GoogleToken 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 $cDU_GoogleToken
     * @return \StructType\ClientesERP
     */
    public function setCDU_GoogleToken($cDU_GoogleToken = null)
    {
        // validation for constraint: string
        if (!is_null($cDU_GoogleToken) && !is_string($cDU_GoogleToken)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($cDU_GoogleToken)), __LINE__);
        }
        if (is_null($cDU_GoogleToken) || (is_array($cDU_GoogleToken) && empty($cDU_GoogleToken))) {
            unset($this->CDU_GoogleToken);
        } else {
            $this->CDU_GoogleToken = $cDU_GoogleToken;
        }
        return $this;
    }
    /**
     * Get CDU_IdProprietario 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 getCDU_IdProprietario()
    {
        return isset($this->CDU_IdProprietario) ? $this->CDU_IdProprietario : null;
    }
    /**
     * Set CDU_IdProprietario 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 $cDU_IdProprietario
     * @return \StructType\ClientesERP
     */
    public function setCDU_IdProprietario($cDU_IdProprietario = null)
    {
        // validation for constraint: string
        if (!is_null($cDU_IdProprietario) && !is_string($cDU_IdProprietario)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($cDU_IdProprietario)), __LINE__);
        }
        if (is_null($cDU_IdProprietario) || (is_array($cDU_IdProprietario) && empty($cDU_IdProprietario))) {
            unset($this->CDU_IdProprietario);
        } else {
            $this->CDU_IdProprietario = $cDU_IdProprietario;
        }
        return $this;
    }
    /**
     * Get CDU_InfExtraDocIdentificacao 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 getCDU_InfExtraDocIdentificacao()
    {
        return isset($this->CDU_InfExtraDocIdentificacao) ? $this->CDU_InfExtraDocIdentificacao : null;
    }
    /**
     * Set CDU_InfExtraDocIdentificacao 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 $cDU_InfExtraDocIdentificacao
     * @return \StructType\ClientesERP
     */
    public function setCDU_InfExtraDocIdentificacao($cDU_InfExtraDocIdentificacao = null)
    {
        // validation for constraint: string
        if (!is_null($cDU_InfExtraDocIdentificacao) && !is_string($cDU_InfExtraDocIdentificacao)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($cDU_InfExtraDocIdentificacao)), __LINE__);
        }
        if (is_null($cDU_InfExtraDocIdentificacao) || (is_array($cDU_InfExtraDocIdentificacao) && empty($cDU_InfExtraDocIdentificacao))) {
            unset($this->CDU_InfExtraDocIdentificacao);
        } else {
            $this->CDU_InfExtraDocIdentificacao = $cDU_InfExtraDocIdentificacao;
        }
        return $this;
    }
    /**
     * Get CDU_LocalDocIdentificacao 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 getCDU_LocalDocIdentificacao()
    {
        return isset($this->CDU_LocalDocIdentificacao) ? $this->CDU_LocalDocIdentificacao : null;
    }
    /**
     * Set CDU_LocalDocIdentificacao 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 $cDU_LocalDocIdentificacao
     * @return \StructType\ClientesERP
     */
    public function setCDU_LocalDocIdentificacao($cDU_LocalDocIdentificacao = null)
    {
        // validation for constraint: string
        if (!is_null($cDU_LocalDocIdentificacao) && !is_string($cDU_LocalDocIdentificacao)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($cDU_LocalDocIdentificacao)), __LINE__);
        }
        if (is_null($cDU_LocalDocIdentificacao) || (is_array($cDU_LocalDocIdentificacao) && empty($cDU_LocalDocIdentificacao))) {
            unset($this->CDU_LocalDocIdentificacao);
        } else {
            $this->CDU_LocalDocIdentificacao = $cDU_LocalDocIdentificacao;
        }
        return $this;
    }
    /**
     * Get CDU_Nacionalidade 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 getCDU_Nacionalidade()
    {
        return isset($this->CDU_Nacionalidade) ? $this->CDU_Nacionalidade : null;
    }
    /**
     * Set CDU_Nacionalidade 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 $cDU_Nacionalidade
     * @return \StructType\ClientesERP
     */
    public function setCDU_Nacionalidade($cDU_Nacionalidade = null)
    {
        // validation for constraint: string
        if (!is_null($cDU_Nacionalidade) && !is_string($cDU_Nacionalidade)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($cDU_Nacionalidade)), __LINE__);
        }
        if (is_null($cDU_Nacionalidade) || (is_array($cDU_Nacionalidade) && empty($cDU_Nacionalidade))) {
            unset($this->CDU_Nacionalidade);
        } else {
            $this->CDU_Nacionalidade = $cDU_Nacionalidade;
        }
        return $this;
    }
    /**
     * Get CDU_Naturalidade 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 getCDU_Naturalidade()
    {
        return isset($this->CDU_Naturalidade) ? $this->CDU_Naturalidade : null;
    }
    /**
     * Set CDU_Naturalidade 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 $cDU_Naturalidade
     * @return \StructType\ClientesERP
     */
    public function setCDU_Naturalidade($cDU_Naturalidade = null)
    {
        // validation for constraint: string
        if (!is_null($cDU_Naturalidade) && !is_string($cDU_Naturalidade)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($cDU_Naturalidade)), __LINE__);
        }
        if (is_null($cDU_Naturalidade) || (is_array($cDU_Naturalidade) && empty($cDU_Naturalidade))) {
            unset($this->CDU_Naturalidade);
        } else {
            $this->CDU_Naturalidade = $cDU_Naturalidade;
        }
        return $this;
    }
    /**
     * Get CDU_Newsletter 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 getCDU_Newsletter()
    {
        return isset($this->CDU_Newsletter) ? $this->CDU_Newsletter : null;
    }
    /**
     * Set CDU_Newsletter 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 $cDU_Newsletter
     * @return \StructType\ClientesERP
     */
    public function setCDU_Newsletter($cDU_Newsletter = null)
    {
        // validation for constraint: boolean
        if (!is_null($cDU_Newsletter) && !is_bool($cDU_Newsletter)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($cDU_Newsletter)), __LINE__);
        }
        if (is_null($cDU_Newsletter) || (is_array($cDU_Newsletter) && empty($cDU_Newsletter))) {
            unset($this->CDU_Newsletter);
        } else {
            $this->CDU_Newsletter = $cDU_Newsletter;
        }
        return $this;
    }
    /**
     * Get CDU_NomeFoto 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 getCDU_NomeFoto()
    {
        return isset($this->CDU_NomeFoto) ? $this->CDU_NomeFoto : null;
    }
    /**
     * Set CDU_NomeFoto 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 $cDU_NomeFoto
     * @return \StructType\ClientesERP
     */
    public function setCDU_NomeFoto($cDU_NomeFoto = null)
    {
        // validation for constraint: string
        if (!is_null($cDU_NomeFoto) && !is_string($cDU_NomeFoto)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($cDU_NomeFoto)), __LINE__);
        }
        if (is_null($cDU_NomeFoto) || (is_array($cDU_NomeFoto) && empty($cDU_NomeFoto))) {
            unset($this->CDU_NomeFoto);
        } else {
            $this->CDU_NomeFoto = $cDU_NomeFoto;
        }
        return $this;
    }
    /**
     * Get CDU_NumIdentificacao 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 getCDU_NumIdentificacao()
    {
        return isset($this->CDU_NumIdentificacao) ? $this->CDU_NumIdentificacao : null;
    }
    /**
     * Set CDU_NumIdentificacao 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 $cDU_NumIdentificacao
     * @return \StructType\ClientesERP
     */
    public function setCDU_NumIdentificacao($cDU_NumIdentificacao = null)
    {
        // validation for constraint: string
        if (!is_null($cDU_NumIdentificacao) && !is_string($cDU_NumIdentificacao)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($cDU_NumIdentificacao)), __LINE__);
        }
        if (is_null($cDU_NumIdentificacao) || (is_array($cDU_NumIdentificacao) && empty($cDU_NumIdentificacao))) {
            unset($this->CDU_NumIdentificacao);
        } else {
            $this->CDU_NumIdentificacao = $cDU_NumIdentificacao;
        }
        return $this;
    }
    /**
     * Get CDU_PagamentoSEPA 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 getCDU_PagamentoSEPA()
    {
        return isset($this->CDU_PagamentoSEPA) ? $this->CDU_PagamentoSEPA : null;
    }
    /**
     * Set CDU_PagamentoSEPA 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 $cDU_PagamentoSEPA
     * @return \StructType\ClientesERP
     */
    public function setCDU_PagamentoSEPA($cDU_PagamentoSEPA = null)
    {
        // validation for constraint: boolean
        if (!is_null($cDU_PagamentoSEPA) && !is_bool($cDU_PagamentoSEPA)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($cDU_PagamentoSEPA)), __LINE__);
        }
        if (is_null($cDU_PagamentoSEPA) || (is_array($cDU_PagamentoSEPA) && empty($cDU_PagamentoSEPA))) {
            unset($this->CDU_PagamentoSEPA);
        } else {
            $this->CDU_PagamentoSEPA = $cDU_PagamentoSEPA;
        }
        return $this;
    }
    /**
     * Get CDU_Password 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 getCDU_Password()
    {
        return isset($this->CDU_Password) ? $this->CDU_Password : null;
    }
    /**
     * Set CDU_Password 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 $cDU_Password
     * @return \StructType\ClientesERP
     */
    public function setCDU_Password($cDU_Password = null)
    {
        // validation for constraint: string
        if (!is_null($cDU_Password) && !is_string($cDU_Password)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($cDU_Password)), __LINE__);
        }
        if (is_null($cDU_Password) || (is_array($cDU_Password) && empty($cDU_Password))) {
            unset($this->CDU_Password);
        } else {
            $this->CDU_Password = $cDU_Password;
        }
        return $this;
    }
    /**
     * Get CDU_PontosCartao 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 getCDU_PontosCartao()
    {
        return isset($this->CDU_PontosCartao) ? $this->CDU_PontosCartao : null;
    }
    /**
     * Set CDU_PontosCartao 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 $cDU_PontosCartao
     * @return \StructType\ClientesERP
     */
    public function setCDU_PontosCartao($cDU_PontosCartao = null)
    {
        // validation for constraint: int
        if (!is_null($cDU_PontosCartao) && !is_numeric($cDU_PontosCartao)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a numeric value, "%s" given', gettype($cDU_PontosCartao)), __LINE__);
        }
        if (is_null($cDU_PontosCartao) || (is_array($cDU_PontosCartao) && empty($cDU_PontosCartao))) {
            unset($this->CDU_PontosCartao);
        } else {
            $this->CDU_PontosCartao = $cDU_PontosCartao;
        }
        return $this;
    }
    /**
     * Get CDU_Role 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 getCDU_Role()
    {
        return isset($this->CDU_Role) ? $this->CDU_Role : null;
    }
    /**
     * Set CDU_Role 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 $cDU_Role
     * @return \StructType\ClientesERP
     */
    public function setCDU_Role($cDU_Role = null)
    {
        // validation for constraint: string
        if (!is_null($cDU_Role) && !is_string($cDU_Role)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($cDU_Role)), __LINE__);
        }
        if (is_null($cDU_Role) || (is_array($cDU_Role) && empty($cDU_Role))) {
            unset($this->CDU_Role);
        } else {
            $this->CDU_Role = $cDU_Role;
        }
        return $this;
    }
    /**
     * Get CDU_Telemovel 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 getCDU_Telemovel()
    {
        return isset($this->CDU_Telemovel) ? $this->CDU_Telemovel : null;
    }
    /**
     * Set CDU_Telemovel 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 $cDU_Telemovel
     * @return \StructType\ClientesERP
     */
    public function setCDU_Telemovel($cDU_Telemovel = null)
    {
        // validation for constraint: string
        if (!is_null($cDU_Telemovel) && !is_string($cDU_Telemovel)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($cDU_Telemovel)), __LINE__);
        }
        if (is_null($cDU_Telemovel) || (is_array($cDU_Telemovel) && empty($cDU_Telemovel))) {
            unset($this->CDU_Telemovel);
        } else {
            $this->CDU_Telemovel = $cDU_Telemovel;
        }
        return $this;
    }
    /**
     * Get CDU_TipoDocIdentificacao 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 getCDU_TipoDocIdentificacao()
    {
        return isset($this->CDU_TipoDocIdentificacao) ? $this->CDU_TipoDocIdentificacao : null;
    }
    /**
     * Set CDU_TipoDocIdentificacao 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 $cDU_TipoDocIdentificacao
     * @return \StructType\ClientesERP
     */
    public function setCDU_TipoDocIdentificacao($cDU_TipoDocIdentificacao = null)
    {
        // validation for constraint: string
        if (!is_null($cDU_TipoDocIdentificacao) && !is_string($cDU_TipoDocIdentificacao)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($cDU_TipoDocIdentificacao)), __LINE__);
        }
        if (is_null($cDU_TipoDocIdentificacao) || (is_array($cDU_TipoDocIdentificacao) && empty($cDU_TipoDocIdentificacao))) {
            unset($this->CDU_TipoDocIdentificacao);
        } else {
            $this->CDU_TipoDocIdentificacao = $cDU_TipoDocIdentificacao;
        }
        return $this;
    }
    /**
     * Get CDU_Username 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 getCDU_Username()
    {
        return isset($this->CDU_Username) ? $this->CDU_Username : null;
    }
    /**
     * Set CDU_Username 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 $cDU_Username
     * @return \StructType\ClientesERP
     */
    public function setCDU_Username($cDU_Username = null)
    {
        // validation for constraint: string
        if (!is_null($cDU_Username) && !is_string($cDU_Username)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($cDU_Username)), __LINE__);
        }
        if (is_null($cDU_Username) || (is_array($cDU_Username) && empty($cDU_Username))) {
            unset($this->CDU_Username);
        } else {
            $this->CDU_Username = $cDU_Username;
        }
        return $this;
    }
    /**
     * Get CalendarioCob 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 getCalendarioCob()
    {
        return isset($this->CalendarioCob) ? $this->CalendarioCob : null;
    }
    /**
     * Set CalendarioCob 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 $calendarioCob
     * @return \StructType\ClientesERP
     */
    public function setCalendarioCob($calendarioCob = null)
    {
        // validation for constraint: string
        if (!is_null($calendarioCob) && !is_string($calendarioCob)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($calendarioCob)), __LINE__);
        }
        if (is_null($calendarioCob) || (is_array($calendarioCob) && empty($calendarioCob))) {
            unset($this->CalendarioCob);
        } else {
            $this->CalendarioCob = $calendarioCob;
        }
        return $this;
    }
    /**
     * Get CambioADataDoc value
     * @return bool|null
     */
    public function getCambioADataDoc()
    {
        return $this->CambioADataDoc;
    }
    /**
     * Set CambioADataDoc value
     * @param bool $cambioADataDoc
     * @return \StructType\ClientesERP
     */
    public function setCambioADataDoc($cambioADataDoc = null)
    {
        // validation for constraint: boolean
        if (!is_null($cambioADataDoc) && !is_bool($cambioADataDoc)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($cambioADataDoc)), __LINE__);
        }
        $this->CambioADataDoc = $cambioADataDoc;
        return $this;
    }
    /**
     * Get CentroOperacional 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 getCentroOperacional()
    {
        return isset($this->CentroOperacional) ? $this->CentroOperacional : null;
    }
    /**
     * Set CentroOperacional 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 $centroOperacional
     * @return \StructType\ClientesERP
     */
    public function setCentroOperacional($centroOperacional = null)
    {
        // validation for constraint: string
        if (!is_null($centroOperacional) && !is_string($centroOperacional)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($centroOperacional)), __LINE__);
        }
        if (is_null($centroOperacional) || (is_array($centroOperacional) && empty($centroOperacional))) {
            unset($this->CentroOperacional);
        } else {
            $this->CentroOperacional = $centroOperacional;
        }
        return $this;
    }
    /**
     * Get Cliente 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 getCliente()
    {
        return isset($this->Cliente) ? $this->Cliente : null;
    }
    /**
     * Set Cliente 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 $cliente
     * @return \StructType\ClientesERP
     */
    public function setCliente($cliente = null)
    {
        // validation for constraint: string
        if (!is_null($cliente) && !is_string($cliente)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($cliente)), __LINE__);
        }
        if (is_null($cliente) || (is_array($cliente) && empty($cliente))) {
            unset($this->Cliente);
        } else {
            $this->Cliente = $cliente;
        }
        return $this;
    }
    /**
     * Get ClienteAnulado 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 getClienteAnulado()
    {
        return isset($this->ClienteAnulado) ? $this->ClienteAnulado : null;
    }
    /**
     * Set ClienteAnulado 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 $clienteAnulado
     * @return \StructType\ClientesERP
     */
    public function setClienteAnulado($clienteAnulado = null)
    {
        // validation for constraint: boolean
        if (!is_null($clienteAnulado) && !is_bool($clienteAnulado)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($clienteAnulado)), __LINE__);
        }
        if (is_null($clienteAnulado) || (is_array($clienteAnulado) && empty($clienteAnulado))) {
            unset($this->ClienteAnulado);
        } else {
            $this->ClienteAnulado = $clienteAnulado;
        }
        return $this;
    }
    /**
     * Get CodPRIEMPRE 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 getCodPRIEMPRE()
    {
        return isset($this->CodPRIEMPRE) ? $this->CodPRIEMPRE : null;
    }
    /**
     * Set CodPRIEMPRE 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 $codPRIEMPRE
     * @return \StructType\ClientesERP
     */
    public function setCodPRIEMPRE($codPRIEMPRE = null)
    {
        // validation for constraint: string
        if (!is_null($codPRIEMPRE) && !is_string($codPRIEMPRE)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($codPRIEMPRE)), __LINE__);
        }
        if (is_null($codPRIEMPRE) || (is_array($codPRIEMPRE) && empty($codPRIEMPRE))) {
            unset($this->CodPRIEMPRE);
        } else {
            $this->CodPRIEMPRE = $codPRIEMPRE;
        }
        return $this;
    }
    /**
     * Get CodigoGLN 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 getCodigoGLN()
    {
        return isset($this->CodigoGLN) ? $this->CodigoGLN : null;
    }
    /**
     * Set CodigoGLN 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 $codigoGLN
     * @return \StructType\ClientesERP
     */
    public function setCodigoGLN($codigoGLN = null)
    {
        // validation for constraint: string
        if (!is_null($codigoGLN) && !is_string($codigoGLN)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($codigoGLN)), __LINE__);
        }
        if (is_null($codigoGLN) || (is_array($codigoGLN) && empty($codigoGLN))) {
            unset($this->CodigoGLN);
        } else {
            $this->CodigoGLN = $codigoGLN;
        }
        return $this;
    }
    /**
     * Get CodigoIEC 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 getCodigoIEC()
    {
        return isset($this->CodigoIEC) ? $this->CodigoIEC : null;
    }
    /**
     * Set CodigoIEC 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 $codigoIEC
     * @return \StructType\ClientesERP
     */
    public function setCodigoIEC($codigoIEC = null)
    {
        // validation for constraint: string
        if (!is_null($codigoIEC) && !is_string($codigoIEC)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($codigoIEC)), __LINE__);
        }
        if (is_null($codigoIEC) || (is_array($codigoIEC) && empty($codigoIEC))) {
            unset($this->CodigoIEC);
        } else {
            $this->CodigoIEC = $codigoIEC;
        }
        return $this;
    }
    /**
     * Get CodigoIsencaoIEC 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 getCodigoIsencaoIEC()
    {
        return isset($this->CodigoIsencaoIEC) ? $this->CodigoIsencaoIEC : null;
    }
    /**
     * Set CodigoIsencaoIEC 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 $codigoIsencaoIEC
     * @return \StructType\ClientesERP
     */
    public function setCodigoIsencaoIEC($codigoIsencaoIEC = null)
    {
        // validation for constraint: string
        if (!is_null($codigoIsencaoIEC) && !is_string($codigoIsencaoIEC)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($codigoIsencaoIEC)), __LINE__);
        }
        if (is_null($codigoIsencaoIEC) || (is_array($codigoIsencaoIEC) && empty($codigoIsencaoIEC))) {
            unset($this->CodigoIsencaoIEC);
        } else {
            $this->CodigoIsencaoIEC = $codigoIsencaoIEC;
        }
        return $this;
    }
    /**
     * Get CodigoLocal 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 getCodigoLocal()
    {
        return isset($this->CodigoLocal) ? $this->CodigoLocal : null;
    }
    /**
     * Set CodigoLocal 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 $codigoLocal
     * @return \StructType\ClientesERP
     */
    public function setCodigoLocal($codigoLocal = null)
    {
        // validation for constraint: string
        if (!is_null($codigoLocal) && !is_string($codigoLocal)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($codigoLocal)), __LINE__);
        }
        if (is_null($codigoLocal) || (is_array($codigoLocal) && empty($codigoLocal))) {
            unset($this->CodigoLocal);
        } else {
            $this->CodigoLocal = $codigoLocal;
        }
        return $this;
    }
    /**
     * Get ComissaoLetras 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 getComissaoLetras()
    {
        return isset($this->ComissaoLetras) ? $this->ComissaoLetras : null;
    }
    /**
     * Set ComissaoLetras 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 $comissaoLetras
     * @return \StructType\ClientesERP
     */
    public function setComissaoLetras($comissaoLetras = null)
    {
        if (is_null($comissaoLetras) || (is_array($comissaoLetras) && empty($comissaoLetras))) {
            unset($this->ComissaoLetras);
        } else {
            $this->ComissaoLetras = $comissaoLetras;
        }
        return $this;
    }
    /**
     * Get ComissaoLetrasPercent 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 getComissaoLetrasPercent()
    {
        return isset($this->ComissaoLetrasPercent) ? $this->ComissaoLetrasPercent : null;
    }
    /**
     * Set ComissaoLetrasPercent 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 $comissaoLetrasPercent
     * @return \StructType\ClientesERP
     */
    public function setComissaoLetrasPercent($comissaoLetrasPercent = null)
    {
        // validation for constraint: boolean
        if (!is_null($comissaoLetrasPercent) && !is_bool($comissaoLetrasPercent)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($comissaoLetrasPercent)), __LINE__);
        }
        if (is_null($comissaoLetrasPercent) || (is_array($comissaoLetrasPercent) && empty($comissaoLetrasPercent))) {
            unset($this->ComissaoLetrasPercent);
        } else {
            $this->ComissaoLetrasPercent = $comissaoLetrasPercent;
        }
        return $this;
    }
    /**
     * Get ComissaoLetrasPercentRef 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 getComissaoLetrasPercentRef()
    {
        return isset($this->ComissaoLetrasPercentRef) ? $this->ComissaoLetrasPercentRef : null;
    }
    /**
     * Set ComissaoLetrasPercentRef 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 $comissaoLetrasPercentRef
     * @return \StructType\ClientesERP
     */
    public function setComissaoLetrasPercentRef($comissaoLetrasPercentRef = null)
    {
        // validation for constraint: boolean
        if (!is_null($comissaoLetrasPercentRef) && !is_bool($comissaoLetrasPercentRef)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($comissaoLetrasPercentRef)), __LINE__);
        }
        if (is_null($comissaoLetrasPercentRef) || (is_array($comissaoLetrasPercentRef) && empty($comissaoLetrasPercentRef))) {
            unset($this->ComissaoLetrasPercentRef);
        } else {
            $this->ComissaoLetrasPercentRef = $comissaoLetrasPercentRef;
        }
        return $this;
    }
    /**
     * Get ComissaoLetrasRef 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 getComissaoLetrasRef()
    {
        return isset($this->ComissaoLetrasRef) ? $this->ComissaoLetrasRef : null;
    }
    /**
     * Set ComissaoLetrasRef 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 $comissaoLetrasRef
     * @return \StructType\ClientesERP
     */
    public function setComissaoLetrasRef($comissaoLetrasRef = null)
    {
        if (is_null($comissaoLetrasRef) || (is_array($comissaoLetrasRef) && empty($comissaoLetrasRef))) {
            unset($this->ComissaoLetrasRef);
        } else {
            $this->ComissaoLetrasRef = $comissaoLetrasRef;
        }
        return $this;
    }
    /**
     * Get CondDebitoLetrasParticular 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 getCondDebitoLetrasParticular()
    {
        return isset($this->CondDebitoLetrasParticular) ? $this->CondDebitoLetrasParticular : null;
    }
    /**
     * Set CondDebitoLetrasParticular 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 $condDebitoLetrasParticular
     * @return \StructType\ClientesERP
     */
    public function setCondDebitoLetrasParticular($condDebitoLetrasParticular = null)
    {
        // validation for constraint: boolean
        if (!is_null($condDebitoLetrasParticular) && !is_bool($condDebitoLetrasParticular)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($condDebitoLetrasParticular)), __LINE__);
        }
        if (is_null($condDebitoLetrasParticular) || (is_array($condDebitoLetrasParticular) && empty($condDebitoLetrasParticular))) {
            unset($this->CondDebitoLetrasParticular);
        } else {
            $this->CondDebitoLetrasParticular = $condDebitoLetrasParticular;
        }
        return $this;
    }
    /**
     * Get CondDebitoLetrasParticularRef 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 getCondDebitoLetrasParticularRef()
    {
        return isset($this->CondDebitoLetrasParticularRef) ? $this->CondDebitoLetrasParticularRef : null;
    }
    /**
     * Set CondDebitoLetrasParticularRef 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 $condDebitoLetrasParticularRef
     * @return \StructType\ClientesERP
     */
    public function setCondDebitoLetrasParticularRef($condDebitoLetrasParticularRef = null)
    {
        // validation for constraint: boolean
        if (!is_null($condDebitoLetrasParticularRef) && !is_bool($condDebitoLetrasParticularRef)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($condDebitoLetrasParticularRef)), __LINE__);
        }
        if (is_null($condDebitoLetrasParticularRef) || (is_array($condDebitoLetrasParticularRef) && empty($condDebitoLetrasParticularRef))) {
            unset($this->CondDebitoLetrasParticularRef);
        } else {
            $this->CondDebitoLetrasParticularRef = $condDebitoLetrasParticularRef;
        }
        return $this;
    }
    /**
     * Get CondPag 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 getCondPag()
    {
        return isset($this->CondPag) ? $this->CondPag : null;
    }
    /**
     * Set CondPag 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 $condPag
     * @return \StructType\ClientesERP
     */
    public function setCondPag($condPag = null)
    {
        // validation for constraint: string
        if (!is_null($condPag) && !is_string($condPag)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($condPag)), __LINE__);
        }
        if (is_null($condPag) || (is_array($condPag) && empty($condPag))) {
            unset($this->CondPag);
        } else {
            $this->CondPag = $condPag;
        }
        return $this;
    }
    /**
     * Get ContribuinteNaoResidente 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 getContribuinteNaoResidente()
    {
        return isset($this->ContribuinteNaoResidente) ? $this->ContribuinteNaoResidente : null;
    }
    /**
     * Set ContribuinteNaoResidente 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 $contribuinteNaoResidente
     * @return \StructType\ClientesERP
     */
    public function setContribuinteNaoResidente($contribuinteNaoResidente = null)
    {
        // validation for constraint: string
        if (!is_null($contribuinteNaoResidente) && !is_string($contribuinteNaoResidente)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($contribuinteNaoResidente)), __LINE__);
        }
        if (is_null($contribuinteNaoResidente) || (is_array($contribuinteNaoResidente) && empty($contribuinteNaoResidente))) {
            unset($this->ContribuinteNaoResidente);
        } else {
            $this->ContribuinteNaoResidente = $contribuinteNaoResidente;
        }
        return $this;
    }
    /**
     * Get CriacaoAutomatica 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 getCriacaoAutomatica()
    {
        return isset($this->CriacaoAutomatica) ? $this->CriacaoAutomatica : null;
    }
    /**
     * Set CriacaoAutomatica 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 $criacaoAutomatica
     * @return \StructType\ClientesERP
     */
    public function setCriacaoAutomatica($criacaoAutomatica = null)
    {
        // validation for constraint: boolean
        if (!is_null($criacaoAutomatica) && !is_bool($criacaoAutomatica)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($criacaoAutomatica)), __LINE__);
        }
        if (is_null($criacaoAutomatica) || (is_array($criacaoAutomatica) && empty($criacaoAutomatica))) {
            unset($this->CriacaoAutomatica);
        } else {
            $this->CriacaoAutomatica = $criacaoAutomatica;
        }
        return $this;
    }
    /**
     * Get DataCriacao 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 getDataCriacao()
    {
        return isset($this->DataCriacao) ? $this->DataCriacao : null;
    }
    /**
     * Set DataCriacao 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 $dataCriacao
     * @return \StructType\ClientesERP
     */
    public function setDataCriacao($dataCriacao = null)
    {
        // validation for constraint: string
        if (!is_null($dataCriacao) && !is_string($dataCriacao)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($dataCriacao)), __LINE__);
        }
        if (is_null($dataCriacao) || (is_array($dataCriacao) && empty($dataCriacao))) {
            unset($this->DataCriacao);
        } else {
            $this->DataCriacao = $dataCriacao;
        }
        return $this;
    }
    /**
     * Get DataUltimaActualizacao 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 getDataUltimaActualizacao()
    {
        return isset($this->DataUltimaActualizacao) ? $this->DataUltimaActualizacao : null;
    }
    /**
     * Set DataUltimaActualizacao 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 $dataUltimaActualizacao
     * @return \StructType\ClientesERP
     */
    public function setDataUltimaActualizacao($dataUltimaActualizacao = null)
    {
        // validation for constraint: string
        if (!is_null($dataUltimaActualizacao) && !is_string($dataUltimaActualizacao)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($dataUltimaActualizacao)), __LINE__);
        }
        if (is_null($dataUltimaActualizacao) || (is_array($dataUltimaActualizacao) && empty($dataUltimaActualizacao))) {
            unset($this->DataUltimaActualizacao);
        } else {
            $this->DataUltimaActualizacao = $dataUltimaActualizacao;
        }
        return $this;
    }
    /**
     * Get DebitoLetrasNovas 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 getDebitoLetrasNovas()
    {
        return isset($this->DebitoLetrasNovas) ? $this->DebitoLetrasNovas : null;
    }
    /**
     * Set DebitoLetrasNovas 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 $debitoLetrasNovas
     * @return \StructType\ClientesERP
     */
    public function setDebitoLetrasNovas($debitoLetrasNovas = null)
    {
        // validation for constraint: boolean
        if (!is_null($debitoLetrasNovas) && !is_bool($debitoLetrasNovas)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($debitoLetrasNovas)), __LINE__);
        }
        if (is_null($debitoLetrasNovas) || (is_array($debitoLetrasNovas) && empty($debitoLetrasNovas))) {
            unset($this->DebitoLetrasNovas);
        } else {
            $this->DebitoLetrasNovas = $debitoLetrasNovas;
        }
        return $this;
    }
    /**
     * Get DebitoLetrasReformadas 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 getDebitoLetrasReformadas()
    {
        return isset($this->DebitoLetrasReformadas) ? $this->DebitoLetrasReformadas : null;
    }
    /**
     * Set DebitoLetrasReformadas 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 $debitoLetrasReformadas
     * @return \StructType\ClientesERP
     */
    public function setDebitoLetrasReformadas($debitoLetrasReformadas = null)
    {
        // validation for constraint: boolean
        if (!is_null($debitoLetrasReformadas) && !is_bool($debitoLetrasReformadas)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($debitoLetrasReformadas)), __LINE__);
        }
        if (is_null($debitoLetrasReformadas) || (is_array($debitoLetrasReformadas) && empty($debitoLetrasReformadas))) {
            unset($this->DebitoLetrasReformadas);
        } else {
            $this->DebitoLetrasReformadas = $debitoLetrasReformadas;
        }
        return $this;
    }
    /**
     * Get Delegacao 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 getDelegacao()
    {
        return isset($this->Delegacao) ? $this->Delegacao : null;
    }
    /**
     * Set Delegacao 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 $delegacao
     * @return \StructType\ClientesERP
     */
    public function setDelegacao($delegacao = null)
    {
        // validation for constraint: string
        if (!is_null($delegacao) && !is_string($delegacao)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($delegacao)), __LINE__);
        }
        if (is_null($delegacao) || (is_array($delegacao) && empty($delegacao))) {
            unset($this->Delegacao);
        } else {
            $this->Delegacao = $delegacao;
        }
        return $this;
    }
    /**
     * Get Desconto 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 getDesconto()
    {
        return isset($this->Desconto) ? $this->Desconto : null;
    }
    /**
     * Set Desconto 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 $desconto
     * @return \StructType\ClientesERP
     */
    public function setDesconto($desconto = null)
    {
        if (is_null($desconto) || (is_array($desconto) && empty($desconto))) {
            unset($this->Desconto);
        } else {
            $this->Desconto = $desconto;
        }
        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\ClientesERP
     */
    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 DiaFinPerNaoPag1 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 getDiaFinPerNaoPag1()
    {
        return isset($this->DiaFinPerNaoPag1) ? $this->DiaFinPerNaoPag1 : null;
    }
    /**
     * Set DiaFinPerNaoPag1 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 $diaFinPerNaoPag1
     * @return \StructType\ClientesERP
     */
    public function setDiaFinPerNaoPag1($diaFinPerNaoPag1 = null)
    {
        // validation for constraint: string
        if (!is_null($diaFinPerNaoPag1) && !is_string($diaFinPerNaoPag1)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($diaFinPerNaoPag1)), __LINE__);
        }
        if (is_null($diaFinPerNaoPag1) || (is_array($diaFinPerNaoPag1) && empty($diaFinPerNaoPag1))) {
            unset($this->DiaFinPerNaoPag1);
        } else {
            $this->DiaFinPerNaoPag1 = $diaFinPerNaoPag1;
        }
        return $this;
    }
    /**
     * Get DiaFinPerNaoPag2 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 getDiaFinPerNaoPag2()
    {
        return isset($this->DiaFinPerNaoPag2) ? $this->DiaFinPerNaoPag2 : null;
    }
    /**
     * Set DiaFinPerNaoPag2 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 $diaFinPerNaoPag2
     * @return \StructType\ClientesERP
     */
    public function setDiaFinPerNaoPag2($diaFinPerNaoPag2 = null)
    {
        // validation for constraint: string
        if (!is_null($diaFinPerNaoPag2) && !is_string($diaFinPerNaoPag2)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($diaFinPerNaoPag2)), __LINE__);
        }
        if (is_null($diaFinPerNaoPag2) || (is_array($diaFinPerNaoPag2) && empty($diaFinPerNaoPag2))) {
            unset($this->DiaFinPerNaoPag2);
        } else {
            $this->DiaFinPerNaoPag2 = $diaFinPerNaoPag2;
        }
        return $this;
    }
    /**
     * Get DiaInicPerNaoPag1 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 getDiaInicPerNaoPag1()
    {
        return isset($this->DiaInicPerNaoPag1) ? $this->DiaInicPerNaoPag1 : null;
    }
    /**
     * Set DiaInicPerNaoPag1 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 $diaInicPerNaoPag1
     * @return \StructType\ClientesERP
     */
    public function setDiaInicPerNaoPag1($diaInicPerNaoPag1 = null)
    {
        // validation for constraint: string
        if (!is_null($diaInicPerNaoPag1) && !is_string($diaInicPerNaoPag1)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($diaInicPerNaoPag1)), __LINE__);
        }
        if (is_null($diaInicPerNaoPag1) || (is_array($diaInicPerNaoPag1) && empty($diaInicPerNaoPag1))) {
            unset($this->DiaInicPerNaoPag1);
        } else {
            $this->DiaInicPerNaoPag1 = $diaInicPerNaoPag1;
        }
        return $this;
    }
    /**
     * Get DiaInicPerNaoPag2 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 getDiaInicPerNaoPag2()
    {
        return isset($this->DiaInicPerNaoPag2) ? $this->DiaInicPerNaoPag2 : null;
    }
    /**
     * Set DiaInicPerNaoPag2 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 $diaInicPerNaoPag2
     * @return \StructType\ClientesERP
     */
    public function setDiaInicPerNaoPag2($diaInicPerNaoPag2 = null)
    {
        // validation for constraint: string
        if (!is_null($diaInicPerNaoPag2) && !is_string($diaInicPerNaoPag2)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($diaInicPerNaoPag2)), __LINE__);
        }
        if (is_null($diaInicPerNaoPag2) || (is_array($diaInicPerNaoPag2) && empty($diaInicPerNaoPag2))) {
            unset($this->DiaInicPerNaoPag2);
        } else {
            $this->DiaInicPerNaoPag2 = $diaInicPerNaoPag2;
        }
        return $this;
    }
    /**
     * Get DiaPagamento1 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 getDiaPagamento1()
    {
        return isset($this->DiaPagamento1) ? $this->DiaPagamento1 : null;
    }
    /**
     * Set DiaPagamento1 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 $diaPagamento1
     * @return \StructType\ClientesERP
     */
    public function setDiaPagamento1($diaPagamento1 = null)
    {
        // validation for constraint: string
        if (!is_null($diaPagamento1) && !is_string($diaPagamento1)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($diaPagamento1)), __LINE__);
        }
        if (is_null($diaPagamento1) || (is_array($diaPagamento1) && empty($diaPagamento1))) {
            unset($this->DiaPagamento1);
        } else {
            $this->DiaPagamento1 = $diaPagamento1;
        }
        return $this;
    }
    /**
     * Get DiaPagamento2 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 getDiaPagamento2()
    {
        return isset($this->DiaPagamento2) ? $this->DiaPagamento2 : null;
    }
    /**
     * Set DiaPagamento2 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 $diaPagamento2
     * @return \StructType\ClientesERP
     */
    public function setDiaPagamento2($diaPagamento2 = null)
    {
        // validation for constraint: string
        if (!is_null($diaPagamento2) && !is_string($diaPagamento2)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($diaPagamento2)), __LINE__);
        }
        if (is_null($diaPagamento2) || (is_array($diaPagamento2) && empty($diaPagamento2))) {
            unset($this->DiaPagamento2);
        } else {
            $this->DiaPagamento2 = $diaPagamento2;
        }
        return $this;
    }
    /**
     * Get DiaPagamento3 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 getDiaPagamento3()
    {
        return isset($this->DiaPagamento3) ? $this->DiaPagamento3 : null;
    }
    /**
     * Set DiaPagamento3 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 $diaPagamento3
     * @return \StructType\ClientesERP
     */
    public function setDiaPagamento3($diaPagamento3 = null)
    {
        // validation for constraint: string
        if (!is_null($diaPagamento3) && !is_string($diaPagamento3)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($diaPagamento3)), __LINE__);
        }
        if (is_null($diaPagamento3) || (is_array($diaPagamento3) && empty($diaPagamento3))) {
            unset($this->DiaPagamento3);
        } else {
            $this->DiaPagamento3 = $diaPagamento3;
        }
        return $this;
    }
    /**
     * Get Distrito 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 getDistrito()
    {
        return isset($this->Distrito) ? $this->Distrito : null;
    }
    /**
     * Set Distrito 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 $distrito
     * @return \StructType\ClientesERP
     */
    public function setDistrito($distrito = null)
    {
        // validation for constraint: string
        if (!is_null($distrito) && !is_string($distrito)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($distrito)), __LINE__);
        }
        if (is_null($distrito) || (is_array($distrito) && empty($distrito))) {
            unset($this->Distrito);
        } else {
            $this->Distrito = $distrito;
        }
        return $this;
    }
    /**
     * Get EfectuaOutrasRetencoes 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 getEfectuaOutrasRetencoes()
    {
        return isset($this->EfectuaOutrasRetencoes) ? $this->EfectuaOutrasRetencoes : null;
    }
    /**
     * Set EfectuaOutrasRetencoes 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 $efectuaOutrasRetencoes
     * @return \StructType\ClientesERP
     */
    public function setEfectuaOutrasRetencoes($efectuaOutrasRetencoes = null)
    {
        // validation for constraint: boolean
        if (!is_null($efectuaOutrasRetencoes) && !is_bool($efectuaOutrasRetencoes)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($efectuaOutrasRetencoes)), __LINE__);
        }
        if (is_null($efectuaOutrasRetencoes) || (is_array($efectuaOutrasRetencoes) && empty($efectuaOutrasRetencoes))) {
            unset($this->EfectuaOutrasRetencoes);
        } else {
            $this->EfectuaOutrasRetencoes = $efectuaOutrasRetencoes;
        }
        return $this;
    }
    /**
     * Get EfectuaRetencao 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 getEfectuaRetencao()
    {
        return isset($this->EfectuaRetencao) ? $this->EfectuaRetencao : null;
    }
    /**
     * Set EfectuaRetencao 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 $efectuaRetencao
     * @return \StructType\ClientesERP
     */
    public function setEfectuaRetencao($efectuaRetencao = null)
    {
        // validation for constraint: boolean
        if (!is_null($efectuaRetencao) && !is_bool($efectuaRetencao)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($efectuaRetencao)), __LINE__);
        }
        if (is_null($efectuaRetencao) || (is_array($efectuaRetencao) && empty($efectuaRetencao))) {
            unset($this->EfectuaRetencao);
        } else {
            $this->EfectuaRetencao = $efectuaRetencao;
        }
        return $this;
    }
    /**
     * Get EncargosBanco 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 getEncargosBanco()
    {
        return isset($this->EncargosBanco) ? $this->EncargosBanco : null;
    }
    /**
     * Set EncargosBanco 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 $encargosBanco
     * @return \StructType\ClientesERP
     */
    public function setEncargosBanco($encargosBanco = null)
    {
        // validation for constraint: boolean
        if (!is_null($encargosBanco) && !is_bool($encargosBanco)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($encargosBanco)), __LINE__);
        }
        if (is_null($encargosBanco) || (is_array($encargosBanco) && empty($encargosBanco))) {
            unset($this->EncargosBanco);
        } else {
            $this->EncargosBanco = $encargosBanco;
        }
        return $this;
    }
    /**
     * Get EncomendasPendentes 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 getEncomendasPendentes()
    {
        return isset($this->EncomendasPendentes) ? $this->EncomendasPendentes : null;
    }
    /**
     * Set EncomendasPendentes 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 $encomendasPendentes
     * @return \StructType\ClientesERP
     */
    public function setEncomendasPendentes($encomendasPendentes = null)
    {
        if (is_null($encomendasPendentes) || (is_array($encomendasPendentes) && empty($encomendasPendentes))) {
            unset($this->EncomendasPendentes);
        } else {
            $this->EncomendasPendentes = $encomendasPendentes;
        }
        return $this;
    }
    /**
     * Get EnderecoWeb 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 getEnderecoWeb()
    {
        return isset($this->EnderecoWeb) ? $this->EnderecoWeb : null;
    }
    /**
     * Set EnderecoWeb 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 $enderecoWeb
     * @return \StructType\ClientesERP
     */
    public function setEnderecoWeb($enderecoWeb = null)
    {
        // validation for constraint: string
        if (!is_null($enderecoWeb) && !is_string($enderecoWeb)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($enderecoWeb)), __LINE__);
        }
        if (is_null($enderecoWeb) || (is_array($enderecoWeb) && empty($enderecoWeb))) {
            unset($this->EnderecoWeb);
        } else {
            $this->EnderecoWeb = $enderecoWeb;
        }
        return $this;
    }
    /**
     * Get Equipa 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 getEquipa()
    {
        return isset($this->Equipa) ? $this->Equipa : null;
    }
    /**
     * Set Equipa 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 $equipa
     * @return \StructType\ClientesERP
     */
    public function setEquipa($equipa = null)
    {
        // validation for constraint: string
        if (!is_null($equipa) && !is_string($equipa)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($equipa)), __LINE__);
        }
        if (is_null($equipa) || (is_array($equipa) && empty($equipa))) {
            unset($this->Equipa);
        } else {
            $this->Equipa = $equipa;
        }
        return $this;
    }
    /**
     * Get ExcluirAlertasCob 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 getExcluirAlertasCob()
    {
        return isset($this->ExcluirAlertasCob) ? $this->ExcluirAlertasCob : null;
    }
    /**
     * Set ExcluirAlertasCob 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 $excluirAlertasCob
     * @return \StructType\ClientesERP
     */
    public function setExcluirAlertasCob($excluirAlertasCob = null)
    {
        // validation for constraint: boolean
        if (!is_null($excluirAlertasCob) && !is_bool($excluirAlertasCob)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($excluirAlertasCob)), __LINE__);
        }
        if (is_null($excluirAlertasCob) || (is_array($excluirAlertasCob) && empty($excluirAlertasCob))) {
            unset($this->ExcluirAlertasCob);
        } else {
            $this->ExcluirAlertasCob = $excluirAlertasCob;
        }
        return $this;
    }
    /**
     * Get ExcluirRecap 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 getExcluirRecap()
    {
        return isset($this->ExcluirRecap) ? $this->ExcluirRecap : null;
    }
    /**
     * Set ExcluirRecap 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 $excluirRecap
     * @return \StructType\ClientesERP
     */
    public function setExcluirRecap($excluirRecap = null)
    {
        // validation for constraint: boolean
        if (!is_null($excluirRecap) && !is_bool($excluirRecap)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($excluirRecap)), __LINE__);
        }
        if (is_null($excluirRecap) || (is_array($excluirRecap) && empty($excluirRecap))) {
            unset($this->ExcluirRecap);
        } else {
            $this->ExcluirRecap = $excluirRecap;
        }
        return $this;
    }
    /**
     * Get Fac_Cp 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 getFac_Cp()
    {
        return isset($this->Fac_Cp) ? $this->Fac_Cp : null;
    }
    /**
     * Set Fac_Cp 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 $fac_Cp
     * @return \StructType\ClientesERP
     */
    public function setFac_Cp($fac_Cp = null)
    {
        // validation for constraint: string
        if (!is_null($fac_Cp) && !is_string($fac_Cp)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($fac_Cp)), __LINE__);
        }
        if (is_null($fac_Cp) || (is_array($fac_Cp) && empty($fac_Cp))) {
            unset($this->Fac_Cp);
        } else {
            $this->Fac_Cp = $fac_Cp;
        }
        return $this;
    }
    /**
     * Get Fac_Cploc 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 getFac_Cploc()
    {
        return isset($this->Fac_Cploc) ? $this->Fac_Cploc : null;
    }
    /**
     * Set Fac_Cploc 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 $fac_Cploc
     * @return \StructType\ClientesERP
     */
    public function setFac_Cploc($fac_Cploc = null)
    {
        // validation for constraint: string
        if (!is_null($fac_Cploc) && !is_string($fac_Cploc)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($fac_Cploc)), __LINE__);
        }
        if (is_null($fac_Cploc) || (is_array($fac_Cploc) && empty($fac_Cploc))) {
            unset($this->Fac_Cploc);
        } else {
            $this->Fac_Cploc = $fac_Cploc;
        }
        return $this;
    }
    /**
     * Get Fac_Fax 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 getFac_Fax()
    {
        return isset($this->Fac_Fax) ? $this->Fac_Fax : null;
    }
    /**
     * Set Fac_Fax 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 $fac_Fax
     * @return \StructType\ClientesERP
     */
    public function setFac_Fax($fac_Fax = null)
    {
        // validation for constraint: string
        if (!is_null($fac_Fax) && !is_string($fac_Fax)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($fac_Fax)), __LINE__);
        }
        if (is_null($fac_Fax) || (is_array($fac_Fax) && empty($fac_Fax))) {
            unset($this->Fac_Fax);
        } else {
            $this->Fac_Fax = $fac_Fax;
        }
        return $this;
    }
    /**
     * Get Fac_Local 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 getFac_Local()
    {
        return isset($this->Fac_Local) ? $this->Fac_Local : null;
    }
    /**
     * Set Fac_Local 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 $fac_Local
     * @return \StructType\ClientesERP
     */
    public function setFac_Local($fac_Local = null)
    {
        // validation for constraint: string
        if (!is_null($fac_Local) && !is_string($fac_Local)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($fac_Local)), __LINE__);
        }
        if (is_null($fac_Local) || (is_array($fac_Local) && empty($fac_Local))) {
            unset($this->Fac_Local);
        } else {
            $this->Fac_Local = $fac_Local;
        }
        return $this;
    }
    /**
     * Get Fac_Mor 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 getFac_Mor()
    {
        return isset($this->Fac_Mor) ? $this->Fac_Mor : null;
    }
    /**
     * Set Fac_Mor 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 $fac_Mor
     * @return \StructType\ClientesERP
     */
    public function setFac_Mor($fac_Mor = null)
    {
        // validation for constraint: string
        if (!is_null($fac_Mor) && !is_string($fac_Mor)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($fac_Mor)), __LINE__);
        }
        if (is_null($fac_Mor) || (is_array($fac_Mor) && empty($fac_Mor))) {
            unset($this->Fac_Mor);
        } else {
            $this->Fac_Mor = $fac_Mor;
        }
        return $this;
    }
    /**
     * Get Fac_Mor1 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 getFac_Mor1()
    {
        return isset($this->Fac_Mor1) ? $this->Fac_Mor1 : null;
    }
    /**
     * Set Fac_Mor1 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 $fac_Mor1
     * @return \StructType\ClientesERP
     */
    public function setFac_Mor1($fac_Mor1 = null)
    {
        // validation for constraint: string
        if (!is_null($fac_Mor1) && !is_string($fac_Mor1)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($fac_Mor1)), __LINE__);
        }
        if (is_null($fac_Mor1) || (is_array($fac_Mor1) && empty($fac_Mor1))) {
            unset($this->Fac_Mor1);
        } else {
            $this->Fac_Mor1 = $fac_Mor1;
        }
        return $this;
    }
    /**
     * Get Fac_Mor2 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 getFac_Mor2()
    {
        return isset($this->Fac_Mor2) ? $this->Fac_Mor2 : null;
    }
    /**
     * Set Fac_Mor2 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 $fac_Mor2
     * @return \StructType\ClientesERP
     */
    public function setFac_Mor2($fac_Mor2 = null)
    {
        // validation for constraint: string
        if (!is_null($fac_Mor2) && !is_string($fac_Mor2)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($fac_Mor2)), __LINE__);
        }
        if (is_null($fac_Mor2) || (is_array($fac_Mor2) && empty($fac_Mor2))) {
            unset($this->Fac_Mor2);
        } else {
            $this->Fac_Mor2 = $fac_Mor2;
        }
        return $this;
    }
    /**
     * Get Fac_Tel 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 getFac_Tel()
    {
        return isset($this->Fac_Tel) ? $this->Fac_Tel : null;
    }
    /**
     * Set Fac_Tel 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 $fac_Tel
     * @return \StructType\ClientesERP
     */
    public function setFac_Tel($fac_Tel = null)
    {
        // validation for constraint: string
        if (!is_null($fac_Tel) && !is_string($fac_Tel)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($fac_Tel)), __LINE__);
        }
        if (is_null($fac_Tel) || (is_array($fac_Tel) && empty($fac_Tel))) {
            unset($this->Fac_Tel);
        } else {
            $this->Fac_Tel = $fac_Tel;
        }
        return $this;
    }
    /**
     * Get Factoring value
     * @return bool|null
     */
    public function getFactoring()
    {
        return $this->Factoring;
    }
    /**
     * Set Factoring value
     * @param bool $factoring
     * @return \StructType\ClientesERP
     */
    public function setFactoring($factoring = null)
    {
        // validation for constraint: boolean
        if (!is_null($factoring) && !is_bool($factoring)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($factoring)), __LINE__);
        }
        $this->Factoring = $factoring;
        return $this;
    }
    /**
     * Get FacturacaoAgrupadaBilling value
     * @return bool|null
     */
    public function getFacturacaoAgrupadaBilling()
    {
        return $this->FacturacaoAgrupadaBilling;
    }
    /**
     * Set FacturacaoAgrupadaBilling value
     * @param bool $facturacaoAgrupadaBilling
     * @return \StructType\ClientesERP
     */
    public function setFacturacaoAgrupadaBilling($facturacaoAgrupadaBilling = null)
    {
        // validation for constraint: boolean
        if (!is_null($facturacaoAgrupadaBilling) && !is_bool($facturacaoAgrupadaBilling)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($facturacaoAgrupadaBilling)), __LINE__);
        }
        $this->FacturacaoAgrupadaBilling = $facturacaoAgrupadaBilling;
        return $this;
    }
    /**
     * Get FuncionarioResp 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 getFuncionarioResp()
    {
        return isset($this->FuncionarioResp) ? $this->FuncionarioResp : null;
    }
    /**
     * Set FuncionarioResp 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 $funcionarioResp
     * @return \StructType\ClientesERP
     */
    public function setFuncionarioResp($funcionarioResp = null)
    {
        // validation for constraint: string
        if (!is_null($funcionarioResp) && !is_string($funcionarioResp)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($funcionarioResp)), __LINE__);
        }
        if (is_null($funcionarioResp) || (is_array($funcionarioResp) && empty($funcionarioResp))) {
            unset($this->FuncionarioResp);
        } else {
            $this->FuncionarioResp = $funcionarioResp;
        }
        return $this;
    }
    /**
     * Get FuncionarioToc 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 getFuncionarioToc()
    {
        return isset($this->FuncionarioToc) ? $this->FuncionarioToc : null;
    }
    /**
     * Set FuncionarioToc 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 $funcionarioToc
     * @return \StructType\ClientesERP
     */
    public function setFuncionarioToc($funcionarioToc = null)
    {
        // validation for constraint: string
        if (!is_null($funcionarioToc) && !is_string($funcionarioToc)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($funcionarioToc)), __LINE__);
        }
        if (is_null($funcionarioToc) || (is_array($funcionarioToc) && empty($funcionarioToc))) {
            unset($this->FuncionarioToc);
        } else {
            $this->FuncionarioToc = $funcionarioToc;
        }
        return $this;
    }
    /**
     * Get GestaoDiasPag 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 getGestaoDiasPag()
    {
        return isset($this->GestaoDiasPag) ? $this->GestaoDiasPag : null;
    }
    /**
     * Set GestaoDiasPag 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 $gestaoDiasPag
     * @return \StructType\ClientesERP
     */
    public function setGestaoDiasPag($gestaoDiasPag = null)
    {
        // validation for constraint: boolean
        if (!is_null($gestaoDiasPag) && !is_bool($gestaoDiasPag)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($gestaoDiasPag)), __LINE__);
        }
        if (is_null($gestaoDiasPag) || (is_array($gestaoDiasPag) && empty($gestaoDiasPag))) {
            unset($this->GestaoDiasPag);
        } else {
            $this->GestaoDiasPag = $gestaoDiasPag;
        }
        return $this;
    }
    /**
     * Get IDB2BFormato 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 getIDB2BFormato()
    {
        return isset($this->IDB2BFormato) ? $this->IDB2BFormato : null;
    }
    /**
     * Set IDB2BFormato 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 $iDB2BFormato
     * @return \StructType\ClientesERP
     */
    public function setIDB2BFormato($iDB2BFormato = null)
    {
        // validation for constraint: string
        if (!is_null($iDB2BFormato) && !is_string($iDB2BFormato)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($iDB2BFormato)), __LINE__);
        }
        if (is_null($iDB2BFormato) || (is_array($iDB2BFormato) && empty($iDB2BFormato))) {
            unset($this->IDB2BFormato);
        } else {
            $this->IDB2BFormato = $iDB2BFormato;
        }
        return $this;
    }
    /**
     * Get IdContactoCob 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 getIdContactoCob()
    {
        return isset($this->IdContactoCob) ? $this->IdContactoCob : null;
    }
    /**
     * Set IdContactoCob 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 $idContactoCob
     * @return \StructType\ClientesERP
     */
    public function setIdContactoCob($idContactoCob = null)
    {
        // validation for constraint: pattern
        if (is_scalar($idContactoCob) && !preg_match('/[\\da-fA-F]{8}-[\\da-fA-F]{4}-[\\da-fA-F]{4}-[\\da-fA-F]{4}-[\\da-fA-F]{12}/', $idContactoCob)) {
            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($idContactoCob, true)), __LINE__);
        }
        // validation for constraint: string
        if (!is_null($idContactoCob) && !is_string($idContactoCob)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($idContactoCob)), __LINE__);
        }
        if (is_null($idContactoCob) || (is_array($idContactoCob) && empty($idContactoCob))) {
            unset($this->IdContactoCob);
        } else {
            $this->IdContactoCob = $idContactoCob;
        }
        return $this;
    }
    /**
     * Get IdGDOC 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 getIdGDOC()
    {
        return isset($this->IdGDOC) ? $this->IdGDOC : null;
    }
    /**
     * Set IdGDOC 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 $idGDOC
     * @return \StructType\ClientesERP
     */
    public function setIdGDOC($idGDOC = null)
    {
        // validation for constraint: pattern
        if (is_scalar($idGDOC) && !preg_match('/[\\da-fA-F]{8}-[\\da-fA-F]{4}-[\\da-fA-F]{4}-[\\da-fA-F]{4}-[\\da-fA-F]{12}/', $idGDOC)) {
            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($idGDOC, true)), __LINE__);
        }
        // validation for constraint: string
        if (!is_null($idGDOC) && !is_string($idGDOC)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($idGDOC)), __LINE__);
        }
        if (is_null($idGDOC) || (is_array($idGDOC) && empty($idGDOC))) {
            unset($this->IdGDOC);
        } else {
            $this->IdGDOC = $idGDOC;
        }
        return $this;
    }
    /**
     * Get IdadeSaldoCob 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 getIdadeSaldoCob()
    {
        return isset($this->IdadeSaldoCob) ? $this->IdadeSaldoCob : null;
    }
    /**
     * Set IdadeSaldoCob 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 $idadeSaldoCob
     * @return \StructType\ClientesERP
     */
    public function setIdadeSaldoCob($idadeSaldoCob = null)
    {
        // validation for constraint: int
        if (!is_null($idadeSaldoCob) && !is_numeric($idadeSaldoCob)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a numeric value, "%s" given', gettype($idadeSaldoCob)), __LINE__);
        }
        if (is_null($idadeSaldoCob) || (is_array($idadeSaldoCob) && empty($idadeSaldoCob))) {
            unset($this->IdadeSaldoCob);
        } else {
            $this->IdadeSaldoCob = $idadeSaldoCob;
        }
        return $this;
    }
    /**
     * Get Idioma 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 getIdioma()
    {
        return isset($this->Idioma) ? $this->Idioma : null;
    }
    /**
     * Set Idioma 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 $idioma
     * @return \StructType\ClientesERP
     */
    public function setIdioma($idioma = null)
    {
        // validation for constraint: string
        if (!is_null($idioma) && !is_string($idioma)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($idioma)), __LINE__);
        }
        if (is_null($idioma) || (is_array($idioma) && empty($idioma))) {
            unset($this->Idioma);
        } else {
            $this->Idioma = $idioma;
        }
        return $this;
    }
    /**
     * Get IntegraCessaoFactoring 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 getIntegraCessaoFactoring()
    {
        return isset($this->IntegraCessaoFactoring) ? $this->IntegraCessaoFactoring : null;
    }
    /**
     * Set IntegraCessaoFactoring 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 $integraCessaoFactoring
     * @return \StructType\ClientesERP
     */
    public function setIntegraCessaoFactoring($integraCessaoFactoring = null)
    {
        // validation for constraint: boolean
        if (!is_null($integraCessaoFactoring) && !is_bool($integraCessaoFactoring)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($integraCessaoFactoring)), __LINE__);
        }
        if (is_null($integraCessaoFactoring) || (is_array($integraCessaoFactoring) && empty($integraCessaoFactoring))) {
            unset($this->IntegraCessaoFactoring);
        } else {
            $this->IntegraCessaoFactoring = $integraCessaoFactoring;
        }
        return $this;
    }
    /**
     * Get IntrastatCliente 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 getIntrastatCliente()
    {
        return isset($this->IntrastatCliente) ? $this->IntrastatCliente : null;
    }
    /**
     * Set IntrastatCliente 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 $intrastatCliente
     * @return \StructType\ClientesERP
     */
    public function setIntrastatCliente($intrastatCliente = null)
    {
        // validation for constraint: boolean
        if (!is_null($intrastatCliente) && !is_bool($intrastatCliente)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($intrastatCliente)), __LINE__);
        }
        if (is_null($intrastatCliente) || (is_array($intrastatCliente) && empty($intrastatCliente))) {
            unset($this->IntrastatCliente);
        } else {
            $this->IntrastatCliente = $intrastatCliente;
        }
        return $this;
    }
    /**
     * Get IntrastatPorto 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 getIntrastatPorto()
    {
        return isset($this->IntrastatPorto) ? $this->IntrastatPorto : null;
    }
    /**
     * Set IntrastatPorto 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 $intrastatPorto
     * @return \StructType\ClientesERP
     */
    public function setIntrastatPorto($intrastatPorto = null)
    {
        // validation for constraint: string
        if (!is_null($intrastatPorto) && !is_string($intrastatPorto)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($intrastatPorto)), __LINE__);
        }
        if (is_null($intrastatPorto) || (is_array($intrastatPorto) && empty($intrastatPorto))) {
            unset($this->IntrastatPorto);
        } else {
            $this->IntrastatPorto = $intrastatPorto;
        }
        return $this;
    }
    /**
     * Get IsentoIEC 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 getIsentoIEC()
    {
        return isset($this->IsentoIEC) ? $this->IsentoIEC : null;
    }
    /**
     * Set IsentoIEC 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 $isentoIEC
     * @return \StructType\ClientesERP
     */
    public function setIsentoIEC($isentoIEC = null)
    {
        // validation for constraint: boolean
        if (!is_null($isentoIEC) && !is_bool($isentoIEC)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($isentoIEC)), __LINE__);
        }
        if (is_null($isentoIEC) || (is_array($isentoIEC) && empty($isentoIEC))) {
            unset($this->IsentoIEC);
        } else {
            $this->IsentoIEC = $isentoIEC;
        }
        return $this;
    }
    /**
     * Get JuroLetras 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 getJuroLetras()
    {
        return isset($this->JuroLetras) ? $this->JuroLetras : null;
    }
    /**
     * Set JuroLetras 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 $juroLetras
     * @return \StructType\ClientesERP
     */
    public function setJuroLetras($juroLetras = null)
    {
        if (is_null($juroLetras) || (is_array($juroLetras) && empty($juroLetras))) {
            unset($this->JuroLetras);
        } else {
            $this->JuroLetras = $juroLetras;
        }
        return $this;
    }
    /**
     * Get JuroLetrasPostecipado 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 getJuroLetrasPostecipado()
    {
        return isset($this->JuroLetrasPostecipado) ? $this->JuroLetrasPostecipado : null;
    }
    /**
     * Set JuroLetrasPostecipado 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 $juroLetrasPostecipado
     * @return \StructType\ClientesERP
     */
    public function setJuroLetrasPostecipado($juroLetrasPostecipado = null)
    {
        // validation for constraint: boolean
        if (!is_null($juroLetrasPostecipado) && !is_bool($juroLetrasPostecipado)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($juroLetrasPostecipado)), __LINE__);
        }
        if (is_null($juroLetrasPostecipado) || (is_array($juroLetrasPostecipado) && empty($juroLetrasPostecipado))) {
            unset($this->JuroLetrasPostecipado);
        } else {
            $this->JuroLetrasPostecipado = $juroLetrasPostecipado;
        }
        return $this;
    }
    /**
     * Get JuroLetrasPostecipadoRef 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 getJuroLetrasPostecipadoRef()
    {
        return isset($this->JuroLetrasPostecipadoRef) ? $this->JuroLetrasPostecipadoRef : null;
    }
    /**
     * Set JuroLetrasPostecipadoRef 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 $juroLetrasPostecipadoRef
     * @return \StructType\ClientesERP
     */
    public function setJuroLetrasPostecipadoRef($juroLetrasPostecipadoRef = null)
    {
        // validation for constraint: boolean
        if (!is_null($juroLetrasPostecipadoRef) && !is_bool($juroLetrasPostecipadoRef)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($juroLetrasPostecipadoRef)), __LINE__);
        }
        if (is_null($juroLetrasPostecipadoRef) || (is_array($juroLetrasPostecipadoRef) && empty($juroLetrasPostecipadoRef))) {
            unset($this->JuroLetrasPostecipadoRef);
        } else {
            $this->JuroLetrasPostecipadoRef = $juroLetrasPostecipadoRef;
        }
        return $this;
    }
    /**
     * Get JuroLetrasRef 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 getJuroLetrasRef()
    {
        return isset($this->JuroLetrasRef) ? $this->JuroLetrasRef : null;
    }
    /**
     * Set JuroLetrasRef 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 $juroLetrasRef
     * @return \StructType\ClientesERP
     */
    public function setJuroLetrasRef($juroLetrasRef = null)
    {
        if (is_null($juroLetrasRef) || (is_array($juroLetrasRef) && empty($juroLetrasRef))) {
            unset($this->JuroLetrasRef);
        } else {
            $this->JuroLetrasRef = $juroLetrasRef;
        }
        return $this;
    }
    /**
     * Get LimiteCred 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 getLimiteCred()
    {
        return isset($this->LimiteCred) ? $this->LimiteCred : null;
    }
    /**
     * Set LimiteCred 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 $limiteCred
     * @return \StructType\ClientesERP
     */
    public function setLimiteCred($limiteCred = null)
    {
        if (is_null($limiteCred) || (is_array($limiteCred) && empty($limiteCred))) {
            unset($this->LimiteCred);
        } else {
            $this->LimiteCred = $limiteCred;
        }
        return $this;
    }
    /**
     * Get LimiteCredIdade 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 getLimiteCredIdade()
    {
        return isset($this->LimiteCredIdade) ? $this->LimiteCredIdade : null;
    }
    /**
     * Set LimiteCredIdade 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 $limiteCredIdade
     * @return \StructType\ClientesERP
     */
    public function setLimiteCredIdade($limiteCredIdade = null)
    {
        // validation for constraint: boolean
        if (!is_null($limiteCredIdade) && !is_bool($limiteCredIdade)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($limiteCredIdade)), __LINE__);
        }
        if (is_null($limiteCredIdade) || (is_array($limiteCredIdade) && empty($limiteCredIdade))) {
            unset($this->LimiteCredIdade);
        } else {
            $this->LimiteCredIdade = $limiteCredIdade;
        }
        return $this;
    }
    /**
     * Get LimiteCredValor 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 getLimiteCredValor()
    {
        return isset($this->LimiteCredValor) ? $this->LimiteCredValor : null;
    }
    /**
     * Set LimiteCredValor 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 $limiteCredValor
     * @return \StructType\ClientesERP
     */
    public function setLimiteCredValor($limiteCredValor = null)
    {
        // validation for constraint: boolean
        if (!is_null($limiteCredValor) && !is_bool($limiteCredValor)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($limiteCredValor)), __LINE__);
        }
        if (is_null($limiteCredValor) || (is_array($limiteCredValor) && empty($limiteCredValor))) {
            unset($this->LimiteCredValor);
        } else {
            $this->LimiteCredValor = $limiteCredValor;
        }
        return $this;
    }
    /**
     * Get LimiteIdadeSaldo 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 getLimiteIdadeSaldo()
    {
        return isset($this->LimiteIdadeSaldo) ? $this->LimiteIdadeSaldo : null;
    }
    /**
     * Set LimiteIdadeSaldo 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 $limiteIdadeSaldo
     * @return \StructType\ClientesERP
     */
    public function setLimiteIdadeSaldo($limiteIdadeSaldo = null)
    {
        // validation for constraint: int
        if (!is_null($limiteIdadeSaldo) && !is_numeric($limiteIdadeSaldo)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a numeric value, "%s" given', gettype($limiteIdadeSaldo)), __LINE__);
        }
        if (is_null($limiteIdadeSaldo) || (is_array($limiteIdadeSaldo) && empty($limiteIdadeSaldo))) {
            unset($this->LimiteIdadeSaldo);
        } else {
            $this->LimiteIdadeSaldo = $limiteIdadeSaldo;
        }
        return $this;
    }
    /**
     * Get LimiteValorSaldo 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 getLimiteValorSaldo()
    {
        return isset($this->LimiteValorSaldo) ? $this->LimiteValorSaldo : null;
    }
    /**
     * Set LimiteValorSaldo 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 $limiteValorSaldo
     * @return \StructType\ClientesERP
     */
    public function setLimiteValorSaldo($limiteValorSaldo = null)
    {
        if (is_null($limiteValorSaldo) || (is_array($limiteValorSaldo) && empty($limiteValorSaldo))) {
            unset($this->LimiteValorSaldo);
        } else {
            $this->LimiteValorSaldo = $limiteValorSaldo;
        }
        return $this;
    }
    /**
     * Get LocalOperacao 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 getLocalOperacao()
    {
        return isset($this->LocalOperacao) ? $this->LocalOperacao : null;
    }
    /**
     * Set LocalOperacao 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 $localOperacao
     * @return \StructType\ClientesERP
     */
    public function setLocalOperacao($localOperacao = null)
    {
        // validation for constraint: string
        if (!is_null($localOperacao) && !is_string($localOperacao)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($localOperacao)), __LINE__);
        }
        if (is_null($localOperacao) || (is_array($localOperacao) && empty($localOperacao))) {
            unset($this->LocalOperacao);
        } else {
            $this->LocalOperacao = $localOperacao;
        }
        return $this;
    }
    /**
     * Get ModoExp 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 getModoExp()
    {
        return isset($this->ModoExp) ? $this->ModoExp : null;
    }
    /**
     * Set ModoExp 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 $modoExp
     * @return \StructType\ClientesERP
     */
    public function setModoExp($modoExp = null)
    {
        // validation for constraint: string
        if (!is_null($modoExp) && !is_string($modoExp)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($modoExp)), __LINE__);
        }
        if (is_null($modoExp) || (is_array($modoExp) && empty($modoExp))) {
            unset($this->ModoExp);
        } else {
            $this->ModoExp = $modoExp;
        }
        return $this;
    }
    /**
     * Get ModoPag 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 getModoPag()
    {
        return isset($this->ModoPag) ? $this->ModoPag : null;
    }
    /**
     * Set ModoPag 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 $modoPag
     * @return \StructType\ClientesERP
     */
    public function setModoPag($modoPag = null)
    {
        // validation for constraint: string
        if (!is_null($modoPag) && !is_string($modoPag)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($modoPag)), __LINE__);
        }
        if (is_null($modoPag) || (is_array($modoPag) && empty($modoPag))) {
            unset($this->ModoPag);
        } else {
            $this->ModoPag = $modoPag;
        }
        return $this;
    }
    /**
     * Get ModoRec 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 getModoRec()
    {
        return isset($this->ModoRec) ? $this->ModoRec : null;
    }
    /**
     * Set ModoRec 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 $modoRec
     * @return \StructType\ClientesERP
     */
    public function setModoRec($modoRec = null)
    {
        // validation for constraint: string
        if (!is_null($modoRec) && !is_string($modoRec)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($modoRec)), __LINE__);
        }
        if (is_null($modoRec) || (is_array($modoRec) && empty($modoRec))) {
            unset($this->ModoRec);
        } else {
            $this->ModoRec = $modoRec;
        }
        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\ClientesERP
     */
    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\ClientesERP
     */
    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 NomeFiscal 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 getNomeFiscal()
    {
        return isset($this->NomeFiscal) ? $this->NomeFiscal : null;
    }
    /**
     * Set NomeFiscal 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 $nomeFiscal
     * @return \StructType\ClientesERP
     */
    public function setNomeFiscal($nomeFiscal = null)
    {
        // validation for constraint: string
        if (!is_null($nomeFiscal) && !is_string($nomeFiscal)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($nomeFiscal)), __LINE__);
        }
        if (is_null($nomeFiscal) || (is_array($nomeFiscal) && empty($nomeFiscal))) {
            unset($this->NomeFiscal);
        } else {
            $this->NomeFiscal = $nomeFiscal;
        }
        return $this;
    }
    /**
     * Get Notas 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 getNotas()
    {
        return isset($this->Notas) ? $this->Notas : null;
    }
    /**
     * Set Notas 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 $notas
     * @return \StructType\ClientesERP
     */
    public function setNotas($notas = null)
    {
        // validation for constraint: string
        if (!is_null($notas) && !is_string($notas)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($notas)), __LINE__);
        }
        if (is_null($notas) || (is_array($notas) && empty($notas))) {
            unset($this->Notas);
        } else {
            $this->Notas = $notas;
        }
        return $this;
    }
    /**
     * Get NumContrib 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 getNumContrib()
    {
        return isset($this->NumContrib) ? $this->NumContrib : null;
    }
    /**
     * Set NumContrib 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 $numContrib
     * @return \StructType\ClientesERP
     */
    public function setNumContrib($numContrib = null)
    {
        // validation for constraint: string
        if (!is_null($numContrib) && !is_string($numContrib)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($numContrib)), __LINE__);
        }
        if (is_null($numContrib) || (is_array($numContrib) && empty($numContrib))) {
            unset($this->NumContrib);
        } else {
            $this->NumContrib = $numContrib;
        }
        return $this;
    }
    /**
     * Get NumDiasRetrocesso 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 getNumDiasRetrocesso()
    {
        return isset($this->NumDiasRetrocesso) ? $this->NumDiasRetrocesso : null;
    }
    /**
     * Set NumDiasRetrocesso 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 $numDiasRetrocesso
     * @return \StructType\ClientesERP
     */
    public function setNumDiasRetrocesso($numDiasRetrocesso = null)
    {
        // validation for constraint: string
        if (!is_null($numDiasRetrocesso) && !is_string($numDiasRetrocesso)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($numDiasRetrocesso)), __LINE__);
        }
        if (is_null($numDiasRetrocesso) || (is_array($numDiasRetrocesso) && empty($numDiasRetrocesso))) {
            unset($this->NumDiasRetrocesso);
        } else {
            $this->NumDiasRetrocesso = $numDiasRetrocesso;
        }
        return $this;
    }
    /**
     * Get NumViasDoc 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 getNumViasDoc()
    {
        return isset($this->NumViasDoc) ? $this->NumViasDoc : null;
    }
    /**
     * Set NumViasDoc 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 $numViasDoc
     * @return \StructType\ClientesERP
     */
    public function setNumViasDoc($numViasDoc = null)
    {
        // validation for constraint: int
        if (!is_null($numViasDoc) && !is_numeric($numViasDoc)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a numeric value, "%s" given', gettype($numViasDoc)), __LINE__);
        }
        if (is_null($numViasDoc) || (is_array($numViasDoc) && empty($numViasDoc))) {
            unset($this->NumViasDoc);
        } else {
            $this->NumViasDoc = $numViasDoc;
        }
        return $this;
    }
    /**
     * Get Pais 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 getPais()
    {
        return isset($this->Pais) ? $this->Pais : null;
    }
    /**
     * Set Pais 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 $pais
     * @return \StructType\ClientesERP
     */
    public function setPais($pais = null)
    {
        // validation for constraint: string
        if (!is_null($pais) && !is_string($pais)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($pais)), __LINE__);
        }
        if (is_null($pais) || (is_array($pais) && empty($pais))) {
            unset($this->Pais);
        } else {
            $this->Pais = $pais;
        }
        return $this;
    }
    /**
     * Get PessoaSingular value
     * @return bool|null
     */
    public function getPessoaSingular()
    {
        return $this->PessoaSingular;
    }
    /**
     * Set PessoaSingular value
     * @param bool $pessoaSingular
     * @return \StructType\ClientesERP
     */
    public function setPessoaSingular($pessoaSingular = null)
    {
        // validation for constraint: boolean
        if (!is_null($pessoaSingular) && !is_bool($pessoaSingular)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($pessoaSingular)), __LINE__);
        }
        $this->PessoaSingular = $pessoaSingular;
        return $this;
    }
    /**
     * Get PortesLetras 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 getPortesLetras()
    {
        return isset($this->PortesLetras) ? $this->PortesLetras : null;
    }
    /**
     * Set PortesLetras 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 $portesLetras
     * @return \StructType\ClientesERP
     */
    public function setPortesLetras($portesLetras = null)
    {
        if (is_null($portesLetras) || (is_array($portesLetras) && empty($portesLetras))) {
            unset($this->PortesLetras);
        } else {
            $this->PortesLetras = $portesLetras;
        }
        return $this;
    }
    /**
     * Get PortesLetrasRef 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 getPortesLetrasRef()
    {
        return isset($this->PortesLetrasRef) ? $this->PortesLetrasRef : null;
    }
    /**
     * Set PortesLetrasRef 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 $portesLetrasRef
     * @return \StructType\ClientesERP
     */
    public function setPortesLetrasRef($portesLetrasRef = null)
    {
        if (is_null($portesLetrasRef) || (is_array($portesLetrasRef) && empty($portesLetrasRef))) {
            unset($this->PortesLetrasRef);
        } else {
            $this->PortesLetrasRef = $portesLetrasRef;
        }
        return $this;
    }
    /**
     * Get Protegida value
     * @return bool|null
     */
    public function getProtegida()
    {
        return $this->Protegida;
    }
    /**
     * Set Protegida value
     * @param bool $protegida
     * @return \StructType\ClientesERP
     */
    public function setProtegida($protegida = null)
    {
        // validation for constraint: boolean
        if (!is_null($protegida) && !is_bool($protegida)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($protegida)), __LINE__);
        }
        $this->Protegida = $protegida;
        return $this;
    }
    /**
     * Get RegimeIvaReembolsos value
     * @return int|null
     */
    public function getRegimeIvaReembolsos()
    {
        return $this->RegimeIvaReembolsos;
    }
    /**
     * Set RegimeIvaReembolsos value
     * @param int $regimeIvaReembolsos
     * @return \StructType\ClientesERP
     */
    public function setRegimeIvaReembolsos($regimeIvaReembolsos = null)
    {
        // validation for constraint: int
        if (!is_null($regimeIvaReembolsos) && !is_numeric($regimeIvaReembolsos)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a numeric value, "%s" given', gettype($regimeIvaReembolsos)), __LINE__);
        }
        $this->RegimeIvaReembolsos = $regimeIvaReembolsos;
        return $this;
    }
    /**
     * Get RubricaPagamentos 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 getRubricaPagamentos()
    {
        return isset($this->RubricaPagamentos) ? $this->RubricaPagamentos : null;
    }
    /**
     * Set RubricaPagamentos 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 $rubricaPagamentos
     * @return \StructType\ClientesERP
     */
    public function setRubricaPagamentos($rubricaPagamentos = null)
    {
        // validation for constraint: string
        if (!is_null($rubricaPagamentos) && !is_string($rubricaPagamentos)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($rubricaPagamentos)), __LINE__);
        }
        if (is_null($rubricaPagamentos) || (is_array($rubricaPagamentos) && empty($rubricaPagamentos))) {
            unset($this->RubricaPagamentos);
        } else {
            $this->RubricaPagamentos = $rubricaPagamentos;
        }
        return $this;
    }
    /**
     * Get RubricaRecebimentos 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 getRubricaRecebimentos()
    {
        return isset($this->RubricaRecebimentos) ? $this->RubricaRecebimentos : null;
    }
    /**
     * Set RubricaRecebimentos 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 $rubricaRecebimentos
     * @return \StructType\ClientesERP
     */
    public function setRubricaRecebimentos($rubricaRecebimentos = null)
    {
        // validation for constraint: string
        if (!is_null($rubricaRecebimentos) && !is_string($rubricaRecebimentos)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($rubricaRecebimentos)), __LINE__);
        }
        if (is_null($rubricaRecebimentos) || (is_array($rubricaRecebimentos) && empty($rubricaRecebimentos))) {
            unset($this->RubricaRecebimentos);
        } else {
            $this->RubricaRecebimentos = $rubricaRecebimentos;
        }
        return $this;
    }
    /**
     * Get SegmentoTerceiro 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 getSegmentoTerceiro()
    {
        return isset($this->SegmentoTerceiro) ? $this->SegmentoTerceiro : null;
    }
    /**
     * Set SegmentoTerceiro 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 $segmentoTerceiro
     * @return \StructType\ClientesERP
     */
    public function setSegmentoTerceiro($segmentoTerceiro = null)
    {
        // validation for constraint: string
        if (!is_null($segmentoTerceiro) && !is_string($segmentoTerceiro)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($segmentoTerceiro)), __LINE__);
        }
        if (is_null($segmentoTerceiro) || (is_array($segmentoTerceiro) && empty($segmentoTerceiro))) {
            unset($this->SegmentoTerceiro);
        } else {
            $this->SegmentoTerceiro = $segmentoTerceiro;
        }
        return $this;
    }
    /**
     * Get Situacao 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 getSituacao()
    {
        return isset($this->Situacao) ? $this->Situacao : null;
    }
    /**
     * Set Situacao 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 $situacao
     * @return \StructType\ClientesERP
     */
    public function setSituacao($situacao = null)
    {
        // validation for constraint: string
        if (!is_null($situacao) && !is_string($situacao)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($situacao)), __LINE__);
        }
        if (is_null($situacao) || (is_array($situacao) && empty($situacao))) {
            unset($this->Situacao);
        } else {
            $this->Situacao = $situacao;
        }
        return $this;
    }
    /**
     * Get SujeitoRecargo 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 getSujeitoRecargo()
    {
        return isset($this->SujeitoRecargo) ? $this->SujeitoRecargo : null;
    }
    /**
     * Set SujeitoRecargo 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 $sujeitoRecargo
     * @return \StructType\ClientesERP
     */
    public function setSujeitoRecargo($sujeitoRecargo = null)
    {
        // validation for constraint: boolean
        if (!is_null($sujeitoRecargo) && !is_bool($sujeitoRecargo)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($sujeitoRecargo)), __LINE__);
        }
        if (is_null($sujeitoRecargo) || (is_array($sujeitoRecargo) && empty($sujeitoRecargo))) {
            unset($this->SujeitoRecargo);
        } else {
            $this->SujeitoRecargo = $sujeitoRecargo;
        }
        return $this;
    }
    /**
     * Get SuporteAvisosVencimento 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 getSuporteAvisosVencimento()
    {
        return isset($this->SuporteAvisosVencimento) ? $this->SuporteAvisosVencimento : null;
    }
    /**
     * Set SuporteAvisosVencimento 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 $suporteAvisosVencimento
     * @return \StructType\ClientesERP
     */
    public function setSuporteAvisosVencimento($suporteAvisosVencimento = null)
    {
        // validation for constraint: string
        if (!is_null($suporteAvisosVencimento) && !is_string($suporteAvisosVencimento)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($suporteAvisosVencimento)), __LINE__);
        }
        if (is_null($suporteAvisosVencimento) || (is_array($suporteAvisosVencimento) && empty($suporteAvisosVencimento))) {
            unset($this->SuporteAvisosVencimento);
        } else {
            $this->SuporteAvisosVencimento = $suporteAvisosVencimento;
        }
        return $this;
    }
    /**
     * Get Telefone2 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 getTelefone2()
    {
        return isset($this->Telefone2) ? $this->Telefone2 : null;
    }
    /**
     * Set Telefone2 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 $telefone2
     * @return \StructType\ClientesERP
     */
    public function setTelefone2($telefone2 = null)
    {
        // validation for constraint: string
        if (!is_null($telefone2) && !is_string($telefone2)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($telefone2)), __LINE__);
        }
        if (is_null($telefone2) || (is_array($telefone2) && empty($telefone2))) {
            unset($this->Telefone2);
        } else {
            $this->Telefone2 = $telefone2;
        }
        return $this;
    }
    /**
     * Get TipoCli 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 getTipoCli()
    {
        return isset($this->TipoCli) ? $this->TipoCli : null;
    }
    /**
     * Set TipoCli 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 $tipoCli
     * @return \StructType\ClientesERP
     */
    public function setTipoCli($tipoCli = null)
    {
        // validation for constraint: string
        if (!is_null($tipoCli) && !is_string($tipoCli)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($tipoCli)), __LINE__);
        }
        if (is_null($tipoCli) || (is_array($tipoCli) && empty($tipoCli))) {
            unset($this->TipoCli);
        } else {
            $this->TipoCli = $tipoCli;
        }
        return $this;
    }
    /**
     * Get TipoCred 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 getTipoCred()
    {
        return isset($this->TipoCred) ? $this->TipoCred : null;
    }
    /**
     * Set TipoCred 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 $tipoCred
     * @return \StructType\ClientesERP
     */
    public function setTipoCred($tipoCred = null)
    {
        // validation for constraint: string
        if (!is_null($tipoCred) && !is_string($tipoCred)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($tipoCred)), __LINE__);
        }
        if (is_null($tipoCred) || (is_array($tipoCred) && empty($tipoCred))) {
            unset($this->TipoCred);
        } else {
            $this->TipoCred = $tipoCred;
        }
        return $this;
    }
    /**
     * Get TipoOperIntraCom 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 getTipoOperIntraCom()
    {
        return isset($this->TipoOperIntraCom) ? $this->TipoOperIntraCom : null;
    }
    /**
     * Set TipoOperIntraCom 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 $tipoOperIntraCom
     * @return \StructType\ClientesERP
     */
    public function setTipoOperIntraCom($tipoOperIntraCom = null)
    {
        // validation for constraint: string
        if (!is_null($tipoOperIntraCom) && !is_string($tipoOperIntraCom)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($tipoOperIntraCom)), __LINE__);
        }
        if (is_null($tipoOperIntraCom) || (is_array($tipoOperIntraCom) && empty($tipoOperIntraCom))) {
            unset($this->TipoOperIntraCom);
        } else {
            $this->TipoOperIntraCom = $tipoOperIntraCom;
        }
        return $this;
    }
    /**
     * Get TipoPrec 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 getTipoPrec()
    {
        return isset($this->TipoPrec) ? $this->TipoPrec : null;
    }
    /**
     * Set TipoPrec 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 $tipoPrec
     * @return \StructType\ClientesERP
     */
    public function setTipoPrec($tipoPrec = null)
    {
        // validation for constraint: string
        if (!is_null($tipoPrec) && !is_string($tipoPrec)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($tipoPrec)), __LINE__);
        }
        if (is_null($tipoPrec) || (is_array($tipoPrec) && empty($tipoPrec))) {
            unset($this->TipoPrec);
        } else {
            $this->TipoPrec = $tipoPrec;
        }
        return $this;
    }
    /**
     * Get TipoRemetente 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 getTipoRemetente()
    {
        return isset($this->TipoRemetente) ? $this->TipoRemetente : null;
    }
    /**
     * Set TipoRemetente 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 $tipoRemetente
     * @return \StructType\ClientesERP
     */
    public function setTipoRemetente($tipoRemetente = null)
    {
        // validation for constraint: string
        if (!is_null($tipoRemetente) && !is_string($tipoRemetente)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($tipoRemetente)), __LINE__);
        }
        if (is_null($tipoRemetente) || (is_array($tipoRemetente) && empty($tipoRemetente))) {
            unset($this->TipoRemetente);
        } else {
            $this->TipoRemetente = $tipoRemetente;
        }
        return $this;
    }
    /**
     * Get TipoTerceiro 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 getTipoTerceiro()
    {
        return isset($this->TipoTerceiro) ? $this->TipoTerceiro : null;
    }
    /**
     * Set TipoTerceiro 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 $tipoTerceiro
     * @return \StructType\ClientesERP
     */
    public function setTipoTerceiro($tipoTerceiro = null)
    {
        // validation for constraint: string
        if (!is_null($tipoTerceiro) && !is_string($tipoTerceiro)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($tipoTerceiro)), __LINE__);
        }
        if (is_null($tipoTerceiro) || (is_array($tipoTerceiro) && empty($tipoTerceiro))) {
            unset($this->TipoTerceiro);
        } else {
            $this->TipoTerceiro = $tipoTerceiro;
        }
        return $this;
    }
    /**
     * Get Toc 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 getToc()
    {
        return isset($this->Toc) ? $this->Toc : null;
    }
    /**
     * Set Toc 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 $toc
     * @return \StructType\ClientesERP
     */
    public function setToc($toc = null)
    {
        if (is_null($toc) || (is_array($toc) && empty($toc))) {
            unset($this->Toc);
        } else {
            $this->Toc = $toc;
        }
        return $this;
    }
    /**
     * Get TotalDeb 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 getTotalDeb()
    {
        return isset($this->TotalDeb) ? $this->TotalDeb : null;
    }
    /**
     * Set TotalDeb 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 $totalDeb
     * @return \StructType\ClientesERP
     */
    public function setTotalDeb($totalDeb = null)
    {
        if (is_null($totalDeb) || (is_array($totalDeb) && empty($totalDeb))) {
            unset($this->TotalDeb);
        } else {
            $this->TotalDeb = $totalDeb;
        }
        return $this;
    }
    /**
     * Get TrataIvaCaixa value
     * @return bool|null
     */
    public function getTrataIvaCaixa()
    {
        return $this->TrataIvaCaixa;
    }
    /**
     * Set TrataIvaCaixa value
     * @param bool $trataIvaCaixa
     * @return \StructType\ClientesERP
     */
    public function setTrataIvaCaixa($trataIvaCaixa = null)
    {
        // validation for constraint: boolean
        if (!is_null($trataIvaCaixa) && !is_bool($trataIvaCaixa)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($trataIvaCaixa)), __LINE__);
        }
        $this->TrataIvaCaixa = $trataIvaCaixa;
        return $this;
    }
    /**
     * Get UtilizaIdioma 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 getUtilizaIdioma()
    {
        return isset($this->UtilizaIdioma) ? $this->UtilizaIdioma : null;
    }
    /**
     * Set UtilizaIdioma 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 $utilizaIdioma
     * @return \StructType\ClientesERP
     */
    public function setUtilizaIdioma($utilizaIdioma = null)
    {
        // validation for constraint: boolean
        if (!is_null($utilizaIdioma) && !is_bool($utilizaIdioma)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($utilizaIdioma)), __LINE__);
        }
        if (is_null($utilizaIdioma) || (is_array($utilizaIdioma) && empty($utilizaIdioma))) {
            unset($this->UtilizaIdioma);
        } else {
            $this->UtilizaIdioma = $utilizaIdioma;
        }
        return $this;
    }
    /**
     * Get ValorSaldoCob 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 getValorSaldoCob()
    {
        return isset($this->ValorSaldoCob) ? $this->ValorSaldoCob : null;
    }
    /**
     * Set ValorSaldoCob 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 $valorSaldoCob
     * @return \StructType\ClientesERP
     */
    public function setValorSaldoCob($valorSaldoCob = null)
    {
        if (is_null($valorSaldoCob) || (is_array($valorSaldoCob) && empty($valorSaldoCob))) {
            unset($this->ValorSaldoCob);
        } else {
            $this->ValorSaldoCob = $valorSaldoCob;
        }
        return $this;
    }
    /**
     * Get VendasNaoConvertidas 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 getVendasNaoConvertidas()
    {
        return isset($this->VendasNaoConvertidas) ? $this->VendasNaoConvertidas : null;
    }
    /**
     * Set VendasNaoConvertidas 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 $vendasNaoConvertidas
     * @return \StructType\ClientesERP
     */
    public function setVendasNaoConvertidas($vendasNaoConvertidas = null)
    {
        if (is_null($vendasNaoConvertidas) || (is_array($vendasNaoConvertidas) && empty($vendasNaoConvertidas))) {
            unset($this->VendasNaoConvertidas);
        } else {
            $this->VendasNaoConvertidas = $vendasNaoConvertidas;
        }
        return $this;
    }
    /**
     * Get Vendedor 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 getVendedor()
    {
        return isset($this->Vendedor) ? $this->Vendedor : null;
    }
    /**
     * Set Vendedor 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 $vendedor
     * @return \StructType\ClientesERP
     */
    public function setVendedor($vendedor = null)
    {
        // validation for constraint: string
        if (!is_null($vendedor) && !is_string($vendedor)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($vendedor)), __LINE__);
        }
        if (is_null($vendedor) || (is_array($vendedor) && empty($vendedor))) {
            unset($this->Vendedor);
        } else {
            $this->Vendedor = $vendedor;
        }
        return $this;
    }
    /**
     * Get VersaoCloud 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 getVersaoCloud()
    {
        return isset($this->VersaoCloud) ? $this->VersaoCloud : null;
    }
    /**
     * Set VersaoCloud 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 $versaoCloud
     * @return \StructType\ClientesERP
     */
    public function setVersaoCloud($versaoCloud = null)
    {
        // validation for constraint: int
        if (!is_null($versaoCloud) && !is_numeric($versaoCloud)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a numeric value, "%s" given', gettype($versaoCloud)), __LINE__);
        }
        if (is_null($versaoCloud) || (is_array($versaoCloud) && empty($versaoCloud))) {
            unset($this->VersaoCloud);
        } else {
            $this->VersaoCloud = $versaoCloud;
        }
        return $this;
    }
    /**
     * Get VersaoUltAct value
     * @return string|null
     */
    public function getVersaoUltAct()
    {
        return $this->VersaoUltAct;
    }
    /**
     * Set VersaoUltAct value
     * @param string $versaoUltAct
     * @return \StructType\ClientesERP
     */
    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;
    }
    /**
     * Get Zona 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 getZona()
    {
        return isset($this->Zona) ? $this->Zona : null;
    }
    /**
     * Set Zona 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 $zona
     * @return \StructType\ClientesERP
     */
    public function setZona($zona = null)
    {
        // validation for constraint: string
        if (!is_null($zona) && !is_string($zona)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($zona)), __LINE__);
        }
        if (is_null($zona) || (is_array($zona) && empty($zona))) {
            unset($this->Zona);
        } else {
            $this->Zona = $zona;
        }
        return $this;
    }
    /**
     * Get eGAR_CodigoAPA 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 getEGAR_CodigoAPA()
    {
        return isset($this->eGAR_CodigoAPA) ? $this->eGAR_CodigoAPA : null;
    }
    /**
     * Set eGAR_CodigoAPA 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 $eGAR_CodigoAPA
     * @return \StructType\ClientesERP
     */
    public function setEGAR_CodigoAPA($eGAR_CodigoAPA = null)
    {
        // validation for constraint: string
        if (!is_null($eGAR_CodigoAPA) && !is_string($eGAR_CodigoAPA)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($eGAR_CodigoAPA)), __LINE__);
        }
        if (is_null($eGAR_CodigoAPA) || (is_array($eGAR_CodigoAPA) && empty($eGAR_CodigoAPA))) {
            unset($this->eGAR_CodigoAPA);
        } else {
            $this->eGAR_CodigoAPA = $eGAR_CodigoAPA;
        }
        return $this;
    }
    /**
     * Get eGAR_Isenta value
     * @return bool|null
     */
    public function getEGAR_Isenta()
    {
        return $this->eGAR_Isenta;
    }
    /**
     * Set eGAR_Isenta value
     * @param bool $eGAR_Isenta
     * @return \StructType\ClientesERP
     */
    public function setEGAR_Isenta($eGAR_Isenta = null)
    {
        // validation for constraint: boolean
        if (!is_null($eGAR_Isenta) && !is_bool($eGAR_Isenta)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a bool, "%s" given', gettype($eGAR_Isenta)), __LINE__);
        }
        $this->eGAR_Isenta = $eGAR_Isenta;
        return $this;
    }
    /**
     * Get eGAR_NumPGL 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 getEGAR_NumPGL()
    {
        return isset($this->eGAR_NumPGL) ? $this->eGAR_NumPGL : null;
    }
    /**
     * Set eGAR_NumPGL 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 $eGAR_NumPGL
     * @return \StructType\ClientesERP
     */
    public function setEGAR_NumPGL($eGAR_NumPGL = null)
    {
        // validation for constraint: string
        if (!is_null($eGAR_NumPGL) && !is_string($eGAR_NumPGL)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($eGAR_NumPGL)), __LINE__);
        }
        if (is_null($eGAR_NumPGL) || (is_array($eGAR_NumPGL) && empty($eGAR_NumPGL))) {
            unset($this->eGAR_NumPGL);
        } else {
            $this->eGAR_NumPGL = $eGAR_NumPGL;
        }
        return $this;
    }
    /**
     * Get eGAR_TipoProdutor 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 getEGAR_TipoProdutor()
    {
        return isset($this->eGAR_TipoProdutor) ? $this->eGAR_TipoProdutor : null;
    }
    /**
     * Set eGAR_TipoProdutor 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 $eGAR_TipoProdutor
     * @return \StructType\ClientesERP
     */
    public function setEGAR_TipoProdutor($eGAR_TipoProdutor = null)
    {
        // validation for constraint: string
        if (!is_null($eGAR_TipoProdutor) && !is_string($eGAR_TipoProdutor)) {
            throw new \InvalidArgumentException(sprintf('Invalid value, please provide a string, "%s" given', gettype($eGAR_TipoProdutor)), __LINE__);
        }
        if (is_null($eGAR_TipoProdutor) || (is_array($eGAR_TipoProdutor) && empty($eGAR_TipoProdutor))) {
            unset($this->eGAR_TipoProdutor);
        } else {
            $this->eGAR_TipoProdutor = $eGAR_TipoProdutor;
        }
        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\ClientesERP
     */
    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__;
    }
}
