Olá pessoal,
No nosso objetivo de sempre melhorar o código do ACBr deixá-lo mais organizado e legível, estamos fazendo algumas mudanças e achamos importantes expô-las para todos.
Detectamos alguns tipos que não estão sendo mais usados por nenhum componente ou classe no código do ACBr e por isso, achamos melhor remover. Além disso, parte do que estamos fazendo no momento é migrando definições de classes e tipos e também algumas funções da unit "pcnConversao.pas" para units mais especializadas como a "pcnConversaoNFe.pas". No caso dessas funções e classes/tipos, elas não são utilizadas fora de um "componente" específico. Assim, reduzimos o escopo.
Também estamos, na medida do possível, criando novas versões de funções que convertem tipos enumerados (StrToXXXX ou XXXXToStr), removendo o parâmetro "ok". Isso já acontece em muitas funções do mesmo tipo em outras áreas do projeto. Muitas vezes esse parâmetro "ok" é ignorado pelos programadores e essa situação pode causar problemas difíceis de serem diagnosticados. Não queremos incentivar esse comportamento...
Abaixo uma lista dos tipos migrados e para qual unit ele foi destinado. As funções relacionadas a esses tipos foram migradas também para a unit mencionada:
TpcnSituacaoEmissor - Descontinuado e removido - Não é utilizado em nenhum componente.
TpcnIndicadorEmissor - Descontinuado e removido - Não é utilizado em nenhum componente.
TpcnIndicadorContinuacao - Descontinuado e removido - Não é utilizado em nenhum componente.
TpcnSituacaoManifDest - Descontinuado e removido - Não é utilizado em nenhum componente.
TpcnFormatoGravacao - Movido para unit pcnGerador
TDetFormato - Movido para unit ACBrDFeReport
TpcteModeloNF - Movido para unit pcnConversaoCTe
TpcnIndicadorPagamento - Movido para unit pcnConversaoNFe
TpcnPercentualTributos - Movido para unit pcnConversaoNFe
TpcnDeterminacaoBaseIcms = Movido para unit pcnConversaoNFe
TpcnDeterminacaoBaseIcmsST = Movido para unit pcnConversaoNFe
TpcnMotivoDesoneracaoICMS = Movido para unit pcnConversaoNFe
TpcnCstIpi - Movido para unit pcnConversaoNFe
TpcnIndicadorProcesso - Movido para unit pcnConversaoNFe
TpcnCRT - Movido para unit pcnConversaoNFe
TpcnIndicadorTotal - Movido para unit pcnConversaoNFe
TpcnECFModRef - Movido para unit pcnConversaoNFe
TpcnISSQNcSitTrib - Movido para unit pcnConversaoNFe
TpcnImprimeDescAcrescItem - Movido para unit pcnConversaoNFe
TpcnDestinoOperacao - Movido para unit pcnConversaoNFe
TpcnConsumidorFinal - Movido para unit pcnConversaoNFe
TpcnPresencaComprador - Movido para unit pcnConversaoNFe
TpcnFormaPagamento - Movido para unit pcnConversaoNFe
TpcnBandeiraCartao - Movido para unit pcnConversaoNFe
TpcnTipoViaTransp - Movido para unit pcnConversaoNFe
TpcnTipoIntermedio- Movido para unit pcnConversaoNFe
TpcnindISSRet - Movido para unit pcnConversaoNFe
TpcnindISS - Movido para unit pcnConversaoNFe
TpcnTipoAutor - Movido para unit pcnConversaoNFe
As primeiras alterações foram enviadas ao SVN na revisão 34752.
Bom trabalho pessoal.