Ir para conteúdo
  • Cadastre-se

TiicTechnology Sac

Membros Pro
  • Total de ítens

    18
  • Registro em

  • Última visita

Tudo que TiicTechnology Sac postou

  1. Olá, amigos. Estou tentando usar o ACBrMAIL com o SMTP da MailerSend para envio de email, porém estou recebendo o "erro 530: Authentication Required". Alguém tem alguma dica? ACBrMail.Host := smtp.mailersend.net ACBrMail.Username := @meudominio.com ACBrMail.Password := ** ACBrMail.SetTLS := true; ACBrMail.SetSSL := false; ACBrMail.Port := 587; Desde já muito obrigado pela atenção.
  2. Vi, aqui tem como comprar via pagseguro em R$ e parcela em 12x cartão e com emissão de nota fiscal e etc. Obrigado Juliomar.
  3. Primeiramente, obrigado Valmir pela resposta. Só uma dúvida, você tem a licença TMS Aurelius no valor de 190 euros (R$ 1390,00)? Atende as demandas em geral de desenvolvimento de aplicações VCL?
  4. Boa tarde, amigo! Você usou algum desses? Como foi? Comenta ai sua experiência? Gostaria de indicação de um Framework ORM para uso em Delphi + Firebird. Desde já obrigado pela atenção.
  5. Depois das correções, está funcionando. Muito obrigado a todos os envolvidos.
  6. RESPOSTA: Ref. a mensagem: 1.415.439 - DOCUMENTOS ELETRÔNICOS > CT-e > CONTINGÊNCIA / TRANSMISSÃO / VALIDAÇÃO Senhor(a), Conforme retorno do setor responsável, informamos que em MG, a versão CT-e 4.0 em HOMOLOGAÇÃO/TESTE já está no ar desde o dia 22/5/2023. Consta no Manual de orientação que a previsão em Produção será em Junho/2023. Contudo, segundo a STI, ainda não há data específica confirmada. Há de se destacar que as duas versões costumam funcionar juntas por uns 6 meses. Quando em MG for interrompida a versão 3.0, a informação da data será disponibilizada no portal SPED em ( http://www.sped.fazenda.mg.gov.br/spedmg/ ). Nesse sentido, se ao efetuar testes do CT-e em ambiente de HOMOLOGAÇÃO e observar a ocorrência de erros, deverá nos encaminhar os arquivos XML de envio e o XML de retorno (correspondente ao XML de envio), contendo a rejeição/erro para verificação. Sem tais arquivos, a análise ficará comprometida. O Arquivo XML de envio do documento (aquele de envio no emissor para autorização) deverá estar assinado, ou seja, o campo " SignatureValue " do XML deverá estar preenchido, comprovando a assinatura. Obs.: Nos dois arquivos acima, os campos "</DigestValue>" e "digVal" deverão ser iguais. Quase sempre assim! Nunca somos respondidos pela SEF/MG com soluções/ajuda aproveitável kkkkkk.
  7. Na data de hoje 15/06/2023 as 10:59, ainda continua o erro: Ambiente: Homologação Erro Interno: 0 Erro HTTP: 500 URL: https://hcte.fazenda.mg.gov.br/cte/services/CTeRecepcaoSincV4 <?xml version='1.0' encoding='UTF-8'?><S:Envelope xmlns:S="http://www.w3.org/2003/05/soap-envelope"> <S:Body><S:Fault xmlns:ns4="http://schemas.xmlsoap.org/soap/envelope/"><S:Code><S:Value>S:Sender</S:Value> </S:Code><S:Reason><S:Text xml:lang="en">Cannot find dispatch method for {http://www.portalfiscal.inf.br/cte/wsdl/CTeRecepcaoSincV4}cteDadosMsg</S:Text> </S:Reason></S:Fault></S:Body></S:Envelope> Abri uma reclamação junto a Secretaria de Estado de Fazenda de Minas Gerais - SEF/MG - SEF/MG. Aguardando resposta...
  8. Bom dia Ítalo, desde já obrigado pelo retorno. Ítalo disse: "Pelo que me recordo ele deveria criar uma pasta chamada Evento e dentro desta uma pasta com o nome do tipo de evento (por Exemplo: Cancelamento) e dentro desta salvar os XMLs do evento em questão." Não está comportando assim não! Vou analisar pode ser alguma coisa no meu código!
  9. Bom dia, hoje meu componente está configurado assim: with ACBrNFe.Configuracoes.Arquivos do begin // Configura caminho dos arquivos Salvar := false; SepararPorMes := true; AdicionarLiteral := false; if dados.qryConfigLITERAL.Value = 'S' then AdicionarLiteral := true; EmissaoPathNFe := true; SalvarEvento := true; SepararPorCNPJ := true; SepararPorModelo := false; PathSalvar := dados.qryConfigPATHSALVAR.Value; PathSchemas := dados.qryConfigPATHSCHEMAS.Value; PathNFe := dados.qryConfigPATHNFE.Value; PathInu := dados.qryConfigPATHINUTI.Value; PathEvento := dados.qryConfigPATHEVENTO.Value; end; Só que mesmo setando "PathEvento" está salvando na pasta "C:\MeuSistema\NFCe\xml", pelo que olhei essa pasta é padrão. Gostaria de salvar em uma pasta especifica e de alterar o nome do evento.xml. Desde já muito obrigado.
  10. Tenho que tornar ACBrPro realmente faz falta e a comunidade é top! Desde já muito obrigado pela atenção.
  11. @Eder Gilvani você conseguiu a resposta para essa dúvida? Se sim, qual foi a solução? Obrigado.
  12. Mais uma dúvida, como faço para alterar o nome do arquivo XML desse evento? Exemplo: Evento salva o nome do arquivo 31211016000685000103650010000002509000038270-sit.xml gostaria de alterar o nome desse evento para 31211016000685000103650010000002509000038270-CancelSubst.xml, ou seja, no final do nome do arquivo colocar "-CancelSubst.xml" Desde já agradeço a atenção de todos.
  13. Boa tarde a todos. Estou com a seguinte duvida sobre salvar o evento de cancelamento por substituição em uma pasta especifica usando o ACBr. Hoje tenho a estrutura de pastas C:\MeuSistema\NFCe\ dentro dessa pasta tem as subpastas Enviadas, Canceladas e etc (Organizado por CNPJ, Ano, Mês). Gostaria de ao realizar o cancelamento por substituição com ACBr, os XML referentes ao evento do cancelamento sejam salvos na pasta C:\MeuSistema\NFCe\Canceladas (Organizado por CNPJ, Ano, Mês). Hoje o ACBr está salvando na pasta C:\MeuSistema\NFCe\xml onde está sendo salvo todos os eventos gerados no sistema. A necessidade principal é porque os contadores estão solicitando os XML dos cancelamentos e fica difícil e trabalhoso encontrar os respectivos XML de Cancelamentos. Desde já agradeço a atenção de todos.
  14. Bom dia, acho que encontrei a solução, fiz o seguinte: 1º Quando tento enviar para a Sefaz/MG e ocorre o erro eu agora salvo o XML Assinado no Banco. Antes estava salvando XML sem assinatura e apenas assinava na hora da consulta; 2º Na hora da Consulta uso o método (ACBrNFe.NotasFiscais.LoadFromString(qryNFCeGravadasXMLASSINADO.Value) com o XML Assinado, garantindo a igualdade dos XML entre Sefaz e meu Sistema; Estou realizando os teste e em homologação tá tudo certo! Obrigado.
  15. Primeiramente muito obrigado pela ajuda, BigWings! Está gravando o XML dessa nota, pra depois tentar consultar e cancelar/inutilizar? Sim! Eu salvo o XML original que não obtive resposta da Sefaz/MG. Ai depois um "robô" tenta recuperar e cancelar por substituição essa NFC-e. ACBrNFe.Configuracoes.Arquivos.PathEvento := dados.qryConfigPATHCAN.Value; try Chave := Trim(OnlyNumber(qryNFCeGravadasCHAVE.Value)); idLote := '1'; CNPJ := copy(Chave, 7, 14); Protocolo := qryNFCeGravadasPROTOCOLO.Value; Justificativa := 'Cancelamento Por Substituição Devido a Falta de Retorno no Envio da NFC-e.' + ' Assim Foi emitida a NFC-e Nº: '+ IntToStr(qryNFCeGravadasNUMERO.AsInteger + 1) + 'Série: ' + qryNFCeGravadasSERIE.AsString + ' como Substituta.'; ACBrNFe.EventoNFe.Evento.Clear; with ACBrNFe.EventoNFe.Evento.Add do begin infEvento.chNFe := Chave; infEvento.CNPJ := CNPJ; infEvento.dhEvento := now; infEvento.tpEvento := teCancSubst; infEvento.detEvento.cOrgaoAutor := Dados.qryEmpresaID_UF.Value; infEvento.detEvento.tpAutor := taEmpresaEmitente; infEvento.detEvento.verAplic := '1'; infEvento.detEvento.chNFeRef := qryNFCeGravadasCHAVE_SUBSTITUTA.Value; infEvento.detEvento.xJust := Justificativa; infEvento.detEvento.nProt := Protocolo; end; ACBrNFe.EnviarEvento(StrToInt(idLote)); if ACBrNFe.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.cStat = 135 then begin ACBrNFe.NotasFiscais.Clear; ACBrNFe.WebServices.Consulta.NFeChave := qryNFCeGravadasCHAVE.Value; ACBrNFe.WebServices.Consulta.Executar; if ACBrNFe.WebServices.Consulta.cStat = 101 then begin qryNFCeGravadas.Edit; qryNFCeGravadasSITUACAO.Value := 'C'; qryNFCeGravadasCANCEL_SUBSTITUICAO.Value := 'C'; qryNFCeGravadasMOTIVOCANCELAMENTO.Value := Justificativa; qryNFCeGravadasFK_VENDA.Clear; qryNFCeGravadasFLAG.Value := 'N'; qryNFCeGravadasABERTO.Value := 'N'; qryNFCeGravadas.Post; Dados.Conexao.Commit; ACBrNFe.NotasFiscais.GravarXML(); memoLog.Lines.Add(' Retorno: 101 - Cancelamento por Substituição'); memoLog.Lines.Add(' Status: Cancelada'); memoLog.Lines.Add('-----------------------------------------------------------------'); end; end Continua... O interessante é que antes o cancelamento por substituição estava funcionando normalmente. Outro detalhe, o XML salvo no banco é o mesmo que tentei enviar sem alteração.
  16. Caros amigos, Estou com o seguinte problema quando ocorre instabilidade no servidor de Autorização de NFC-e na Sefaz/MG. Faço a segue rotina a abaixo: 1º Tento enviar NFC-e, exemplo, Número: 20 e ocorre da Sefaz/MG não retorna a autorização; 2º Gero uma nova NFC-e com Número: 21 no modo Contingência/Offline; 3º Após período configurado o sistema tentar enviar as NFC-e em Offline; 4º Já as NFC-e que ficaram pendentes por falta de retorno da Sefaz/MG, eu tento recuperar a NFC-e, caso a mesma não conste na Base da Sefaz/MG eu Inutilizo. Agora se a NFC-e existe na Sefaz/MG faço o Cancelamento por Substituição; O erro ocorre no momento do Cancelamento por Substituição, assim que cancelo retorna o erro: "DigestValue do documento CHAVE DE ACESSO não confere". Sei que foi cancelada porque pego a chave de acesso e vejo o cancelamento no SPED/MG. Estava tudo funcionando corretamente, o erro começou após o dia 01/10/2021, abaixo segue o código que estou usando para Cancelamento Por Substituição; procedure TFrmPDV.CancelamentoSubstituicao; var Chave, idLote, CNPJ, Protocolo, Justificativa: string; begin if (Trim(qryNFCeGravadasCHAVE_SUBSTITUTA.Value) <> '') and (qryNFCeGravadasSITUACAO.Value = 'G') then begin if Length(qryNFCeGravadasCHAVE_SUBSTITUTA.Value) <> 44 then begin memoLog.Lines.Add(' Erro: Chave de Acesso Substituta invalida! Chave deve Conter 44 números.'); memoLog.Lines.Add('-----------------------------------------------------------------'); exit; end; end; // Recuperar o Protocolo if (qryNFCeGravadasPROTOCOLO.IsNull) or (Trim(qryNFCeGravadasPROTOCOLO.Value) = '') then begin if ACBrNFe.WebServices.Consulta.cStat = 100 then begin qryNFCeGravadas.Edit; qryNFCeGravadasCHAVE.Value := copy(ACBrNFe.NotasFiscais.Items[0].NFe.infNFe.id, 4, 100); qryNFCeGravadasPROTOCOLO.Value := ACBrNFe.NotasFiscais.Items[0].NFe.procNFe.nProt; qryNFCeGravadasXML.Value := ACBrNFe.NotasFiscais.Items[0].XMLAssinado; qryNFCeGravadasFLAG.Value := 'N'; qryNFCeGravadasABERTO.Value := 'N'; qryNFCeGravadas.Post; Dados.Conexao.Commit; ACBrNFe.NotasFiscais.Items[0].GravarXML(); end else begin memoLog.Lines.Add('Status: ' + #13 + IntToStr(ACBrNFe.WebServices.Consulta.cStat) + '-' + ACBrNFe.WebServices.Consulta.XMotivo); memoLog.Lines.Add('-----------------------------------------------------------------'); exit; end; end; if (qryNFCeGravadasPROTOCOLO.IsNull) or (Trim(qryNFCeGravadasPROTOCOLO.Value) = '') then begin memoLog.Lines.Add(' Erro: Não é possível efetuar o Cancelamento da NFC-e! Não Existe Protocolo de Autorização.'); memoLog.Lines.Add('-----------------------------------------------------------------'); exit; end; // Valida se Chave Substituta Foi Transmitida Dados.qryConsulta.SQL.Clear; Dados.qryConsulta.SQL.Text := 'SELECT NUMERO FROM NFCE_MASTER WHERE SITUACAO=''T'' AND CHAVE=:chave'; Dados.qryConsulta.Params[0].Value := qryNFCeGravadasCHAVE_SUBSTITUTA.AsString; Dados.qryConsulta.Open; if Dados.qryConsulta.IsEmpty then exit; ACBrNFe.Configuracoes.Arquivos.PathEvento := dados.qryConfigPATHCAN.Value; try Chave := Trim(OnlyNumber(qryNFCeGravadasCHAVE.Value)); idLote := '1'; CNPJ := copy(Chave, 7, 14); Protocolo := qryNFCeGravadasPROTOCOLO.Value; Justificativa := 'Cancelamento Por Substituição Devido a Falta de Retorno no Envio da NFC-e.' + ' Assim Foi emitida a NFC-e Nº: '+ IntToStr(qryNFCeGravadasNUMERO.AsInteger + 1) + 'Série: ' + qryNFCeGravadasSERIE.AsString + ' como Substituta.'; ACBrNFe.EventoNFe.Evento.Clear; with ACBrNFe.EventoNFe.Evento.Add do begin infEvento.chNFe := Chave; infEvento.CNPJ := CNPJ; infEvento.dhEvento := now; infEvento.tpEvento := teCancSubst; infEvento.detEvento.cOrgaoAutor := Dados.qryEmpresaID_UF.Value; infEvento.detEvento.tpAutor := taEmpresaEmitente; infEvento.detEvento.verAplic := '1'; infEvento.detEvento.chNFeRef := qryNFCeGravadasCHAVE_SUBSTITUTA.Value; infEvento.detEvento.xJust := Justificativa; infEvento.detEvento.nProt := Protocolo; end; ACBrNFe.EnviarEvento(StrToInt(idLote)); if ACBrNFe.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.cStat = 135 then begin ACBrNFe.NotasFiscais.Clear; ACBrNFe.WebServices.Consulta.NFeChave := qryNFCeGravadasCHAVE.Value; ACBrNFe.WebServices.Consulta.Executar; if ACBrNFe.WebServices.Consulta.cStat = 101 then begin qryNFCeGravadas.Edit; qryNFCeGravadasSITUACAO.Value := 'C'; qryNFCeGravadasCANCEL_SUBSTITUICAO.Value := 'C'; qryNFCeGravadasMOTIVOCANCELAMENTO.Value := Justificativa; qryNFCeGravadasFK_VENDA.Clear; qryNFCeGravadasFLAG.Value := 'N'; qryNFCeGravadasABERTO.Value := 'N'; qryNFCeGravadas.Post; Dados.Conexao.Commit; ACBrNFe.NotasFiscais.GravarXML(); memoLog.Lines.Add(' Retorno: 101 - Cancelamento por Substituição'); memoLog.Lines.Add(' Status: Cancelada'); memoLog.Lines.Add('-----------------------------------------------------------------'); end; end else if ACBrNFe.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.cStat = 910 then begin memoLog.Lines.Add(' Rejeição 910: Chave de Acesso NF-e Substituta inválida.'); memoLog.Lines.Add('-----------------------------------------------------------------'); exit; end else if ACBrNFe.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.cStat = 911 then begin memoLog.Lines.Add(' Rejeição 911: Chave de Acesso NF-e Substituta incorreta.'); memoLog.Lines.Add('-----------------------------------------------------------------'); exit; end else if ACBrNFe.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.cStat = 912 then begin memoLog.Lines.Add(' Rejeição 912: NF-e Substituta inexistente'); memoLog.Lines.Add('-----------------------------------------------------------------'); exit; end else if ACBrNFe.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.cStat = 913 then begin memoLog.Lines.Add(' Rejeição 913: NF-e Substituta Denegada ou Cancelada.'); memoLog.Lines.Add('-----------------------------------------------------------------'); exit; end else if ACBrNFe.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.cStat = 914 then begin memoLog.Lines.Add(' Rejeição 914: Data de emissão da NF-e Substituta maior que 2 horas da data de emissão da NFe a ser cancelada.'); memoLog.Lines.Add('-----------------------------------------------------------------'); exit; end else if ACBrNFe.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.cStat = 915 then begin memoLog.Lines.Add(' Rejeição 915: Valor total da NF-e Substituta difere do valor da NF-e a ser cancelada.'); memoLog.Lines.Add('-----------------------------------------------------------------'); exit; end else if ACBrNFe.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.cStat = 916 then begin memoLog.Lines.Add(' Rejeição 916: Valor total do ICMS da NF-e Substituta difere do valor da NF-e a ser cancelada.'); memoLog.Lines.Add('-----------------------------------------------------------------'); exit; end else if ACBrNFe.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.cStat = 917 then begin memoLog.Lines.Add(' Rejeição 917: Identificação do destinatário da NF-e Substituta difere da identificação do destinatário da NF-e a ser cancelada.'); memoLog.Lines.Add('-----------------------------------------------------------------'); exit; end else if ACBrNFe.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.cStat = 918 then begin memoLog.Lines.Add(' Rejeição 918: Quantidade de itens da NF-e Substituta difere da quantidade de itens da NF-e a ser cancelada.'); memoLog.Lines.Add('-----------------------------------------------------------------'); exit; end else if ACBrNFe.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.cStat = 919 then begin memoLog.Lines.Add(' Rejeição 919: Item da NF-e Substituta difere do mesmo item da NF-e a ser cancelada.'); memoLog.Lines.Add('-----------------------------------------------------------------'); exit; end else if ACBrNFe.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.cStat = 920 then begin memoLog.Lines.Add(' Rejeição 920 - Tipo de Emissão inválido no cancelamento por substituição.'); memoLog.Lines.Add('-----------------------------------------------------------------'); exit; end else begin memoLog.Lines.Add(' Status: ' + IntToStr(ACBrNFe.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.cStat) + '-' + ACBrNFe.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.xMotivo); memoLog.Lines.Add('-----------------------------------------------------------------'); exit; end; except on E: Exception do begin memoLog.Lines.Add('-----------------------------------------------------------------'); memoLog.Lines.Add(' ERROR: ' + E.Message); memoLog.Lines.Add('-----------------------------------------------------------------'); exit; end; end; end; Desde já agradeço pela atenção e ajuda de todos. Att, Arthur
  17. BigWings, primeiramente muito obrigado pela ajuda. Conseguir encontrar aqui um topico https://www.projetoacbr.com.br/forum/topic/61714-rejeição-539-duplicidade-de-nf-e-com-diferença-na-chave-de-acesso-estado-goiás/?tab=comments#comment-404456 Na consulta pela chave de acesso, desde que esteja usando o certificado do próprio emitente, deveria retornar a rejeição 562 "Código Numérico informado na Chave de Acesso difere do Código Numérico da NF-e [chNFe:99999999999999999999999999999999999999999999]" também com a chave que consta na SEFAZ como no exemplo. E realmente retorna a chave que está com duplicidade, assim consigo recuperar a chave e recuperar o XML. Essa comunidade é show! Só gratidão por existir
  18. Bom dia! Gostaria de saber se existe um local onde consigo acessar as NFC-e emitidas por minha empresa? Motivo é simples existe duplicidade por divergência de chave de acesso e agora não consigo recuperar o XML da nota porque não tenho a chave. Observação, essa semana passada a Sefaz MG está com lentidão e as vezes não retorna o XML autorizado e tenho tido varias duplicidade de notas. Algumas consigo recuperar e fica tudo certo! Desde já agradeço pela atenção. Obrigado.
×
×
  • 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.