Painel de líderes
Conteúdo popular
Showing content with the highest reputation on 01-09-2021 em todas as áreas
-
Boa noite amigos, Fazendo uns testes com o programa de exemplo do ACBrNFe surgiu estes pequenos erros: Era só pra eu ver as tags, como seriam geradas. Talvez pelo fato agora de querer diferenciar simples de regime normal, dentro do fonte exemplo, tinha que alterar mais locais, acho. Fiz uma pequena correção, apenas pra gerar o exemplo e validar, se for de valia para a equipe, segue anexo.2 pontos
-
Bom dia, Recebemos a balança Digitron_UL para ajustar um erro ao pesar com a utilização da tara. Foi ajustado dentro da rotina InterpretarRepostaPeso, adicionando a tratativa da resposta que está retornando com 'E' (implementado na linha 107 da ACBrBALDigitron_UL.pas). Arquivo para validação em anexo. ACBrBALDigitron_UL.pas2 pontos
-
Boa tarde, Tabela IBPT não quer dizer que o NCM é valido ou não, quem valida isso é a Siscomex Mas conforme a NT 2016.003 v2.00 o seu NCM está excluído Entre em contato com o seu contador e verifique o que usar!2 pontos
-
pessoal deu certo aqui: CNPJ := IbPagoCARDCNPJ.AsAnsiString; tBand :=TpcnBandeiraCartao(IbPagoCARDTBAND.AsInteger); tpIntegra :=2; [1:45 PM, 01/09/2021] Walter: se for tpintegra=2 ai nao precisa de autorizacao [1:46 PM, 01/09/2021] Walter: pq ai vai informar que não é TEF [1:48 PM, 01/09/2021] Walter: ai eu criei uma tabela com as operadoras de cartoes, com o codigo de cada uma de acordo com a tabela do sefaz, ai cadastrei o cnpj de cada uma, ai qdo for fechar o cupom se se for com cartao, vai ter que informar qual operadora é o cartao, blz tpIntegra :=TtpIntegra(IbPagoTPINTEGRA.AsInteger);2 pontos
-
Foram publicadas em 31.08.2021, no Portal do eSocial: - a Nota Técnica nº 3/2021, com ajustes nos leiautes S-1.0; NOTA TÉCNICA S-1.0 Nº 03/2021 (www.gov.br) - a Nota Técnica nº 22/2021, com ajustes nos leiautes da versão 2.5. NOTA TÉCNICA Nº 22/2021 (www.gov.br) As alterações decorrentes das referidas Notas Técnicas estão previstas para serem implantadas nas seguintes datas: Versão Ambiente de produção restrita Ambiente de produção S-1.0 04/10/2021 13/10/2021 2.5 07/10/2021 18/10/20212 pontos
-
Sobre esse assunto, argumentei com a SEFAZ/GO sobre não validarem o "tpIntegra=2" (não integrado) e me retornaram o seguinte: "A regra da NT não especifica se é TEF ou POS. A regra é se o tipo de pagamento utilizado for cartão de crédito/débito deve ser informado o código da bandeira." Dentro do código da unit "acbr\Fontes\ACBrDFe\ACBrNF3e\PCNNF3e\ACBrNF3eXmlWriter.pas" encontrei algo que pode não permitir a execução: Só inclui a tag "tBand" se houver CNPJ, o que não acontece com tpIntegra=2 (Não integrado) Obrigado,2 pontos
-
Os schemas da pasta ACBr\Exemplos\ACBrDFe\Schemas\NFe estão atualizados, sim. É recomendado usar eles, se usar os da SEFAZ pode ter outros problemas.2 pontos
-
Muito obrigado pela contribuição @aocampioni... Logo o @Italo Giurizzato Junior, analisa e nos posiciona...2 pontos
-
Claro. Estou adicionando na minha lista de afazeres aqui (#TK-1879). Logo dou um retorno.2 pontos
-
Olá pessoal, Isso mesmo propriedades Salvar, no plural. Vocês já devem ter notado que os componentes que se utilizam de WebServices possuem 3 propriedades Salvar. Vamos a elas: Configuracoes.Arquivos.Salvar := True ou False; Se o valor for True ele salva em disco os XMLs que o emitente tem a obrigação legal de manter guardados. No caso da NF-e (por exemplo) os arquivos são: *-nfe.xml; *-procInutNFe.xml, respectivamente o XML da nota fiscal, o XML de um evento (cancelamento, carta de correção, etc.) e o XML de inutilização de um numero ou faixa de números. Configuracoes.Arquivos.SalvarEvento := True ou False; Se o valor for True, ele salva em disco os XMLs dos eventos relacionados a NF-e, no caso o *-procEventoNFe.xml. Configuracoes.Geral.Salvar := True ou False; Se o valor for True ele salva em disco os XMLs secundários que são os de envio e de retorno. Configuracoes.WebServices.Salvar := True ou False; Se o valor for True ele salva em disco os XMLs secundários que são os de envio e de retorno envelopados, note que eles tem o mesmo nome dos arquivos de envio e de retorno mas com o sufixo -soap. Utilizamos muito os arquivos "soap" durante o desenvolvimento pois eles são mais completos e podem nos trazer informações que ajudam a resolver alguns problemas com os webservices. Dica: Caso você vai guardas os XMLs no banco de dados, pode deixar os 3 Salvar com o valor False. Por outro lado se você pretende salvar somente em disco ou além do banco de dados que ter uma cópia em disco, deve pelo menos atribuir o valor True a propriedade Configuracoes.Arquivos.Salvar. Observação: No componente ACBrNFe temos a propriedade Configuracoes.Arquivos.SalvarApenasNFeProcessadas, não atribua o valor True a essa propriedade, pois se atribuir o XML da nota só vai ser salvo em disco se a nota for autorizada pela SEFAZ. Caso ocorra algum erro de internet como por exemplo Timeout, você não tem o XML para carregar e realizar a consulta afim de saber se nota foi recepcionada pela SEFAZ ou não. Propriedade de nome semelhante esta presente nos componentes ACBrCTe, ACBrMDFe e ACBrBPe. Volto a frisar, não atribua o valor True a essa propriedade.1 ponto
-
Bom dia, A NT que entrou em vigor hoje (01/09/2021) passou a exigir o TBand mesmo para o caso de não integrar com TEF. As notas foram rejeitadas para o estado de Goiás e Pará. Ou seja, tem que mandar a bandeira mesmo não tendo integração com TEF, conforme abaixo: Fiz uma mudança no pcnNFeW.pas e gostaria da avaliação de vocês para, se for o caso, subir para o repositório. As notas foram autorizadas após a mudança. Aguardo comentários. pcnNFeW.pas1 ponto
-
1 ponto
-
ACBr e TOP mesmo Resolvido aqui também1 ponto
-
Obrigado por reportar. Fechando. Para novas dúvidas, criar um novo tópico.1 ponto
-
Vamos tentar comparar nossa versão com a mais atualizada, obrigado pela ajuda. Pode fechar.1 ponto
-
Por isso que recomendo fortemente o uso de TEF.. em detrimento ao uso de POS.. No TEF a automação terá um Log de respostas, com todas as informações... Fica muito mais simples para o Operador (e a prova de erros de escolha/digitação) https://projetoacbr.com.br/tef/1 ponto
-
Boa tarde... atualizei novamente para pegar a correção e emitiu corretamente. Obrigado BigWings e Daniel Simoes.1 ponto
-
Bom dia a todos, Realmente a regra esta estranha, pois não deveria exigir a bandeira uma vez que não é integrado. É preciso saber se todas as SEFAZ tomaram a mesma atitude Goiás e Pará.1 ponto
-
Para quem precisar , segue envio e captira de eventos no modo sincrono: Envio: dmdados.ACBrNFe1.Enviar(edtnumlote.text, False,True);. Retorno: achavenfe :=dmdados.ACBrNFe1.NotasFiscais[0].NFe.procNFe.chNFe; aprotocolo :=dmdados.ACBrNFe1.NotasFiscais.Items[0].NFe.procNFe.nProt; arecibo :=dmdados.ACBrNFe1.WebServices.Enviar.Recibo; xmotivo:= dmdados.ACBrNFe1.NotasFiscais.Items[0].NFe.procNFe.xMotivo; xCSTAT:= IntToStr(dmdados.ACBrNFe1.NotasFiscais.Items[0].NFe.procNFe.cStat);1 ponto
-
Já corrigido no SVN, favor atualizar os fontes e testar novamente.1 ponto
-
Bom dia, obrigado pelo retorno! Assim que possível irei atualizar, verificar a situação e quando finalizar darei o retorno aqui! De qualquer forma já agradeço pela atenção!1 ponto
-
Olá Pessoal, Os novos Schemas não tem mais os códigos possíveis para o campo <tBand> - Código da Bandeira da Operadora, sendo assim se você informar um valor qualquer com 2 dígitos não vai ocorrer erro de validação, mas a SEFAZ vai comparar esse código com a tabela de códigos de Códigos das Bandeiras das Operadoras que se encontra no Portal Nacional da NF-e. Se o código informado não consta nessa tabela vai ser gerado a rejeição 443. Os códigos aceitos são: tBand Operadora 01 Visa 02 Mastercard 03 American Express 04 Sorocred 05 Diners Club 06 Elo 07 Hipercard 08 Aura 09 Cabal 10 Alelo 11 Banes Card 12 CalCard 13 Credz 14 Discover 15 GoodCard 16 GreenCard 17 Hiper 18 JcB 19 Mais 20 MaxVan 21 Policard 22 RedeCompras 23 Sodexo 24 ValeCard 25 Verocheque 26 VR 27 Ticket 99 Outros Observação: Os campos CNPJ, tBand e cAut só devem ser informados quando o valor de tpIntegra (Tipo de Integração para pagamento) for 1 = Pagamento integrado com o sistema de automação da empresa (Ex.: equipamento TEF, Comércio Eletrônico). Os campos acima pertencem ao grupo <card> Grupo de Cartões, esse grupo deverá constar no XML se o tPag (Meio de pagamento) for 03 (Cartão de Crédito) ou 04 (Cartão de Débito).1 ponto
-
E mais um passo dado rumo ao DTe, nesta segunda-feira, 30/08/2021, o estado do Rio Grande do Sul assinou o protocolo de intenções para adoção do DTe na UF, com isso temos a primeira UF disposta a adotar esse mecanismo. Mais informações no link abaixo http://www.abtlp.org.br/index.php/rio-grande-do-sul-e-o-primeiro-estado-iniciar-adesao-ao-documento-eletronico-de-transporte/1 ponto
-
Daniel, Acho que a DLL está correta, pq consigo fazer "tudo", gerar, consultar, imprimir, enviar e-mail, gerar PDF. Só não está enviando e-mail do evento.1 ponto
-
1 ponto
-
Boa tarde, Vocês estão usando o DANFeRetrato.fr3 atual ? tem alguma configuração em especifico para gerar o efeito colateral ? Pois aqui gerei várias páginas, as paginas intermediarias houve o consumo total da mesma. @Henrique Gheno percebi que o seu FR3 está personalizado, pode ser que você está com uma versão antiga do mesmo.1 ponto
-
Olá pessoal, Fizemos uma alteração no retorno dos métodos e com isso vai ocorrer uma quebra de código. A motivação dessa alteração foi simplificar a codificação do lado do desenvolvedor e evitar o vazamento de memória, como foi detectado por alguns. Desculpa pelo transtorno mas estamos trabalhando para tornar o novo componente cada vez melhor. Para exemplificar essas mudanças vou apresentar aqui o antes e o depois referente ao método ConsultarSituacao. Antes da alteração: Era necessário definir uma variável (Response por exemplo) para receber o retorno dos métodos, uma vez que eles eram uma função. procedure TfrmACBrNFSe.btnConsultarSitLoteClick(Sender: TObject); var Protocolo, Lote: String; Response: TNFSeConsultaSituacaoResponse; begin Protocolo := ''; if not (InputQuery('Consultar Lote', 'Número do Protocolo (Obrigatório):', Protocolo)) then exit; Lote := ''; if ACBrNFSeX1.Configuracoes.Geral.Provedor in [proAssessorPublico, proEquiplano, proSP] then begin if not (InputQuery('Consultar Lote', 'Número do Lote:', Lote)) then exit; end; Response := ACBrNFSeX1.ConsultarSituacao(Protocolo, Lote); // <== antes era uma função ChecarResposta(Response); end; Depois da alteração: Como os métodos agora são procedure não é mais necessário definir uma variável para ler os retornos. procedure TfrmACBrNFSe.btnConsultarSitLoteClick(Sender: TObject); var Protocolo, Lote: String; begin Protocolo := ''; if not (InputQuery('Consultar Lote', 'Número do Protocolo (Obrigatório):', Protocolo)) then exit; Lote := ''; if ACBrNFSeX1.Configuracoes.Geral.Provedor in [proAssessorPublico, proEquiplano, proSP] then begin if not (InputQuery('Consultar Lote', 'Número do Lote:', Lote)) then exit; end; ACBrNFSeX1.ConsultarSituacao(Protocolo, Lote); // <== agora é uma procedure ChecarResposta(tmConsultarSituacao); end; Outra coisa que mudou foi a procedure ChecarResposta que antes recebia a variável (Response por exemplo) e agora recebe como parâmetro um enumerador que é o tipo do método que foi executado, que no exemplo acima temos o tmConsultarSituacao. Abaixo temos um fragmento do código da procedure ChecarResposta. Antes da alteração: procedure TfrmACBrNFSe.ChecarResposta(const Response: TNFSeWebserviceResponse); var i: Integer; begin memoLog.Clear; (...) if Response is TNFSeConsultaSituacaoResponse then begin memoLog.Lines.Add('Modo de Envio : ' + MetodoToStr(tmConsultarSituacao)); memoLog.Lines.Add('Numero do Lote: ' + TNFSeConsultaSituacaoResponse(Response).Lote); memoLog.Lines.Add('Numero do Prot: ' + TNFSeConsultaSituacaoResponse(Response).Protocolo); memoLog.Lines.Add('Situação Lote : ' + TNFSeConsultaSituacaoResponse(Response).Situacao); memoLog.Lines.Add('Sucesso : ' + BoolToStr(Response.Sucesso, True)); end; (...) if Response.Erros.Count > 0 then begin memoLog.Lines.Add(' '); memoLog.Lines.Add('Erro(s):'); for i := 0 to Response.Erros.Count -1 do begin memoLog.Lines.Add('Código : ' + Response.Erros[i].Codigo); memoLog.Lines.Add('Mensagem: ' + Response.Erros[i].Descricao); memoLog.Lines.Add('Correção: ' + Response.Erros[i].Correcao); memoLog.Lines.Add('---------'); end; end; if Response.Alertas.Count > 0 then begin memoLog.Lines.Add(' '); memoLog.Lines.Add('Alerta(s):'); for i := 0 to Response.Alertas.Count -1 do begin memoLog.Lines.Add('Código : ' + Response.Alertas[i].Codigo); memoLog.Lines.Add('Mensagem: ' + Response.Alertas[i].Descricao); memoLog.Lines.Add('Correção: ' + Response.Alertas[i].Correcao); memoLog.Lines.Add('---------'); end; end; (...) pgRespostas.ActivePageIndex := 2; end; Depois da alteração: procedure TfrmACBrNFSe.ChecarResposta(aMetodo: TMetodo); var i: Integer; begin memoLog.Clear; memoLog.Lines.Clear; with ACBrNFSeX1.WebService do begin case aMetodo of (...) tmConsultarSituacao: begin with ConsultaSituacao do begin memoLog.Lines.Add('Modo de Envio : ' + MetodoToStr(tmConsultarSituacao)); memoLog.Lines.Add('Numero do Lote: ' + Lote); memoLog.Lines.Add('Numero do Prot: ' + Protocolo); memoLog.Lines.Add('Situação Lote : ' + Situacao); memoLog.Lines.Add('Sucesso : ' + BoolToStr(Sucesso, True)); memoLog.Lines.Add(' '); MemoResp.Lines.Text := XmlEnvio; memoRespWS.Lines.Text := XmlRetorno; LoadXML(XmlEnvio, WBResposta); if Erros.Count > 0 then begin memoLog.Lines.Add(' '); memoLog.Lines.Add('Erro(s):'); for i := 0 to Erros.Count -1 do begin memoLog.Lines.Add('Código : ' + Erros[i].Codigo); memoLog.Lines.Add('Mensagem: ' + Erros[i].Descricao); memoLog.Lines.Add('Correção: ' + Erros[i].Correcao); memoLog.Lines.Add('---------'); end; end; if Alertas.Count > 0 then begin memoLog.Lines.Add(' '); memoLog.Lines.Add('Alerta(s):'); for i := 0 to Alertas.Count -1 do begin memoLog.Lines.Add('Código : ' + Alertas[i].Codigo); memoLog.Lines.Add('Mensagem: ' + Alertas[i].Descricao); memoLog.Lines.Add('Correção: ' + Alertas[i].Correcao); memoLog.Lines.Add('---------'); end; end; end; end; end; end; (...) pgRespostas.ActivePageIndex := 2; end; Resumindo: Os métodos: Emitir, Consultar (em geral), Cancelar e Substituir agora são procedures. O componente tem agora uma classe chamada WebService e dentro dela uma classe para cada método e é nessas classes dos métodos que temos os campos que contem os retornos como por exemplo o numero do protocolo, a situação do lote, etc. No programa exemplo temos a procedure ChecarResposta com a leitura de todos os parâmetros de todos os métodos.1 ponto
-
Boa tarde, da uma olhadinha no programa de exemplo, lá você terá uma ideia mais clara do tratamento. if not Sincrono then <ACBrNFe>.WebServices.Retorno.RetWS else <ACBrNFe>.WebServices.Enviar.RetWS; if not Sincrono then <ACBrNFe>.WebServices.Retorno.cStat else <ACBrNFe>.WebServices.Enviar.cStat;1 ponto
-
Olá Pessoal, Foi publicado a NT 2020/005 que contem alterações no layout do XML da NF-e e alterações de regras de validação. O prazo previsto para a implementação das mudanças é: 01/07/2021 - Ambiente de Homologação 01/09/2021 - Ambiente de Produção No que se refere ao layout do XML vão ser acrescentados os campos: cBarra e cBarraTrib para informar o código de barra que são diferentes do GTIN. O campo tpViaTransp vai passar a ter novos valores; No detalhamento do ICMS vamos passar a ter novos campos: vICMSSTDeson e motDesICMSST. Com relação ao Fundo de Combate a Pobreza teremos os novos campos: pFCPDif, vFCPDif e vFCPefet. Consta também de forma errônea que a placa do veículo vai passar a ser opcional, mas o correto é a UF por conta da placa Mercosul. Essas são algumas das novidades, para mais informações convido a todos a lerem a NT que se encontra disponível em nossa biblioteca. http://svn.code.sf.net/p/acbr/code/tools/DFe/NFeNFCe/NT/2020/ Observação: Como vai ocorrer alteração no layout do XML da NF-e vai ser necessário atualizar os fontes do componente ACBrNFe bem como os Schemas independente se você vai usar esses campos na sua aplicação.1 ponto
-
Muito obrigado pela contribuição. Fiz a implementação baseada nela. Subi as alterações para o SVN na Revisão 22803. Pelo que vi está tudo certo. Queira por favor atualizar, testar e reportar qualquer problema. Mais uma vez obrigado.1 ponto
-
Que bom que deu certo, fico muito feliz em poder ajudar DEUS abençoe1 ponto
-
ACBrNFe1.NotasFiscais[0].NFe.procNFe.chNFe1 ponto
-
Olá, @Antonio Cruz, este problema é devido a NT 2016.002 , tem que ativar no Acbr a comunicaco somente por TLS 1.2.0 pontos
