rubensff
Membros-
Total de ítens
32 -
Registro em
-
Última visita
Últimos Visitantes
rubensff's Achievements
-
AcbrNFSex leitura do RPS dentro do método LerInfNfse
rubensff replied to rubensff's tópico in DFe - Documentos Fiscais Eletrônicos
Obrigado. -
AcbrNFSex leitura do RPS dentro do método LerInfNfse
rubensff replied to rubensff's tópico in DFe - Documentos Fiscais Eletrônicos
A consulta de notas pelo componente tem retornado erro interno no servidor, isso já alguns dias, eu uso emissão por lote. O xml baixado funcionou bem aqui, a única coisa é que precisa ler o número do RPS, para localizar no meu banco e gravar o número da nota com o código de validação, assim consigo enviar o link para os clientes baixarem o DANFE. Estava funcionando bem pelo webservice, mas como aqui em Sorocaba, mais tá off que on, vi uma alternativa nessa solução. -
AcbrNFSex leitura do RPS dentro do método LerInfNfse
rubensff replied to rubensff's tópico in DFe - Documentos Fiscais Eletrônicos
Boa tarde Ítalo. Sim, baixei na prefeitura de Sorocaba, e sim, eu dei uma editada nele, por isso, deve estar fora do padrão. Quer que baixe um inteiro e envie? -
AcbrNFSex leitura do RPS dentro do método LerInfNfse
um tópico no fórum postou rubensff DFe - Documentos Fiscais Eletrônicos
Eu vi que na unit ACBrNFSeXLerXml_ABRASFv2, no método LerInfNfse, não tem LerIdentificacaoRps(AuxNode), ai o numero do RPS não vem, mas se coloco esse código lá vem de boa. Segue unit alterada e o xml que estou fazendo a leitura. ACBrNFSeXLerXml_ABRASFv2.pas nfse.xml -
Bom dia Ítalo. Vamos lá... Estou usando o programa exemplo, na pasta "acbr\Exemplos\ACBrDFe\ACBrNFSeX\Delphi". Usei o 2.00, porque como deu problema após a atualização dos fontes e schemas, fiz apenas um teste para ver se tinha alguma diferença, ou se eu estaria usando por engano um diferente do esperado. Estou clicando no botão "Consulta NFSe por período", no entanto, como postei, estás chamando a função "ConsultarNFSePorFaixa", é isso mesmo, é para chamar a mesma função? Pergunto, pois no evento do botão está chamando "ACBrNFSeX1.ConsultarNFSeporPeriodo". E mesmo usando o botão "Consultar NFSe por Faixa", retorna o mesmo erro.
-
Boa noite Ítalo. Tudo atualizado, reinstalado, apagando os arquivos locais. Utlizando a pasta Schemas 2.03 e a 2.00, na consulta por período : Método Executado: ConsultarNFSePorFaixa Parâmetros de Envio Num. Ini. NFSe: Num. Fin. NFSe: Data Inicial : 03/05/2022 Data Final : 04/05/2022 Parâmetros de Retorno Sucesso : False Erro(s): Código : X800 Mensagem: Erro de Validação: 1845 - Element 'ConsultarNfseFaixaEnvio': No matching global declaration available for the validation root.
-
se eu usar a ConsultarNFSePorFaixa, retorna: Método Executado: ConsultarNFSePorFaixa Parâmetros de Envio Num. Ini. NFSe: 13803 Num. Fin. NFSe: 13804 Data Inicial : 30/12/1899 Data Final : 30/12/1899 Parâmetros de Retorno Sucesso : False Erro(s): Código : X999 Mensagem: Erro de Conexão: Erro Interno: 0 Erro HTTP: 500 URL: https://notafiscal.sorocaba.sp.gov.br/notafiscal-abrasfv203-ws/NotaFiscalSoap Erro de Conexão. Correção: ---------
-
ACBrNFSeX provedor DSF Sorocaba SP - Consulta por periodo
um tópico no fórum postou rubensff DFe - Documentos Fiscais Eletrônicos
Olá, estou usando o exemplo do ACBR, na pesquisa por período retorna: ============================================================================================= Método Executado: ConsultarNFSePorFaixa Parâmetros de Envio Num. Ini. NFSe: Num. Fin. NFSe: Data Inicial : 03/05/2022 Data Final : 03/05/2022 Parâmetros de Retorno Sucesso : False Erro(s): Código : X800 Mensagem: Erro de Validação: 1824 - Element 'NumeroNfseInicial': '' is not a valid value of the atomic type 'tsNumeroNfse'. Correção: --------- ============================================================================================= Mas não deveria executar o método "ConsultarNFSeporPeriodo" ? -
Mensagem NFC-e não enviada para sefaz.
rubensff replied to rubensff's tópico in NFC-e - Nota Fiscal do Consumidor Eletrônica
Amigos, bom dia. Consegui descobrir o que estava fazendo de errado, na verdade como estava alterando a data de emissão, o digestvalue acabava ficando diferente do retorno da SEFAZ, e por isso não conseguia validar o xml. Caso resolvido. Obrigado a todos. -
Mensagem NFC-e não enviada para sefaz.
rubensff replied to rubensff's tópico in NFC-e - Nota Fiscal do Consumidor Eletrônica
A intenção é que na emissão, quando houver um erro no envio, e o sistema não tenha retorno do sefaz, por variação na internet da loja, ele consulte e veja se foi processado pela sefaz, fazer a contingencia se não tiver retorno, e depois fazer o cancelamento por substuição está criando mais problemas, porque acaba gerando muita nota em contingência. E os usuários não fazem o devido envio. -
Mensagem NFC-e não enviada para sefaz.
rubensff replied to rubensff's tópico in NFC-e - Nota Fiscal do Consumidor Eletrônica
De qual xml que está falando? Temos vários xmls, por via das dúvidas segue o código: function TNFe.EnviarNFCe( NumeroNota, Codigo_Operacao, Destinatario, Usuario: integer; TipoOperacao: integer; var StatusNFCe : integer; var s_Contingencia : String; var ChaveNFCe : String): Boolean; var TextoNFCe : TStrings; s_FormaEmissao : string; // ReciboEnvio : string; // Retorno_Sefaz : String; // ProtocoloNFCe : string; QtdeConsulta : integer; xmlNota : string; ErrosRegraNegocio : string; NumeroLote : string; Chave_Except : String; oACBRNFE : TACbrNfe; procedure Aprova_ou_DenegaNfce; begin // ReciboEnvio := ACBR_NFe.WebServices.Enviar.Recibo; // ProtocoloNFCe := ACBR_NFe.NotasFiscais.Items[0].Nfe.procNFe.nProt; // Retorno_Sefaz := IntToStr(ACBR_NFe.NotasFiscais.Items[0].Nfe.procNFe.cStat) + ' ' + // RetornaStatusNFCe(ACBR_NFe.NotasFiscais.Items[0].Nfe.procNFe.cStat); // AtualizaXML_NFCe(ChaveNFCe, // ACBR_NFe.NotasFiscais.Items[0].XML, // IntToStr(StatusNFCe), // ProtocoloNFCe, // Retorno_Sefaz, // Usuario, // s_Contingencia); end; begin // ProtocoloNFCe := ''; // Retorno_Sefaz := ''; // ReciboEnvio := ''; s_FormaEmissao := ''; Result := False; QtdeConsulta := 0; xmlNota := ''; ErrosRegraNegocio := ''; Chave_Except := ''; // Contingencia: // S = S/Não Enviada // N = Nao // E = S/Aprovada try try TCtrlNfe.GetInstance.CarregaDanfe(FACBR_NFe); acbr_nfe.Configuracoes.WebServices.Visualizar := False; ChaveNFCe := StringReplace(ACBR_NFe.NotasFiscais.Items[0].Nfe.infNFe.ID, 'NFe', '', [rfIgnoreCase]); NumeroLote := FormatDateTime('yyyymmddhhmmss', NOW); begin WaitShowMessage('Enviando NFC-e...'); if ACBR_NFe.Enviar(NumeroLote, False, True) then begin try //showmessage(ACBR_NFe.NotasFiscais.Items[0].Nfe.procNFe.cStat.ToString); StatusNFCe := ACBR_NFe.NotasFiscais.Items[0].Nfe.procNFe.cStat; AnalisaTipoRetorno(StatusNFCe);//Cuidado Rubens, o retorno é alterado na porra da função except StatusNFCe := 4; end; //Se não retornar nada faço consulta no sefaz enviando o xml if StatusNFCe = 4 then begin xmlNota := ACBR_NFe.NotasFiscais.Items[0].XML; while ((StatusNFCe = 4) and (QtdeConsulta < 5)) do begin StatusNFCe := ConsultaNFCeSefaz(xmlNota); QtdeConsulta := QtdeConsulta + 1; end; end; // Aprovada ou Denegada if ((StatusNFCe = 1) or (StatusNFCe = 5)) then begin Aprova_ou_DenegaNfce; // se for denegada grava a NFCe, mas nao libera para gravar a venda if StatusNFCe = 5 then begin TFalconFuncoes.GetInstance.MostraMensagem('Rejeição: NF-e está denegada na base de dados da SEFAZ.'+sLineBreak+ 'A venda será cancelada.',4); Result := False; end else Result:= True; end; end; end except on e: exception do begin showmessage(E.Message); WaitCloseMessage; Chave_Except := ChaveNFCe; showmessage(ACBR_NFe.NotasFiscais.Items[0].Nfe.procNFe.cStat.ToString); showmessage(ChaveNFCe); TFalconFuncoes.GetInstance.GravaLogerro('Erro ao enviar NFCe '+ ChaveNFCe+' - '+ 'cStat : '+ACBR_NFe.NotasFiscais.Items[0].Nfe.procNFe.cStat.ToString); oACBRNFe := TAcbrNfe.Create(nil); TCtrlNfe.GetInstance.ConfiguraACBrNFe(oACBRNFe, moNFCe); oACBRNFe.WebServices.Consulta.NFeChave := Chave_Except; oACBRNFe.WebServices.Consulta.Executar; oACBRNFe.WebServices.Consulta. if oACBRNFe.WebServices.Consulta.cStat = 100 then begin ACBR_NFe.NotasFiscais.Items[0].NFe.procNFe.Assign(oACBRNFe.WebServices.Consulta.protNFe); Result := True; end else begin //if (pos('Lote recebido com sucesso', UpperCase(e.Message)) > 0) then if ACBR_NFe.NotasFiscais.Items[0].Nfe.procNFe.cStat in [103,0] then begin for var Contador: integer := 0 to 15 do begin WaitShowMessage('Consultando lote processado...'); Sleep(2000); try StatusNFCe := ConsultaNFCeSefaz(ACBR_NFe.NotasFiscais.Items[0].XML); //Cuidado Rubens, o retorno é alterado na porra da função except end; if not (StatusNFCe in [0,6]) then break; end; showmessage(StatusNFCe.ToString); WaitCloseMessage; if StatusNFCe = 1 then begin Aprova_ou_DenegaNfce; Result := True; end; end; if TBancoDados.execSqlBD( ' update TAB_NFC_E '+ ' SET STATUS_RETORNOSEFAZ='+QuotedStr(Copy(e.Message,1,200))+ ' where CHV_NF = '+ QuotedStr(ChaveNFCe)) then begin TFalconFuncoes.GetInstance.GravaLogerro('Erro ao enviar NFCe '+ ChaveNFCe+' - '+ e.Message); //Apagando o xml da nota que não deu certo LimpaTemp(0,ChaveNFCe,'0'); end; //mais explicito, tipo pau entrando no cú //Permite gerar NFC-e em contigência quando ocorrer alguns tipos de exceção if pos(Uppercase('Nenhum arquivo de Schema encontrado na pasta'),UpperCase(e.Message)) > 0 then exit; // if ((pos('ERRO NAO CATALOGADO', UpperCase(e.Message)) > 0) // //or (pos('TIMEOUT', UpperCase(e.Message)) > 0) // or (pos('ERRO HTTP: 404', UpperCase(e.Message)) > 0) // or (pos('ERRO HTTP: 500', UpperCase(e.Message)) > 0) // or (pos(UpperCase('Falha no processamento do WebService'), UpperCase(e.Message)) > 0) // //or (pos(UpperCase('Falha em obter Provedor de Criptografia do Certificado. Erro: 8009000B , erro: $8009000B'), UpperCase(e.Message)) > 0) // or (pos(UpperCase('Erro HTTP: 403'), UpperCase(e.Message)) > 0) // or (pos(UpperCase('Erro HTTP: 403'), UpperCase(e.Message)) > 0) // or (pos(UpperCase('Erro HTTP: 0'), UpperCase(e.Message)) > 0) // or (pos(UpperCase('ERRO INTERNO'), UpperCase(e.Message)) > 0) // or (pos(UpperCase('Servico Paralisado Momentaneamente'), UpperCase(e.Message)) > 0) // or (pos(UpperCase('Falha no reconhecimento da autoria ou integridade do arquivo digital'), UpperCase(e.Message)) > 0) // //or (ACBR_NFe.NotasFiscais.Items[0].Nfe.procNFe.cStat = 0)) // ) // then // GeraContingencia // else begin TFalconFuncoes.GetInstance.MostraMensagem('Erro ao enviar NFC-e para aprovação. Erro: ' + e.Message); Result:= False; end; end; end; end; finally LimpaTemp(0,ChaveNFCe,'0'); if Assigned(oACBRNFE) then FreeAndNil(oACBRNFE); WaitCloseMessage; end; -
Mensagem NFC-e não enviada para sefaz.
rubensff replied to rubensff's tópico in NFC-e - Nota Fiscal do Consumidor Eletrônica
Bom dia Amarildo, as propriedades ACBRNFe.WebServices.Consulta.protNFe.XML_NFe e ACBRNFe.WebServices.Consulta.protNFe.XML_prot estão vindo vazias. Teria alguma sugestão? -
Mensagem NFC-e não enviada para sefaz.
um tópico no fórum postou rubensff NFC-e - Nota Fiscal do Consumidor Eletrônica
Boa tarde a todos. Sei que já tem um tópico com esse titulo, mas a questão acredito que seja outra. Tenho o processo de emissão, na emissão, quando dá algum problema de comunicação com a SEFAZ, acontece de ela ter recebido e processado a NFC-e, ai para não dar duplicidade, eu consulto pela chave, com outro objeto, pela chave, se me retorna "oACBRNFe.WebServices.Consulta.cStat = 100" então eu atualizo o objeto de emissão : ACBR_NFe.NotasFiscais.Items[0].NFe.procNFe.Assign(oACBRNFe.WebServices.Consulta.protNFe); Mas nesse processo, sei que deve estar faltando alguma coisa para que a impressão saia de forma correta. Será que podem me ajudar? -
Estou tentando testar o ecfvirtual nfc-e, mas na hora que vou inicializar o ECF dá a seguinte mensagem "First chance exception at $74EC3EF2. Exception class EAccessViolation with message 'Access violation at address 0099FFDD in module 'ECFTeste.exe'. Read of address 0000007C'. Process ECFTeste.exe (9084)" na preocedure : Procedure TACBrECFVirtualNFCeClass.AtivarVirtual; begin fsACBrNFCe.NotasFiscais.Clear; <-- aqui dá o erro inherited AtivarVirtual; fsACBrNFCe.Configuracoes.Geral.ModeloDF := moNFCe; fsNomeArqTempXML := ChangeFileExt(NomeArqINI, '.xml'); end; Alguém pode ajudar?