danfe_codbarras

Embed Size (px)

Citation preview

DANFE e o Cdigo de Barras

Escrito por: Eng. Luciano T.Junior

Danfe e o Cdigo de Barras.......................................................................... 3 A Chave de Acesso....................................................................................... 4 Clculo do Dgito Verificador da Chave de Acesso da NF-e........................... 5 Transformando a Chave de Acesso em Cdigo de Barras ............................. 6 O que uma Fonte de Cdigo de Barras ...................................................... 7 Calculando o Dgito Verificador da Simbologia 128 C................................... 8 Mapeando a Fonte de Cdigo de Barras ..................................................... 10 LinhaBase Developing Tools ...................................................................... 11 O Pacote de Fontes LinhaBase ................................................................... 12 Concluses ................................................................................................ 13

2

Danfe e o Cdigo de BarrasO Danfe e sua representao em cdigo de barras ainda geram muita confuso at mesmo aos profissionais de TI. Este problema est relacionado muitas vezes a dificuldade de leitura dos Manuais cedidos pelas diversas Secretarias Fazendrias e at mesmo pela falta de ateno e vontade de leitura de alguns. Bom, para comear o que o DANFE? DANFE significa Documento Auxiliar para Nota Fiscal Eletrnica que um documento impresso em papel onde nele esto contidos dados sobre os produtos fornecidos e em trnsito do fornecedor at um determinado destino e que representa a Nota Fiscal Eletrnica, e que deve acompanhar todas as remessas de mercadoria. No DANFE se encontra a Chave de Acesso que um conjunto de 44 dgitos que so convertidos em cdigo de barras para facilitao da leitura da Chave de Acesso junto aos sistemas relacionados. Muitos que procuram a LinhaBase querem transformar o DANFE em um documento eletrnico em formato PDF para serem encaminhados a seus clientes via e-mail. Porm a regra para o DANFE clara e simples. O DANFE um documento auxiliar a Nota Fiscal Eletrnica e impresso em papel.

3

A Chave de AcessoA Chave de Acesso da Nota Fiscal Eletrnica representada por uma sequncia de 44 caracteres numricos, representados da seguinte forma: Cdigo da UF Quantidade de caracteres Onde temos: - Cdigo da UF: Cdigo da UF do emitente do Documento Fiscal. - AAMM da Emisso: Ano e Ms de emisso da NF-e. - CNPJ do Emitente: CNPJ do Emitente. - Modelo: Modelo do Documento Fiscal. - Srie: Srie do Documento Fiscal. - Nmero da NF-e: Nmero do Documento Fiscal. - Cdigo Numrico: Cdigo numrico que compe a Chave de Acesso. - DV: Dgito Verificador da Chave de Acesso. O Dgito Verificador (DV) ir garantir a integridade da chave de acesso, protegendo-a principalmente contra digitaes erradas. No se deve confundir o dgito verificador da Chave de Acesso do DANFE com o dgito verificador do Cdigo de Barras que so dois elementos diferentes. 02 AAMM da emisso 04 CNPJ do Emitente 14 Nmero da NF-e 09 Cdigo Numrico 09

Modelo 02

Srie 03

DV 01

4

Clculo do Dgito Verificador da Chave de Acesso da NF-eO dgito verificador da chave de acesso da NF-e baseado em um clculo do mdulo 11 Base 9. O mdulo 11 com Base 9 de um nmero calculado multiplicando-se cada algarismo pela sequncia de multiplicadores 2,3,4,5,6,7,8,9,2,3, ... posicionados da direita para a esquerda. A somatria dos resultados das ponderaes dos algarismos dividida por 11 e o DV (dgito verificador) ser a diferena entre o divisor (11) e o resto da diviso: DV = 11 - (resto da diviso) Quando o resto da diviso for 0 (zero) ou 1 (um), o DV dever ser igual a 0 (zero). Exemplo: consideremos que a chave de acesso tem a seguinte sequncia de caracteres: A 5 2 0 6 0 4 3 3 0 0 9 9 1 1 0 0 2 5 0 6 5 5 0 1 2 0 0 0 0 0 0 7 8 0 0 2 6 7 3 0 1 6 1 B 4 3 2 9 8 7 6 5 4 3 2 9 8 7 6 5 4 3 2 9 8 7 6 5 4 3 2 9 8 7 6 5 4 3 2 9 8 7 6 5 4 3 2 Onde A a Chave de Acesso e B so os pesos da multiplicao ou Ponderao em Base 9. Multiplicando cada valor de A x B e somando seu resultado temos como resposta: 644 Dividindo a somatria das ponderaes por 11 teremos, 644 /11 = 58 restando 6. Como o dgito verificador DV = 11 - (resto da diviso), portando 11 - 6 = 5 Neste caso o DV da Chave de Acesso da NF-e igual a "5", valor este que dever compor a chave de acesso totalizando a uma seqncia de 44 caracteres, ficando a chave de acesso com a seguinte numerao: 52060433009911002506550120000007800267301615 Onde cada valor da Chave de Acesso representa: - Cdigo da UF: 52. - AAMM da Emisso: 0604. - CNPJ do Emitente: 33009911002506. - Modelo: 55. - Srie: 012. - Nmero da NF-e: 000000780. - Cdigo Numrico: 026730161. - DV: 5.

5

Transformando a Chave de Acesso em Cdigo de BarrasO principal mtodo de criar cdigo de barras em sistemas para emisso de NF-e e DANFE a utilizao de fontes de Cdigo de Barras. A LinhaBase para este tipo de atendimento fornece o Pacote de Fontes de Cdigo de Barras 128 (A, B e C), EAN 128 e para Nota Fiscal Eletrnica. Para Conhecer mais sobre este produto acesse:

http://fontecodigodebarras.linhabase.comNeste momento esquea completamente o que os Manuais fornecidos pelas Secretarias Fazendrias informam sobre a composio do cdigo de barras e se baseie somente no que a LinhaBase informa. Pois as Secretarias Fazendrias so rgos responsveis pela Gesto da Nota Fiscal Eletrnica e pelo DANFE e a LinhaBase a empresa especializada na produo de Cdigo de Barras, logo ao utilizar o Pacote de Fontes de Cdigo de Barras 128 da LinhaBase todas as regras estipuladas para a criao do Cdigo de Barras esto sendo atendidas de forma natural e automtica. Foi escolhido como simbologia do Cdigo de Barras para a representao da Chave de Acesso a simbologia 128 C. A simbologia 128 C uma simbologia de Cdigo de Barras numrica, onde os dados a serem codificados devem ter uma quantidade par de dgitos e so acrescentados os Cdigos de Start C, o Dgito Verificador da Simbologia de Cdigo de Barras e o Cdigo de Stop. Ficando a composio do Cdigo de Barras com o seguinte layout: Start C + Chave de Acesse com 44 dgitos + Dgito Verificador do Cdigo de Barras + Stop.

6

O que uma Fonte de Cdigo de BarrasUma fonte de cdigo de barras um repositrio de smbolos grficos alocados em determinadas posies geridas pela tabela ASCII. Com isso uma fonte somente apresenta o smbolo grfico correspondente ao caractere chamado, ou seja, em uma fonte do tipo Arial quando se pressiona no teclado a letra A, isto traduzido pelo sistema que pede a fonte para retornar o smbolo grfico, correspondente ao valor ASCII 65, que neste caso a prpria letra A. Com Cdigo de Barras isto tambm feito pela fonte, contudo em cada posio contido um conjunto de barras que representa um determinado valor, que vai variar conforme a regra de cada simbologia de cdigo de barras. Porm cabe ao sistema desenvolvido pelo usurio em sua linguagem de programao preferida indicar a fonte de cdigo de barras que caracteres devem ser pegos cada smbolo grfico. Por exemplo, para a Chave de Acesso: 52060433009911002506550120000007800267301615 Temos a seguinte sequncia de caracteres que deve ser encaminhada a fonte de cdigo de barras:

T&$A+9&W!4'p"c>0/-Esta sequncia de caracteres chamada de Mapeamento da Fonte de Cdigo de Barras e que ir criar um cdigo de barras vlido para leitura. Onde nesta sequncia de Mapeamento j esto includos o layout da simbologia 128 C (Start C + Chave de Acesso com 44 dgitos + Dgito Verificador do Cdigo de Barras + Stop). Isto far a fonte de Cdigo de Barras apresentar o seguinte cdigo de barras:

7

Calculando o Dgito Verificador da Simbologia 128 CCada simbologia de Cdigo de Barras tem suas regras prprias de criao, e para a simbologia 128 existe a insero do dgito verificador da simbologia, alm dos caracteres de Start e Stop. Para se calcular o dgito verificador da simbologia 128 C e levando-se em conta que est sendo utilizado o Pacote de Fontes de Cdigo de Barras 128 da LinhaBase faa o que se segue. A simbologia 128 C tambm apresenta um dgito verificador diferente do dgito verificador da Chave de Validao do DANFE. O dgito da simbologia valida a leitura do cdigo de barras juntos aos leitores compatveis com a simbologia 128 e apresentado no Manual do Usurio que acompanha o produto da LinhaBase. - Passo 1 (tabela pgina 9 do Manual do Usurio do Pacote de Fontes de Cdigo de Barras 128 / coluna Code C) Analisando a numerao acima de 2 em 2 e acrescentando a posio de Start C. Observando a coluna Code C temos: Start C 52 06 04 33 00 99 11 00 25 06 55 01 20 00 00 07 80 02 67 30 16 15 - Passo 2 (somatrio) Somar os resultados das multiplicaes do Passo 1. 105 + 52 + 12 + 12 + 132 + 0 + 594 + 77 + 0 + 225 + 60 + 605 + 12 + 260 + 0 + 0 + 112 + 1360 + 36 + 1273 + 600 + 336 + 330 = 6193 105 x 1 = 105 52 x 1 = 52 6 x 2 = 12 4 x 3 = 12 33 x 4 = 132 0x5=0 99 x 6 = 594 11 x 7 = 77 0x8=0 25 x 9 = 225 6 x 10 = 60 55 x 11 = 605 1 x 12 = 12 20 x 13 = 260 0 x 14 = 0 0 x 15 = 0 7 x 16 = 112 80 x 17= 1360 2 x 18 = 36 67 x 19 = 1273 30 x 20 = 600 16 x 21 = 336 15 x 22 = 330

8

- Passo 3 (calculo do mdulo) Realizar o clculo em mdulo 103 do Passo 2. 6193 MOD 103 = 13 - Passo 4 (Dgito verificador) Na coluna valor da Tabela de Dgito Verificador procuramos pelo valor que na coluna Code C representa o valor 13. 13 -> Valor na coluna Code C: 13 Adiantando, o caractere de mapeamento do dgito verificador dever representar o valor -.

9

Mapeando a Fonte de Cdigo de BarrasVerificar na tabela da pgina 11 do Manual do Usurio do Pacote de Fontes de Cdigo de Barras 128 e analisando a coluna Cdigo C, buscar o valor do caractere na coluna Caractere. Valor Start C 52 06 04 33 00 99 11 00 25 06 55 01 20 00 00 07 80 02 67 30 16 15 Dgito verificador, valor 13 Stop Sequncia de caracteres completa: Caractere T & $ A + 9 & W ! 4 p c > 0 / Valor ASCII 205 84 38 36 65 194 199 43 194 57 38 87 33 52 194 194 39 112 34 99 62 48 47 45 211

T&$A+9&W!4'p"c>0/-Esta sequncia de caracteres encaminhada a fonte de cdigo de barras e gerado um cdigo de barras 128 C correto. Sendo este processo compatvel com as principais linguagens de programao e permitindo ao usurio desenvolver suas prprias rotinas de desenvolvimento.

10

LinhaBase Developing ToolsO LinhaBase Developing Tools um conjunto de ferramentas compostas por arquivos DLLs que realizam para o programador toda a anlise da Chave de Acesso, e como resposta retorna a sequncia de Mapeamento completa. Ou seja o programador no ato do desenvolvimento de sua aplicao encaminha a numerao 52060433009911002506550120000007800267301615 e como resposta obtm o Mapeamento da Fonte de Cdigo de Barras T&$A+9&W!4'p"c>0/- de forma totalmente automtica, sem necessidade de verificao de tabelas de Mapeamento, clculos e outros passos necessrios como mostrado anteriormente. O LinhaBase Developing Tools fornecido no Pacote de Fontes de Cdigo de Barras 128 e compatvel com: - Visual Basic 6.0. - .Net (Windows Application). - Crystal Reports 10 ou superior. O LinhaBase Developing Tools uma exclusividade LinhaBase.

11

O Pacote de Fontes LinhaBaseO Pacote de Fontes de Cdigo de Barras 128 da LinhaBase composto por: - Fontes de Cdigo de Barras: 5 arquivos da fonte de cdigo de barras no padro TTF (True Type). Inclu tambm fontes de cdigo de barras otimizadas para uso em DANFE (exclusividade LinhaBase). - LinhaBase Developing Tools: Facilita a criao da formatao do dado a ser codificado de forma automtica no Visual Basic 6.0, .Net (Windows Application) e Crystal Reports 10 ou superior. Sem que o usurio se preocupe com criao de rotinas complexas de clculo de dgito verificador, verificao de paridades, regras da simbologia e mapeamento da fonte de cdigo de barras. E formado por: 1 arquivo DLL para Visual Basic 6.0, 1 arquivo DLL para Crystal Reports 10 ou superior, 1 arquivo DLL para .Net (Framework 1.1 ou superior, Windows Application) (exclusividade LinhaBase). - LinhaBase MSI: Auxilia a instalao das fontes de cdigo de barras e DLL para Visual Basic e DLL para Crystal Reports em computadores clientes por meio do Windows Installer ou aplicativos de instalao (Setup) (exclusividade LinhaBase). Manual do Usurio: Apresenta informaes sobre a simbologia, mapeamento da fonte de cdigo de barras e exemplos de integrao com o LinhaBase Developing Tools. * Para usurios de outras plataformas (ou para aqueles que optarem no usar o LinhaBase Developing Tools e MSI), estes devem trabalhar com as instrues da simbologia e mapeamento da fonte TTF como indicado no Manual do Usurio de modo a produzir suas rotinas de construo do cdigo de barras. Para conhecer melhor os Pacotes de Fontes de Cdigo de Barras LinhaBase acesse:

http://fontecodigodebarras.linhabase.com

12

ConclusesCriar um DANFE fcil quando se realmente sabe o que significa cada elemento que o compe. E deve-se verificar principalmente os seguintes pontos: 1 O DANFE um documento impresso. 2 O DANFE formado pela Chave de Acesso que composta por 43 dgitos + 1. Sendo o ltimo dgito o Dgito Verificador. 3 A simbologia de Cdigo de Barras adotada a 128 C, e para se criar um aplicativo para criao de DANFE o melhor empregar fontes de Cdigo de Barras e utilize exclusivamente as informaes dadas pela LinhaBase para este propsito. 4 O tamanho do Cdigo de Barras 128 C para a impresso de um DANFE de aproximadamente 1,7 x 6,0 cm (A x L) podendo em alguns casos ter 8,6 cm de largura (as fontes de Cdigo de Barras LinhaBase esto totalmente compatveis com esta determinao). 5 O Pacote de Fontes de Cdigo de Barras 128 LinhaBase o nico fornecido com fontes otimizadas para uso em DANFE e acompanhadas de Manual com Mapeamento Completo, e LinhaBase Developing Tools e LinhaBase MSI. 6 Fontes so consideradas recursos de mquina, por isso devem ser instaladas nos computadores que iro realizar o processo de impresso. Sendo assim, no so indicadas para uso Web ou similares. 7 Fontes de Cdigo de Barras tendem a ter seu tamanho reduzido quando so interpoladas para uso em padro PDF. 8 A impresso de um DANFE deve ser realizado em impressoras laser de boa qualidade para se garantir uma impresso do cdigo de barras em total acordo com as normas ISO/IEC. 9 O leitor de cdigo de barras deve ser compatvel com a simbologia 128 C, e cada leitor tm sua sensibilidade. Com isso, um leitor pode ler perfeitamente um determinado cdigo de barras e rejeitar outros, mesmo este estando devidamente criado.

13

Dande e o Cdigo de Barras Escrito por: Eng. Luciano T.Junior Nov/09 Verso: 1 LinhaBase Softwares Ltda A Primeira em Cdigo de Barras. www.linhabase.com.br