Pessoal, bom dia!
Na Nota Fiscal de Serviço de Campinas (ACBrNFSeDANFSeRLRetrato), na parte de Prestador de Serviços, existe o Campo CPF/CNPJ.
Verificamos que para outros campos, como Inscrição Municipal, existe uma condição, para quando não retornar valor, busca o valor em fpDANFSe.InscMunicipal, por exemplo.
Conforme código abaixo - ACBrNFSeDANFSeRLRetrato, procedure rlbPrestadorBeforePrint:
with IdentificacaoPrestador do
begin
rllPrestCNPJ.Caption := FormatarCNPJouCPF( Cnpj );
rllPrestInscMunicipal.Caption := IfThen(InscricaoMunicipal <> '', InscricaoMunicipal, fpDANFSe.InscMunicipal);
end;
No entanto, necessitamos dessa mesma opção para o campo CPF/CNPJ.
Então criamos uma nova propriedade CNPJ_Prestador no ACBrNFSeDANFSeClass:
property CNPJ_Prestador: String read FCNPJ_Prestador write FCNPJ_Prestador;
Seguindo a mesma lógica dos outros campos:
with IdentificacaoPrestador do
begin
rllPrestCNPJ.Caption := FormatarCNPJouCPF( ifThen (Cnpj <> '', Cnpj,fpDANFSe.CNPJ_Prestador) ); (MODIFICADO)
rllPrestInscMunicipal.Caption := IfThen(InscricaoMunicipal <> '', InscricaoMunicipal, fpDANFSe.InscMunicipal);
end;
Segue em anexo os arquivos alterados e Nota.
*Os arquivos modificados foram devidamente atualizados para realizar as alterações.
ACBrNFSeDANFSeRLRetrato.pas
ACBrNFSeDANFSeClass.pas