Пример #1
0
        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);
        }
Пример #2
0
        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);
                }
            }
        }