Select IsNull(MovCliente.FormulaCalcCambioB, (Select Top 1 FormulaCalcCambioB from ParamGeral)) as FormulaCalcCambioB, MovCliente.Tipo as Tipo, MovCliente.Numero as Numero, MovCliente.Ano as Ano, Convert(varchar (max), MovCliente.Hash_Elsif) as HashElsif, MovCliente.VersaoApp, TabTipoMov.GuiaTransp as TipoGuia, IsNull(MovCliente.Estado,'N') as WorkStatus, IsNull(MovCliente.Estado_Motivo,'') as WorkStatus_Reason, IsNull(MovCliente.Estado_DataSys,MovCliente.DataSys) as WorkStatus_Date, IsNull(MovCliente.Estado_Utilizador,MovCliente.Utilizador) as WorkStatus_SourceID, Convert(varchar (255), MovCliente.Hash) as Hash, MovCliente.HashControl, MovCliente.Afecta, MovCliente.Data as WorkDate, MovCliente.TipoMovClassifica as WorkType, TabTipoMov.AutoFacturacao as SelfBillingIndicator, MovCliente.Utilizador as SourceID, MovCliente.CAE as EACCode, MovCliente.DataSys as SystemEntryDate, MovCliente.Codigo, MovCliente.CustomerID, TabTipoMov.Modulo, TabTipoMov.CopiaDocumentoOriginal,TabTipoMov.CopiaDocumentoOriginal_Manual, TabTipoMov.CopiaDocumentoOriginal_Integrado, MovCliente.Cambio, MovCliente.ValCambio, IsNull(Cambios.ISO4217,'') as ISO4217, MovCliente.NumRegisto as MovCliNumReg, DescontoFinanceiro=IsNull(MovCliente.DescontoFinanceiro,0),DescontoFinanceiroPerc=IsNull(MovCliente.DescontoFinanceiroPerc,0), MovCliente.DataVenc, isnull(PagaComo.ClassificaSaft,'') as PagaComo, MovCliente.Valor, MovCliente.Desconto, MovCliente.IVA, MovCliente.TotalDoc, MovCliente.ValorIRS, MovCliente.TipoRetencao, IsNull(MovCliente.Saft_IvaIseRegiao,'') as Saft_IvaIseRegiao, MovCliente.TabIva1, MovCliente.TaxIva1, MovCliente.Valor1, MovCliente.Desconto1, MovCliente.ValIva1, TabelaIva1.Saft_TaxType as TabIva1_SaftTaxType, TabelaIva1.Saft_TaxCountryRegion as TabIva1_SaftTaxCountryRegion, TabelaIva1.Saft_TaxCode as TabIva1_SaftTaxCode, IsNull(MotivoIse1.Mencao,'') as TabIva1MotivoIse, IsNull(MotivoIse1.Codigo,'') as Mot1Cod, IsNull(MotivoIse1.MotivoOficial,'') as TabIva1MotivoIse_CodOficial, MovCliente.TabIva2, MovCliente.TaxIva2, MovCliente.Valor2, MovCliente.Desconto2, MovCliente.ValIva2, TabelaIva2.Saft_TaxType as TabIva2_SaftTaxType, TabelaIva2.Saft_TaxCountryRegion as TabIva2_SaftTaxCountryRegion, TabelaIva2.Saft_TaxCode as TabIva2_SaftTaxCode, IsNull(MotivoIse2.Mencao,'') as TabIva2MotivoIse, IsNull(MotivoIse2.Codigo,'') as Mot2Cod, IsNull(MotivoIse2.MotivoOficial,'') as TabIva2MotivoIse_CodOficial, MovCliente.TabIva3, MovCliente.TaxIva3, MovCliente.Valor3, MovCliente.Desconto3, MovCliente.ValIva3, TabelaIva3.Saft_TaxType as TabIva3_SaftTaxType, TabelaIva3.Saft_TaxCountryRegion as TabIva3_SaftTaxCountryRegion, TabelaIva3.Saft_TaxCode as TabIva3_SaftTaxCode, IsNull(MotivoIse3.Mencao,'') as TabIva3MotivoIse, IsNull(MotivoIse3.Codigo,'') as Mot3Cod, IsNull(MotivoIse3.MotivoOficial,'') as TabIva3MotivoIse_CodOficial, MovCliente.TabIva4, MovCliente.TaxIva4, MovCliente.Valor4, MovCliente.Desconto4, MovCliente.ValIva4, TabelaIva4.Saft_TaxType as TabIva4_SaftTaxType, TabelaIva4.Saft_TaxCountryRegion as TabIva4_SaftTaxCountryRegion, TabelaIva4.Saft_TaxCode as TabIva4_SaftTaxCode, IsNull(MotivoIse4.Mencao,'') as TabIva4MotivoIse, IsNull(MotivoIse4.Codigo,'') as Mot4Cod, IsNull(MotivoIse4.MotivoOficial,'') as TabIva4MotivoIse_CodOficial, MovCliente.Contribuinte, Convert(varchar (8000), MovCliente.Atribuicoes) as Atribuicoes, substring(MovCliente.Observa,1,50) as Observa, MovCliente.NumeroRecuperado, MovCliente.SerieRecuperado, MovCliente.DescontoPP, MovCliente.MotivoRetencao, IsNull(MovProduto.NumRegisto,0) as MovProNumReg, IsNull(MovProduto.Codigo,'') as ProCodigo, MovProduto.Descricao as ProDesc, MovProduto.Preco as ProPreco, MovProduto.QuantNormal as ProQuant, MovProduto.Unidade as ProUnidade, MovProduto.GuiaRef, IsNull(MovProduto.TipoGuia,'') as ProTipoGuia, MovProduto.NumGuia as ProNumGuia, MovProduto.DataGuia as ProDataGuia, MovProduto.ValorIliq as ProValIliq, MovProduto.IvaTabela as ProIvaTab, MovProduto.ValorIVA as ProIvaVal, MovProduto.IvaTaxa as ProIvaTaxa, MovProduto.TotalDesconto as ProTotalDesconto, MovProduto.Identifica as ProIdentifica, IsNull(MovProduto.IdentificaRelacionado,'') as ProIdentificaRelacionado, Substring(MovProduto.ObsLinha,1,60) as ProObsLinha, IsNull(MovProduto.DataDisposicao,'') as DataDisposicao, IsNull((Select Sum(ImpostosMovProduto.Imposto) from ImpostosMovProduto With (NoLock) Where ImpostosMovProduto.Tipo=MovCliente.Tipo and ImpostosMovProduto.Numero=MovCliente.Numero and ImpostosMovProduto.Ano=MovCliente.Ano and ImpostosMovProduto.TabIva='' ),0) as ImpostosNaoSujIva, IsNull(ImpostosMovProduto.NumRegisto,0) as OutrosImp_NumReg, ImpostosMovProduto.CodigoImposto as OutrosImp_Cod, ImpostosMovProduto.Imposto as OutrosImp_Valor, ImpostosMovProduto.ValorUnitario as OutrosImp_ValUnitario, ImpostosMovProduto.TabIva as OutrosImp_TabIva, ImpostosMovProduto.TaxaIva as OutrosImp_TaxIva, ImpostosMovProduto.ValorIva as OutrosImp_ValIva, IsNull(ImpostosConfig.Descricao,'') as OutrosImp_Desc, IsNull(MotivoIseOutrosImp.Mencao,'') as OutrosImp_ProMotivoIse, ISNULL(MProOutros.SAFT_Reason,'') as Reference_Reason, ISNULL(Convert(varchar (200), MProOutros.SAFT_SerialNumber),'') as SerialNumber, ISNULL(Convert(varchar (200), MProOutros.SAFT_ArcNo),'') as SAFT_ArcNo, IsNull(MotivoIseOutrosImp.Mencao,'') as OutrosImp_ProMotivoIse, IsNull(MotivoIseOutrosImp.Codigo,'') as OutrosImp_ProMotIse, ISNULL(MotivoIseOutrosImp.MotivoOficial,'') as OutrosImp_ProMotivoIse_CodOficial, IsNull(MovProduto.ChaveDevolucao,'') as ChaveDevolucao From MovCliente With (NoLock) Inner Join Clientes With (NoLock) on Clientes.Codigo = MovCliente.Codigo Inner Join TabTipoMov With (NoLock) on TabTipoMov.Codigo = MovCliente.Tipo Left Outer Join PagaComo on PagaComo.Codigo = MovCliente.PagaComo Left Outer Join Cambios on Cambios.Codigo = MovCliente.Cambio Left Outer Join TabIva as TabelaIva1 on TabelaIva1.Codigo = MovCliente.TabIva1 Left Outer Join TabIva as TabelaIva2 on TabelaIva2.Codigo = MovCliente.TabIva2 Left Outer Join TabIva as TabelaIva3 on TabelaIva3.Codigo = MovCliente.TabIva3 Left Outer Join TabIva as TabelaIva4 on TabelaIva4.Codigo = MovCliente.TabIva4 Left Outer Join TabMotivosIseIva as MotivoIse1 on MotivoIse1.Codigo = MovCliente.TabIva1MotivoIse Left Outer Join TabMotivosIseIva as MotivoIse2 on MotivoIse2.Codigo = MovCliente.TabIva2MotivoIse Left Outer Join TabMotivosIseIva as MotivoIse3 on MotivoIse3.Codigo = MovCliente.TabIva3MotivoIse Left Outer Join TabMotivosIseIva as MotivoIse4 on MotivoIse4.Codigo = MovCliente.TabIva4MotivoIse Left Outer Join DadosTransporte With (NoLock) on DadosTransporte.Tipo = MovCliente.Tipo and DadosTransporte.Numero = MovCliente.Numero and DadosTransporte.Ano = MovCliente.Ano Left Outer Join MovProduto With (NoLock) on MovProduto.Tipo = MovCliente.Tipo and MovProduto.Numero = MovCliente.Numero and MovProduto.Ano = MovCliente.Ano Left Outer Join MovProdutoOutrosDados as MProOutros With (NoLock) on MProOutros.Tipo = MovProduto.Tipo and MProOutros.Numero = MovProduto.Numero and MProOutros.Ano = MovProduto.Ano and MProOutros.IdentificaMP = MovProduto.Identifica Left Outer Join ImpostosMovProduto With (NoLock) on ImpostosMovProduto.CliFor='C' and ImpostosMovProduto.Tipo = MovCliente.Tipo and ImpostosMovProduto.Numero = MovCliente.Numero and ImpostosMovProduto.Ano = MovCliente.Ano and ImpostosMovProduto.Identifica = MovProduto.Identifica and ImpostosMovProduto.Produto = MovProduto.Codigo Left Outer Join ImpostosConfig on ImpostosConfig.Codigo = ImpostosMovProduto.CodigoImposto Left Outer Join TabMotivosIseIva as MotivoIseOutrosImp With (NoLock) on MotivoIseOutrosImp.Codigo = ImpostosMovProduto.MotivoIseIva where (TabTipoMov.Modulo='CL' or TabTipoMov.Modulo='FC') and TabTipoMov.GuiaTransp=0 and CharIndex(MovCliente.TipoMovClassifica, 'CM;CC;FC;FO;NE;OU;OR;PF;DC;') > 0 and MovCliente.Data >='2020-04-01' and MovCliente.Data <='2020-04-30' and TabTipoMov.AutoFacturacao=0 and IsNull(MovCliente.Estado,'N') = 'N' Union SELECT ISNULL(LOG_MOVCLIENTE.FORMULACALCCAMBIOB, (SELECT TOP 1 FORMULACALCCAMBIOB FROM PARAMGERAL)) AS FORMULACALCCAMBIOB, LOG_MOVCLIENTE.TIPO AS TIPO, LOG_MOVCLIENTE.NUMERO AS NUMERO, LOG_MOVCLIENTE.ANO AS ANO, CONVERT(VARCHAR (MAX), LOG_MOVCLIENTE.HASH_ELSIF) AS HASHELSIF, LOG_MOVCLIENTE.VERSAOAPP, TABTIPOMOV.GUIATRANSP AS TIPOGUIA, ISNULL(LOG_MOVCLIENTE.ESTADO,'A') AS WORKSTATUS, ISNULL(LOG_MOVCLIENTE.ESTADO_MOTIVO,'') AS WORKSTATUS_REASON, ISNULL(LOG_MOVCLIENTE.ESTADO_DATASYS,LOG_MOVCLIENTE.DATASYS) AS WORKSTATUS_DATE, ISNULL(LOG_MOVCLIENTE.ESTADO_UTILIZADOR,LOG_MOVCLIENTE.UTILIZADOR) AS WORKSTATUS_SOURCEID, CONVERT(VARCHAR (255), LOG_MOVCLIENTE.HASH) AS HASH, LOG_MOVCLIENTE.HASHCONTROL, LOG_MOVCLIENTE.AFECTA, LOG_MOVCLIENTE.DATA AS WORKDATE, LOG_MOVCLIENTE.TIPOMOVCLASSIFICA AS WORKTYPE, TABTIPOMOV.AUTOFACTURACAO AS SELFBILLINGINDICATOR, LOG_MOVCLIENTE.UTILIZADOR AS SOURCEID, LOG_MOVCLIENTE.CAE AS EACCODE, LOG_MOVCLIENTE.DATASYS AS SYSTEMENTRYDATE, LOG_MOVCLIENTE.CODIGO, LOG_MOVCLIENTE.CUSTOMERID, TABTIPOMOV.MODULO, TABTIPOMOV.COPIADOCUMENTOORIGINAL,TABTIPOMOV.COPIADOCUMENTOORIGINAL_MANUAL, TABTIPOMOV.COPIADOCUMENTOORIGINAL_INTEGRADO, LOG_MOVCLIENTE.CAMBIO, LOG_MOVCLIENTE.VALCAMBIO, ISNULL(CAMBIOS.ISO4217,'') AS ISO4217, LOG_MOVCLIENTE.NUMREGISTO AS MOVCLINUMREG, DESCONTOFINANCEIRO=ISNULL(LOG_MOVCLIENTE.DESCONTOFINANCEIRO,0),DESCONTOFINANCEIROPERC=ISNULL(LOG_MOVCLIENTE.DESCONTOFINANCEIROPERC,0), LOG_MOVCLIENTE.DATAVENC, ISNULL(PAGACOMO.CLASSIFICASAFT,'') AS PAGACOMO, LOG_MOVCLIENTE.VALOR, LOG_MOVCLIENTE.DESCONTO, LOG_MOVCLIENTE.IVA, LOG_MOVCLIENTE.TOTALDOC, LOG_MOVCLIENTE.VALORIRS, LOG_MOVCLIENTE.TIPORETENCAO, ISNULL(LOG_MOVCLIENTE.SAFT_IVAISEREGIAO,'') AS SAFT_IVAISEREGIAO, LOG_MOVCLIENTE.TABIVA1, LOG_MOVCLIENTE.TAXIVA1, LOG_MOVCLIENTE.VALOR1, LOG_MOVCLIENTE.DESCONTO1, LOG_MOVCLIENTE.VALIVA1, TABELAIVA1.SAFT_TAXTYPE AS TABIVA1_SAFTTAXTYPE, TABELAIVA1.SAFT_TAXCOUNTRYREGION AS TABIVA1_SAFTTAXCOUNTRYREGION, TABELAIVA1.SAFT_TAXCODE AS TABIVA1_SAFTTAXCODE, ISNULL(MOTIVOISE1.MENCAO,'') AS TABIVA1MOTIVOISE, ISNULL(MOTIVOISE1.CODIGO,'') AS MOT1COD, ISNULL(MOTIVOISE1.MOTIVOOFICIAL,'') AS TABIVA1MOTIVOISE_CODOFICIAL, LOG_MOVCLIENTE.TABIVA2, LOG_MOVCLIENTE.TAXIVA2, LOG_MOVCLIENTE.VALOR2, LOG_MOVCLIENTE.DESCONTO2, LOG_MOVCLIENTE.VALIVA2, TABELAIVA2.SAFT_TAXTYPE AS TABIVA2_SAFTTAXTYPE, TABELAIVA2.SAFT_TAXCOUNTRYREGION AS TABIVA2_SAFTTAXCOUNTRYREGION, TABELAIVA2.SAFT_TAXCODE AS TABIVA2_SAFTTAXCODE, ISNULL(MOTIVOISE2.MENCAO,'') AS TABIVA2MOTIVOISE, ISNULL(MOTIVOISE2.CODIGO,'') AS MOT2COD, ISNULL(MOTIVOISE2.MOTIVOOFICIAL,'') AS TABIVA2MOTIVOISE_CODOFICIAL, LOG_MOVCLIENTE.TABIVA3, LOG_MOVCLIENTE.TAXIVA3, LOG_MOVCLIENTE.VALOR3, LOG_MOVCLIENTE.DESCONTO3, LOG_MOVCLIENTE.VALIVA3, TABELAIVA3.SAFT_TAXTYPE AS TABIVA3_SAFTTAXTYPE, TABELAIVA3.SAFT_TAXCOUNTRYREGION AS TABIVA3_SAFTTAXCOUNTRYREGION, TABELAIVA3.SAFT_TAXCODE AS TABIVA3_SAFTTAXCODE, ISNULL(MOTIVOISE3.MENCAO,'') AS TABIVA3MOTIVOISE, ISNULL(MOTIVOISE3.CODIGO,'') AS MOT3COD, ISNULL(MOTIVOISE3.MOTIVOOFICIAL,'') AS TABIVA3MOTIVOISE_CODOFICIAL, LOG_MOVCLIENTE.TABIVA4, LOG_MOVCLIENTE.TAXIVA4, LOG_MOVCLIENTE.VALOR4, LOG_MOVCLIENTE.DESCONTO4, LOG_MOVCLIENTE.VALIVA4, TABELAIVA4.SAFT_TAXTYPE AS TABIVA4_SAFTTAXTYPE, TABELAIVA4.SAFT_TAXCOUNTRYREGION AS TABIVA4_SAFTTAXCOUNTRYREGION, TABELAIVA4.SAFT_TAXCODE AS TABIVA4_SAFTTAXCODE, ISNULL(MOTIVOISE4.MENCAO,'') AS TABIVA4MOTIVOISE, ISNULL(MOTIVOISE4.CODIGO,'') AS MOT4COD, ISNULL(MOTIVOISE4.MOTIVOOFICIAL,'') AS TABIVA4MOTIVOISE_CODOFICIAL, LOG_MOVCLIENTE.CONTRIBUINTE, CONVERT(VARCHAR (8000), LOG_MOVCLIENTE.ATRIBUICOES) AS ATRIBUICOES, SUBSTRING(LOG_MOVCLIENTE.OBSERVA,1,50) AS OBSERVA, LOG_MOVCLIENTE.NUMERORECUPERADO, LOG_MOVCLIENTE.SERIERECUPERADO, LOG_MOVCLIENTE.DESCONTOPP, LOG_MOVCLIENTE.MOTIVORETENCAO, ISNULL(LOG_MOVPRODUTO.NUMREGISTO,0) AS MOVPRONUMREG, ISNULL(LOG_MOVPRODUTO.CODIGO,'') AS PROCODIGO, LOG_MOVPRODUTO.DESCRICAO AS PRODESC, LOG_MOVPRODUTO.PRECO AS PROPRECO, LOG_MOVPRODUTO.QUANTNORMAL AS PROQUANT, LOG_MOVPRODUTO.UNIDADE AS PROUNIDADE, LOG_MOVPRODUTO.GUIAREF, ISNULL(LOG_MOVPRODUTO.TIPOGUIA,'') AS PROTIPOGUIA, LOG_MOVPRODUTO.NUMGUIA AS PRONUMGUIA, LOG_MOVPRODUTO.DATAGUIA AS PRODATAGUIA, LOG_MOVPRODUTO.VALORILIQ AS PROVALILIQ, LOG_MOVPRODUTO.IVATABELA AS PROIVATAB, LOG_MOVPRODUTO.VALORIVA AS PROIVAVAL, LOG_MOVPRODUTO.IVATAXA AS PROIVATAXA, LOG_MOVPRODUTO.TOTALDESCONTO AS PROTOTALDESCONTO, LOG_MOVPRODUTO.IDENTIFICA AS PROIDENTIFICA, ISNULL(LOG_MOVPRODUTO.IDENTIFICARELACIONADO,'') AS PROIDENTIFICARELACIONADO, SUBSTRING(LOG_MOVPRODUTO.OBSLINHA,1,60) AS PROOBSLINHA, ISNULL(LOG_MOVPRODUTO.DATADISPOSICAO,'') AS DATADISPOSICAO, ISNULL((SELECT SUM(LOG_IMPOSTOSMOVPRODUTO.IMPOSTO) FROM LOG_IMPOSTOSMOVPRODUTO WITH (NOLOCK) WHERE LOG_IMPOSTOSMOVPRODUTO.TIPO=LOG_MOVCLIENTE.TIPO AND LOG_IMPOSTOSMOVPRODUTO.NUMERO=LOG_MOVCLIENTE.NUMERO AND LOG_IMPOSTOSMOVPRODUTO.ANO=LOG_MOVCLIENTE.ANO AND LOG_IMPOSTOSMOVPRODUTO.TABIVA='' ),0) AS IMPOSTOSNAOSUJIVA, ISNULL(LOG_IMPOSTOSMOVPRODUTO.NUMREGISTO,0) AS OUTROSIMP_NUMREG, LOG_IMPOSTOSMOVPRODUTO.CODIGOIMPOSTO AS OUTROSIMP_COD, LOG_IMPOSTOSMOVPRODUTO.IMPOSTO AS OUTROSIMP_VALOR, LOG_IMPOSTOSMOVPRODUTO.VALORUNITARIO AS OUTROSIMP_VALUNITARIO, LOG_IMPOSTOSMOVPRODUTO.TABIVA AS OUTROSIMP_TABIVA, LOG_IMPOSTOSMOVPRODUTO.TAXAIVA AS OUTROSIMP_TAXIVA, LOG_IMPOSTOSMOVPRODUTO.VALORIVA AS OUTROSIMP_VALIVA, ISNULL(IMPOSTOSCONFIG.DESCRICAO,'') AS OUTROSIMP_DESC, ISNULL(MOTIVOISEOUTROSIMP.MENCAO,'') AS OUTROSIMP_PROMOTIVOISE, ISNULL(MPROOUTROS.SAFT_REASON,'') AS REFERENCE_REASON, ISNULL(CONVERT(VARCHAR (200), MPROOUTROS.SAFT_SERIALNUMBER),'') AS SERIALNUMBER, ISNULL(CONVERT(VARCHAR (200), MPROOUTROS.SAFT_ARCNO),'') AS SAFT_ARCNO, ISNULL(MOTIVOISEOUTROSIMP.MENCAO,'') AS OUTROSIMP_PROMOTIVOISE, ISNULL(MOTIVOISEOUTROSIMP.CODIGO,'') AS OUTROSIMP_PROMOTISE, ISNULL(MOTIVOISEOUTROSIMP.MOTIVOOFICIAL,'') AS OUTROSIMP_PROMOTIVOISE_CODOFICIAL, ISNULL(LOG_MOVPRODUTO.CHAVEDEVOLUCAO,'') AS CHAVEDEVOLUCAO FROM LOG_MOVCLIENTE WITH (NOLOCK) INNER JOIN CLIENTES WITH (NOLOCK) ON CLIENTES.CODIGO = LOG_MOVCLIENTE.CODIGO INNER JOIN TABTIPOMOV WITH (NOLOCK) ON TABTIPOMOV.CODIGO = LOG_MOVCLIENTE.TIPO LEFT OUTER JOIN PAGACOMO ON PAGACOMO.CODIGO = LOG_MOVCLIENTE.PAGACOMO LEFT OUTER JOIN CAMBIOS ON CAMBIOS.CODIGO = LOG_MOVCLIENTE.CAMBIO LEFT OUTER JOIN TABIVA AS TABELAIVA1 ON TABELAIVA1.CODIGO = LOG_MOVCLIENTE.TABIVA1 LEFT OUTER JOIN TABIVA AS TABELAIVA2 ON TABELAIVA2.CODIGO = LOG_MOVCLIENTE.TABIVA2 LEFT OUTER JOIN TABIVA AS TABELAIVA3 ON TABELAIVA3.CODIGO = LOG_MOVCLIENTE.TABIVA3 LEFT OUTER JOIN TABIVA AS TABELAIVA4 ON TABELAIVA4.CODIGO = LOG_MOVCLIENTE.TABIVA4 LEFT OUTER JOIN TABMOTIVOSISEIVA AS MOTIVOISE1 ON MOTIVOISE1.CODIGO = LOG_MOVCLIENTE.TABIVA1MOTIVOISE LEFT OUTER JOIN TABMOTIVOSISEIVA AS MOTIVOISE2 ON MOTIVOISE2.CODIGO = LOG_MOVCLIENTE.TABIVA2MOTIVOISE LEFT OUTER JOIN TABMOTIVOSISEIVA AS MOTIVOISE3 ON MOTIVOISE3.CODIGO = LOG_MOVCLIENTE.TABIVA3MOTIVOISE LEFT OUTER JOIN TABMOTIVOSISEIVA AS MOTIVOISE4 ON MOTIVOISE4.CODIGO = LOG_MOVCLIENTE.TABIVA4MOTIVOISE LEFT OUTER JOIN DADOSTRANSPORTE WITH (NOLOCK) ON DADOSTRANSPORTE.TIPO = LOG_MOVCLIENTE.TIPO AND DADOSTRANSPORTE.NUMERO = LOG_MOVCLIENTE.NUMERO AND DADOSTRANSPORTE.ANO = LOG_MOVCLIENTE.ANO LEFT OUTER JOIN LOG_MOVPRODUTO WITH (NOLOCK) ON LOG_MOVPRODUTO.TIPO = LOG_MOVCLIENTE.TIPO AND LOG_MOVPRODUTO.NUMERO = LOG_MOVCLIENTE.NUMERO AND LOG_MOVPRODUTO.ANO = LOG_MOVCLIENTE.ANO LEFT OUTER JOIN MOVPRODUTOOUTROSDADOS AS MPROOUTROS WITH (NOLOCK) ON MPROOUTROS.TIPO = LOG_MOVPRODUTO.TIPO AND MPROOUTROS.NUMERO = LOG_MOVPRODUTO.NUMERO AND MPROOUTROS.ANO = LOG_MOVPRODUTO.ANO AND MPROOUTROS.IDENTIFICAMP = LOG_MOVPRODUTO.IDENTIFICA LEFT OUTER JOIN LOG_IMPOSTOSMOVPRODUTO WITH (NOLOCK) ON LOG_IMPOSTOSMOVPRODUTO.CLIFOR='C' AND LOG_IMPOSTOSMOVPRODUTO.TIPO = LOG_MOVCLIENTE.TIPO AND LOG_IMPOSTOSMOVPRODUTO.NUMERO = LOG_MOVCLIENTE.NUMERO AND LOG_IMPOSTOSMOVPRODUTO.ANO = LOG_MOVCLIENTE.ANO AND LOG_IMPOSTOSMOVPRODUTO.IDENTIFICA = LOG_MOVPRODUTO.IDENTIFICA AND LOG_IMPOSTOSMOVPRODUTO.PRODUTO = LOG_MOVPRODUTO.CODIGO LEFT OUTER JOIN IMPOSTOSCONFIG ON IMPOSTOSCONFIG.CODIGO = LOG_IMPOSTOSMOVPRODUTO.CODIGOIMPOSTO LEFT OUTER JOIN TABMOTIVOSISEIVA AS MOTIVOISEOUTROSIMP WITH (NOLOCK) ON MOTIVOISEOUTROSIMP.CODIGO = LOG_IMPOSTOSMOVPRODUTO.MOTIVOISEIVA WHERE (TABTIPOMOV.MODULO='CL' OR TABTIPOMOV.MODULO='FC') AND TABTIPOMOV.GUIATRANSP=0 AND CHARINDEX(LOG_MOVCLIENTE.TIPOMOVCLASSIFICA, 'CM;CC;FC;FO;NE;OU;OR;PF;DC;') > 0 AND LOG_MOVCLIENTE.DATA >='2020-04-01' AND LOG_MOVCLIENTE.DATA <='2020-04-30' AND TABTIPOMOV.AUTOFACTURACAO=0 AND ISNULL(LOG_MOVCLIENTE.ESTADO,'A') = 'A' Union Select IsNull(MovEnc.FormulaCalcCambioB, (Select Top 1 FormulaCalcCambioB from ParamGeral)) as FormulaCalcCambioB, MovEnc.Tipo as Tipo, MovEnc.Numero as Numero, MovEnc.Ano as Ano, Convert(varchar (max), MovEnc.Hash_Elsif) as HashElsif, MovEnc.VersaoApp, TabTipoMov.GuiaTransp as TipoGuia, IsNull(MovEnc.Estado,'N') as WorkStatus, IsNull(MovEnc.Estado_Motivo,'') as WorkStatus_Reason, IsNull(MovEnc.Estado_DataSys,MovEnc.DataSys) as WorkStatus_Date, IsNull(MovEnc.Estado_Utilizador,MovEnc.Utilizador) as WorkStatus_SourceID, Convert(varchar (255), MovEnc.Hash) as Hash, MovEnc.HashControl, 'NA' as Afecta, MovEnc.Data as WorkDate, MovEnc.TipoMovClassifica as WorkType, TabTipoMov.AutoFacturacao as SelfBillingIndicator, MovEnc.Utilizador as SourceID, MovEnc.Cae as EACCode, MovEnc.DataSys as SystemEntryDate, MovEnc.Codigo, MovEnc.CustomerID, TabTipoMov.Modulo, TabTipoMov.CopiaDocumentoOriginal,TabTipoMov.CopiaDocumentoOriginal_Manual, TabTipoMov.CopiaDocumentoOriginal_Integrado, MovEnc.Cambio, MovEnc.ValCambio, IsNull(Cambios.ISO4217,'') as ISO4217, MovEnc.NumRegisto as MovCliNumReg, 0 as DescontoFinanceiro, 0 as DescontoFinanceiroPerc, '' as DataVenc, isnull(PagaComo.ClassificaSaft,'') as PagaComo, MovEnc.Valor, MovEnc.Desconto, MovEnc.IVA, MovEnc.TotalDoc, MovEnc.ValorIRS, MovEnc.TipoRetencao, IsNull(MovEnc.Saft_IvaIseRegiao,'') as Saft_IvaIseRegiao, MovEnc.TabIva1, MovEnc.TaxIva1, MovEnc.Valor1, MovEnc.Desconto1, MovEnc.ValIva1, TabelaIva1.Saft_TaxType as TabIva1_SaftTaxType, TabelaIva1.Saft_TaxCountryRegion as TabIva1_SaftTaxCountryRegion, TabelaIva1.Saft_TaxCode as TabIva1_SaftTaxCode, IsNull(MotivoIse1.Mencao,'') as TabIva1MotivoIse, IsNull(MotivoIse1.Codigo,'') as Mot1Cod, IsNull(MotivoIse1.MotivoOficial,'') as TabIva1MotivoIse_CodOficial, MovEnc.TabIva2, MovEnc.TaxIva2, MovEnc.Valor2, MovEnc.Desconto2, MovEnc.ValIva2, TabelaIva2.Saft_TaxType as TabIva2_SaftTaxType, TabelaIva2.Saft_TaxCountryRegion as TabIva2_SaftTaxCountryRegion, TabelaIva2.Saft_TaxCode as TabIva2_SaftTaxCode, IsNull(MotivoIse2.Mencao,'') as TabIva2MotivoIse, IsNull(MotivoIse2.Codigo,'') as Mot2Cod, IsNull(MotivoIse2.MotivoOficial,'') as TabIva2MotivoIse_CodOficial, MovEnc.TabIva3, MovEnc.TaxIva3, MovEnc.Valor3, MovEnc.Desconto3, MovEnc.ValIva3, TabelaIva3.Saft_TaxType as TabIva3_SaftTaxType, TabelaIva3.Saft_TaxCountryRegion as TabIva3_SaftTaxCountryRegion, TabelaIva3.Saft_TaxCode as TabIva3_SaftTaxCode, IsNull(MotivoIse3.Mencao,'') as TabIva3MotivoIse, IsNull(MotivoIse3.Codigo,'') as Mot3Cod, IsNull(MotivoIse3.MotivoOficial,'') as TabIva3MotivoIse_CodOficial, MovEnc.TabIva4, MovEnc.TaxIva4, MovEnc.Valor4, MovEnc.Desconto4, MovEnc.ValIva4, TabelaIva4.Saft_TaxType as TabIva4_SaftTaxType, TabelaIva4.Saft_TaxCountryRegion as TabIva4_SaftTaxCountryRegion, TabelaIva4.Saft_TaxCode as TabIva4_SaftTaxCode, IsNull(MotivoIse4.Mencao,'') as TabIva4MotivoIse, IsNull(MotivoIse4.Codigo,'') as Mot4Cod, IsNull(MotivoIse4.MotivoOficial,'') as TabIva4MotivoIse_CodOficial, MovEnc.Contribuinte, '' as Atribuicoes, substring(MovEnc.Observa,1,50) as Observa, '' as NumeroRecuperado, '' as SerieRecuperado, 0 as DescontoPP, MovEnc.MotivoRetencao, IsNull(MovEncLin.NumRegisto,0) as MovProNumReg, IsNull(MovEncLin.Codigo,'') as ProCodigo, MovEncLin.Descricao as ProDesc, MovEncLin.Preco as ProPreco, MovEncLin.QuantNormal as ProQuant, MovEncLin.Unidade as ProUnidade, '' as GuiaRef, '' as ProTipoGuia, '' as ProNumGuia, '' as ProDataGuia, MovEncLin.ValorIliq as ProValIliq, MovEncLin.IvaTabela as ProIvaTab, MovEncLin.ValorIVA as ProIvaVal, MovEncLin.IvaTaxa as ProIvaTaxa, MovEncLin.TotalDesconto as ProTotalDesconto, MovEncLin.Identifica as ProIdentifica, IsNull(MovEncLin.IdentificaRelacionado,'') as ProIdentificaRelacionado, Substring(MovEncLin.ObsLinha,1,60) as ProObsLinha, '' as DataDisposicao, IsNull((Select Sum(ImpostosMovProduto.Imposto) from ImpostosMovProduto With (NoLock) Where ImpostosMovProduto.Tipo=MovEnc.Tipo and ImpostosMovProduto.Numero=MovEnc.Numero and ImpostosMovProduto.Ano=MovEnc.Ano and ImpostosMovProduto.TabIva='' ),0) as ImpostosNaoSujIva, IsNull(ImpostosMovProduto.NumRegisto,0) as OutrosImp_NumReg, ImpostosMovProduto.CodigoImposto as OutrosImp_Cod, ImpostosMovProduto.Imposto as OutrosImp_Valor, ImpostosMovProduto.ValorUnitario as OutrosImp_ValUnitario, ImpostosMovProduto.TabIva as OutrosImp_TabIva, ImpostosMovProduto.TaxaIva as OutrosImp_TaxIva, ImpostosMovProduto.ValorIva as OutrosImp_ValIva, IsNull(ImpostosConfig.Descricao,'') as OutrosImp_Desc, IsNull(MotivoIseOutrosImp.Mencao,'') as OutrosImp_ProMotivoIse, '' as Reference_Reason, '' as SerialNumber, '' as SAFT_ArcNo, IsNull(MotivoIseOutrosImp.Mencao,'') as OutrosImp_ProMotivoIse, IsNull(MotivoIseOutrosImp.Codigo,'') as OutrosImp_ProMotIse, ISNULL(MotivoIseOutrosImp.MotivoOficial,'') as OutrosImp_ProMotivoIse_CodOficial, '' as ChaveDevolucao From MovEnc With (NoLock) Inner Join Clientes With (NoLock) on Clientes.Codigo = MovEnc.Codigo Inner Join TabTipoMov With (NoLock) on TabTipoMov.Codigo = MovEnc.Tipo Left Outer Join PagaComo on PagaComo.Codigo = MovEnc.PagaComo Left Outer Join Cambios on Cambios.Codigo = MovEnc.Cambio Left Outer Join TabIva as TabelaIva1 on TabelaIva1.Codigo = MovEnc.TabIva1 Left Outer Join TabIva as TabelaIva2 on TabelaIva2.Codigo = MovEnc.TabIva2 Left Outer Join TabIva as TabelaIva3 on TabelaIva3.Codigo = MovEnc.TabIva3 Left Outer Join TabIva as TabelaIva4 on TabelaIva4.Codigo = MovEnc.TabIva4 Left Outer Join TabMotivosIseIva as MotivoIse1 on MotivoIse1.Codigo = MovEnc.TabIva1MotivoIse Left Outer Join TabMotivosIseIva as MotivoIse2 on MotivoIse2.Codigo = MovEnc.TabIva2MotivoIse Left Outer Join TabMotivosIseIva as MotivoIse3 on MotivoIse3.Codigo = MovEnc.TabIva3MotivoIse Left Outer Join TabMotivosIseIva as MotivoIse4 on MotivoIse4.Codigo = MovEnc.TabIva4MotivoIse Left Outer Join DadosTransporte With (NoLock) on DadosTransporte.Tipo = MovEnc.Tipo and DadosTransporte.Numero = MovEnc.Numero and DadosTransporte.Ano = MovEnc.Ano Left Outer Join MovEncLin With (NoLock) on MovEncLin.Tipo = MovEnc.Tipo and MovEncLin.Numero = MovEnc.Numero and MovEncLin.Ano = MovEnc.Ano Left Outer Join ImpostosMovProduto With (NoLock) on ImpostosMovProduto.CliFor='C' and ImpostosMovProduto.Tipo = MovEnc.Tipo and ImpostosMovProduto.Numero = MovEnc.Numero and ImpostosMovProduto.Ano = MovEnc.Ano and ImpostosMovProduto.Identifica = MovEncLin.Identifica and ImpostosMovProduto.Produto = MovEncLin.Codigo Left Outer Join ImpostosConfig on ImpostosConfig.Codigo = ImpostosMovProduto.CodigoImposto Left Outer Join TabMotivosIseIva as MotivoIseOutrosImp With (NoLock) on MotivoIseOutrosImp.Codigo = ImpostosMovProduto.MotivoIseIva where TabTipoMov.Modulo='EC' and CharIndex(MovEnc.TipoMovClassifica, 'CM;CC;FC;FO;NE;OU;OR;PF;DC;') > 0 and MovEnc.Data >='2020-04-01' and MovEnc.Data <='2020-04-30' and MovEnc.Numero <> '' and TabTipoMov.AutoFacturacao=0 and IsNull(MovEnc.Estado,'N') = 'N' and MovEncLin.Sinal > 0 Union SELECT ISNULL(LOG_MOVENC.FORMULACALCCAMBIOB, (SELECT TOP 1 FORMULACALCCAMBIOB FROM PARAMGERAL)) AS FORMULACALCCAMBIOB, LOG_MOVENC.TIPO AS TIPO, LOG_MOVENC.NUMERO AS NUMERO, LOG_MOVENC.ANO AS ANO, CONVERT(VARCHAR (MAX), LOG_MOVENC.HASH_ELSIF) AS HASHELSIF, LOG_MOVENC.VERSAOAPP, TABTIPOMOV.GUIATRANSP AS TIPOGUIA, ISNULL(LOG_MOVENC.ESTADO,'A') AS WORKSTATUS, ISNULL(LOG_MOVENC.ESTADO_MOTIVO,'') AS WORKSTATUS_REASON, ISNULL(LOG_MOVENC.ESTADO_DATASYS,LOG_MOVENC.DATASYS) AS WORKSTATUS_DATE, ISNULL(LOG_MOVENC.ESTADO_UTILIZADOR,LOG_MOVENC.UTILIZADOR) AS WORKSTATUS_SOURCEID, CONVERT(VARCHAR (255), LOG_MOVENC.HASH) AS HASH, LOG_MOVENC.HASHCONTROL, 'NA' AS AFECTA, LOG_MOVENC.DATA AS WORKDATE, LOG_MOVENC.TIPOMOVCLASSIFICA AS WORKTYPE, TABTIPOMOV.AUTOFACTURACAO AS SELFBILLINGINDICATOR, LOG_MOVENC.UTILIZADOR AS SOURCEID, LOG_MOVENC.CAE AS EACCODE, LOG_MOVENC.DATASYS AS SYSTEMENTRYDATE, LOG_MOVENC.CODIGO, LOG_MOVENC.CUSTOMERID, TABTIPOMOV.MODULO, TABTIPOMOV.COPIADOCUMENTOORIGINAL,TABTIPOMOV.COPIADOCUMENTOORIGINAL_MANUAL, TABTIPOMOV.COPIADOCUMENTOORIGINAL_INTEGRADO, LOG_MOVENC.CAMBIO, LOG_MOVENC.VALCAMBIO, ISNULL(CAMBIOS.ISO4217,'') AS ISO4217, LOG_MOVENC.NUMREGISTO AS MOVCLINUMREG, 0 AS DESCONTOFINANCEIRO, 0 AS DESCONTOFINANCEIROPERC, '' AS DATAVENC, ISNULL(PAGACOMO.CLASSIFICASAFT,'') AS PAGACOMO, LOG_MOVENC.VALOR, LOG_MOVENC.DESCONTO, LOG_MOVENC.IVA, LOG_MOVENC.TOTALDOC, LOG_MOVENC.VALORIRS, LOG_MOVENC.TIPORETENCAO, ISNULL(LOG_MOVENC.SAFT_IVAISEREGIAO,'') AS SAFT_IVAISEREGIAO, LOG_MOVENC.TABIVA1, LOG_MOVENC.TAXIVA1, LOG_MOVENC.VALOR1, LOG_MOVENC.DESCONTO1, LOG_MOVENC.VALIVA1, TABELAIVA1.SAFT_TAXTYPE AS TABIVA1_SAFTTAXTYPE, TABELAIVA1.SAFT_TAXCOUNTRYREGION AS TABIVA1_SAFTTAXCOUNTRYREGION, TABELAIVA1.SAFT_TAXCODE AS TABIVA1_SAFTTAXCODE, ISNULL(MOTIVOISE1.MENCAO,'') AS TABIVA1MOTIVOISE, ISNULL(MOTIVOISE1.CODIGO,'') AS MOT1COD, ISNULL(MOTIVOISE1.MOTIVOOFICIAL,'') AS TABIVA1MOTIVOISE_CODOFICIAL, LOG_MOVENC.TABIVA2, LOG_MOVENC.TAXIVA2, LOG_MOVENC.VALOR2, LOG_MOVENC.DESCONTO2, LOG_MOVENC.VALIVA2, TABELAIVA2.SAFT_TAXTYPE AS TABIVA2_SAFTTAXTYPE, TABELAIVA2.SAFT_TAXCOUNTRYREGION AS TABIVA2_SAFTTAXCOUNTRYREGION, TABELAIVA2.SAFT_TAXCODE AS TABIVA2_SAFTTAXCODE, ISNULL(MOTIVOISE2.MENCAO,'') AS TABIVA2MOTIVOISE, ISNULL(MOTIVOISE2.CODIGO,'') AS MOT2COD, ISNULL(MOTIVOISE2.MOTIVOOFICIAL,'') AS TABIVA2MOTIVOISE_CODOFICIAL, LOG_MOVENC.TABIVA3, LOG_MOVENC.TAXIVA3, LOG_MOVENC.VALOR3, LOG_MOVENC.DESCONTO3, LOG_MOVENC.VALIVA3, TABELAIVA3.SAFT_TAXTYPE AS TABIVA3_SAFTTAXTYPE, TABELAIVA3.SAFT_TAXCOUNTRYREGION AS TABIVA3_SAFTTAXCOUNTRYREGION, TABELAIVA3.SAFT_TAXCODE AS TABIVA3_SAFTTAXCODE, ISNULL(MOTIVOISE3.MENCAO,'') AS TABIVA3MOTIVOISE, ISNULL(MOTIVOISE3.CODIGO,'') AS MOT3COD, ISNULL(MOTIVOISE3.MOTIVOOFICIAL,'') AS TABIVA3MOTIVOISE_CODOFICIAL, LOG_MOVENC.TABIVA4, LOG_MOVENC.TAXIVA4, LOG_MOVENC.VALOR4, LOG_MOVENC.DESCONTO4, LOG_MOVENC.VALIVA4, TABELAIVA4.SAFT_TAXTYPE AS TABIVA4_SAFTTAXTYPE, TABELAIVA4.SAFT_TAXCOUNTRYREGION AS TABIVA4_SAFTTAXCOUNTRYREGION, TABELAIVA4.SAFT_TAXCODE AS TABIVA4_SAFTTAXCODE, ISNULL(MOTIVOISE4.MENCAO,'') AS TABIVA4MOTIVOISE, ISNULL(MOTIVOISE4.CODIGO,'') AS MOT4COD, ISNULL(MOTIVOISE4.MOTIVOOFICIAL,'') AS TABIVA4MOTIVOISE_CODOFICIAL, LOG_MOVENC.CONTRIBUINTE, '' AS ATRIBUICOES, SUBSTRING(LOG_MOVENC.OBSERVA,1,50) AS OBSERVA, '' AS NUMERORECUPERADO, '' AS SERIERECUPERADO, 0 AS DESCONTOPP, LOG_MOVENC.MOTIVORETENCAO, ISNULL(LOG_MOVENCLIN.NUMREGISTO,0) AS MOVPRONUMREG, ISNULL(LOG_MOVENCLIN.CODIGO,'') AS PROCODIGO, LOG_MOVENCLIN.DESCRICAO AS PRODESC, LOG_MOVENCLIN.PRECO AS PROPRECO, LOG_MOVENCLIN.QUANTNORMAL AS PROQUANT, LOG_MOVENCLIN.UNIDADE AS PROUNIDADE, '' AS GUIAREF, '' AS PROTIPOGUIA, '' AS PRONUMGUIA, '' AS PRODATAGUIA, LOG_MOVENCLIN.VALORILIQ AS PROVALILIQ, LOG_MOVENCLIN.IVATABELA AS PROIVATAB, LOG_MOVENCLIN.VALORIVA AS PROIVAVAL, LOG_MOVENCLIN.IVATAXA AS PROIVATAXA, LOG_MOVENCLIN.TOTALDESCONTO AS PROTOTALDESCONTO, LOG_MOVENCLIN.IDENTIFICA AS PROIDENTIFICA, ISNULL(LOG_MOVENCLIN.IDENTIFICARELACIONADO,'') AS PROIDENTIFICARELACIONADO, SUBSTRING(LOG_MOVENCLIN.OBSLINHA,1,60) AS PROOBSLINHA, '' AS DATADISPOSICAO, ISNULL((SELECT SUM(IMPOSTOSMOVPRODUTO.IMPOSTO) FROM IMPOSTOSMOVPRODUTO WITH (NOLOCK) WHERE IMPOSTOSMOVPRODUTO.TIPO=LOG_MOVENC.TIPO AND IMPOSTOSMOVPRODUTO.NUMERO=LOG_MOVENC.NUMERO AND IMPOSTOSMOVPRODUTO.ANO=LOG_MOVENC.ANO AND IMPOSTOSMOVPRODUTO.TABIVA='' ),0) AS IMPOSTOSNAOSUJIVA, ISNULL(IMPOSTOSMOVPRODUTO.NUMREGISTO,0) AS OUTROSIMP_NUMREG, IMPOSTOSMOVPRODUTO.CODIGOIMPOSTO AS OUTROSIMP_COD, IMPOSTOSMOVPRODUTO.IMPOSTO AS OUTROSIMP_VALOR, IMPOSTOSMOVPRODUTO.VALORUNITARIO AS OUTROSIMP_VALUNITARIO, IMPOSTOSMOVPRODUTO.TABIVA AS OUTROSIMP_TABIVA, IMPOSTOSMOVPRODUTO.TAXAIVA AS OUTROSIMP_TAXIVA, IMPOSTOSMOVPRODUTO.VALORIVA AS OUTROSIMP_VALIVA, ISNULL(IMPOSTOSCONFIG.DESCRICAO,'') AS OUTROSIMP_DESC, ISNULL(MOTIVOISEOUTROSIMP.MENCAO,'') AS OUTROSIMP_PROMOTIVOISE, '' AS REFERENCE_REASON, '' AS SERIALNUMBER, '' AS SAFT_ARCNO, ISNULL(MOTIVOISEOUTROSIMP.MENCAO,'') AS OUTROSIMP_PROMOTIVOISE, ISNULL(MOTIVOISEOUTROSIMP.CODIGO,'') AS OUTROSIMP_PROMOTISE, ISNULL(MOTIVOISEOUTROSIMP.MOTIVOOFICIAL,'') AS OUTROSIMP_PROMOTIVOISE_CODOFICIAL, '' AS CHAVEDEVOLUCAO FROM LOG_MOVENC WITH (NOLOCK) INNER JOIN CLIENTES WITH (NOLOCK) ON CLIENTES.CODIGO = LOG_MOVENC.CODIGO INNER JOIN TABTIPOMOV WITH (NOLOCK) ON TABTIPOMOV.CODIGO = LOG_MOVENC.TIPO LEFT OUTER JOIN PAGACOMO ON PAGACOMO.CODIGO = LOG_MOVENC.PAGACOMO LEFT OUTER JOIN CAMBIOS ON CAMBIOS.CODIGO = LOG_MOVENC.CAMBIO LEFT OUTER JOIN TABIVA AS TABELAIVA1 ON TABELAIVA1.CODIGO = LOG_MOVENC.TABIVA1 LEFT OUTER JOIN TABIVA AS TABELAIVA2 ON TABELAIVA2.CODIGO = LOG_MOVENC.TABIVA2 LEFT OUTER JOIN TABIVA AS TABELAIVA3 ON TABELAIVA3.CODIGO = LOG_MOVENC.TABIVA3 LEFT OUTER JOIN TABIVA AS TABELAIVA4 ON TABELAIVA4.CODIGO = LOG_MOVENC.TABIVA4 LEFT OUTER JOIN TABMOTIVOSISEIVA AS MOTIVOISE1 ON MOTIVOISE1.CODIGO = LOG_MOVENC.TABIVA1MOTIVOISE LEFT OUTER JOIN TABMOTIVOSISEIVA AS MOTIVOISE2 ON MOTIVOISE2.CODIGO = LOG_MOVENC.TABIVA2MOTIVOISE LEFT OUTER JOIN TABMOTIVOSISEIVA AS MOTIVOISE3 ON MOTIVOISE3.CODIGO = LOG_MOVENC.TABIVA3MOTIVOISE LEFT OUTER JOIN TABMOTIVOSISEIVA AS MOTIVOISE4 ON MOTIVOISE4.CODIGO = LOG_MOVENC.TABIVA4MOTIVOISE LEFT OUTER JOIN DADOSTRANSPORTE WITH (NOLOCK) ON DADOSTRANSPORTE.TIPO = LOG_MOVENC.TIPO AND DADOSTRANSPORTE.NUMERO = LOG_MOVENC.NUMERO AND DADOSTRANSPORTE.ANO = LOG_MOVENC.ANO LEFT OUTER JOIN LOG_MOVENCLIN WITH (NOLOCK) ON LOG_MOVENCLIN.TIPO = LOG_MOVENC.TIPO AND LOG_MOVENCLIN.NUMERO = LOG_MOVENC.NUMERO AND LOG_MOVENCLIN.ANO = LOG_MOVENC.ANO LEFT OUTER JOIN IMPOSTOSMOVPRODUTO WITH (NOLOCK) ON IMPOSTOSMOVPRODUTO.CLIFOR='C' AND IMPOSTOSMOVPRODUTO.TIPO = LOG_MOVENC.TIPO AND IMPOSTOSMOVPRODUTO.NUMERO = LOG_MOVENC.NUMERO AND IMPOSTOSMOVPRODUTO.ANO = LOG_MOVENC.ANO AND IMPOSTOSMOVPRODUTO.IDENTIFICA = LOG_MOVENCLIN.IDENTIFICA AND IMPOSTOSMOVPRODUTO.PRODUTO = LOG_MOVENCLIN.CODIGO LEFT OUTER JOIN IMPOSTOSCONFIG ON IMPOSTOSCONFIG.CODIGO = IMPOSTOSMOVPRODUTO.CODIGOIMPOSTO LEFT OUTER JOIN TABMOTIVOSISEIVA AS MOTIVOISEOUTROSIMP WITH (NOLOCK) ON MOTIVOISEOUTROSIMP.CODIGO = IMPOSTOSMOVPRODUTO.MOTIVOISEIVA WHERE TABTIPOMOV.MODULO='EC' AND CHARINDEX(LOG_MOVENC.TIPOMOVCLASSIFICA, 'CM;CC;FC;FO;NE;OU;OR;PF;DC;') > 0 AND LOG_MOVENC.DATA >='2020-04-01' AND LOG_MOVENC.DATA <='2020-04-30' AND LOG_MOVENC.NUMERO <> '' AND TABTIPOMOV.AUTOFACTURACAO=0 AND ISNULL(LOG_MOVENC.ESTADO,'A') = 'A' AND LOG_MOVENCLIN.SINAL > 0 Union Select IsNull(MovCliente.FormulaCalcCambioB, (Select Top 1 FormulaCalcCambioB from ParamGeral)) as FormulaCalcCambioB, MovCliente.Tipo as Tipo, MovCliente.Numero as Numero, MovCliente.Ano as Ano, Convert(varchar (max), MovCliente.Hash_Elsif) as HashElsif, MovCliente.VersaoApp, TabTipoMov.GuiaTransp as TipoGuia, IsNull(MovCliente.Estado,'N') as WorkStatus, IsNull(MovCliente.Estado_Motivo,'') as WorkStatus_Reason, IsNull(MovCliente.Estado_DataSys,MovCliente.DataSys) as WorkStatus_Date, IsNull(MovCliente.Estado_Utilizador,MovCliente.Utilizador) as WorkStatus_SourceID, Convert(varchar (255), MovCliente.Hash) as Hash, MovCliente.HashControl, MovCliente.Afecta, MovCliente.Data as WorkDate, MovCliente.TipoMovClassifica as WorkType, TabTipoMov.AutoFacturacao as SelfBillingIndicator, MovCliente.Utilizador as SourceID, MovCliente.CAE as EACCode, MovCliente.DataSys as SystemEntryDate, MovCliente.Codigo, MovCliente.CustomerID, TabTipoMov.Modulo, TabTipoMov.CopiaDocumentoOriginal,TabTipoMov.CopiaDocumentoOriginal_Manual, TabTipoMov.CopiaDocumentoOriginal_Integrado, MovCliente.Cambio, MovCliente.ValCambio, IsNull(Cambios.ISO4217,'') as ISO4217, MovCliente.NumRegisto as MovCliNumReg, DescontoFinanceiro=IsNull(MovCliente.DescontoFinanceiro,0),DescontoFinanceiroPerc=IsNull(MovCliente.DescontoFinanceiroPerc,0), MovCliente.DataVenc, isnull(PagaComo.ClassificaSaft,'') as PagaComo, MovCliente.Valor, MovCliente.Desconto, MovCliente.IVA, MovCliente.TotalDoc, MovCliente.ValorIRS, MovCliente.TipoRetencao, IsNull(MovCliente.Saft_IvaIseRegiao,'') as Saft_IvaIseRegiao, MovCliente.TabIva1, MovCliente.TaxIva1, MovCliente.Valor1, MovCliente.Desconto1, MovCliente.ValIva1, TabelaIva1.Saft_TaxType as TabIva1_SaftTaxType, TabelaIva1.Saft_TaxCountryRegion as TabIva1_SaftTaxCountryRegion, TabelaIva1.Saft_TaxCode as TabIva1_SaftTaxCode, IsNull(MotivoIse1.Mencao,'') as TabIva1MotivoIse, IsNull(MotivoIse1.Codigo,'') as Mot1Cod, IsNull(MotivoIse1.MotivoOficial,'') as TabIva1MotivoIse_CodOficial, MovCliente.TabIva2, MovCliente.TaxIva2, MovCliente.Valor2, MovCliente.Desconto2, MovCliente.ValIva2, TabelaIva2.Saft_TaxType as TabIva2_SaftTaxType, TabelaIva2.Saft_TaxCountryRegion as TabIva2_SaftTaxCountryRegion, TabelaIva2.Saft_TaxCode as TabIva2_SaftTaxCode, IsNull(MotivoIse2.Mencao,'') as TabIva2MotivoIse, IsNull(MotivoIse2.Codigo,'') as Mot2Cod, IsNull(MotivoIse2.MotivoOficial,'') as TabIva2MotivoIse_CodOficial, MovCliente.TabIva3, MovCliente.TaxIva3, MovCliente.Valor3, MovCliente.Desconto3, MovCliente.ValIva3, TabelaIva3.Saft_TaxType as TabIva3_SaftTaxType, TabelaIva3.Saft_TaxCountryRegion as TabIva3_SaftTaxCountryRegion, TabelaIva3.Saft_TaxCode as TabIva3_SaftTaxCode, IsNull(MotivoIse3.Mencao,'') as TabIva3MotivoIse, IsNull(MotivoIse3.Codigo,'') as Mot3Cod, IsNull(MotivoIse3.MotivoOficial,'') as TabIva3MotivoIse_CodOficial, MovCliente.TabIva4, MovCliente.TaxIva4, MovCliente.Valor4, MovCliente.Desconto4, MovCliente.ValIva4, TabelaIva4.Saft_TaxType as TabIva4_SaftTaxType, TabelaIva4.Saft_TaxCountryRegion as TabIva4_SaftTaxCountryRegion, TabelaIva4.Saft_TaxCode as TabIva4_SaftTaxCode, IsNull(MotivoIse4.Mencao,'') as TabIva4MotivoIse, IsNull(MotivoIse4.Codigo,'') as Mot4Cod, IsNull(MotivoIse4.MotivoOficial,'') as TabIva4MotivoIse_CodOficial, MovCliente.Contribuinte, Convert(varchar (8000), MovCliente.Atribuicoes) as Atribuicoes, substring(MovCliente.Observa,1,50) as Observa, MovCliente.NumeroRecuperado, MovCliente.SerieRecuperado, MovCliente.DescontoPP, MovCliente.MotivoRetencao, IsNull(MovProduto.NumRegisto,0) as MovProNumReg, IsNull(MovProduto.Codigo,'') as ProCodigo, MovProduto.Descricao as ProDesc, MovProduto.Preco as ProPreco, MovProduto.QuantNormal as ProQuant, MovProduto.Unidade as ProUnidade, MovProduto.GuiaRef, IsNull(MovProduto.TipoGuia,'') as ProTipoGuia, MovProduto.NumGuia as ProNumGuia, MovProduto.DataGuia as ProDataGuia, MovProduto.ValorIliq as ProValIliq, MovProduto.IvaTabela as ProIvaTab, MovProduto.ValorIVA as ProIvaVal, MovProduto.IvaTaxa as ProIvaTaxa, MovProduto.TotalDesconto as ProTotalDesconto, MovProduto.Identifica as ProIdentifica, IsNull(MovProduto.IdentificaRelacionado,'') as ProIdentificaRelacionado, Substring(MovProduto.ObsLinha,1,60) as ProObsLinha, IsNull(MovProduto.DataDisposicao,'') as DataDisposicao, IsNull((Select Sum(ImpostosMovProduto.Imposto) from ImpostosMovProduto With (NoLock) Where ImpostosMovProduto.Tipo=MovCliente.Tipo and ImpostosMovProduto.Numero=MovCliente.Numero and ImpostosMovProduto.Ano=MovCliente.Ano and ImpostosMovProduto.TabIva='' ),0) as ImpostosNaoSujIva, IsNull(ImpostosMovProduto.NumRegisto,0) as OutrosImp_NumReg, ImpostosMovProduto.CodigoImposto as OutrosImp_Cod, ImpostosMovProduto.Imposto as OutrosImp_Valor, ImpostosMovProduto.ValorUnitario as OutrosImp_ValUnitario, ImpostosMovProduto.TabIva as OutrosImp_TabIva, ImpostosMovProduto.TaxaIva as OutrosImp_TaxIva, ImpostosMovProduto.ValorIva as OutrosImp_ValIva, IsNull(ImpostosConfig.Descricao,'') as OutrosImp_Desc, IsNull(MotivoIseOutrosImp.Mencao,'') as OutrosImp_ProMotivoIse, ISNULL(MProOutros.SAFT_Reason,'') as Reference_Reason, ISNULL(Convert(varchar (200), MProOutros.SAFT_SerialNumber),'') as SerialNumber, ISNULL(Convert(varchar (200), MProOutros.SAFT_ArcNo),'') as SAFT_ArcNo, IsNull(MotivoIseOutrosImp.Mencao,'') as OutrosImp_ProMotivoIse, IsNull(MotivoIseOutrosImp.Codigo,'') as OutrosImp_ProMotIse, ISNULL(MotivoIseOutrosImp.MotivoOficial,'') as OutrosImp_ProMotivoIse_CodOficial, IsNull(MovProduto.ChaveDevolucao,'') as ChaveDevolucao From MovCliente With (NoLock) Inner Join Clientes With (NoLock) on Clientes.Codigo = MovCliente.Codigo Inner Join TabTipoMov With (NoLock) on TabTipoMov.Codigo = MovCliente.Tipo Left Outer Join PagaComo on PagaComo.Codigo = MovCliente.PagaComo Left Outer Join Cambios on Cambios.Codigo = MovCliente.Cambio Left Outer Join TabIva as TabelaIva1 on TabelaIva1.Codigo = MovCliente.TabIva1 Left Outer Join TabIva as TabelaIva2 on TabelaIva2.Codigo = MovCliente.TabIva2 Left Outer Join TabIva as TabelaIva3 on TabelaIva3.Codigo = MovCliente.TabIva3 Left Outer Join TabIva as TabelaIva4 on TabelaIva4.Codigo = MovCliente.TabIva4 Left Outer Join TabMotivosIseIva as MotivoIse1 on MotivoIse1.Codigo = MovCliente.TabIva1MotivoIse Left Outer Join TabMotivosIseIva as MotivoIse2 on MotivoIse2.Codigo = MovCliente.TabIva2MotivoIse Left Outer Join TabMotivosIseIva as MotivoIse3 on MotivoIse3.Codigo = MovCliente.TabIva3MotivoIse Left Outer Join TabMotivosIseIva as MotivoIse4 on MotivoIse4.Codigo = MovCliente.TabIva4MotivoIse Left Outer Join DadosTransporte With (NoLock) on DadosTransporte.Tipo = MovCliente.Tipo and DadosTransporte.Numero = MovCliente.Numero and DadosTransporte.Ano = MovCliente.Ano Left Outer Join HistoricoGuias as MovProduto With (NoLock) on MovProduto.Tipo = MovCliente.Tipo and MovProduto.Numero = MovCliente.Numero and MovProduto.Ano = MovCliente.Ano Left Outer Join MovProdutoOutrosDados as MProOutros With (NoLock) on MProOutros.Tipo = MovProduto.Tipo and MProOutros.Numero = MovProduto.Numero and MProOutros.Ano = MovProduto.Ano and MProOutros.IdentificaMP = MovProduto.Identifica Left Outer Join ImpostosMovProduto With (NoLock) on ImpostosMovProduto.CliFor='C' and ImpostosMovProduto.Tipo = MovCliente.Tipo and ImpostosMovProduto.Numero = MovCliente.Numero and ImpostosMovProduto.Ano = MovCliente.Ano and ImpostosMovProduto.Identifica = MovProduto.Identifica and ImpostosMovProduto.Produto = MovProduto.Codigo Left Outer Join ImpostosConfig on ImpostosConfig.Codigo = ImpostosMovProduto.CodigoImposto Left Outer Join TabMotivosIseIva as MotivoIseOutrosImp With (NoLock) on MotivoIseOutrosImp.Codigo = ImpostosMovProduto.MotivoIseIva where (TabTipoMov.Modulo='CL' or TabTipoMov.Modulo='FC') and TabTipoMov.GuiaTransp=1 and CharIndex(MovCliente.TipoMovClassifica, 'CM;CC;FC;FO;NE;OU;OR;PF;DC;') > 0 and MovCliente.Data >='2020-04-01' and MovCliente.Data <='2020-04-30' and TabTipoMov.AutoFacturacao=0 and IsNull(MovCliente.Estado,'N') = 'N' Union SELECT ISNULL(LOG_MOVCLIENTE.FORMULACALCCAMBIOB, (SELECT TOP 1 FORMULACALCCAMBIOB FROM PARAMGERAL)) AS FORMULACALCCAMBIOB, LOG_MOVCLIENTE.TIPO AS TIPO, LOG_MOVCLIENTE.NUMERO AS NUMERO, LOG_MOVCLIENTE.ANO AS ANO, CONVERT(VARCHAR (MAX), LOG_MOVCLIENTE.HASH_ELSIF) AS HASHELSIF, LOG_MOVCLIENTE.VERSAOAPP, TABTIPOMOV.GUIATRANSP AS TIPOGUIA, ISNULL(LOG_MOVCLIENTE.ESTADO,'A') AS WORKSTATUS, ISNULL(LOG_MOVCLIENTE.ESTADO_MOTIVO,'') AS WORKSTATUS_REASON, ISNULL(LOG_MOVCLIENTE.ESTADO_DATASYS,LOG_MOVCLIENTE.DATASYS) AS WORKSTATUS_DATE, ISNULL(LOG_MOVCLIENTE.ESTADO_UTILIZADOR,LOG_MOVCLIENTE.UTILIZADOR) AS WORKSTATUS_SOURCEID, CONVERT(VARCHAR (255), LOG_MOVCLIENTE.HASH) AS HASH, LOG_MOVCLIENTE.HASHCONTROL, LOG_MOVCLIENTE.AFECTA, LOG_MOVCLIENTE.DATA AS WORKDATE, LOG_MOVCLIENTE.TIPOMOVCLASSIFICA AS WORKTYPE, TABTIPOMOV.AUTOFACTURACAO AS SELFBILLINGINDICATOR, LOG_MOVCLIENTE.UTILIZADOR AS SOURCEID, LOG_MOVCLIENTE.CAE AS EACCODE, LOG_MOVCLIENTE.DATASYS AS SYSTEMENTRYDATE, LOG_MOVCLIENTE.CODIGO, LOG_MOVCLIENTE.CUSTOMERID, TABTIPOMOV.MODULO, TABTIPOMOV.COPIADOCUMENTOORIGINAL,TABTIPOMOV.COPIADOCUMENTOORIGINAL_MANUAL, TABTIPOMOV.COPIADOCUMENTOORIGINAL_INTEGRADO, LOG_MOVCLIENTE.CAMBIO, LOG_MOVCLIENTE.VALCAMBIO, ISNULL(CAMBIOS.ISO4217,'') AS ISO4217, LOG_MOVCLIENTE.NUMREGISTO AS MOVCLINUMREG, DESCONTOFINANCEIRO=ISNULL(LOG_MOVCLIENTE.DESCONTOFINANCEIRO,0),DESCONTOFINANCEIROPERC=ISNULL(LOG_MOVCLIENTE.DESCONTOFINANCEIROPERC,0), LOG_MOVCLIENTE.DATAVENC, ISNULL(PAGACOMO.CLASSIFICASAFT,'') AS PAGACOMO, LOG_MOVCLIENTE.VALOR, LOG_MOVCLIENTE.DESCONTO, LOG_MOVCLIENTE.IVA, LOG_MOVCLIENTE.TOTALDOC, LOG_MOVCLIENTE.VALORIRS, LOG_MOVCLIENTE.TIPORETENCAO, ISNULL(LOG_MOVCLIENTE.SAFT_IVAISEREGIAO,'') AS SAFT_IVAISEREGIAO, LOG_MOVCLIENTE.TABIVA1, LOG_MOVCLIENTE.TAXIVA1, LOG_MOVCLIENTE.VALOR1, LOG_MOVCLIENTE.DESCONTO1, LOG_MOVCLIENTE.VALIVA1, TABELAIVA1.SAFT_TAXTYPE AS TABIVA1_SAFTTAXTYPE, TABELAIVA1.SAFT_TAXCOUNTRYREGION AS TABIVA1_SAFTTAXCOUNTRYREGION, TABELAIVA1.SAFT_TAXCODE AS TABIVA1_SAFTTAXCODE, ISNULL(MOTIVOISE1.MENCAO,'') AS TABIVA1MOTIVOISE, ISNULL(MOTIVOISE1.CODIGO,'') AS MOT1COD, ISNULL(MOTIVOISE1.MOTIVOOFICIAL,'') AS TABIVA1MOTIVOISE_CODOFICIAL, LOG_MOVCLIENTE.TABIVA2, LOG_MOVCLIENTE.TAXIVA2, LOG_MOVCLIENTE.VALOR2, LOG_MOVCLIENTE.DESCONTO2, LOG_MOVCLIENTE.VALIVA2, TABELAIVA2.SAFT_TAXTYPE AS TABIVA2_SAFTTAXTYPE, TABELAIVA2.SAFT_TAXCOUNTRYREGION AS TABIVA2_SAFTTAXCOUNTRYREGION, TABELAIVA2.SAFT_TAXCODE AS TABIVA2_SAFTTAXCODE, ISNULL(MOTIVOISE2.MENCAO,'') AS TABIVA2MOTIVOISE, ISNULL(MOTIVOISE2.CODIGO,'') AS MOT2COD, ISNULL(MOTIVOISE2.MOTIVOOFICIAL,'') AS TABIVA2MOTIVOISE_CODOFICIAL, LOG_MOVCLIENTE.TABIVA3, LOG_MOVCLIENTE.TAXIVA3, LOG_MOVCLIENTE.VALOR3, LOG_MOVCLIENTE.DESCONTO3, LOG_MOVCLIENTE.VALIVA3, TABELAIVA3.SAFT_TAXTYPE AS TABIVA3_SAFTTAXTYPE, TABELAIVA3.SAFT_TAXCOUNTRYREGION AS TABIVA3_SAFTTAXCOUNTRYREGION, TABELAIVA3.SAFT_TAXCODE AS TABIVA3_SAFTTAXCODE, ISNULL(MOTIVOISE3.MENCAO,'') AS TABIVA3MOTIVOISE, ISNULL(MOTIVOISE3.CODIGO,'') AS MOT3COD, ISNULL(MOTIVOISE3.MOTIVOOFICIAL,'') AS TABIVA3MOTIVOISE_CODOFICIAL, LOG_MOVCLIENTE.TABIVA4, LOG_MOVCLIENTE.TAXIVA4, LOG_MOVCLIENTE.VALOR4, LOG_MOVCLIENTE.DESCONTO4, LOG_MOVCLIENTE.VALIVA4, TABELAIVA4.SAFT_TAXTYPE AS TABIVA4_SAFTTAXTYPE, TABELAIVA4.SAFT_TAXCOUNTRYREGION AS TABIVA4_SAFTTAXCOUNTRYREGION, TABELAIVA4.SAFT_TAXCODE AS TABIVA4_SAFTTAXCODE, ISNULL(MOTIVOISE4.MENCAO,'') AS TABIVA4MOTIVOISE, ISNULL(MOTIVOISE4.CODIGO,'') AS MOT4COD, ISNULL(MOTIVOISE4.MOTIVOOFICIAL,'') AS TABIVA4MOTIVOISE_CODOFICIAL, LOG_MOVCLIENTE.CONTRIBUINTE, CONVERT(VARCHAR (8000), LOG_MOVCLIENTE.ATRIBUICOES) AS ATRIBUICOES, SUBSTRING(LOG_MOVCLIENTE.OBSERVA,1,50) AS OBSERVA, LOG_MOVCLIENTE.NUMERORECUPERADO, LOG_MOVCLIENTE.SERIERECUPERADO, LOG_MOVCLIENTE.DESCONTOPP, LOG_MOVCLIENTE.MOTIVORETENCAO, ISNULL(MOVPRODUTO.NUMREGISTO,0) AS MOVPRONUMREG, ISNULL(MOVPRODUTO.CODIGO,'') AS PROCODIGO, MOVPRODUTO.DESCRICAO AS PRODESC, MOVPRODUTO.PRECO AS PROPRECO, MOVPRODUTO.QUANTNORMAL AS PROQUANT, MOVPRODUTO.UNIDADE AS PROUNIDADE, MOVPRODUTO.GUIAREF, ISNULL(MOVPRODUTO.TIPOGUIA,'') AS PROTIPOGUIA, MOVPRODUTO.NUMGUIA AS PRONUMGUIA, MOVPRODUTO.DATAGUIA AS PRODATAGUIA, MOVPRODUTO.VALORILIQ AS PROVALILIQ, MOVPRODUTO.IVATABELA AS PROIVATAB, MOVPRODUTO.VALORIVA AS PROIVAVAL, MOVPRODUTO.IVATAXA AS PROIVATAXA, MOVPRODUTO.TOTALDESCONTO AS PROTOTALDESCONTO, MOVPRODUTO.IDENTIFICA AS PROIDENTIFICA, ISNULL(MOVPRODUTO.IDENTIFICARELACIONADO,'') AS PROIDENTIFICARELACIONADO, SUBSTRING(MOVPRODUTO.OBSLINHA,1,60) AS PROOBSLINHA, ISNULL(MOVPRODUTO.DATADISPOSICAO,'') AS DATADISPOSICAO, ISNULL((SELECT SUM(IMPOSTOSMOVPRODUTO.IMPOSTO) FROM IMPOSTOSMOVPRODUTO WITH (NOLOCK) WHERE IMPOSTOSMOVPRODUTO.TIPO=LOG_MOVCLIENTE.TIPO AND IMPOSTOSMOVPRODUTO.NUMERO=LOG_MOVCLIENTE.NUMERO AND IMPOSTOSMOVPRODUTO.ANO=LOG_MOVCLIENTE.ANO AND IMPOSTOSMOVPRODUTO.TABIVA='' ),0) AS IMPOSTOSNAOSUJIVA, ISNULL(IMPOSTOSMOVPRODUTO.NUMREGISTO,0) AS OUTROSIMP_NUMREG, IMPOSTOSMOVPRODUTO.CODIGOIMPOSTO AS OUTROSIMP_COD, IMPOSTOSMOVPRODUTO.IMPOSTO AS OUTROSIMP_VALOR, IMPOSTOSMOVPRODUTO.VALORUNITARIO AS OUTROSIMP_VALUNITARIO, IMPOSTOSMOVPRODUTO.TABIVA AS OUTROSIMP_TABIVA, IMPOSTOSMOVPRODUTO.TAXAIVA AS OUTROSIMP_TAXIVA, IMPOSTOSMOVPRODUTO.VALORIVA AS OUTROSIMP_VALIVA, ISNULL(IMPOSTOSCONFIG.DESCRICAO,'') AS OUTROSIMP_DESC, ISNULL(MOTIVOISEOUTROSIMP.MENCAO,'') AS OUTROSIMP_PROMOTIVOISE, ISNULL(MPROOUTROS.SAFT_REASON,'') AS REFERENCE_REASON, ISNULL(CONVERT(VARCHAR (200), MPROOUTROS.SAFT_SERIALNUMBER),'') AS SERIALNUMBER, ISNULL(CONVERT(VARCHAR (200), MPROOUTROS.SAFT_ARCNO),'') AS SAFT_ARCNO, ISNULL(MOTIVOISEOUTROSIMP.MENCAO,'') AS OUTROSIMP_PROMOTIVOISE, ISNULL(MOTIVOISEOUTROSIMP.CODIGO,'') AS OUTROSIMP_PROMOTISE, ISNULL(MOTIVOISEOUTROSIMP.MOTIVOOFICIAL,'') AS OUTROSIMP_PROMOTIVOISE_CODOFICIAL, ISNULL(MOVPRODUTO.CHAVEDEVOLUCAO,'') AS CHAVEDEVOLUCAO FROM LOG_MOVCLIENTE WITH (NOLOCK) INNER JOIN CLIENTES WITH (NOLOCK) ON CLIENTES.CODIGO = LOG_MOVCLIENTE.CODIGO INNER JOIN TABTIPOMOV WITH (NOLOCK) ON TABTIPOMOV.CODIGO = LOG_MOVCLIENTE.TIPO LEFT OUTER JOIN PAGACOMO ON PAGACOMO.CODIGO = LOG_MOVCLIENTE.PAGACOMO LEFT OUTER JOIN CAMBIOS ON CAMBIOS.CODIGO = LOG_MOVCLIENTE.CAMBIO LEFT OUTER JOIN TABIVA AS TABELAIVA1 ON TABELAIVA1.CODIGO = LOG_MOVCLIENTE.TABIVA1 LEFT OUTER JOIN TABIVA AS TABELAIVA2 ON TABELAIVA2.CODIGO = LOG_MOVCLIENTE.TABIVA2 LEFT OUTER JOIN TABIVA AS TABELAIVA3 ON TABELAIVA3.CODIGO = LOG_MOVCLIENTE.TABIVA3 LEFT OUTER JOIN TABIVA AS TABELAIVA4 ON TABELAIVA4.CODIGO = LOG_MOVCLIENTE.TABIVA4 LEFT OUTER JOIN TABMOTIVOSISEIVA AS MOTIVOISE1 ON MOTIVOISE1.CODIGO = LOG_MOVCLIENTE.TABIVA1MOTIVOISE LEFT OUTER JOIN TABMOTIVOSISEIVA AS MOTIVOISE2 ON MOTIVOISE2.CODIGO = LOG_MOVCLIENTE.TABIVA2MOTIVOISE LEFT OUTER JOIN TABMOTIVOSISEIVA AS MOTIVOISE3 ON MOTIVOISE3.CODIGO = LOG_MOVCLIENTE.TABIVA3MOTIVOISE LEFT OUTER JOIN TABMOTIVOSISEIVA AS MOTIVOISE4 ON MOTIVOISE4.CODIGO = LOG_MOVCLIENTE.TABIVA4MOTIVOISE LEFT OUTER JOIN DADOSTRANSPORTE WITH (NOLOCK) ON DADOSTRANSPORTE.TIPO = LOG_MOVCLIENTE.TIPO AND DADOSTRANSPORTE.NUMERO = LOG_MOVCLIENTE.NUMERO AND DADOSTRANSPORTE.ANO = LOG_MOVCLIENTE.ANO LEFT OUTER JOIN LOG_HISTORICOGUIAS AS MOVPRODUTO WITH (NOLOCK) ON MOVPRODUTO.TIPO = LOG_MOVCLIENTE.TIPO AND MOVPRODUTO.NUMERO = LOG_MOVCLIENTE.NUMERO AND MOVPRODUTO.ANO = LOG_MOVCLIENTE.ANO LEFT OUTER JOIN MOVPRODUTOOUTROSDADOS AS MPROOUTROS WITH (NOLOCK) ON MPROOUTROS.TIPO = MOVPRODUTO.TIPO AND MPROOUTROS.NUMERO = MOVPRODUTO.NUMERO AND MPROOUTROS.ANO = MOVPRODUTO.ANO AND MPROOUTROS.IDENTIFICAMP = MOVPRODUTO.IDENTIFICA LEFT OUTER JOIN IMPOSTOSMOVPRODUTO WITH (NOLOCK) ON IMPOSTOSMOVPRODUTO.CLIFOR='C' AND IMPOSTOSMOVPRODUTO.TIPO = LOG_MOVCLIENTE.TIPO AND IMPOSTOSMOVPRODUTO.NUMERO = LOG_MOVCLIENTE.NUMERO AND IMPOSTOSMOVPRODUTO.ANO = LOG_MOVCLIENTE.ANO AND IMPOSTOSMOVPRODUTO.IDENTIFICA = MOVPRODUTO.IDENTIFICA AND IMPOSTOSMOVPRODUTO.PRODUTO = MOVPRODUTO.CODIGO LEFT OUTER JOIN IMPOSTOSCONFIG ON IMPOSTOSCONFIG.CODIGO = IMPOSTOSMOVPRODUTO.CODIGOIMPOSTO LEFT OUTER JOIN TABMOTIVOSISEIVA AS MOTIVOISEOUTROSIMP WITH (NOLOCK) ON MOTIVOISEOUTROSIMP.CODIGO = IMPOSTOSMOVPRODUTO.MOTIVOISEIVA WHERE (TABTIPOMOV.MODULO='CL' OR TABTIPOMOV.MODULO='FC') AND TABTIPOMOV.GUIATRANSP=1 AND CHARINDEX(LOG_MOVCLIENTE.TIPOMOVCLASSIFICA, 'CM;CC;FC;FO;NE;OU;OR;PF;DC;') > 0 AND LOG_MOVCLIENTE.DATA >='2020-04-01' AND LOG_MOVCLIENTE.DATA <='2020-04-30' AND TABTIPOMOV.AUTOFACTURACAO=0 AND ISNULL(LOG_MOVCLIENTE.ESTADO,'A') = 'A' Order By Ano, Tipo, Numero, MovCliNumReg, OutrosImp_NumReg Select @@RowCount as Contagem