Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 4836 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Prezados Parceiros,

Estou começando a desenvolver minha aplicação para emissão de NF-e, e optei, a princípio, por utilizar o ACBrNFeMonitor2 versão CAPICOM.

1 - Senhas: estou configurando o Monitor pela minha aplicação, mas estou com problemas em 3 campos: senha do certificado, senha do servidor SMTP, e Mensagem do E-mail. Os campos de senha são gravados criptografados no ACBRNFeMonitor.ini. E o texto da Mensagem do E-mail é gravado também em formato diferente. Alguém poderia me dizer como ler e gravar corretamente essas chaves no .ini?

2 - Certificado: sou novo no assunto NF-e e já vi que vou enfrentar muitos problemas pela frente. Um deles é o certificado. Estou tentando usar o ambiente de homologação (testes), mas parece que até neste ambiente é necessário ter um certificado do tipo A1 ou A3. Tem algum certificado específico para desenvolvedor, que não tem validade (apenas para testes)? Ou tem uma forma da gente desenvolver e enviar as NF-e sem um certificado real?

Agradeço as ajudas.

Alessandro Cardoso.

  • Moderadores
Postado

Para ver como as senhas são gravadas, estude os fontes do ACBrNFeMonitor disponíveis no SVN.

Não existe certificado digital gratuíto.

Veja este link, pode ajudar vc q está começando - http://anfm.blogspot.com/2009/08/quanto ... antar.html

djsystem-logo.png
 youtube.png facebook.png instagram.png linkedin.png
André Ferreira de Moraes | Analista de Sistemas
www.djsystem.com.br | www.djpdv.com.br
www.tefhouse.com.br | www.xpos.com.br
Postado

Olá, André... E obrigado pela resposta.

Bom, se não existe certificado para testes, para que serve essa tal de Cadeia de Certificados do ambiente de homologação? Eu inocentemente estou imaginando que seriam os certificados que todos poderiam usar para emitir NFe nos ambientes de homologação...

A cadeia de certificados a que me refiro está em http://hom.nfe.fazenda.gov.br/portal/ ...

Postado

Boa tarde, e obrigado pelas respostas anteriores.

Já fiz praticamente todos os ajustes necessários na minha aplicação (já tenho uma aplicação que roda há tempos em vários clientes aqui na região de minha cidade). Ajustei meu programa em todos os sentidos (na verdade eu criei um módulo a parte para NFe, mas totalmente integrado ao meu módulo gerente).

Estou usando o ACBrNFeMonitor, e estou gostando, parece-me bem confiável (com certeza quando meu sistema estiver rodando, irei fazer uma doação ao Projeto, é o mínimo que poderei fazer por uma ferramenta que me será tão útil).

Como percebi no começo que vou ter problemas com o tal de certificado digital, resolvi estudar o manual de integração e o ACBrNFeMonitor (todos os seus comandos e a forma de gerar o XML pelo INI), optei por dar andamento na aplicação e deixar para fazer os testes usando o certificado apenas no final, sendo então meu último passo. Será que fiz uma boa escolha de estratégia de desenvolvimento? E os outros programadores que estão na mesma situação (sem certificado digital)? Como vocês resolveram esta questão? Compraram mesmo o "danado"? Pegarem emprestado de algum cliente? Como funciona isso? A gente simplesmente leva o arquivo que contém o certificado e simplesmente começa a usar?

Abraços a todos. Boa sorte a quem está começando. Até breve.

Alessandro Cardoso

  • 6 meses depois ...
Postado

Para quem tiver com este mesmo problema, consegui desenvolver uma solução em clipper, que disponibilizo o código abaixo.

function HASH(var2Hash)

varHASHed=''

for C_HASH=1 to len(var2Hash)

varHASHed=varHASHed+Dec2Hex(asc(substr(var2Hash,C_HASH,1)))

next

return(varHASHed)

function Dec2Hex(nDEC)

cHEX :=''

if valtype(nDEC)='N'

aBASE16 := {'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'}

aHEX := {}

nDIVIDENDO := nDEC

nQUOCIENTE := 1

while nQUOCIENTE<>0

nQUOCIENTE:=int(nDIVIDENDO/16)

nRESTO :=nDIVIDENDO-(nQUOCIENTE*16)

nRESTO++

cHEX :=aBASE16[nRESTO]

aADD(aHEX,cHEX)

nDIVIDENDO := nQUOCIENTE

enddo

endif

cHEX := ''

for X=len(aHEX) to 1 step -1

cHEX += aHEX[X]

next

return(cHEX)

Exemplo de chamada:

procedure TestHASH

? 'TESTE = '

?? HASH('TESTE')

return

Postado

Para quem tiver com este mesmo problema, consegui desenvolver uma solução em clipper, que disponibilizo o código abaixo.

Regi, me desculpa, mas para que serve esse código?

"Muitos são os planos no coração do homem, mas o que prevalece é o propósito do SENHOR." Pv 19.21

  • Membros Pro
Postado

Alessandro, caso interesse, tenho um certificado somente para gerar o XML e outras funçoes do acbr, ja é meio caminho andando. se precisar, disponibilizo pra vc.

Postado

Como diz a primeira mensagem do tópico, para gravar as senhas no formato 'encriptado' do ACBrNFeMonitor. Para gravar o arquivo ACBrNFeMonitor.ini, os programadores em modo terminal, especialmente, em CLIPPER ou COBOL, podem encontrar alguma dificuldade para gravar estes campos no formato que o .ini passa ao ACBrNFeMonitor, principalmente, se como eu, quiser que o usuário do sistema interfira o menos possível no ACBrNFeMonitor, passando os parametros através de nosso sistema.

No meu caso, em alguns locais, meus clientes trabalham com multiplas empresas, o que incorre em multiplos CNPJs, multiplos CERTIFICADOS, multiplos Usuários e Senhas de E-mail, etc. E a cada troca de CNPJ que o sistema faz, é necessário repassar tudo isso ao .INI. Até o momento, eu atuava configurando o ACBrNFeMonitor para cada um dos CNPJs, gravando o .INI e mudando de nome para EMPRESA??.INI. De dentro do sistema, mandava copiar o arquivo EMPRESA??.INI para ACBrNFeMonitor.INI e enviava o comando NFE.LerIni ao ACBrNFeMonitor. Mas, quero poder gravar todo o Arquivo INI de dentro de meu sistema, para ter um controle maior, além de uma flexibilidade maior quanto à mudança de dados.

Esta rotina pega o codigo ASC (decimal) de cada caractere e grava este código no formato HEXADECIMAL, então

HASH('TESTE')

deve retornar 5445535445, ou seja

T = 54

E = 45

S = 53

T = 54

E = 45

Este é o método para gravação da mensagem de e-mail; o método de gravação de senhas, ainda estou analisando os fontes em DELPHI do ACBrNFeMonitor para interpretar como as mesmas são gravadas; assim que tiver solucionado, eu posto aqui.

Não me aprofundei muito em outros linguagens, como DELPHI, que devem ter funções PRONTAS para isso.

Reginaldo Lima

  • Este tópico foi criado há 4836 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.