private static DanfeFrEvento GeraClasseDanfeFrEvento(string xml, string xmlEvento) { var configuracaoDanfeNfe = _configuracoes.ConfiguracaoDanfeNfe; var proc = new nfeProc().CarregarDeXmlString(xml); if (proc.NFe.infNFe.ide.mod != ModeloDocumento.NFe) { throw new Exception("O XML informado não é um NFe!"); } var procEvento = FuncoesXml.XmlStringParaClasse <procEventoNFe>(xmlEvento); DanfeFrEvento danfe = new DanfeFrEvento(proc: proc, procEventoNFe: procEvento, configuracaoDanfeNfe: new ConfiguracaoDanfeNfe() { Logomarca = configuracaoDanfeNfe.Logomarca, DuasLinhas = false, DocumentoCancelado = false, QuebrarLinhasObservacao = configuracaoDanfeNfe.QuebrarLinhasObservacao, ExibirResumoCanhoto = configuracaoDanfeNfe.ExibirResumoCanhoto, ResumoCanhoto = configuracaoDanfeNfe.ResumoCanhoto, ChaveContingencia = configuracaoDanfeNfe.ChaveContingencia, ExibeCampoFatura = configuracaoDanfeNfe.ExibeCampoFatura, ImprimirISSQN = configuracaoDanfeNfe.ImprimirISSQN, ImprimirDescPorc = configuracaoDanfeNfe.ImprimirDescPorc, ImprimirTotalLiquido = configuracaoDanfeNfe.ImprimirTotalLiquido, ImprimirUnidQtdeValor = configuracaoDanfeNfe.ImprimirUnidQtdeValor, ExibirTotalTributos = configuracaoDanfeNfe.ExibirTotalTributos }, desenvolvedor: "NOME DA SOFTWARE HOUSE"); return(danfe); }
private void btnEventoNFe_Click(object sender, RoutedEventArgs e) { try { #region Carrega um XML com nfeProc para a variável var arquivoXml = Funcoes.BuscarArquivoXml(); if (string.IsNullOrEmpty(arquivoXml)) { return; } var proc = new nfeProc().CarregarDeArquivoXml(arquivoXml); if (proc.NFe.infNFe.ide.mod != ModeloDocumento.NFe) { throw new Exception("O XML informado não é um NFe!"); } arquivoXml = Funcoes.BuscarArquivoXml(); if (string.IsNullOrEmpty(arquivoXml)) { return; } var procEvento = FuncoesXml.ArquivoXmlParaClasse <procEventoNFe>(arquivoXml); #endregion #region Abre a visualização do relatório para impressão var danfe = new DanfeFrEvento(proc, procEvento, new ConfiguracaoDanfeNfe(_configuracoes.ConfiguracaoDanfeNfce.Logomarca, RdbDuasLinhas.IsChecked ?? false, ChbCancelado.IsChecked ?? false), "NOME DA SOFTWARE HOUSE"); danfe.Visualizar(); //danfe.Imprimir(); //danfe.ExibirDesign(); //danfe.ExportarPdf(@"d:\teste.pdf"); #endregion } catch (Exception ex) { if (!string.IsNullOrEmpty(ex.Message)) { Funcoes.Mensagem(ex.Message, "Erro", MessageBoxButton.OK); } } }