Boa tarde pessoal.
Eu estava recebendo erro ao tentar validar a nota fiscal, pelo que eu vi o conteúdo da nota estava vindo vazio
Alterei este procedimento no ACBrNFeNotasFiscais.pas e resolveu o problema.
procedure NotaFiscal.Validar;
var
Erro, AXML, DeclaracaoXML: String;
NotaEhValida, ok: Boolean;
ALayout: TLayOut;
VerServ: Real;
Modelo: TpcnModeloDF;
cUF: Integer;
begin
AXML := XMLAssinado; //aqui AXML := FXMLAssinado;
if AXML = '' then
AXML := XMLOriginal;
with TACBrNFe(TNotasFiscais(Collection).ACBrNFe) do
begin
VerServ := FNFe.infNFe.Versao;
Modelo := StrToModeloDF(ok, IntToStr(FNFe.Ide.modelo));
cUF := FNFe.Ide.cUF;
if EhAutorizacao( DblToVersaoDF(ok, VerServ), Modelo, cUF) then
ALayout := LayNfeAutorizacao
else
ALayout := LayNfeRecepcao;
// Extraindo apenas os dados da NFe (sem nfeProc)
DeclaracaoXML := ObtemDeclaracaoXML(AXML);
AXML := DeclaracaoXML + '<NFe xmlns' +
RetornarConteudoEntre(AXML, '<NFe xmlns', '</NFe>') +
'</NFe>';
NotaEhValida := SSL.Validar(AXML, GerarNomeArqSchema(ALayout, VerServ), Erro);
if not NotaEhValida then
begin
FErroValidacao := ACBrStr('Falha na validação dos dados da nota: ') +
IntToStr(NFe.Ide.nNF) + sLineBreak + FAlertas ;
FErroValidacaoCompleto := FErroValidacao + sLineBreak + Erro;
raise EACBrNFeException.CreateDef(
IfThen(Configuracoes.Geral.ExibirErroSchema, ErroValidacaoCompleto,
ErroValidacao));
end;
end;
end;