Ir para conteúdo
  • Cadastre-se
  • Total de ítens

    6
  • Registro em

  • Última visita

Posts postados por [email protected]

  1. Pessoal, já pesquisei bastante e não consegui resolver essa rejeição. Segue meu código, por gentileza, indicar onde estou errando.

    procedure TFrmVendas.gerarNFCE;
    Var
    NotaF: NotaFiscal;
    item : integer;
    Produto: TDetCollectionItem;
    InfoPgto: TpagCollectionItem;
    
    begin
    nfce.NotasFiscais.Clear;
    NotaF := nfce.NotasFiscais.Add;
    
    
      //DADOS DA NOTA FISCAL
    
      NotaF.NFe.Ide.natOp     := 'VENDA';
      NotaF.NFe.Ide.indPag    := ipVista;
      NotaF.NFe.Ide.modelo    := 65;
      NotaF.NFe.Ide.serie     := 1;
      NotaF.NFe.Ide.nNF       := Integer(idVenda);//ERRO NA CAST DO VALOR INTEIRO
      NotaF.NFe.Ide.dEmi      := Now;
      NotaF.NFe.Ide.dSaiEnt   := Date;
      NotaF.NFe.Ide.hSaiEnt   := Now;
      NotaF.NFe.Ide.tpNF      := tnSaida;
      NotaF.NFe.Ide.tpEmis    := teNormal;
      NotaF.NFe.Ide.tpAmb     := taHomologacao;  //Lembre-se de trocar esta variável quando for para ambiente de produção
      NotaF.NFe.Ide.verProc   := '1.0.0.0'; //Versão do seu sistema
      NotaF.NFe.Ide.cUF       := 25;
      NotaF.NFe.Ide.cMunFG    := 2506905;
      NotaF.NFe.Ide.finNFe    := fnNormal;
      NotaF.NFe.Ide.tpImp     := tiNFCe;
    
      //CONFIG CONSUMIDOR FINAL
      NotaF.NFe.Ide.indFinal  := cfConsumidorFinal;
      NotaF.NFe.Ide.indPres   := TpcnPresencaComprador.pcPresencial;
      NotaF.NFe.Ide.procEmi   := TpcnProcessoEmissao.peAplicativoContribuinte;
    
    
      //DADOS DO EMITENTE
    
      NotaF.NFe.Emit.CNPJCPF           := '***************';
      NotaF.NFe.Emit.IE                := '*********';
      NotaF.NFe.Emit.xNome             := '*************';
      NotaF.NFe.Emit.xFant             := '*************';
    
      NotaF.NFe.Emit.EnderEmit.fone    := '************';
      NotaF.NFe.Emit.EnderEmit.CEP     := *************;
      NotaF.NFe.Emit.EnderEmit.xLgr    := '************';
      NotaF.NFe.Emit.EnderEmit.nro     := '***';
      NotaF.NFe.Emit.EnderEmit.xCpl    := '';
      NotaF.NFe.Emit.EnderEmit.xBairro := '********';
      NotaF.NFe.Emit.EnderEmit.cMun    := **********;
      NotaF.NFe.Emit.EnderEmit.xMun    := '*********';
      NotaF.NFe.Emit.EnderEmit.UF      := '**';
      NotaF.NFe.Emit.enderEmit.cPais   := ****;
      NotaF.NFe.Emit.enderEmit.xPais   := '******';
    
      NotaF.NFe.Emit.IEST              := '';
     // NotaF.NFe.Emit.IM                := '2648800'; // Preencher no caso de existir serviços na nota
      //NotaF.NFe.Emit.CNAE              := '6201500'; // Verifique na cidade do emissor da NFe se é permitido
                                    // a inclusão de serviços na NFe
      NotaF.NFe.Emit.CRT               := crtSimplesNacional;// (1-crtSimplesNacional, 2-crtSimplesExcessoReceita, 3-crtRegimeNormal)
    
    
    
      //DADOS DO DESTINATÁRIO
    
      //NotaF.NFe.Dest.CNPJCPF           := '05481336000137';
      //NotaF.NFe.Dest.IE                := '687138770110';
      //NotaF.NFe.Dest.ISUF              := '';
      //NotaF.NFe.Dest.xNome             := 'D.J. COM. E LOCAÇÃO DE SOFTWARES LTDA - ME';
    
    //
    //  NotaF.NFe.Dest.EnderDest.Fone    := '1532599600';
    //  NotaF.NFe.Dest.EnderDest.CEP     := 18270170;
    //  NotaF.NFe.Dest.EnderDest.xLgr    := 'Rua Coronel Aureliano de Camargo';
    //  NotaF.NFe.Dest.EnderDest.nro     := '973';
    //  NotaF.NFe.Dest.EnderDest.xCpl    := '';
    //  NotaF.NFe.Dest.EnderDest.xBairro := 'Centro';
    //  NotaF.NFe.Dest.EnderDest.cMun    := 3554003;
    //  NotaF.NFe.Dest.EnderDest.xMun    := 'Tatui';
    //  NotaF.NFe.Dest.EnderDest.UF      := 'SP';
    //  NotaF.NFe.Dest.EnderDest.cPais   := 1058;
    //  NotaF.NFe.Dest.EnderDest.xPais   := 'BRASIL';
    
    
    
      //ITENS DA VENDA NA NOTA
    
      //RELACIONANDO OS ITENS COM A  VENDA
        item := 1;
        vTotal := 0;
        dm.query_vendas_detalhes.Close;
        dm.query_vendas_detalhes.SQL.Clear;
        dm.query_vendas_detalhes.SQL.Add('SELECT vd.id, vd.id_venda, vd.id_funcionario, vd.id_produto, vd.detalhe_produto, vd.qtde, vd.valor, vd.total, p.nome FROM vendas_detalhes as vd INNER JOIN produtos as p ON vd.id_produto = p.id  WHERE  vd.id_venda = :num ORDER BY id ASC');
        dm.query_vendas_detalhes.ParamByName('num').Value :=  idVenda;
        dm.query_vendas_detalhes.Open;
        dm.query_vendas_detalhes.First;
    
       while not dm.query_vendas_detalhes.eof do
       begin
        Produto := NotaF.NFe.Det.New;
        Produto.Prod.nItem    := item; // Número sequencial, para cada item deve ser incrementado
        Produto.Prod.cProd    := dm.query_vendas_detalhes.FieldByName('id_produto').Value;
        Produto.Prod.cEAN     := '7896523206646';
        Produto.Prod.xProd    := dm.query_vendas_detalhes.FieldByName('detalhe_produto').Value;
        Produto.Prod.NCM      := '94051010'; // Tabela NCM disponível em  http://www.receita.fazenda.gov.br/Aliquotas/DownloadArqTIPI.htm
        Produto.Prod.EXTIPI   := '';
        Produto.Prod.CFOP     := '5101';
        Produto.Prod.uCom     := 'UN';
        Produto.Prod.qCom     := dm.query_vendas_detalhes.FieldByName('qtde').Value;
        Produto.Prod.vUnCom   := dm.query_vendas_detalhes.FieldByName('valor').Value;
        Produto.Prod.vProd    := dm.query_vendas_detalhes.FieldByName('valor').Value;
    
    
      //INFORMAÇÕES DE IMPOSTOS SOBRE OS PRODUTOS
        Produto.Prod.cEANTrib  := '7896523206646';
        Produto.Prod.uTrib     := 'UN';
        Produto.Prod.qTrib     := dm.query_vendas_detalhes.FieldByName('qtde').Value;
        Produto.Prod.vUnTrib   := dm.query_vendas_detalhes.FieldByName('valor').Value;
    
        Produto.Prod.vOutro    := 0;
        Produto.Prod.vFrete    := 0;
        Produto.Prod.vSeg      := 0;
        Produto.Prod.vDesc     := 0;
    
        Produto.Prod.CEST := '1111111';
    
        Produto.infAdProd := 'Informacao Adicional do Produto';
    
       // lei da transparencia nos impostos
        Produto.Imposto.vTotTrib     := 0;
        Produto.Imposto.ICMS.CST     := cst00;
        Produto.Imposto.ICMS.orig    := oeNacional;
        Produto.Imposto.ICMS.modBC   := dbiValorOperacao;
        Produto.Imposto.ICMS.vBC     := dm.query_vendas_detalhes.FieldByName('valor').Value;
        Produto.Imposto.ICMS.pICMS   := 18;
        Produto.Imposto.ICMS.vICMS   := 18;
        Produto.Imposto.ICMS.modBCST := dbisMargemValorAgregado;
        Produto.Imposto.ICMS.pMVAST  := 0;
        Produto.Imposto.ICMS.pRedBCST:= 0;
        Produto.Imposto.ICMS.vBCST   := 0;
        Produto.Imposto.ICMS.pICMSST := 0;
        Produto.Imposto.ICMS.vICMSST := 0;
        Produto.Imposto.ICMS.pRedBC  := 0;
        Produto.Imposto.ICMS.CSOSN := csosn102;
    
        // partilha do ICMS e fundo de probreza
        Produto.Imposto.ICMSUFDest.vBCUFDest      := 0.00;
        Produto.Imposto.ICMSUFDest.pFCPUFDest     := 0.00;
        Produto.Imposto.ICMSUFDest.pICMSUFDest    := 0.00;
        Produto.Imposto.ICMSUFDest.pICMSInter     := 0.00;
        Produto.Imposto.ICMSUFDest.pICMSInterPart := 0.00;
        Produto.Imposto.ICMSUFDest.vFCPUFDest     := 0.00;
        Produto.Imposto.ICMSUFDest.vICMSUFDest    := 0.00;
        Produto.Imposto.ICMSUFDest.vICMSUFRemet   := 0.00;
    
        vTotal := vTotal + (dm.query_vendas_detalhes.FieldByName('valor').Value * dm.query_vendas_detalhes.FieldByName('qtde').Value);
        ShowMessage(FloatToStr(vTotal));
        item := item + 1;
        dm.query_vendas_detalhes.Next;
       end;
    
       //totalizando
      NotaF.NFe.Total.ICMSTot.vBC     := dm.query_vendas_detalhes.FieldByName('total').Value;
      NotaF.NFe.Total.ICMSTot.vICMS   := 18;
      NotaF.NFe.Total.ICMSTot.vBCST   := 0;
      NotaF.NFe.Total.ICMSTot.vST     := 0;
      NotaF.NFe.Total.ICMSTot.vProd   := dm.query_vendas_detalhes.FieldByName('total').Value;
      NotaF.NFe.Total.ICMSTot.vFrete  := 0;
      NotaF.NFe.Total.ICMSTot.vSeg    := 0;
      NotaF.NFe.Total.ICMSTot.vDesc   := StrToFloat(StringReplace(txtDesconto.Text,'R$ ','',[rfReplaceAll, rfIgnoreCase]));
      NotaF.NFe.Total.ICMSTot.vII     := 0;
      NotaF.NFe.Total.ICMSTot.vIPI    := 0;
      NotaF.NFe.Total.ICMSTot.vPIS    := 0;
      NotaF.NFe.Total.ICMSTot.vCOFINS := 0;
      NotaF.NFe.Total.ICMSTot.vOutro  := 0;
      NotaF.NFe.Total.ICMSTot.vNF     := dm.query_vendas_detalhes.FieldByName('total').Value;
    
      // lei da transparencia de impostos
      NotaF.NFe.Total.ICMSTot.vTotTrib := 0;
    
      // partilha do icms e fundo de probreza
      NotaF.NFe.Total.ICMSTot.vFCPUFDest   := 0.00;
      NotaF.NFe.Total.ICMSTot.vICMSUFDest  := 0.00;
      NotaF.NFe.Total.ICMSTot.vICMSUFRemet := 0.00;
    
      NotaF.NFe.Transp.modFrete := mfSemFrete;  //SEM FRETE
    
      // YA. Informações de pagamento
      InfoPgto := NotaF.NFe.pag.New;
      InfoPgto.indPag := ipVista;
      InfoPgto.tPag   := fpDinheiro;
      InfoPgto.vPag   := dm.query_vendas_detalhes.FieldByName('total').Value;
    
      //RECUPERAR O NÚMERO DE SÉRIE DO CERTIFICADO
      nfce.Configuracoes.Certificados.NumeroSerie := certificadoDig;
    
      nfce.NotasFiscais.Assinar;
      nfce.Enviar(Integer(idVenda));
      ShowMessage(nfce.WebServices.StatusServico.Msg);
    end;

     

×
×
  • 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.

The popup will be closed in 10 segundos...