Italo, também daria certo. Na impressão onde ficaria esse "carimbo"?
Segue abaixo o código da função "CarregaCalculoImposto" da unit "ACBrNFeDANFEFRDM.pas(porque trabalho com o fastreport) da mudança que pensei.
teSVCSP : begin FieldByName('ChaveAcesso_Descricao').AsString := 'CHAVE DE ACESSO'; FieldByName('Contingencia_ID').AsString := '';
if ((FDANFEClassOwner.NFeCancelada) or (FNFe.procNFe.cStat in [101,151,155])) then FieldByName('Contingencia_Descricao').AsString := ACBrStr('PROTOCOLO DE HOMOLOGAÇÃO DO CANCELAMENTO' ) else if ( FNFe.procNFe.cStat = 110 ) or ( FNFe.procNFe.cStat = 301 ) or ( FNFe.procNFe.cStat = 302 ) or ( FNFe.procNFe.cStat = 303 ) then FieldByName('Contingencia_Descricao').AsString := ACBrStr('PROTOCOLO DE DENEGAÇÃO DE USO') else FieldByName('Contingencia_Descricao').AsString := ACBrStr('PROTOCOLO DE AUTORIZAÇÃO DE USO');
if EstaVazio(FDANFEClassOwner.ProtocoloNFe) then begin if EstaVazio(FNFe.procNFe.nProt) then FieldByName('Contingencia_Valor').AsString := ACBrStr('NFe sem Autorização de Uso da SEFAZ') else FieldByName('Contingencia_Valor').AsString := FNFe.procNFe.nProt + ' ' + IfThen(FNFe.procNFe.dhRecbto <> 0, DateTimeToStr(FNFe.procNFe.dhRecbto), ''); end else // CODIGO ORIGINAL // FieldByName('Contingencia_Valor').AsString := FDANFEClassOwner.ProtocoloNFe; jetro - original // CODIGO ALTERADO FieldByName('Contingencia_Valor').AsString := FDANFEClassOwner.ProtocoloNFe + ' ' + IfThen(FDANFEClassOwner.DhRecbtoNFeCancelada <> 0, DateTimeToStr(FDANFEClassOwner.DhRecbtoNFeCancelada), ''); // jetro - mostra a data do cancelemento end;