Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

Postado

Basicamente, explicando melhor, eu preciso que em apenas um botao se crie o xml da nota e transmita para os servidores.
Estou tentando assim:


procedure TForm1.Button2Click(Sender: TObject);
begin
  If  MessageDlg('Tem certeza que quer enviar esta NFe?',mtConfirmation,[mbyes,mbno],0)=mryes then
   begin
    GerarNFe(cds.Fields[0].AsString+'001');
   end;
end;

daí conforme o exemplo do ACBrNFE2 segue:

  ACBrNFe1.NotasFiscais.Clear;
  with ACBrNFe1.NotasFiscais.Add.NFe do
   begin
     Ide.cNF       := StrToInt(NumNFe); //Caso não seja preenchido será gerado um número aleatório pelo componente
     Ide.natOp     := 'VENDA PRODUCAO DO ESTAB.';
     Ide.indPag    := ipVista;
     Ide.modelo    := 55;
     Ide.serie     := 1;
     Ide.nNF       := StrToInt(NumNFe);
     Ide.dEmi      := Date;
     Ide.dSaiEnt   := Date;
     Ide.hSaiEnt   := Now;
     Ide.tpNF      := tnSaida;
     Ide.tpEmis    := TpcnTipoEmissao(cbFormaEmissao.ItemIndex);
     Ide.tpAmb     := taHomologacao;  //Lembre-se de trocar esta variável quando for para ambiente de produção
     Ide.verProc   := '1.0.0.0'; //Versão do seu sistema
     Ide.cUF       := NotaUtil.UFtoCUF(edtEmitUF.Text);
     Ide.cMunFG    := strtoint(trim(edtEmitCodCidade.Text));
     Ide.finNFe    := fnNormal;
.
      Form1.SQLAUX.Close; //minha query buscando os dados do cliente
      Form1.SQLAUX.SQL.Text := 'select * from cliente where ...'
      Form1.SQLAUX.Open;

      Dest.CNPJCPF           := Form1.SQLAUX.FieldByName('CGC').AsString;
      Dest.IE                := Form1.SQLAUX.FieldByName('IE').AsString;
      Dest.ISUF              := '';
      Dest.xNome             := Form1.SQLAUX.FieldByName('NOME').AsString;

      Dest.EnderDest.Fone    := Form1.SQLAUX.FieldByName('FONE').AsString; //'1532599600';   azmask

      if Form1.SQLAUX.FieldByName('CEP').asstring  <> '' then

      Dest.EnderDest.CEP     := Form1.SQLAUX.FieldByName('CEP').AsInteger
      else
      Dest.EnderDest.CEP     := 0;

      Dest.EnderDest.xLgr    := Form1.SQLAUX.FieldByName('ENDERE').AsString;
      Dest.EnderDest.nro     := Form1.SQLAUX.FieldByName('COMPLE').AsString;
      Dest.EnderDest.xCpl    := '';
.
      i := 0;
      Form1.cds2.First;
      while not cds2.Eof do
       begin
        inc(i);
        with Det.Add do
         begin
           Prod.nItem    := i; // Número sequencial, para cada item deve ser incrementado
           Prod.cProd    := cds2.FieldByName('CODIGO').AsString;
           Prod.cEAN     := cds2.FieldByName('REFERENCIA').AsString;
           Prod.xProd    := cds2.FieldByName('DESCRICAO').AsString;

           Form1.SQLAUX.Close;
           Form1.SQLAUX.SQL.Text := 'select * from estoque where CODIGO = ' + QuotedStr(Prod.cProd);
           Form1.SQLAUX.Open;

           Prod.NCM      := Form1.SQLAUX.FieldByName('CF').AsString; // Tabela NCM disponível em http://www.receita.fazenda.gov.br/Aliquotas/DownloadArqTIPI.htm
           Prod.EXTIPI   := '';
           Prod.CFOP     := Form1.SQLAUX.FieldByName('CFOP').AsString;
           Prod.uCom     := Form1.SQLAUX.FieldByName('MEDIDA').AsString;
           Prod.qCom     := Form1.SQLQuery2.FieldByName('QUANTIDADE').AsFloat;
           Prod.vUnCom   := Form1.SQLQuery2.FieldByName('UNITARIO').AsFloat;
.
      Transp.veicTransp.placa := '';
      Transp.veicTransp.UF    := '';
      Transp.veicTransp.RNTC  := '';

   end;


   //fim tenta enviar
.
   ACBrNFe1.Configuracoes.Geral.ModeloDF := moNFe;
   ACBrNFe1.Configuracoes.Geral.VersaoDF :=  TpcnVersaoDF(ve310);

   ACBrNFe1.NotasFiscais.Valida;

  ACBrNFe1.Enviar(NumNFe,True);

  MemoResp.Lines.Text := UTF8Encode(ACBrNFe1.WebServices.Retorno.RetWS);
  memoRespWS.Lines.Text := UTF8Encode(ACBrNFe1.WebServices.Retorno.RetornoWS);
  LoadXML(MemoResp, WBResposta);
  

 ---------------------------
Project
---------------------------
nfe_v3.10.xsd#/schema/element[1][@name = 'NFe']
Tipo XSD não declarado: '{http://www.portalfiscal.inf.br/nfe}TNFe'
---------------------------
OK   
---------------------------
  o erro acontece quando o ponteiro está no Valida...
  existe o arquivo nfe_v3.10.xsd na pasta corretamente copiada...
  Alguém já passou por isso?
  

pasta.jpg

schema.jpg

Postado

O componente esta mesmo vendo a pasta dos schemas ?

Pq separou uma pasta pra cada versao?

Verifique dentro da propriedade Configuracoes, (ou Arquivos) tem uma propriedade que devera apontar para a sua pasta ve310...

Atf

Ricardo

Postado

No meu aplicativo a pasta Schemas fica dentro da pasta junto do .exe, acho que assim ele encontra automaticamente, mas lembro que tem uma propriedade chamada PastaSchemas no componente ACBrNFe que permite apontar um path diferente, se quiser...

Att

Ricardo

Postado (editado)

Boa tarde,

vc está com seus componentes desatualizados. Desinstale tudo, faça update da pasta do ACBr e instale usando o instalador.

Abaixo da propriedade PathNFe deveria ter a propriedade PathSchemas, e notei na primeira propriedade AboutACBrNFe, onde aparece o número da versão deveria aparecer "2.0.0a", e não "0.5.0a".

OBS: Acho que vc ainda está usando o trunk1, notei na chamada do método "NotasFiscais.Valida;".

Att

Ricardo

Editado por RicardoVoigt
obs
Postado
14 horas atrás, FABRICIO CERAVOLO PENA disse:

Poderia por favor dizer como faço a desinstalação corretamente do componente Ricardo? Temo não fazer direito e atrapalhar futuras re-instalações.

Pergunta:  é necessário ter instalado o componente Fortesreport para ficar correta a instalação?

Na pasta raiz onde tem o instalador, também tem um arquivo BAT que apaga os arquivos DCU (compilados) do computador.

Você só vai precisar instalar o Fortes se quiser instalar também os componentes ACBr de impressão do DANFe (feitos com o Fortes).

Att

Ricardo

Postado (editado)

Embarcadero Delphi for Win32 compiler version 23.0
Copyright (c) 1983,2011 Embarcadero Technologies, Inc.
C:\ACBr\Fontes\ACBrDFe\ACBrMDFe\DAMDFE\Fast\ACBrMDFeDAMDFEFRDM.pas(549) Error: E2003 Undeclared identifier: 'Quality'
ACBr_MDFeDamdfeFR.dpk(54) Fatal: F2063 Could not compile used unit 'ACBrMDFeDAMDFEFRDM.pas'
Compilation failure

SOMENTE ESSE ERRO OCORREU

log_Delphi_XE2.txt

Editado por FABRICIO CERAVOLO PENA
LOG
Postado (editado)

Muito obrigado pela ajuda.

[DCC Error] Unit1.pas(424): E2003 Undeclared identifier: 'TpcnTipoEmissao'

      edtPathLogs.Text     := Ini.ReadString( 'Geral','PathSalvar'  ,PathWithDelim(ExtractFilePath(Application.ExeName))+'Logs') ;
      edtPathSchemas.Text  := Ini.ReadString( 'Geral','PathSchemas'  ,PathWithDelim(ExtractFilePath(Application.ExeName))+'Schemas\'+GetEnumName(TypeInfo(TpcnVersaoDF), integer(cbVersaoDF.ItemIndex) )) ;
PathWithDelim aparece sublinhado no Delphi não identificado logo após a instalação.

Alguem já passou por este problema que impede compilar o projeto NFe?Untitled-2.thumb.jpg.8f575d1698e75a0c9b13866225595db2.jpg

Editado por FABRICIO CERAVOLO PENA
  • Este tópico foi criado há 2814 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.