Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

  • Membros Pro
Postado

a versao capicom, 0.8.2.2  contempla  a nfe-c ?

nao trabalho com delphi, jah li todas essas mens  e nao achei refencia a isso,

na maioria, fala da pasta  schema e baixar fontes , como nao uso isso.. por isso estou perguntando...

grato

Postado

Pessoal, estou tentando autenticar com o Sefaz RS, e tendo o seguinte retorno de rejeição: NFC-e para destinatario contribuinte de ICMS.

 

Alguém sabe o que pode causar isso?

Postado

Bom dia pessoal.

Estou com problema do erro 100 (qrcode inválido) na produção aqui em MT, alguém tem ideia do que pode ser?

Pois em Homologação esta dando certo.

Postado
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

  • Moderadores
Postado

Bom se está preocupado com SC a licitação do Paf-ECF é para alguns anos e nosso estado como precursor do Paf-ECF ainda será vigente, foi um dos únicos estados que não irá aderir a NFC-e!

Mas não sobre sua pergunta, pois vai seguir a regras da NF-e somente com alterações

veja através das notas técnicas que possuem no portal da NF-e!

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Transparent-02.png
 

 

Postado

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;

Postado

Pessoal, alguém sabe me dizer se e possível imprimir na impressora não fiscal (Daruma DR700) direto do FastReport?

 

Eu tenho a NFC-e gerando ok, gostaria de saber se vou ter que implementar rotina para montar o cupom utilizando os comandos da impressora, ou se tem como simplesmente "mandar" o cupom , previamente gerado pelo FastReport.

Postado

Pessoal, estou tentando autenticar com o Sefaz RS, e tendo o seguinte retorno de rejeição: NFC-e para destinatario contribuinte de ICMS.

 

Alguém sabe o que pode causar isso?

 

 

Estou com o mesmo problema....

 

   if Length(Trim(QCabNota.FieldByName('INSCRICAO').AsString)) > 0 then
                    begin
                        Dest.IE := QCabNota.FieldByName('INSCRICAO').AsString;
                        Dest.indIEDest := inContribuinte;
                    end
                    else
                    begin
                        Dest.IE := '';
                        Dest.indIEDest := inNaoContribuinte;
                    end;
 
Ou seja se tem inscrição estadual estou passando  Dest.indIEDest := inContribuinte; so que mesmo assim esta me dando erro: "Rejeicao: NFC-e para destinatario contribuinte de ICMS" O que pode ser..... Att  
Postado

 

Estou com o mesmo problema....

 

   if Length(Trim(QCabNota.FieldByName('INSCRICAO').AsString)) > 0 then
                    begin
                        Dest.IE := QCabNota.FieldByName('INSCRICAO').AsString;
                        Dest.indIEDest := inContribuinte;
                    end
                    else
                    begin
                        Dest.IE := '';
                        Dest.indIEDest := inNaoContribuinte;
                    end;
 
Ou seja se tem inscrição estadual estou passando  Dest.indIEDest := inContribuinte; so que mesmo assim esta me dando erro: "Rejeicao: NFC-e para destinatario contribuinte de ICMS" O que pode ser..... Att  

 

 

 

Acho que achei a resposta: 

 

Indicador da IE do Destinatário, informar:

1 - Contribuinte ICMS (informar a IE do destinatário);

2 - Contribuinte isento de Inscrição no cadastro de Contribuintes do ICMS;

9 - Não Contribuinte, que pode ou não possuir Inscrição Estadual no Cadastro de Contribuintes do ICMS.

Nota 1: No caso de NFC-e informar indIEDest=9 e não informar a tag IE do destinatário;

Nota 2: No caso de operação com o Exterior informar indIEDest=9 e não informar a tag IE do destinatário;

Nota 3: No caso de Contribuinte Isento de Inscrição (indIEDest=2), não informar a tag IE do destinatário.

Postado

Estou tendo o erro: Msg: 383 - QR-Code Inválido (ID Token)

 

ao consultar a NFC-e. Alguém sabe o que esse erro significa exatamente? E se possível, onde posso arranjar a documentação para todos os possíveis erros apresentados na consulta da NFC-e?

Postado (editado)

ServerInfo, aconselho uma lida no manual com as especificações para o QRCode em http://www.nfe.fazenda.gov.br/portal/exibirArquivo.aspx?conteudo=jKHRw%20g4V%20E= e também dar uma lida nas páginas anteriores onde isso ja foi discutido.

 

Sérgio

 

Pois é, eu já havia dado uma olhada e pelo que pude ver estou fazendo corretamente, porém não consigo identificar onde é que eu possa estar me passando. Em um último exemplo que acabei de fazer, os seguintes valores foram com os quais me deparei (aparentam estarem corretos)

 

String pela qual o cHashQRCode é calculado:

 

chNFe=43140393483238000104650030000001891094555956&nVersao=100&tpAmb=2&cDest=01362164046&dhEmi=323031342D30332D30365430383A32383A32342D30333A3030&vNF=13.00&vICMS=0.00&digVal=347937374B4F387573516A484F33646A38706B544C6A544D6976553D&cIdToken=0000019348323820140001

 

cHasgQRCode da string acima: 983F2C34A64B3666356F6BC01DF1B18C2A0C0CD6

 

Resultado final (URL)

 

https://www.sefaz.rs.gov.br/NFCE/NFCE-COM.aspx?chNFe=43140393483238000104650030000001891094555956&nVersao=100&tpAmb=2&cDest=01362164046&dhEmi=323031342D30332D30365430383A32383A32342D30333A3030&vNF=13.00&vICMS=0.00&digVal=347937374B4F387573516A484F33646A38706B544C6A544D6976553D&cIdToken=000001&cHashQRCode=983F2C34A64B3666356F6BC01DF1B18C2A0C0CD6
 

 

 

Detalhe que agora eu ganho a mensagem Msg: 391 - QR-Code Inválido (ID Token)

 

Imagino que seja talvez pelo fato do cIdToken=0000019348323820140001 na string de calculo do hash e cIdToken=000001 na url final, embora esteja de acordo com o exemplo da pagina 20 do manual de padrões.

Editado por ServerInfo
Postado

ServerInfo,

Cola a função que você esta usando para gerar o QrCode. Talvez fique mais fácil para ajudarmos.

 

Sérgio

function TFrmNotaFiscalEletronica.GetUrlQRCode: String;
const
  //Somente para teste, posteriormente deve ser pego de acordo com UF (pg4)
  URL_HOMOLOGACAO = 'https://www.sefaz.rs.gov.br/NFCE/NFCE-COM.aspx?';

  //Todo: Deve ser adicionado TimeZone de acordo com a localidade da nota
  function GetDataMascara(const ADateTime: TDateTime): String;
  var
    TimeZoneInformation: TTimeZoneInformation;
  begin
    GetTimeZoneInformation(TimeZoneInformation);
    Result := FormatDateTime('yyyy-mm-dd', ADateTime) + 'T' + FormatDateTime('hh:nn:ss', ADateTime) + '-0' + IntToStr(TimeZoneInformation.Bias div 60) + ':00';
  end;

var
  Token: String;
  Parametros: TPEMDados;
  AcbrEAD: TACBrEAD;
  Arquivo: TStringList;
  TokenCalculo: String;
  TokenURL: String;
begin
  Token := 'chNFe=' + ACbrNFe2.NotasFiscais[0].NFe.procNFe.chNFe + '&';
  Token := Token + 'nVersao=100&';
  Parametros := Bshop.Clients.PEM.GetDadosPEM(Bshop.Sistema.Empresa.Codigo);
  case Parametros.SituacaoNFe of
    snHabilitada: Token := Token + 'tpAmb=1&';
    snEmTeste: Token := Token + 'tpAmb=2&';
  end;
  if ACbrNFe2.NotasFiscais[0].NFe.Dest.CNPJCPF <> '' then
    Token := Token + 'cDest=' + ACbrNFe2.NotasFiscais[0].NFe.Dest.CNPJCPF + '&';

  Token := Token + 'dhEmi=' + StrToHex(GetDataMascara(ACbrNFe2.NotasFiscais[0].NFe.Ide.dEmi)) + '&';
  Token := Token + 'vNF=' + StringReplace(FormatFloat('0.00', ACbrNFe2.NotasFiscais[0].NFe.Total.ICMSTot.vNF), ',', '.', [rfReplaceAll]) + '&';
  Token := Token + 'vICMS=' + StringReplace(FormatFloat('0.00', ACbrNFe2.NotasFiscais[0].NFe.Total.ICMSTot.vICMS), ',', '.', [rfReplaceAll]) + '&';
  Token := Token + 'digVal=' + StrToHex(ACbrNFe2.NotasFiscais[0].NFe.signature.DigestValue) + '&';

  if Parametros.SituacaoNFe = snEmTeste then
    Token := Token + 'cIdToken=<idToken>'
  else
    Token := Token + 'cIdToken=000001&';/// Código fornecido pela SEFAZ para a empresa emissora (até 36 dígitos)

  TokenCalculo := StringReplace(Token, '<idToken>', '000001' + Copy(ACbrNFe2.NotasFiscais[0].NFe.Emit.CNPJCPF, 1, 8) + FormatDateTime('yyyy', Now) + '0001', []);

  AcbrEAD := TACBrEAD.Create(nil);
  try
    Token := Token + '&cHashQRCode=' + AcbrEAD.CalcularHash(TokenCalculo, dgstSHA1);
  finally
    if Assigned(AcbrEAD) then
      FreeAndNil(AcbrEAD);
  end;

  //URL de homologacao e producao é a mesma para RS
  Token := Bshop.NFCeURLDictionary[ACbrNFe2.NotasFiscais[0].NFe.Emit.EnderEmit.UF] + Token;

  if Assigned(Parametros) then
    FreeAndNil(Parametros);

  TokenURL := StringReplace(Token, '<idToken>', '000001', []);

  Result := TokenURL;
end;

Postado

Ola pessoal boa tarde, boa tarde Roberto.Godinho, baixei a ultima versão das alterações que vcs tem feito para imprimirmos a NFC-e com o fastreport, mas agora esta me dando um erro qdo estou compilando o projeto, que falta a propriedade frxPDFExport.CheckboxAsShape>, sera que isso e a versao do fastreport? desde ja agradeço a atenção de todos...

 

Luciano...

  • Este tópico foi criado há 3766 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • 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.