Giter Site home page Giter Site logo

danfesharp's Introduction

DanfeSharp

DanfeSharp é uma biblioteca em C# que permite a geração do DANFE em formato PDF.

A biblioteca PDF Clown é utilizada para a escrita dos arquivos em PDF.

Exemplo de uso:

using DanfeSharp;
using DanfeSharp.Modelo;

//Cria o modelo a partir do arquivo Xml da NF-e.
var modelo = DanfeViewModelCreator.CriarDeArquivoXml("nfe.xml");


//O modelo também pode ser criado e preenchido de outra forma.
var modelo = new DanfeViewModel()
{
    NfNumero = 123456,
    NfSerie = 123,
    ChaveAcesso = "123456987...",
    Emitente = new EmpresaViewModel()
    {
        CnpjCpf = "123456...",
        Nome = "DanfeSharp Ltda",    
	...


//Inicia o Danfe com o modelo criado
using (var danfe = new Danfe(modelo))
{
	danfe.Gerar();
	danfe.Salvar("danfe.pdf");
}

danfesharp's People

Contributors

silvercard avatar victorpothin avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

danfesharp's Issues

Esse projeto esta sendo mantido?

Ola, gostaria de saber se o projeto esta sendo mantido, notei que as ultimas atualizações são de 2021.

Estou a procura de um gerador de Danfe, caso esse não esteja sendo mantido, farei um fork em um novo projeto.

Obrigado.

Impressão de DACTE

Impressão de DACTE pode ser implementado neste projeto ou é melhor criar outro DacteSharp?

"O tpEmis {ide.tpEmis} não é suportado."

O método CreateFromXml(ProcNFe procNfe) da classe DanfeViewModelCreators contém a linha:

if (FormasEmissaoSuportadas.Contains(model.TipoEmissao))
{
throw new NotSupportedException($"O tpEmis {ide.tpEmis} não é suportado.");
}

Quando a emissão é normal e está dentro do tipo de emissão suportada ele lança a exceção acima.
A linha do if não teria de ser a abaixo?

if (!FormasEmissaoSuportadas.Contains(model.TipoEmissao)) //observe o ! negando o if

Inserir Logo na DANFE

Boa tarde,

Estou pensando em fazer a alteração no projeto para incluir o logo do cliente no campo de identificação do emitente. Mas antes gostaria de saber se já existe algo do tipo no projeto para não fazer duas vezes, pois ainda não encontrei.

Att;

alteração Identificação do Emitente

Bom dia,

Estou com uma enquete aqui na empresa onde a equipe de suporte está alegando que na Identificação do emitente DANFE deve sair a (Razão Social) em vez do (Nome Fantasia).
Ainda não encontrei nenhum embasamento técnico que justifique, mas em diversos outros sistemas é identificado por Razão Social, no DanfeSharp existe alguma configuração para essa alteração ?
ou caso necessário tenho que fazer a alteração direta no projeto e uma nova compilação ?

Obrigado.

Problema no Endereço do Destinatário, não imprime o Complemento do Endereço

Na impressão do Danfe não aparece o Complemento no Endereço do Destinário. Encontrei o problema e corrigi. Inclui uma linha no Metodo "private static EmpresaViewModel CreateEmpresaFrom(Empresa empresa)" do Metodo "DanfeViewModelCreator.cs".
Inclui a linha = model.EnderecoComplemento = end.xCpl;

Att,
Regis Ortiz Tams

Erro ao gerar NF-e

An unhandled exception of type 'System.NullReferenceException' occurred in PDFClown.dll

olá, estou com este preblema ao gerar nfe.

public void ShowText(String text, PointF point)
{
CheckPoint(point);
PrimitiveComposer.ShowText(text, point.ToPointMeasure());
}

GFX.cs

Obrigado

Dúvida Danfe tags <xProd> <infAdProd>

@SilverCard Existe algum tipo de modelo obrigatório para a Descrição dos produtos no DANFE ? ou isso fica a livre critério do usuário, penso em adicionar a informação da imagem abaixo porem tenho receio que fique fora de algum padrão pré estabelecido.

image

Multi XML

E possível criar um documento só multi xmls?

Dotnet Standard

Já existe ou esta nos planejamentos uma versão Dotnet Standard ou Dotnet Core?

Geração do Danfe - Orientação Paisagem

Olá, gostaria de saber se é possível gerar o Danfe de uma NFe modelo 55 com a orientação Paisagem. Vi na classe Danfe.cs que existe um tratamento para orientação Paisagem apenas no BlocoCalculoImposto. Fizemos alguns testes e realmente só esse bloco fica correto, o restante do DANFE não.

Nuget

Bom dia, brother quando baixei o projeto deu problema de referencia do PDFClown, então adicionei ele via nuget, https://www.nuget.org/packages/PDFClown.NET/, rodei os testes e passaram normalmente, acredito que agora seja possível vc adicionar o mesmo no nuget.

Nfe 4.00 com erro

Tentei utilizar o componente para a nfe 4.0 e apresentou o seguinte erro:
Erro
aqui esta o xml:

3500233425VENDA DE PRODUTOS5512334252018-12-22T16:37:05+03:00113513801110110901.0.0.061610515000106LIPSON COSMETICOS LTDALIPSON COSMETICOS LTDARUA INCO210JD. ALBA3513801DIADEMASP099613701058BRASIL1140616435286135277110307278350000163SS COM.DE COSM.E PRODUTOS DE HIG.PESSOAL LTDAAV.DAS COMUNICACOES927GALP.IND.PAV.B 4INDUSTRIAL ANHANGUERA3534401OSASCOSP062769061058BRASIL1136979267149251560011307278350000163VIA ANHANGUERAKM19 LADO ESQUERDO CAP/INT.PAVILVILA JARAGUA3534401OSASCOSP040408789960171388311203-COLONIA DESOD.SPLASH JEQUITI VIDA+RELAX LAVANDA 250ML - Lote-Validade-Qtd:(83551LP-2021/12/20-1105)3307201028016005101UN1105.00005.68000000006276.407899601713883UN1105.00005.680000000011120314989383551LP1105.0002018-12-202021-12-20020333.334184.4718.00753.20999506276.407.00439.34026276.402.20138.08026276.4010.30646.47;1498934184.47753.200.000.000.000.000.000.006276.400.000.000.000.00439.340.00138.08646.470.006715.74110730615000127FAMILY FIGUEIREDO E CUNHA LTDA -ME635594028112RUA: PEDRO DA CRUZ SALGADO,87SAO BERNARDO DO CAMPOSP66CAIXA(S)0.0000.0002334256715.740.006715.740012019-01-056715.741156715.74Pedido Cliente: 149893; Endereço de Entrega = VIA ANHANGUERA, KM 19 LADO ESQUERDO CAP/INT.PAVILHAO B(A) - OSASCO - SP; CONDI��O DE SUBSTITUTO TRIBUTARIO ATRIBUIDA AO DESTINATARIO POR REGIME ESPECIAL - PROCESSO ELETRONICO N. 009310/2016 - PIS TRIBUTADO EM 2,20% CONF.LEI FED.10833 DE 29/12/03; COFINS TRIBUTADO EM 10,30% CONF.LEI FED.10833 DE 29/12/03; ICMS:BASE DE CALCULO REDUZIDA CONFORME ANEXO II ARTIGO 34 DO RICMS/tOugovu32QnuY/sC7Vlor6XBGw=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_NFE_PL009_V4351812616105150001065500100023342510023342502018-12-22T16:55:27-02:00135180895960031/tOugovu32QnuY/sC7Vlor6XBGw=100Autorizado o uso da NF-e

Imprimir Carta de Correção

Sei que não existe obrigação fiscal para emitir uma impressão da carta de correção, porém seria algo interessante de ter implementado.

"Somente o tpEmiss == 1 está implementado."

Boa Tarde!
Srs(a), poderiam por gentileza me responder qual a necessidade do if que verifica o tipo de emissão da nota fiscal, qual o impacto deste campo, pois caso o tipo de emissão seja diferente de 1, a nota não é gerada.
Método : CriarDeArquivoXML()
Se puderem me responder, ficaria grato.
Atenciosamente,
image

Danfe NFCe 58mm

Olá, alguém implementou a DANFE NFCe para impressoras 58mm ?
Estou precisando deste modelo pode ser uma implementação paga sem problemas, favor entrar em contato comigo, Obrigado.

NotSupportedException no método Gerar

Olá, ao utilizar o seguinte código eu recebi a exceção:

var modelo = DanfeViewModelCreator.CriarDeArquivoXml("nfe.xml");
using(var danfe = new Danfe(modelo)) {
	danfe.Gerar();
	danfe.Salvar("danfe.pdf");
}

A exceção detalhada:

System.NotSupportedException ocorrido
HResult=0x80131515
Message=Não há suporte para o método especificado.
Source=DanfeSharp
StackTrace:
em DanfeSharp.Duplicata.set_Height(Single value)
em DanfeSharp.DrawableBase.SetSize(Single w, Single h)
em DanfeSharp.FlexibleLine.Posicionar()
em DanfeSharp.FlexibleLine.Draw(Gfx gfx)
em DanfeSharp.VerticalStack.Draw(Gfx gfx)
em DanfeSharp.Blocos.BlocoBase.Draw(Gfx gfx)
em DanfeSharp.DanfePagina.DesenharBlocos(Boolean isPrimeirapagina)
em DanfeSharp.Danfe.CriarPagina()
em DanfeSharp.Danfe.Gerar()

Quando criei um ConsoleApplication na solução do DanfeSharp para testes, consegui gerar sem problemas, mas quando compilo a DLL do DanfeSharp e do PDFClown e adiciono as referências em meu software, eu tenho esse problema.
Aguardo sua resposta, obrigado.

Fazendo mais alguns testes, percebi que isso ocorre no XML quando existe o seguinte trecho de código:

<cobr>
    <fat>
        <nFat>12345678910</nFat>
        <vLiq>100.00</vLiq>
    </fat>
    <dup>
        <nDup>123456789</nDup>
        <vDup>50.00</vDup>
    </dup>
    <dup>
        <nDup>987654321</nDup>
        <vDup>50.00</vDup>
    </dup>
</cobr>

Entretanto, o mesmo XML funciona dentro da solução do DanfeSharp...

Sugestão

Prezado, eu utilizo o danfe sharp há algum tempo, tem como ter uma opção para adicionar uma tarja na transversal do danfe escrito "CANCELADA", quando a mesma estiver cancelada?

NFe 4.00

Boa noite.

Vocês tem planejamento de liberar a dll para imprimir Danfe de NFe versão 4.00?

Nuget

Foi publicado a ultima versão no Nuget Package?
Estou com a versão 1.0.3 e não encontro a classe DanfeViewModelCreator

Implementar uso de marca d'água

Olá pessoal.
O projeto está rodando muito bem, consegui integrá-lo ao NopCommerce.
Um requisito é a empresa solicitou seria a implementação de uma marca d'agua no meio da nota.

Como são muitas demandas aqui, não iniciei a implantação mas se puderem sugerir um caminho mais fácil para não reinventar a roda. Fico agradecido. Esse fim de semana já posso ter algum resultado.
Saudações comunidade!

Novo Layout

Boa tarde, tem previsão do DanfeSharp para o Novo Layout da NF-e

System.NullReferenceException - Em um XML específico

Estou com esse erro em um XML de um fornecedor específico, no trecho de código abaixo:

    public void ShowText(String text, PointF point)
    {
            CheckPoint(point);
            **PrimitiveComposer.ShowText(text, point.ToPointMeasure());**
    }

text e point estão populados:

text: FONTE 12V 5A ESTABILIZADA
point: X=21.77 Y=154.266251

Alguma ideia de como solucionar esse problema?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.