Ir para conteúdo
  • Cadastre-se

dev botao

Rotina básica para gerar-enviar nfe em delphi 7


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

Recommended Posts

boa tarde amigos!

Sou novato em nota eletrônica, ainda no primeiro sistema.

tenho a seguinte rotina em teste, de pesquisas q juntei pela internet. um pouco num site, pouco no outro... acho q meus códigos ainda estam incompletos...

a rotina de verificar status do serviço está ok, em operação, ou seja, deve estar tudo certo no certificado, senha, dlls...

na rotina abaixo, a msg de erro é classe não registrada.

o erro ocorre em Nota1.NotasFiscais.Assinar;

se alguém puder ajudar, acredito ser fácil prá vcs! rsrs

desde já agradeço.

//nota1 é meu TACBrNFe

Nota1.NotasFiscais.Clear;

Nota1.NotasFiscais.Add.NFe.Ide.cNF := StrToInt('1500');

Nota1.NotasFiscais.Add.NFe.Ide.natOp := 'VENDA PRODUCAO DO ESTAB.';

Nota1.NotasFiscais.Add.NFe.Ide.indPag := ipVista;

Nota1.NotasFiscais.Add.NFe.Ide.modelo := 55;

Nota1.NotasFiscais.Add.NFe.Ide.serie := 1;

Nota1.NotasFiscais.Add.NFe.Ide.nNF := StrToInt('0001');

Nota1.NotasFiscais.Add.NFe.Ide.dEmi := Date;

Nota1.NotasFiscais.Add.NFe.Ide.dSaiEnt := Date;

Nota1.NotasFiscais.Add.NFe.Ide.hSaiEnt := Now;

Nota1.NotasFiscais.Add.NFe.Ide.tpNF := tnSaida;

Nota1.NotasFiscais.Add.NFe.Ide.tpEmis := teNormal;

Nota1.NotasFiscais.Add.NFe.Ide.tpAmb := taHomologacao;

Nota1.NotasFiscais.Add.NFe.Ide.verProc := '1.0.0.0';

// Nota1.NotasFiscais.Add.NFe.Ide.cUF := ;;;

Nota1.NotasFiscais.Add.NFe.Ide.cMunFG := 7777777;

Nota1.NotasFiscais.Add.NFe.Ide.finNFe := fnNormal;

//dados do emitente

Nota1.NotasFiscais.Add.NFe.Emit.CNPJCPF := '00000000000000';

Nota1.NotasFiscais.Add.NFe.Emit.xNome := 'Minha empresa Ltda';

Nota1.NotasFiscais.Add.NFe.Emit.xFant := 'Nome fantasia';

Nota1.NotasFiscais.Add.NFe.Emit.EnderEmit.xLgr := 'Meu endereço';

Nota1.NotasFiscais.Add.NFe.Emit.EnderEmit.nro := '0123';

Nota1.NotasFiscais.Add.NFe.Emit.EnderEmit.xBairro := 'Meu bairro';

Nota1.NotasFiscais.Add.NFe.Emit.EnderEmit.cMun := 7777777;

Nota1.NotasFiscais.Add.NFe.Emit.EnderEmit.xMun := 'Minha cidade';

Nota1.NotasFiscais.Add.NFe.Emit.EnderEmit.UF := 'UF';

Nota1.NotasFiscais.Add.NFe.Emit.EnderEmit.CEP := 88888888;

Nota1.NotasFiscais.Add.NFe.Emit.EnderEmit.cPais := 1058;

Nota1.NotasFiscais.Add.NFe.Emit.EnderEmit.xPais := 'Brasil';

Nota1.NotasFiscais.Add.NFe.Emit.EnderEmit.fone := '00000000000';

Nota1.NotasFiscais.Add.NFe.Emit.CRT := crtSimplesNacional;

//dados do destinatário

Nota1.NotasFiscais.Add.NFe.Dest.CNPJCPF := '00000000000';

Nota1.NotasFiscais.Add.NFe.Dest.xNome := 'Nome destinatário';

Nota1.NotasFiscais.Add.NFe.Dest.EnderDest.xLgr := 'Endereço destinatário';

Nota1.NotasFiscais.Add.NFe.Dest.EnderDest.nro := '0123';

Nota1.NotasFiscais.Add.NFe.Dest.EnderDest.xBairro := 'Bairro destinatário';

Nota1.NotasFiscais.Add.NFe.Dest.EnderDest.cMun := 7777777;

Nota1.NotasFiscais.Add.NFe.Dest.EnderDest.xMun := 'Cidade destinatário';

Nota1.NotasFiscais.Add.NFe.Dest.EnderDest.UF := 'UF';

Nota1.NotasFiscais.Add.NFe.Dest.EnderDest.CEP := 88888888;

Nota1.NotasFiscais.Add.NFe.Dest.EnderDest.cPais := 1111;

Nota1.NotasFiscais.Add.NFe.Dest.EnderDest.xPais := 'Brasil';

Nota1.NotasFiscais.Add.NFe.Dest.EnderDest.fone := '07000000000';

//produtos

with Nota1.NotasFiscais.Add.Nfe.Det.Add do begin

Prod.nItem := 1; //nº item

Prod.cProd := '123456';

Prod.cEAN := '1234567890123';

Prod.xProd := 'Nome do produto vendido';

Prod.NCM := '94051010';

Prod.EXTIPI := '';

Prod.CFOP := '5101';

Prod.uCom := 'UN';

Prod.qCom := 1 ;

Prod.vUnCom := 100;

Prod.vProd := 100 ;

Prod.cEANTrib := '';

Prod.uTrib := 'UN';

Prod.qTrib := 1;

Prod.vUnTrib := 100;

Prod.vFrete := 0;

Prod.vSeg := 0;

Prod.vDesc := 0;

infAdProd := 'Informação adicional do produto';

with Imposto.ICMS do begin

CST := cst00;

orig := oeNacional;

modBC := dbiValorOperacao;

vBC := 100;

pICMS := 18;

vICMS := 18;

modBCST := dbisMargemValorAgregado;

pMVAST := 0;

pRedBCST:= 0;

vBCST := 0;

pICMSST := 0;

vICMSST := 0;

pRedBC := 0;

end;

with Imposto.IPI do begin

CST := ipi99;

clEnq := '999';

CNPJProd := '';

cSelo := '';

qSelo := 0;

cEnq := '';

vBC := 100;

qUnid := 0;

vUnid := 0;

pIPI := 5;

vIPI := 5;

end;

end;

//totais da nota

with Nota1.NotasFiscais.Add.NFe do begin

Total.ICMSTot.vBC := 100;

Total.ICMSTot.vICMS := 18;

Total.ICMSTot.vBCST := 0;

Total.ICMSTot.vST := 0;

Total.ICMSTot.vProd := 100;

Total.ICMSTot.vFrete := 0;

Total.ICMSTot.vSeg := 0;

Total.ICMSTot.vDesc := 0;

Total.ICMSTot.vII := 0;

Total.ICMSTot.vIPI := 0;

Total.ICMSTot.vPIS := 0;

Total.ICMSTot.vCOFINS := 0;

Total.ICMSTot.vOutro := 0;

Total.ICMSTot.vNF := 100;

end;

//transportadora

with Nota1.NotasFiscais.Add.NFe do begin

Transp.modFrete := mfContaEmitente;

Transp.Transporta.CNPJCPF := '';

Transp.Transporta.xNome := '';

Transp.Transporta.IE := '';

Transp.Transporta.xEnder := '';

Transp.Transporta.xMun := '';

Transp.Transporta.UF := '';

Transp.veicTransp.placa := '';

Transp.veicTransp.UF := '';

Transp.veicTransp.RNTC := '';

end;

//envia NFe

Nota1.NotasFiscais.GerarNFe;

Nota1.NotasFiscais.Assinar;

Nota1.Enviar(0, False);

Abraço!

Link para o comentário
Compartilhar em outros sites

Ola outros detalhes,

AMB. DE HOMOLOGAÇÃO

DESTINATARIO

cliente='NFE - EMITIDA EM AMBIENTE DE HOMOLOGACAO - SEM VALOR FISCAL'

CNPJ = 99999999000191

INSCRICAO = EM BRANCO

SE CRT=1 SIMPLES NACIONAL VOCE nao deve informar CST e sim CSOSN

leia manual de integração.

mesmo em ambiente de homologação, aconselho voce a informar os dados verdadeiros nas tags,

bem como codigo do municipio,cidade,estado,cep,endereço, tanto do emitente como do destinatario,

claro levando em conta as alteraçoes que coloquei acima, mesmo porque se tentar enviar para a sefaz

o xml podera causar erros e ficara bem mais dificil de identificar onde vc esta errando

Até

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 4601 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.