Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- procedure TEnviarMovimentoForm.GerarXML;
- var
- NFeStream: TStringStream;
- NFeDM: TNFeDataModule;
- NFCe: TNFCe;
- sArq: string;
- ZipFile: TZipFile;
- begin
- inherited;
- sPath :=
- ExpandFileName(ExtractFileDir(Application.ExeName) + '\..\') +
- 'Remessa\NFCe\' + FormatDateTime('yyyymmdd', Now);
- if not ForceDirectories(sPath) then
- raise Exception.Create('Ocorreu um erro ao criar a pasta de remessa ' + sPath);
- NFeDM := TNFeDataModule.Create(nil);
- NFCe := TNFCe.Create(nil);
- ZipFile := TZipFile.Create;
- try
- ZipFile.Open(sPath + '\NFCe.zip', zmWrite);
- NFCe.Close;
- NFCe.Busca('DATA_EMISSAO', DataInicialDateEdit.Date, DataFinalDateEdit.Date, 'DATA_EMISSAO');
- NFCe.First;
- while (not NFCe.Eof) do
- begin
- if NFCe.Status.AsString = 'A' then
- begin
- NFeDM.ACBrNFe1.NotasFiscais.Clear;
- NFeStream := TStringStream.Create(NFCe.XmlNFe.Value);
- try
- NFeDM.ACBrNFe1.NotasFiscais.LoadFromStream(NFeStream);
- if NFeDM.ACBrNFe1.NotasFiscais.Items[0].NFe.procNFe.chNFe <> '' then
- begin
- sArq := sPath + '\' + NFeDM.ACBrNFe1.NotasFiscais.Items[0].NFe.procNFe.chNFe + '-nfe.xml';
- NFeDM.ACBrNFe1.NotasFiscais.GravarXML(sArq);
- ZipFile.Add(sArq);
- end;
- finally
- FreeAndNil(NFeStream);
- end;
- end;
- NFCe.Next;
- end;
- ZipFile.Close;
- finally
- ZipFile.Free;
- FreeAndNil(NFCe);
- FreeAndNil(NFeDM);
- end;
- Application.MessageBox('XMLs das NFC-e gerados com sucesso', 'Atenção', MB_OK);
- end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement