Ir para conteúdo
  • Cadastre-se

leufmt

Membros
  • Total de ítens

    267
  • Registro em

  • Última visita

Posts postados por leufmt

  1. André agora mudei o meu código para assim:

    function TFormOrcamento.Gera_chaveconsultaNFCe: String;
    var
     vRetorno, vAmbiente, vChave, vDataEmissao, vlnf, vlicms, vHashqrcode,
     vCPFCNPJ, vTokenURL: String;
    begin
     Case ACBrNFe1.Configuracoes.WebServices.Ambiente of
      taHomologacao: begin
                      vAmbiente := '2';
                      // Pega endereço de consulta publica da nfce
                      vRetorno := 'http://homologacao.sefaz.mt.gov.br/nfce/consultanfce?';
                      vTokenURL := Dtm.QueryEmpresaIdToken1.AsString;
                     end;
      taProducao: begin
                   vAmbiente := '1';
                   // Pega endereço de consulta publica da nfce
                   vRetorno := 'http://www.sefaz.mt.gov.br/nfce/consultanfce?';
                   vTokenURL := Dtm.QueryEmpresaIdToken1.AsString + Dtm.QueryEmpresaCodToken1.AsString;
                  end;
     end;
     vChave :=  QueryCupomChave.AsString;
     vDataEmissao := StringtoHex(Formata_DataUTC(QueryCupomDataHora.AsDateTime));
     vlnf := StringReplace(FormatFloat('###0.00', QueryCupomValorTotal.AsFloat), ',', '.', []);
     vlicms := StringReplace(FormatFloat('###0.00', QueryCupomValorICMS.AsFloat),',', '.', []);
     If TiraCaracterDocumento(Trim((QueryCupomCNPJ_RG.AsString))) <> '' then
      vCPFCNPJ := '&cDest=' + TiraCaracterDocumento(Trim(QueryCupomCNPJ_RG.AsString))
     Else
      vCPFCNPJ := '';
    
     vHashqrcode := NotaUtil.GetURLQRCode(NotaUtil.UFtoCUF(Trim(Dtm.QueryEmpresaEstado.AsString)),
                                          ACBrNFe1.Configuracoes.WebServices.Ambiente,
                                          vChave,
                                          TiraCaracterDocumento(Trim(QueryCupomCNPJ_RG.AsString)),
                                          QueryCupomDataHora.AsDateTime,
                                          QueryCupomValorTotal.AsFloat,
                                          QueryCupomValorICMS.AsFloat,
                                          QueryCupomDigVal.AsString,
                                          Dtm.QueryEmpresaIdToken1.AsString,
                                          Dtm.QueryEmpresaCodToken1.AsString);
     vRetorno := vRetorno + 'chNFe=' + vChave +
       '&nVersao=' + '100' +
       '&tpAmb=' + vAmbiente +
       vCPFCNPJ +
       '&dhEmi=' + vDataEmissao +
       '&vNF=' + vlnf +
       '&vICMS=' + vlicms +
       '&digVal=' + StringtoHex(QueryCupomDigVal.AsString) +
       '&cIdToken=' + vTokenURL +
       '&cHashQRCode=' + vHashqrcode;
    
     Result := vRetorno;
    end;
    

    Estou enviando esses valores para a função NotaUtil.GetURLQRCode:

    AUF 51
    AAmbiente taHomologacao
    AchNFe '51140516797878000130650010000000971000000972'
    AcDest '03694273190'
    AdhEmi 41778,358009
    AvNF 5,5
    AvICMS 0
    AdigVal 'ieMby5l2mwyu23dp5KQbCng84B4='
    AidToken '000001'
    AToken '7D1F47CA025246D9EA86A1D3824793F9'
     
    e ainda sim continua o Erro 100 - QR Code Inválido.
     
    Estou sem saber o que fazer.
  2. Boa tarde pessoal.

    Já estou a meses tentando resolver o Erro 100 - QR Code Inválido.

    Meu código abaixo.

    function TFormOrcamento.Gera_hashqrcode(Emissao: TDateTime;
      TotalNota, TotalICMS: Real; Chave, CPFCNPJ, DigVal: String): String;
    var
     vTexto, vAmbiente, vdemi, vlnf, vlicms, vCPFCNPJ, vCidToken: String;
    begin
     Case ACBrNFe1.Configuracoes.WebServices.Ambiente of
      taHomologacao: begin
                      vAmbiente := '2';
                      vCidToken := '&cIdToken=' + '000001' + Copy(TiraCaracterDocumento(Trim(Dtm.QueryEmpresaCNPJF.AsString)), 1, 8) + IntToStr(YearOf(Emissao)) + '0001';
                     end;
      taProducao: begin
                   vAmbiente := '1';
                   vCidToken := '&cIdToken=' + Dtm.QueryEmpresaIdToken1.AsString + Dtm.QueryEmpresaCodToken1.AsString;
                  end;
     end;
     vdemi := StringtoHex(Formata_DataUTC(Emissao));
     vlnf := StringReplace(FormatFloat('###0.00', TotalNota), ',', '.', []);
     vlicms := StringReplace(FormatFloat('###0.00', TotalICMS), ',', '.', []);
     If TiraCaracterDocumento(Trim((CPFCNPJ))) <> '' then
      vCPFCNPJ := '&cDest=' + TiraCaracterDocumento(Trim((CPFCNPJ)))
     Else
      vCPFCNPJ := '';
    
     vTexto := 'chNFe=' + Chave +
       '&nVersao=' + '100' +
       '&tpAmb=' + vAmbiente +
       vCPFCNPJ +
       '&dhEmi=' + vdemi +
       '&vNF=' +  vlnf +
       '&vICMS=' +  vlicms +
       '&digVal=' + StringtoHex(DigVal) +
       vCidToken;
    
     Result := ACBrEAD1.CalcularHash(vTexto, dgstSHA1);
    end;
    
    function TFormOrcamento.Gera_chaveconsultaNFCe: String;
    var
     vRetorno, vAmbiente, vChave, vDataEmissao, vlnf, vlicms, vHashqrcode,
     vCPFCNPJ, vTokenURL: String;
    begin
     Case ACBrNFe1.Configuracoes.WebServices.Ambiente of
      taHomologacao: begin
                      vAmbiente := '2';
                      // Pega endereço de consulta publica da nfce
                      vRetorno := 'http://homologacao.sefaz.mt.gov.br/nfce/consultanfce?';
                      vTokenURL := Dtm.QueryEmpresaIdToken1.AsString;
                     end;
      taProducao: begin
                   vAmbiente := '1';
                   // Pega endereço de consulta publica da nfce
                   vRetorno := 'http://www.sefaz.mt.gov.br/nfce/consultanfce?';
                   vTokenURL := Dtm.QueryEmpresaIdToken1.AsString + Dtm.QueryEmpresaCodToken1.AsString;
                  end;
     end;
     vChave :=  QueryCupomChave.AsString;
     vDataEmissao := StringtoHex(Formata_DataUTC(QueryCupomDataHora.AsDateTime));
     vlnf := StringReplace(FormatFloat('###0.00', QueryCupomValorTotal.AsFloat), ',', '.', []);
     vlicms := StringReplace(FormatFloat('###0.00', QueryCupomValorICMS.AsFloat),',', '.', []);
     If TiraCaracterDocumento(Trim((QueryCupomCNPJ_RG.AsString))) <> '' then
      vCPFCNPJ := '&cDest=' + TiraCaracterDocumento(Trim((QueryCupomCNPJ_RG.AsString)))
     Else
      vCPFCNPJ := '';
    
     vHashqrcode := Gera_hashqrcode(QueryCupomDataHora.AsDateTime,
       QueryCupomValorTotal.AsFloat, QueryCupomValorICMS.AsFloat, vChave,
       QueryCupomCNPJ_RG.AsString, QueryCupomDigVal.AsString);
     vRetorno := vRetorno + 'chNFe=' + vChave +
       '&nVersao=' + '100' +
       '&tpAmb=' + vAmbiente +
       vCPFCNPJ +
       '&dhEmi=' + vDataEmissao +
       '&vNF=' + vlnf +
       '&vICMS=' + vlicms +
       '&digVal=' + StringtoHex(QueryCupomDigVal.AsString) +
       '&cIdToken=' + vTokenURL +
       '&cHashQRCode=' + vHashqrcode;
    
     Result := vRetorno;
    end;
    
    
  3. Bom dia galera.

    Estou usando o componente ACBrNFe para emitir o CF-e só que não consigo fazer separar por pasta de mês e ano esta configurado como segue abaixo:

     
     ACBrNFe1.Configuracoes.Arquivos.AdicionarLiteral := True;
     ACBrNFe1.Configuracoes.Arquivos.EmissaoPathNFe := True;
     ACBrNFe1.Configuracoes.Arquivos.PastaMensal := True;
     ACBrNFe1.Configuracoes.Arquivos.Salvar := True;
     ACBrNFe1.Configuracoes.Geral.PathSalvar := vEndereco;
     
    Já atualizei o componente e nada.
    Alguém tem alguma ideia do que falta?
  4. Olá leufmt,

     

    Parece que você está passando apenas o Id do Token:

    &cIdToken=' + Dtm.QueryEmpresaIdToken1.AsString
    

    Eu faço aqui da seguinte forma:

    '&cIdToken=<id_token><token>'
    

    Att,

     

    Sérgio

     

    Tô sim Sergio, aqui:

    '&cIdToken=' + Dtm.QueryEmpresaIdToken1.AsString + Dtm.QueryEmpresaCodToken1.AsString;

  5. Boa tarde pessoal.

     

    Estou notando algo estranho na emissão da NFS-e.

    Vira e mexe vem me retornando a seguinte mensagem:

    Código Erro: E010

    Mensagem: RPS ja informado. Numero do RPS em que ocorreu o erro: ....

    Correção: Para essa Inscricao Municipal/CNPJ ja existe um RPS informado com o mesmo numero, serie e tipo.

    Provedor: ISSNET.

     

    Com esta informação fui consultar no site da prefeitura e a nota consta lá.

    O AcbrNfse esta enviou a nota só que não sei porque não pegou o retorno.

     

    Alguém já passou por isto?

    Sabe como resolver?

  6. function TFormOrcamento.Gera_hashqrcode(Emissao: TDateTime;
      TotalNota, TotalICMS: Real; Chave, CPFCNPJ, DigVal: String): String;
    var
     vTexto, vAmbiente, vdemi, vlnf, vlicms, vCPFCNPJ, vCidToken: String;
    begin
     Case ACBrNFe1.Configuracoes.WebServices.ambiente of
      taHomologacao: begin
                      vAmbiente := '2';
                      vCidToken := '&cIdToken=' + '000001' + Copy(TiraCaracterDocumento(Trim(Dtm.QueryEmpresaCNPJF.AsString)), 1, 8) + IntToStr(YearOf(FormFuncao.ConexaoServidor(0))) + '0001';
                     end;
      taProducao: begin
                   vAmbiente := '1';
                   vCidToken := '&cIdToken=' + Dtm.QueryEmpresaIdToken1.AsString + Dtm.QueryEmpresaCodToken1.AsString;
                  end;
     end;
     vdemi := StringtoHex(Formata_DataUTC(Emissao));
     vlnf := StringReplace(FormatFloat('###0.00', TotalNota), ',', '.', []);
     vlicms := StringReplace(FormatFloat('###0.00', TotalICMS), ',', '.', []);
     If TiraCaracterDocumento(Trim((CPFCNPJ))) <> '' then
      vCPFCNPJ := '&cDest=' + TiraCaracterDocumento(Trim((CPFCNPJ)))
     Else
      vCPFCNPJ := '';
    
     vTexto := 'chNFe=' + Chave +
       '&nVersao=' + '100' +
       '&tpAmb=' + vAmbiente +
       vCPFCNPJ +
       '&dhEmi=' + vdemi +
       '&vNF=' +  vlnf +
       '&vICMS=' +  vlicms +
       '&digVal=' + StringtoHex(DigVal) +
       vCidToken;
    
     Result := ACBrEAD1.CalcularHash(vTexto, dgstSHA1);
    end;
    
    function TFormOrcamento.Gera_chaveconsultaNFCe: String;
    var
     vRetorno, vAmbiente, vChave, vDataEmissao, vlnf, vlicms, vHashqrcode,
     vCPFCNPJ: String;
    begin
     Case ACBrNFe1.Configuracoes.WebServices.ambiente of
      taHomologacao: begin
                      vAmbiente := '2';
                      // Pega endereço de consulta publica da nfce
                      vRetorno := 'http://homologacao.sefaz.mt.gov.br/nfce/consultanfce?';//'http://www.hom.nfe.sefaz.mt.gov.br/portal/consultarNFCe.jsp';
                     end;
      taProducao: begin
                   vAmbiente := '1';
                   // Pega endereço de consulta publica da nfce
                   vRetorno := 'http://www.sefaz.mt.gov.br/nfce/consultanfce?';//'http://www.sefaz.mt.gov.br/nfe/portal/consultanfce';
                  end;
     end;
     vChave :=  QueryCupomChave.AsString;
     vDataEmissao := StringtoHex(Formata_DataUTC(QueryCupomDataHora.AsDateTime));
     vlnf := StringReplace(FormatFloat('###0.00', QueryCupomValorTotal.AsFloat), ',', '.', []);
     vlicms := StringReplace(FormatFloat('###0.00', QueryCupomValorICMS.AsFloat),',', '.', []);
     If TiraCaracterDocumento(Trim((QueryCupomCNPJ_RG.AsString))) <> '' then
      vCPFCNPJ := '&cDest=' + TiraCaracterDocumento(Trim((QueryCupomCNPJ_RG.AsString)))
     Else
      vCPFCNPJ := '';
    
     vHashqrcode := Gera_hashqrcode(QueryCupomDataHora.AsDateTime,
       QueryCupomValorTotal.AsFloat, QueryCupomValorICMS.AsFloat, vChave,
       QueryCupomCNPJ_RG.AsString, QueryCupomDigVal.AsString);
     vRetorno := vRetorno + 'chNFe=' + vChave +
       '&nVersao=' + '100' +
       '&tpAmb=' + vAmbiente +
       vCPFCNPJ +
       '&dhEmi=' + vDataEmissao  +
       '&vNF=' + vlnf +
       '&vICMS=' + vlicms +
       '&digVal=' + StringtoHex(QueryCupomDigVal.AsString) +
       '&cIdToken=' + Dtm.QueryEmpresaIdToken1.AsString + 
       '&cHashQRCode=' + vHashqrcode;
    
     Result := vRetorno;
    end;
    

    ta ai

  7. Scheila veja se as configurações aqui bate com as tuas

     

     With ACBrMail1 do
     begin
      Subject := 'Asunto';
      Body.Text := 'Envio de mail de teste';
      From := '[email protected]';
      FromName := 'eu';
      Host := 'smtp.live.com';
      Username := '[email protected]';
      Password := 'senha';
      Port := '587';
      SetSSL := False;
      SetTLS := True;
      AddAddress('[email protected]', 'destinatario');
      Sleep(500);
      Send;
     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.