-
Total de ítens
21 -
Registro em
-
Última visita
Últimos Visitantes
O bloco dos últimos visitantes está desativado e não está sendo visualizado por outros usuários.
Edmilson Santin's Achievements
-
Problema na comparação de valores Currency e Double
Edmilson Santin replied to Edmilson Santin's tópico in ACBrSerial
Maravilha! Muito obrigado pelas informações e correção! -
Problema na comparação de valores Currency e Double
Edmilson Santin replied to Edmilson Santin's tópico in ACBrSerial
Entendi. Vou me organizar para efetuar a troca. Até lá, segue em anexo o arquivo com a modificação sugerida. Se puder subir no SVN por favor, agradeço muito! ACBrECFVirtual.pas -
Problema na comparação de valores Currency e Double
Edmilson Santin replied to Edmilson Santin's tópico in ACBrSerial
Bom dia Juliomar, obrigado pela resposta. Você fala de usar o TACBrNFe, certo? Se sim, vou avaliar aqui pra que possamos fazer essa migração no futuro. Mas até que eu não faça essa migração eu precisaria dessa correção mesmo, seria possível seguir com as sugestões que dei? Obrigado! -
Edmilson Santin started following Problema na comparação de valores Currency e Double
-
Problema na comparação de valores Currency e Double
um tópico no fórum postou Edmilson Santin ACBrSerial
Olá pessoal, tudo bem? Estou investigando uma situação no meu PDV e encontrei um trecho de código que imagino que possa ser melhorado no ACBR, e que de quebra resolve meu problema. O trecho de código em questão é no fonte ACBrECFVirtual.pas, no método TACBrECFVirtualClassCupom.SetDescAcresSubtotal. Logo no início deste método, há uma validação comparando se wDescAcresSubtotal é igual ao que veio no parâmetro AValue, e se for, cai fora do método. No entanto, a propriedade wDescAcresSubtotal é Double e variável AValue é Currency, causando problemas na comparação mesmo que os valores sejam idênticos, conforme imagem: Uma solução que se mostrou eficaz pra mim foi usar o método ComparaValor da unit ACBrUtil.pas para essa comparação, onde assim a comparação retorna o resultado correto: No código, ficaria assim: Diante disso, concordam em alterar a forma da comparação? Ou talvez têm alguma outra sugestão sobre como fazer essa comparação bater? Até pensei em trocar a variável wDescAcresSubtotal pra Currency, mas aí pode causar problemas nos outros cálculos da procedure, então a alteração com menos impacto na minha visão é a que sugeri. Desde já agradeço! -
Edmilson Santin started following Notícias do ACBr
-
Aplicação travada prendendo o arquivo "acbrecf001.buf"
Edmilson Santin replied to Edmilson Santin's tópico in Dúvidas sobre TEF
Olá pessoal! Somente para dar retorno aqui, há algum tempo não temos mais reclamação sobre esse problema. O que identificamos aqui é que tínhamos uma personalização para o cliente em questão onde era criado um formulário que implementava uma interface para busca de algumas informações personalizadas da venda. Esse formulário era apresentado como modal, e aparentemente em algumas situações ele ficava por traz da aplicação, dando a impressão de que o PDV estava travado. Dentro do nosso processamento do TEF usávamos vários Application.ProcessMessages e também algumas exibições de mensagens com MessageDlg. Imagino que em algum momento, o uso em conjunto de tudo isso acabava causando o travamento. As ações que tomamos aqui foram: - Ajuste na destruição do formulário modal e remoção do uso da interface. - Remoção do Application.ProcessMessages no processamento do TEF. - Substituição da apresentação de mensagens com MessageDlg por mensagens internas nossas, que no final das contas usam o Application.MessageBox. - Remoção de um gauge que tínhamos para apresentar informações do andamento da transação, sendo que agora estamos apresentando em um TLabel no formulário principal do PDV. Não sei dizer o que exatamente eliminou nosso problema, mas após esses ajustes não tivemos mais relatos. Diante disso, deixo aqui essas informações para que, caso mais alguém tenha um problema parecido possa usar como base para correção. Agradeço a ajuda de todos. O tópico pode ser finalizado. -
Novos meios de pagamento para o SAT CF-e
Edmilson Santin replied to Edmilson Santin's tópico in ACBrSAT
Olá Thiago. Pelo que sei, a SEFAZ-SP não está mais atualizando aquele emulador. Foi orientado pra gente comprar um aparelho físico para realizar os testes, mas até onde entendi vai depender que os fabricantes dos aparelhos disponibilizem alterações para que possamos enviar esses novos meios de pagamento. Deixei nosso sistema preparado pra enviar quando os aparelhos estiverem aptos, mas até o momento não fizemos nenhum envio com essas novas formas de pagamento. -
Inconsistência na busca do estado da impressora fiscal Bematech
Edmilson Santin replied to Edmilson Santin's tópico in ACBrSerial
Show, muito obrigado! -
Inconsistência na busca do estado da impressora fiscal Bematech
um tópico no fórum postou Edmilson Santin ACBrSerial
Boa tarde, tudo bem? Estamos fazendo os testes para a homologação do PAF-ECF utilizando a impressora Bematech MP 4000 TH FI e encontramos uma inconsistência na leitura do estado da impressora. Encontrei esse tópico: Pelo que pude entender, foi solicitado que sejam tratados os casos em que a impressora só entra em estado de redução Z às 02:00. Entretanto, em ACBrECFBematech.pas, método TACBrECFBematech.GetEstado temos o seguinte trecho: fpEstado := estLivre ; DataMov := Self.GetDataMovimento; if (DataMov > 0) then begin DataHora := Self.GetDataHora; Data := DateOf(DataHora); if (DataMov < Data) and ((HoursBetween(Data, DataHora) > 2)) then fpEstado := estRequerZ ; end; Com esse código, a função vai retornar o estado "estRequerZ" somente às 03:00, pois ele valida se a diferença entre as duas datas é maior do que 2 horas. Diante disso, solicito alteração para que seja considerado a diferença maior ou igual a 2, fazendo com que às 02:00 a impressora já entre no estado "estRequerZ". A alteração deixaria o código assim: fpEstado := estLivre ; DataMov := Self.GetDataMovimento; if (DataMov > 0) then begin DataHora := Self.GetDataHora; Data := DateOf(DataHora); if (DataMov < Data) and ((HoursBetween(Data, DataHora) >= 2)) then fpEstado := estRequerZ ; end; Se puderem avaliar por favor, agradeço. -
Novos meios de pagamento para o SAT CF-e
Edmilson Santin replied to Edmilson Santin's tópico in ACBrSAT
Boa tarde Italo, Perfeito, muito obrigado! -
Boa tarde pessoal. De acordo com o manual "Especificação Técnica de Requisitos" do SAT, versão ER 2.28.05, de 01 de Março de 2021, será possível enviar novas tags de meios de pagamento a partir do dia 01/09/2021. Para atender isso é necessário alterar os fontes "pcnConversao.pas" e "ACBrECFVirtualSAT.pas" implementando tais meios de pagamento. Nos baseamos no que já existe atualmente para a NFe/NFCe para desenvolver. Estou enviando em anexo os fontes com as alterações que fizemos aqui. Peço por gentileza que validem e então disponibilizem no SVN para os demais. Muito obrigado! ACBrECFVirtualSAT.pas pcnConversao.pas
-
Para resolver o meu problema daria apenas para desfazer a última alteração feita no fonte ACBrTEFD.pas, da revisão 20734. Entretanto, não sei exatamente o que motivou o usuário "anfm" do SVN a fazer essa alteração, ele deve ter tido algum outro problema que eu não sei qual é. Então, uma outra sugestão seria alterar a chamada da procedure "ConfirmarTransacoesPendentes" dentro de "ACBrTEFD.ImprimirTransacoesPendentes" passando o parâmetro "ApagarRespostasPendentes" com "True", mas gostaria da avaliação de vocês sobre isso, para não ter nenhum impacto negativo pra ninguém.
-
Arquivos de respostas pendentes do TEF não estão sendo excluídos
um tópico no fórum postou Edmilson Santin Dúvidas sobre TEF
Boa tarde! Percebi que no commit do fonte ACBrTEFD.pas (revisão 20734 no svn) foi adicionado um "if" fazendo com que não seja chamado o método "ConfirmarTransacoesPendentes" caso a propriedade "ConfirmarAntesDosComprovantes" esteja marcada com "True". Depois desse commit, percebi que os arquivos de respostas pendentes do TEF, que são salvos dentro da pasta da aplicação, na subpasta "TEF", não estão mais sendo excluídos, pois era a procedure "ConfirmarTransacoesPendentes" que excluía eles. Com isso, ao iniciar o PDV esse arquivo é carregado novamente, e no nosso caso é apresentada a seguinte mensagem: Pelo que pude perceber, a transação no SiTEF ocorre normalmente e fica confirmada, sendo que o único "problema" seria a não exclusão desses arquivos. Me corrijam se estiver errado, mas esses arquivos deveriam ser excluídos ao finalizar a transação, certo? Não consegui encontrar nos comentários do svn ou nos tópicos do fórum o motivo dessa alteração, por isso gostaria de entender melhor qual era o outro problema para saber como contornar essa situação. Para resolução do problema vejo que temos duas opções: 1 - Voltar a versão do fonte como era antes, removendo o "if", fazendo com que a procedure seja chamada e os arquivos sejam excluídos; OU 2 - Manter as alterações feitas, mas ao chamar o método "ConfirmarTransacoesPendentes" dentro do método "TACBrTEFD.ImprimirTransacoesPendentes", passar o parâmetro "ApagarRespostasPendentes" com "True". A primeira opção deixará o processo como era antes. Implementando a segunda opção funcionará também, mas gostaria da avaliação de todos para não causar problema para os demais. É possível simular no demo não fiscal também. Para isso, deve ser alterada a propriedade "ConfirmarAntesDosComprovantes" do componente "ACBrTEFD1" para "True" e então realizar qualquer transação com o TEF. Fazendo isso os arquivos não serão excluídos. Se estou certo no sentido de que os arquivos deveriam ser excluídos, poderiam avaliar as sugestões de correção por gentileza? Obrigado! -
Aplicação travada durante impressão TEF
Edmilson Santin replied to I3 SISTEMAS's tópico in Dúvidas sobre TEF
Aqui nos marcamos nas configurações do TEF a opção ACBrTEFD1.ConfirmarAntesDosComprovantes com True. Dessa forma não dependemos da impressão dos comprovantes para confirmar a transação. -
Aplicação travada prendendo o arquivo "acbrecf001.buf"
Edmilson Santin replied to Edmilson Santin's tópico in Dúvidas sobre TEF
Certo, vou fazer isso e assim que eu conseguir as informações retorno aqui. Muito obrigado!